mis-crystal-design-system 18.0.22-test-dynamic-theme-2 → 18.0.23

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 (205) hide show
  1. package/button/button.directive.scss +13 -13
  2. package/datepicker_v2/datepicker-constants.d.ts +6 -0
  3. package/datepicker_v2/datepicker.module.d.ts +6 -5
  4. package/datepicker_v2/models/dp-config.model.d.ts +3 -0
  5. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +12 -1
  6. package/daterangepicker_v2/daterangepicker.module.d.ts +6 -5
  7. package/daterangepicker_v2/models/drp-config.model.d.ts +2 -0
  8. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +20 -0
  9. package/drawer/drawer.scss +1 -1
  10. package/esm2022/action-list/action-list.component.mjs +4 -4
  11. package/esm2022/action-list/action-list.module.mjs +2 -2
  12. package/esm2022/analytics/analytics.module.mjs +2 -2
  13. package/esm2022/analytics/analytics.service.mjs +2 -2
  14. package/esm2022/async-search-dropdown/async-dropdown.component.mjs +4 -4
  15. package/esm2022/async-search-dropdown/async-dropdown.module.mjs +2 -2
  16. package/esm2022/button/button.component.mjs +4 -4
  17. package/esm2022/button/button.directive.mjs +2 -2
  18. package/esm2022/button/button.module.mjs +2 -2
  19. package/esm2022/checkbox/checkbox.component.mjs +4 -4
  20. package/esm2022/checkbox/checkbox.module.mjs +2 -2
  21. package/esm2022/chip/chip.component.mjs +4 -4
  22. package/esm2022/chip/chip.module.mjs +2 -2
  23. package/esm2022/datepicker_v2/datepicker-constants.mjs +7 -1
  24. package/esm2022/datepicker_v2/datepicker.module.mjs +6 -5
  25. package/esm2022/datepicker_v2/models/dp-config.model.mjs +1 -1
  26. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +2 -2
  27. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +500 -95
  28. package/esm2022/datepicker_v2/utils/index.mjs +1 -1
  29. package/esm2022/daterangepicker_v2/daterangepicker.module.mjs +6 -5
  30. package/esm2022/daterangepicker_v2/models/drp-config.model.mjs +1 -1
  31. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +2 -2
  32. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +481 -54
  33. package/esm2022/daterangepicker_v2/utils/index.mjs +1 -1
  34. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +2 -2
  35. package/esm2022/drawer/drawer.module.mjs +2 -2
  36. package/esm2022/drawer/drawer.service.mjs +2 -2
  37. package/esm2022/dropdown/calculate-container-height.directive.mjs +2 -2
  38. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  39. package/esm2022/dropdown/dropdown.module.mjs +2 -2
  40. package/esm2022/dynamic-form/dynamic-form.component.mjs +4 -4
  41. package/esm2022/dynamic-form/dynamic-form.module.mjs +2 -2
  42. package/esm2022/fab/fab.component.mjs +4 -4
  43. package/esm2022/fab/fab.module.mjs +2 -2
  44. package/esm2022/filter/filter-panel/filter-panel.component.mjs +4 -4
  45. package/esm2022/filter/filters.module.mjs +2 -2
  46. package/esm2022/filter/has-value.pipe.mjs +2 -2
  47. package/esm2022/input/directives/input/input.directive.mjs +2 -2
  48. package/esm2022/input/mis-input.component.mjs +4 -4
  49. package/esm2022/input/mis-input.module.mjs +2 -2
  50. package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +4 -4
  51. package/esm2022/input-stepper/input-stepper.module.mjs +2 -2
  52. package/esm2022/loader/loader.component.mjs +4 -4
  53. package/esm2022/loader/loader.module.mjs +2 -2
  54. package/esm2022/menu/menu-close.directive.mjs +3 -3
  55. package/esm2022/menu/menu.directive.mjs +3 -3
  56. package/esm2022/menu/menu.module.mjs +2 -2
  57. package/esm2022/mobile-filter/mobile-filter.component.mjs +4 -4
  58. package/esm2022/mobile-filter/mobile-filter.module.mjs +2 -2
  59. package/esm2022/modal/modal.module.mjs +2 -2
  60. package/esm2022/modal/modal.service.mjs +2 -2
  61. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +2 -2
  62. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +4 -4
  63. package/esm2022/multi-select-dropdown/multi-select-dropdown.module.mjs +2 -2
  64. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +4 -4
  65. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +2 -2
  66. package/esm2022/phone-input/phone-input.component.mjs +4 -4
  67. package/esm2022/phone-input/phone-input.module.mjs +2 -2
  68. package/esm2022/public-api.mjs +1 -1
  69. package/esm2022/radio-button/radio-button.component.mjs +4 -4
  70. package/esm2022/radio-button/radio-button.module.mjs +2 -2
  71. package/esm2022/ske-loader/ske-loader.component.mjs +4 -4
  72. package/esm2022/ske-loader/ske-loader.module.mjs +2 -2
  73. package/esm2022/slider/slider.component.mjs +4 -4
  74. package/esm2022/slider/slider.module.mjs +2 -2
  75. package/esm2022/snackbar/snackbar/snackbar.component.mjs +4 -4
  76. package/esm2022/snackbar/snackbar.module.mjs +2 -2
  77. package/esm2022/snackbar/snackbar.service.mjs +2 -2
  78. package/esm2022/specificdatepicker/specificdatepicker.module.mjs +2 -2
  79. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +4 -4
  80. package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +2 -2
  81. package/esm2022/specificdatepicker/utils/index.mjs +1 -1
  82. package/esm2022/star-rating/star-rating.component.mjs +4 -4
  83. package/esm2022/star-rating/star-rating.module.mjs +2 -2
  84. package/esm2022/switch/switch.component.mjs +4 -4
  85. package/esm2022/switch/switch.module.mjs +2 -2
  86. package/esm2022/table/actions-cell/actions-cell.component.mjs +4 -4
  87. package/esm2022/table/custom-table-cell.directive.mjs +2 -2
  88. package/esm2022/table/filter/filter.component.mjs +4 -4
  89. package/esm2022/table/sort-icons.directive.mjs +3 -3
  90. package/esm2022/table/sub-table/sub-table.component.mjs +4 -4
  91. package/esm2022/table/table.component.mjs +99 -82
  92. package/esm2022/table/table.module.mjs +2 -2
  93. package/esm2022/timepicker/timepicker.component.mjs +4 -4
  94. package/esm2022/timepicker/timepicker.directive.mjs +3 -3
  95. package/esm2022/timepicker/timepicker.module.mjs +2 -2
  96. package/esm2022/timerangepicker/timerangepicker.component.mjs +2 -2
  97. package/esm2022/timerangepicker/timerangepicker.module.mjs +2 -2
  98. package/esm2022/toast/toast.component.mjs +4 -4
  99. package/esm2022/toast/toast.data.service.mjs +2 -2
  100. package/esm2022/toast/toast.module.mjs +2 -2
  101. package/esm2022/toast/toast.service.mjs +2 -2
  102. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +4 -4
  103. package/esm2022/tooltip/tooltip.directive.mjs +2 -2
  104. package/esm2022/tooltip/tooltip.module.mjs +2 -2
  105. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +2 -2
  106. package/esm2022/virtual-scroll/virtual-scroll.module.mjs +2 -2
  107. package/esm2022/widgets/classes/async-widget.mjs +1 -1
  108. package/esm2022/widgets/classes/base-widget.mjs +1 -1
  109. package/esm2022/widgets/classes/sync-widget.mjs +1 -1
  110. package/esm2022/widgets/services/widget.service.mjs +2 -2
  111. package/esm2022/widgets/widgets.module.mjs +2 -2
  112. package/fesm2022/mis-crystal-design-system-action-list.mjs +5 -5
  113. package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -1
  114. package/fesm2022/mis-crystal-design-system-analytics.mjs +2 -2
  115. package/fesm2022/mis-crystal-design-system-analytics.mjs.map +1 -1
  116. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +5 -5
  117. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -1
  118. package/fesm2022/mis-crystal-design-system-button.mjs +6 -6
  119. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -1
  120. package/fesm2022/mis-crystal-design-system-checkbox.mjs +5 -5
  121. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -1
  122. package/fesm2022/mis-crystal-design-system-chip.mjs +5 -5
  123. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -1
  124. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs +513 -102
  125. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
  126. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +488 -61
  127. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
  128. package/fesm2022/mis-crystal-design-system-drawer.mjs +3 -3
  129. package/fesm2022/mis-crystal-design-system-drawer.mjs.map +1 -1
  130. package/fesm2022/mis-crystal-design-system-dropdown.mjs +6 -6
  131. package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -1
  132. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs +5 -5
  133. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  134. package/fesm2022/mis-crystal-design-system-fab.mjs +5 -5
  135. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -1
  136. package/fesm2022/mis-crystal-design-system-filter.mjs +5 -5
  137. package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -1
  138. package/fesm2022/mis-crystal-design-system-input-stepper.mjs +5 -5
  139. package/fesm2022/mis-crystal-design-system-input-stepper.mjs.map +1 -1
  140. package/fesm2022/mis-crystal-design-system-input.mjs +6 -6
  141. package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -1
  142. package/fesm2022/mis-crystal-design-system-loader.mjs +4 -4
  143. package/fesm2022/mis-crystal-design-system-loader.mjs.map +1 -1
  144. package/fesm2022/mis-crystal-design-system-menu.mjs +6 -6
  145. package/fesm2022/mis-crystal-design-system-menu.mjs.map +1 -1
  146. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +5 -5
  147. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -1
  148. package/fesm2022/mis-crystal-design-system-modal.mjs +3 -3
  149. package/fesm2022/mis-crystal-design-system-modal.mjs.map +1 -1
  150. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs +5 -5
  151. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -1
  152. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs +5 -5
  153. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -1
  154. package/fesm2022/mis-crystal-design-system-phone-input.mjs +4 -4
  155. package/fesm2022/mis-crystal-design-system-phone-input.mjs.map +1 -1
  156. package/fesm2022/mis-crystal-design-system-radio-button.mjs +5 -5
  157. package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -1
  158. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +4 -4
  159. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -1
  160. package/fesm2022/mis-crystal-design-system-slider.mjs +5 -5
  161. package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -1
  162. package/fesm2022/mis-crystal-design-system-snackbar.mjs +6 -6
  163. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -1
  164. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs +6 -6
  165. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
  166. package/fesm2022/mis-crystal-design-system-star-rating.mjs +5 -5
  167. package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -1
  168. package/fesm2022/mis-crystal-design-system-switch.mjs +5 -5
  169. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -1
  170. package/fesm2022/mis-crystal-design-system-table.mjs +112 -95
  171. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
  172. package/fesm2022/mis-crystal-design-system-timepicker.mjs +7 -7
  173. package/fesm2022/mis-crystal-design-system-timepicker.mjs.map +1 -1
  174. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs +3 -3
  175. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
  176. package/fesm2022/mis-crystal-design-system-toast.mjs +6 -6
  177. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -1
  178. package/fesm2022/mis-crystal-design-system-tooltip.mjs +6 -6
  179. package/fesm2022/mis-crystal-design-system-tooltip.mjs.map +1 -1
  180. package/fesm2022/mis-crystal-design-system-utils.mjs.map +1 -1
  181. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs +3 -3
  182. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -1
  183. package/fesm2022/mis-crystal-design-system-widgets.mjs +1 -1
  184. package/fesm2022/mis-crystal-design-system-widgets.mjs.map +1 -1
  185. package/fesm2022/mis-crystal-design-system.mjs.map +1 -1
  186. package/input/mis-input.component.scss +17 -17
  187. package/modal/modal.scss +1 -1
  188. package/package.json +7 -13
  189. package/styles/mis-color-constants.scss +0 -204
  190. package/styles/mis-icons.scss +56 -56
  191. package/styles/mis-old-icon-styles.scss +21 -21
  192. package/table/table.component.d.ts +1 -1
  193. package/dynamic-theme/branding.types.d.ts +0 -84
  194. package/dynamic-theme/dynamic-theme.module.d.ts +0 -9
  195. package/dynamic-theme/dynamic-theme.service.d.ts +0 -89
  196. package/dynamic-theme/index.d.ts +0 -1
  197. package/dynamic-theme/public_api.d.ts +0 -3
  198. package/esm2022/dynamic-theme/branding.types.mjs +0 -93
  199. package/esm2022/dynamic-theme/dynamic-theme.module.mjs +0 -25
  200. package/esm2022/dynamic-theme/dynamic-theme.service.mjs +0 -193
  201. package/esm2022/dynamic-theme/index.mjs +0 -2
  202. package/esm2022/dynamic-theme/mis-crystal-design-system-dynamic-theme.mjs +0 -5
  203. package/esm2022/dynamic-theme/public_api.mjs +0 -4
  204. package/fesm2022/mis-crystal-design-system-dynamic-theme.mjs +0 -313
  205. package/fesm2022/mis-crystal-design-system-dynamic-theme.mjs.map +0 -1
@@ -409,7 +409,7 @@ export class MultiSelectDropdownComponent {
409
409
  this.overlayRef?.detach();
410
410
  this.searchInput = "";
411
411
  }
412
- static { this.ɵfac = function MultiSelectDropdownComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MultiSelectDropdownComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.NgZone)); }; }
412
+ static { this.ɵfac = function MultiSelectDropdownComponent_Factory(t) { return new (t || MultiSelectDropdownComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.NgZone)); }; }
413
413
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MultiSelectDropdownComponent, selectors: [["mis-multi-select-dropdown"]], viewQuery: function MultiSelectDropdownComponent_Query(rf, ctx) { if (rf & 1) {
414
414
  i0.ɵɵviewQuery(_c0, 5);
415
415
  i0.ɵɵviewQuery(_c1, 5);
@@ -439,11 +439,11 @@ export class MultiSelectDropdownComponent {
439
439
  i0.ɵɵproperty("ngIf", ctx.customLabelTemplate);
440
440
  i0.ɵɵadvance();
441
441
  i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(10, _c4, ctx.isOpen ? "rotate(180deg)" : "rotate(0deg)"));
442
- } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgModel, i4.CheckboxComponent, i5.ButtonComponent], styles: [".container[_ngcontent-%COMP%]{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]{height:inherit;border:1px solid var(--border-primary, #E0E0E0);border-radius:6px;background-color:var(--bg-primary, #FFFFFF);cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]:hover, .container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]:focus-visible{background-color:var(--brand-primary-hover, #F0F3FA);outline:none}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px);font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .count[_ngcontent-%COMP%]{background-color:var(--border-primary, #E0E0E0);border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .handle[_ngcontent-%COMP%]{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container[_ngcontent-%COMP%]{width:100%;max-height:340px;padding-bottom:0;border:1px solid var(--border-primary, #E0E0E0);border-radius:8px;background-color:var(--bg-primary, #FFFFFF);box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:flex-start}.popup-container[_ngcontent-%COMP%]::-webkit-scrollbar{width:0;height:0}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%]{position:relative;box-sizing:border-box;padding:8px}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .search-icon[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .search-input[_ngcontent-%COMP%]{height:40px;width:100%;padding:12px;border:1px solid var(--border-primary, #E0E0E0);box-sizing:border-box;border-radius:8px;outline:none;caret-color:var(--brand-primary, #0937B2);font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:var(--text-primary, #181F33)}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .cancel-icon[_ngcontent-%COMP%]{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]::-webkit-scrollbar{width:5px;height:0}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:var(--text-tertiary, #929DAB);border-radius:10px}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .noData[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover, .popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:focus-visible{background-color:var(--brand-primary-hover, #F0F3FA);outline:none}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:checked ~ .checkmark[_ngcontent-%COMP%]:after{display:block}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:var(--brand-info, #0091FF);border:1px solid var(--text-secondary, #6A737D)}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid var(--bg-primary, #FFFFFF);border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .icon-container[_ngcontent-%COMP%]{width:10%;display:flex;justify-content:flex-end}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .icon-container[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:20px;height:20px}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;bottom:0;align-items:center;position:sticky;padding:16px;background-color:var(--bg-primary, #FFFFFF);border-top:1px solid var(--border-primary, #E0E0E0);margin-top:auto}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .cancel[_ngcontent-%COMP%]{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .cancel[_ngcontent-%COMP%]:hover{background:var(--bg-overlay-lightest, rgba(0, 0, 0, .04))}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .apply[_ngcontent-%COMP%]{cursor:pointer;padding:10px 32px;text-align:center;color:var(--bg-primary, #FFFFFF);font-size:16px;line-height:24px;background:var(--brand-primary, #0937B2);border-radius:8px}"] }); }
442
+ } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i2.NgStyle, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgModel, i4.CheckboxComponent, i5.ButtonComponent], styles: [".container[_ngcontent-%COMP%]{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]{height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]:hover, .container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%]:focus-visible{background-color:#f5f7fc;outline:none}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px);font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .count[_ngcontent-%COMP%]{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:#181f33}.container[_ngcontent-%COMP%] .dropdown[_ngcontent-%COMP%] .handle[_ngcontent-%COMP%]{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container[_ngcontent-%COMP%]{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:flex-start}.popup-container[_ngcontent-%COMP%]::-webkit-scrollbar{width:0;height:0}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%]{position:relative;box-sizing:border-box;padding:8px}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .search-icon[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .search-input[_ngcontent-%COMP%]{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container[_ngcontent-%COMP%] .search-container[_ngcontent-%COMP%] .cancel-icon[_ngcontent-%COMP%]{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]::-webkit-scrollbar{width:5px;height:0}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .noData[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{pointer-events:none;opacity:.5}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover, .popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:focus-visible{background-color:#f5f7fc;outline:none}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%]{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:checked ~ .checkmark[_ngcontent-%COMP%]:after{display:block}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:#0079f1;border:1px solid rgb(106,115,125)}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .checkbox-container[_ngcontent-%COMP%] .checkmark[_ngcontent-%COMP%]:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid white;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .checkbox-container-wrapper[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .icon-container[_ngcontent-%COMP%]{width:10%;display:flex;justify-content:flex-end}.popup-container[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .icon-container[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:20px;height:20px}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;bottom:0;align-items:center;position:sticky;padding:16px;background-color:#fff;border-top:1px solid #e0e0e0;margin-top:auto}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .cancel[_ngcontent-%COMP%]{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .cancel[_ngcontent-%COMP%]:hover{background:#0937b20a}.popup-container[_ngcontent-%COMP%] .actions-container[_ngcontent-%COMP%] .apply[_ngcontent-%COMP%]{cursor:pointer;padding:10px 32px;text-align:center;color:#fff;font-size:16px;line-height:24px;background:#0937b2;border-radius:8px}"] }); }
443
443
  }
444
444
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MultiSelectDropdownComponent, [{
445
445
  type: Component,
446
- args: [{ selector: "mis-multi-select-dropdown", template: "<div\n class=\"container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"{ background: isOpen ? '#E6EBF7' : '' }\"\n >\n <div class=\"label\">\n <ng-container *ngIf=\"!customLabelTemplate\">\n <p class=\"text\">{{ label }}</p>\n <p *ngIf=\"showSelectedCount && localSelectedItems?.length > 0\" class=\"count\">\n {{ localSelectedItems?.length }}\n </p>\n </ng-container>\n <ng-container *ngIf=\"customLabelTemplate\">\n <ng-container *ngTemplateOutlet=\"customLabelTemplate\">\n </ng-container>\n </ng-container>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\"\n [ngStyle]=\"{\n 'height': dropdownListHeight,\n width: dropdownListWidth\n }\"\n [ngClass]=\"{\n 'position-left': dropdownListPosition === 'Left',\n 'position-right': dropdownListPosition === 'Right'\n }\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchInputPlaceholder\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"items\">\n <div\n class=\"item\"\n tabindex=\"0\"\n (keyup.enter)=\"toggleSelectedItems($event, item)\"\n (click)=\"toggleSelectedItems($event, item)\"\n *ngFor=\"let item of searchInput ? searchData : localData\"\n [ngClass]=\"{'disabled':item.disabled}\"\n >\n <div class=\"checkbox-container-wrapper\">\n <div class=\"checkbox-container\">\n <mis-checkbox [checked]=\"item.checked\" tabindex=\"-1\"></mis-checkbox>\n </div>\n <p class=\"label\">\n {{ item.label }}\n </p>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </div>\n <div class=\"noData\" *ngIf=\"(searchInput ? searchData : localData).length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n <div *ngIf=\"localData.length !== 0 && !hideApplyButton\" class=\"actions-container\">\n <div [ngStyle]=\"{'width': 'calc(50% - 4px)'}\" (click)=\"onReset()\">\n <mis-button [name]=\"'Reset'\" [type]=\"'Text'\" [width]=\"'100%'\" ></mis-button>\n </div>\n <div [ngStyle]=\"{'width': 'calc(50% - 4px)'}\" (click)=\"applyFilters()\">\n <mis-button [name]=\"'Apply'\" [type]=\"'Solid'\" [width]=\"'100%'\" ></mis-button>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".container{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container .dropdown{height:inherit;border:1px solid var(--border-primary, #E0E0E0);border-radius:6px;background-color:var(--bg-primary, #FFFFFF);cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container .dropdown:hover,.container .dropdown:focus-visible{background-color:var(--brand-primary-hover, #F0F3FA);outline:none}.container .dropdown .label{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px);font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container .dropdown .label .text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container .dropdown .label .count{background-color:var(--border-primary, #E0E0E0);border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:var(--text-primary, #181F33)}.container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid var(--border-primary, #E0E0E0);border-radius:8px;background-color:var(--bg-primary, #FFFFFF);box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:flex-start}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid var(--border-primary, #E0E0E0);box-sizing:border-box;border-radius:8px;outline:none;caret-color:var(--brand-primary, #0937B2);font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:var(--text-primary, #181F33)}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:var(--text-tertiary, #929DAB);border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:var(--text-primary, #181F33)}.popup-container .items .disabled{pointer-events:none;opacity:.5}.popup-container .items .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container .items .item:hover,.popup-container .items .item:focus-visible{background-color:var(--brand-primary-hover, #F0F3FA);outline:none}.popup-container .items .item .checkbox-container-wrapper{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container .items .item .checkbox-container-wrapper .checkbox-container{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input:checked~.checkmark:after{display:block}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:var(--brand-info, #0091FF);border:1px solid var(--text-secondary, #6A737D)}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid var(--bg-primary, #FFFFFF);border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.popup-container .items .item .checkbox-container-wrapper .label{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container .items .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .item .icon-container .icon{width:20px;height:20px}.popup-container .actions-container{display:flex;justify-content:space-between;bottom:0;align-items:center;position:sticky;padding:16px;background-color:var(--bg-primary, #FFFFFF);border-top:1px solid var(--border-primary, #E0E0E0);margin-top:auto}.popup-container .actions-container .cancel{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container .actions-container .cancel:hover{background:var(--bg-overlay-lightest, rgba(0, 0, 0, .04))}.popup-container .actions-container .apply{cursor:pointer;padding:10px 32px;text-align:center;color:var(--bg-primary, #FFFFFF);font-size:16px;line-height:24px;background:var(--brand-primary, #0937B2);border-radius:8px}\n"] }]
446
+ args: [{ selector: "mis-multi-select-dropdown", template: "<div\n class=\"container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"{ background: isOpen ? '#E6EBF7' : '' }\"\n >\n <div class=\"label\">\n <ng-container *ngIf=\"!customLabelTemplate\">\n <p class=\"text\">{{ label }}</p>\n <p *ngIf=\"showSelectedCount && localSelectedItems?.length > 0\" class=\"count\">\n {{ localSelectedItems?.length }}\n </p>\n </ng-container>\n <ng-container *ngIf=\"customLabelTemplate\">\n <ng-container *ngTemplateOutlet=\"customLabelTemplate\">\n </ng-container>\n </ng-container>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\"\n [ngStyle]=\"{\n 'height': dropdownListHeight,\n width: dropdownListWidth\n }\"\n [ngClass]=\"{\n 'position-left': dropdownListPosition === 'Left',\n 'position-right': dropdownListPosition === 'Right'\n }\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchInputPlaceholder\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"items\">\n <div\n class=\"item\"\n tabindex=\"0\"\n (keyup.enter)=\"toggleSelectedItems($event, item)\"\n (click)=\"toggleSelectedItems($event, item)\"\n *ngFor=\"let item of searchInput ? searchData : localData\"\n [ngClass]=\"{'disabled':item.disabled}\"\n >\n <div class=\"checkbox-container-wrapper\">\n <div class=\"checkbox-container\">\n <mis-checkbox [checked]=\"item.checked\" tabindex=\"-1\"></mis-checkbox>\n </div>\n <p class=\"label\">\n {{ item.label }}\n </p>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </div>\n <div class=\"noData\" *ngIf=\"(searchInput ? searchData : localData).length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n <div *ngIf=\"localData.length !== 0 && !hideApplyButton\" class=\"actions-container\">\n <div [ngStyle]=\"{'width': 'calc(50% - 4px)'}\" (click)=\"onReset()\">\n <mis-button [name]=\"'Reset'\" [type]=\"'Text'\" [width]=\"'100%'\" ></mis-button>\n </div>\n <div [ngStyle]=\"{'width': 'calc(50% - 4px)'}\" (click)=\"applyFilters()\">\n <mis-button [name]=\"'Apply'\" [type]=\"'Solid'\" [width]=\"'100%'\" ></mis-button>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".container{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;height:32px;width:256px;font-family:Lato,sans-serif!important}.container .dropdown{height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;overflow:hidden}.container .dropdown:hover,.container .dropdown:focus-visible{background-color:#f5f7fc;outline:none}.container .dropdown .label{display:flex;justify-content:flex-start;align-items:center;width:calc(100% - 32px);font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container .dropdown .label .text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.container .dropdown .label .count{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0 0 0 8px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;text-align:center;letter-spacing:.2px;color:#181f33}.container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:flex-start}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:8px 0 8px 8px;overflow-y:scroll}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container .items .disabled{pointer-events:none;opacity:.5}.popup-container .items .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;padding:8px 12px;border-radius:6px;height:auto}.popup-container .items .item:hover,.popup-container .items .item:focus-visible{background-color:#f5f7fc;outline:none}.popup-container .items .item .checkbox-container-wrapper{display:flex;justify-content:flex-start;align-items:center;width:90%}.popup-container .items .item .checkbox-container-wrapper .checkbox-container{display:block;position:relative;cursor:pointer;font-size:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.popup-container .items .item .checkbox-container-wrapper .checkbox-container input:checked~.checkmark:after{display:block}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark{position:absolute;top:-8px;left:0;height:15px;width:15px;border-radius:4px;background-color:#0079f1;border:1px solid rgb(106,115,125)}.popup-container .items .item .checkbox-container-wrapper .checkbox-container .checkmark:after{content:\"\";position:absolute;display:none;left:5px;top:2px;width:3px;height:6px;border:solid white;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.popup-container .items .item .checkbox-container-wrapper .label{margin:0 0 0 8px;line-height:20px;font-size:14px;font-style:normal;font-weight:400;letter-spacing:.2;text-overflow:ellipsis;overflow:hidden}.popup-container .items .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .item .icon-container .icon{width:20px;height:20px}.popup-container .actions-container{display:flex;justify-content:space-between;bottom:0;align-items:center;position:sticky;padding:16px;background-color:#fff;border-top:1px solid #e0e0e0;margin-top:auto}.popup-container .actions-container .cancel{cursor:pointer;padding:10px 32px;text-align:center;font-size:16px;line-height:24px;border-radius:8px}.popup-container .actions-container .cancel:hover{background:#0937b20a}.popup-container .actions-container .apply{cursor:pointer;padding:10px 32px;text-align:center;color:#fff;font-size:16px;line-height:24px;background:#0937b2;border-radius:8px}\n"] }]
447
447
  }], () => [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.NgZone }], { data: [{
448
448
  type: Input
449
449
  }], label: [{
@@ -486,4 +486,4 @@ export class MultiSelectDropdownComponent {
486
486
  args: ["popupContainer", { static: false }]
487
487
  }] }); })();
488
488
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MultiSelectDropdownComponent, { className: "MultiSelectDropdownComponent" }); })();
489
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL211bHRpLXNlbGVjdC1kcm9wZG93bi9tdWx0aS1zZWxlY3QtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvbXVsdGktc2VsZWN0LWRyb3Bkb3duL211bHRpLXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQWtCLE1BQU0sRUFBZSxTQUFTLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQzdJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQXVCLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNnQjVGLDZCQUE2RTtJQUMzRSxZQUNGO0lBQUEsaUJBQUk7OztJQURGLGNBQ0Y7SUFERSw0R0FDRjs7O0lBSkEsNkJBQTJDO0lBQzNDLDRCQUFnQjtJQUFBLFlBQVc7SUFBQSxpQkFBSTtJQUMvQix3RkFBNkU7Ozs7SUFEN0QsZUFBVztJQUFYLGtDQUFXO0lBQ3ZCLGNBQXlEO0lBQXpELG9JQUF5RDs7O0lBSzdELHdCQUNlOzs7SUFGakIsNkJBQTBDO0lBQ3hDLCtHQUFzRDs7OztJQUF2QyxjQUFxQztJQUFyQyw2REFBcUM7Ozs7SUFtQ2xELCtCQVFDO0lBQ0MsMkJBS0U7SUFDSixpQkFBTTs7Ozs7SUFhTiwrQkFTQztJQU5DLHFOQUFTLGtDQUEyQixLQUFDO0lBT3JDLDJCQUtFO0lBQ0osaUJBQU07Ozs7SUE3Q1IsK0JBQW9EO0lBQ2xELHVHQVFDO0lBUUQsaUNBV0U7SUFGQSxBQUZBLDROQUFpQixrQ0FBMkIs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O1lBR0csZUFBZTtrQkFBdkIsS0FBSztZQUNHLHNCQUFzQjtrQkFBOUIsS0FBSztZQUNHLG1CQUFtQjtrQkFBM0IsS0FBSztZQUNJLFFBQVE7a0JBQWpCLE1BQU07WUFFaUMsYUFBYTtrQkFBcEQsU0FBUzttQkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO1lBQ1UsY0FBYztrQkFBN0QsU0FBUzttQkFBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7O2tGQW5DbkMsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBOZ1pvbmUsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcbmltcG9ydCB7IE92ZXJsYXlSZWYsIE92ZXJsYXksIENvbm5lY3Rpb25Qb3NpdGlvblBhaXIsIE92ZXJsYXlDb25maWcgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJtaXMtbXVsdGktc2VsZWN0LWRyb3Bkb3duXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vbXVsdGktc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9tdWx0aS1zZWxlY3QtZHJvcGRvd24uY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3REcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlYXJjaElucHV0OiBzdHJpbmcgPSBcIlwiO1xuICBpc09wZW4gPSBmYWxzZTtcbiAgbG9jYWxTZWxlY3RlZEl0ZW1zOiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbVtdID0gW107XG4gIGxvY2FsRGF0YTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSA9IFtdO1xuICBzZWFyY2hEYXRhOiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbVtdID0gW107XG4gIGlzU2VhcmNoSW5wdXRGb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG4gIFNFTEVDVF9BTExfRU5VTSA9IFwiU0VMRUNUX0FMTF9FTkFCTEVEXCI7XG4gIEBJbnB1dCgpIHNldCBkYXRhKHZhbHVlczogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSkge1xuICAgIHRoaXMubG9jYWxEYXRhID0gdmFsdWVzPy5tYXAoaXRlbSA9PiB7XG4gICAgICByZXR1cm4geyAuLi5pdGVtLCBjaGVja2VkOiBmYWxzZSB9O1xuICAgIH0pIHx8IFtdO1xuICB9XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSBcIlNlbGVjdFwiO1xuICBASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSBcIlwiO1xuICBASW5wdXQoKSBkcm9wZG93bkxpc3RIZWlnaHQ6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIGRyb3Bkb3duTGlzdFdpZHRoOiBzdHJpbmcgPSBcIlwiO1xuICBASW5wdXQoKSBkcm9wZG93bkxpc3RQb3NpdGlvbjogXCJMZWZ0XCIgfCBcIlJpZ2h0XCIgPSBcIkxlZnRcIjtcbiAgQElucHV0KCkgZW5hYmxlU2VsZWN0QWxsOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlYXJjaEVuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93U2VsZWN0ZWRDb3VudDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBub0RhdGFNZXNzYWdlOiBzdHJpbmcgPSBcIk5vIERhdGFcIjtcbiAgQElucHV0KCkgb3B0aW9uczogT1BUSU9OUyA9IHtcbiAgICBzb3J0TGFiZWxzOiB0cnVlXG4gIH07XG4gIEBJbnB1dCgpIHNldCBzZWxlY3RlZEl0ZW1zKHZhbHVlczogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSkge1xuICAgIHRoaXMuaGFuZGxlclNldExvY2FsU2VsZWN0ZWRJdGVtcyh2YWx1ZXMpO1xuICB9XG4gIEBJbnB1dCgpIGhpZGVBcHBseUJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzZWFyY2hJbnB1dFBsYWNlaG9sZGVyOiBzdHJpbmcgPSBcIlNlYXJjaCBLZXl3b3JkXCI7XG4gIEBJbnB1dCgpIGN1c3RvbUxhYmVsVGVtcGxhdGUgOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAT3V0cHV0KCkgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoXCJzZWxlY3RcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIHNlbGVjdEVsZW1lbnQ6IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoXCJwb3B1cENvbnRhaW5lclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wdXBDb250YWluZXI6IFRlbXBsYXRlUmVmPEVsZW1lbnQ+O1xuICBwcml2YXRlIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlUmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge31cbiAgbmdPbkluaXQoKSB7fVxuXG4gIGhhbmRsZXJTZXRMb2NhbFNlbGVjdGVkSXRlbXModmFsdWVzKSB7XG4gICAgdGhpcy5sb2NhbFNlbGVjdGVkSXRlbXMgPSB2YWx1ZXMgfHwgW107XG4gICAgdGhpcy5sb2NhbERhdGEgPSB0aGlzLmxvY2FsRGF0YT8ubWFwKGl0ZW0gPT4ge1xuICAgICAgaWYgKGl0ZW0/LnZhbHVlID09PSB0aGlzLlNFTEVDVF9BTExfRU5VTSAgJiYgdmFsdWVzPy5sZW5ndGggPT09IHRoaXMubG9jYWxEYXRhPy5sZW5ndGgtMSkge1xuICAgICAgICByZXR1cm4geyAuLi5pdGVtLCBjaGVja2VkOiB0cnVlIH07XG4gICAgICB9XG4gICAgICBpZiAodmFsdWVzPy5zb21lKGJhc2UgPT4gYmFzZT8udmFsdWUgPT09IGl0ZW0/LnZhbHVlKSkge1xuICAgICAgICByZXR1cm4geyAuLi5pdGVtLCBjaGVja2VkOiB0cnVlIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZihpdGVtPy52YWx1ZSAhPT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0gfHwgIXRoaXMuaGlkZUFwcGx5QnV0dG9uKXtcbiAgICAgICAgICByZXR1cm4geyAuLi5pdGVtLCBjaGVja2VkOiBmYWxzZSB9O1xuICAgICAgICB9ZWxzZXtcbiAgICAgICAgICAgIHJldHVybiBpdGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSkgfHwgW107XG4gICAgdGhpcy5sb2NhbERhdGEgPSB0aGlzLmZvcm1hdFZhbHVlcyh0aGlzLmxvY2FsRGF0YSk7XG4gIH1cblxuICBzZWFyY2hJbnB1dEZvY3VzZWQoaXNGb2N1c2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCA9IGlzRm9jdXNlZDtcbiAgfVxuXG4gIHNlYXJjaElucHV0Q2FuY2VsZWQoZXZlbnQpIHtcbiAgICBldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5zZWFyY2hJbnB1dCA9IFwiXCI7XG4gICAgdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCA9IGZhbHNlO1xuICB9XG5cbiAgdG9nZ2xlRHJvcGRvd24oKSB7XG4gICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgIHRoaXMuaXNPcGVuID0gIXRoaXMuaXNPcGVuO1xuICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlclNldExvY2FsU2VsZWN0ZWRJdGVtcyh0aGlzLmxvY2FsU2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgIHRoaXMubG9jYWxEYXRhID0gdGhpcy5mb3JtYXRWYWx1ZXModGhpcy5sb2NhbERhdGEpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaXNPcGVuKSB0aGlzLm9wZW5Ecm9wZG93bih0aGlzLnBvcHVwQ29udGFpbmVyLCB0aGlzLnNlbGVjdEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgZWxzZSB0aGlzLm9uQ2FuY2VsKCk7XG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgb3BlbkRyb3Bkb3duKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxFbGVtZW50Piwgb3JpZ2luOiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGNvbnN0IHBvc2l0aW9uc0JvdHRvbSA9IFtcbiAgICAgIG5ldyBDb25uZWN0aW9uUG9zaXRpb25QYWlyKHsgb3JpZ2luWDogXCJzdGFydFwiLCBvcmlnaW5ZOiBcImJvdHRvbVwiIH0sIHsgb3ZlcmxheVg6IFwic3RhcnRcIiwgb3ZlcmxheVk6IFwidG9wXCIgfSwgMCwgNCksXG4gICAgICBuZXcgQ29ubmVjdGlvblBvc2l0aW9uUGFpcih7IG9yaWdpblg6IFwiZW5kXCIsIG9yaWdpblk6IFwiYm90dG9tXCIgfSwgeyBvdmVybGF5WDogXCJlbmRcIiwgb3ZlcmxheVk6IFwidG9wXCIgfSwgMCwgNClcbiAgICBdO1xuICAgIGNvbnN0IHBvc2l0aW9uc1RvcCA9IFtcbiAgICAgIG5ldyBDb25uZWN0aW9uUG9zaXRpb25QYWlyKHsgb3JpZ2luWDogXCJzdGFydFwiLCBvcmlnaW5ZOiBcInRvcFwiIH0sIHsgb3ZlcmxheVg6IFwic3RhcnRcIiwgb3ZlcmxheVk6IFwiYm90dG9tXCIgfSwgMCwgLTQpLFxuICAgICAgbmV3IENvbm5lY3Rpb25Qb3NpdGlvblBhaXIoeyBvcmlnaW5YOiBcImVuZFwiLCBvcmlnaW5ZOiBcInRvcFwiIH0sIHsgb3ZlcmxheVg6IFwiZW5kXCIsIG92ZXJsYXlZOiBcImJvdHRvbVwiIH0sIDAsIC00KVxuICAgIF07XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMub3ZlcmxheVxuICAgICAgLnBvc2l0aW9uKClcbiAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKG9yaWdpbilcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAgLi4uKHRoaXMuZHJvcGRvd25MaXN0UG9zaXRpb24gPT09IFwiUmlnaHRcIiA/IHBvc2l0aW9uc0JvdHRvbS5yZXZlcnNlKCkgOiBwb3NpdGlvbnNCb3R0b20pLFxuICAgICAgICAuLi4odGhpcy5kcm9wZG93bkxpc3RQb3NpdGlvbiA9PT0gXCJSaWdodFwiID8gcG9zaXRpb25zVG9wLnJldmVyc2UoKSA6IHBvc2l0aW9uc1RvcClcbiAgICAgIF0pXG4gICAgICAud2l0aFB1c2godHJ1ZSk7XG4gICAgY29uc3QgY29uZmlncyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgYmFja2Ryb3BDbGFzczogXCJjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcFwiLFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICB3aWR0aDogb3JpZ2luPy5jbGllbnRXaWR0aFxuICAgIH0pO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlncyk7XG4gICAgaWYgKHRoaXMuZHJvcGRvd25MaXN0V2lkdGgpIHRoaXMub3ZlcmxheVJlZj8udXBkYXRlU2l6ZSh7IHdpZHRoOiB0aGlzLmRyb3Bkb3duTGlzdFdpZHRoIH0pO1xuICAgIGlmICh0aGlzLmRyb3Bkb3duTGlzdEhlaWdodCkgdGhpcy5vdmVybGF5UmVmPy51cGRhdGVTaXplKHsgaGVpZ2h0OiB0aGlzLmRyb3Bkb3duTGlzdEhlaWdodCB9KTtcbiAgICB0aGlzLm92ZXJsYXlSZWY/LmF0dGFjaChuZXcgVGVtcGxhdGVQb3J0YWwodGVtcGxhdGUsIHRoaXMudmlld0NvbnRhaW5lclJlZikpO1xuICAgIHRoaXMub3ZlcmxheVJlZj8uYmFja2Ryb3BDbGljaygpPy5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIHRoaXMub25DYW5jZWwoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGZpbHRlckJ5VmFsdWUoYXJyYXk6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtW10sIHN0cmluZzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGFycmF5Py5maWx0ZXIobyA9PiBvPy5sYWJlbD8udG9Mb3dlckNhc2UoKT8uaW5jbHVkZXMoc3RyaW5nPy50b0xvd2VyQ2FzZSgpKSkgfHwgW107XG4gIH1cblxuICBzZWFyY2hJbnB1dE9uQ2hhbmdlKG5ld1ZhbHVlKSB7XG4gICAgdGhpcy5zZWFyY2hJbnB1dCA9IG5ld1ZhbHVlO1xuICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgdGhpcy5zZWFyY2hEYXRhID0gdGhpcy5maWx0ZXJCeVZhbHVlKHRoaXMubG9jYWxEYXRhLCBuZXdWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VhcmNoRGF0YSA9IFtdO1xuICAgICAgdGhpcy5zZWFyY2hJbnB1dCA9IFwiXCI7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0VmFsdWVzKGFycmF5OiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbVtdKSB7XG4gICAgbGV0IHNvcnRlZEFycmF5ID0gYXJyYXkgfHwgW107XG4gICAgaWYgKHRoaXMub3B0aW9ucz8uc29ydExhYmVscykge1xuICAgICAgY29uc3QgY2hlY2tlZFZhbHVlcyA9IGFycmF5XG4gICAgICAgID8uZmlsdGVyKGEgPT4gYT8uY2hlY2tlZClcbiAgICAgICAgPy5zb3J0KChhOiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbSwgYjogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW0pID0+IChhPy5sYWJlbCA+IGI/LmxhYmVsID8gMSA6IGI/LmxhYmVsID4gYT8ubGFiZWwgPyAtMSA6IDApKSB8fCBbXTtcbiAgICAgIGNvbnN0IHVuQ2hlY2tlZFZhbHVlcyA9IGFycmF5XG4gICAgICAgID8uZmlsdGVyKGEgPT4gIWE/LmNoZWNrZWQpXG4gICAgICAgID8uc29ydCgoYTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW0sIGI6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtKSA9PiAoYT8ubGFiZWwgPiBiPy5sYWJlbCA/IDEgOiBiPy5sYWJlbCA+IGE/LmxhYmVsID8gLTEgOiAwKSkgfHwgW107XG4gICAgICBzb3J0ZWRBcnJheSA9IFsuLi5jaGVja2VkVmFsdWVzLCAuLi51bkNoZWNrZWRWYWx1ZXNdPy5maWx0ZXIodCA9PiB0Py52YWx1ZSAhPT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0pIHx8IFtdO1xuICAgIH1cbiAgICBpZiAoIXNvcnRlZEFycmF5Py5zb21lKG9wdGlvbiA9PiBvcHRpb24/LnZhbHVlID09PSB0aGlzLlNFTEVDVF9BTExfRU5VTSkgJiYgdGhpcy5lbmFibGVTZWxlY3RBbGwgJiYgc29ydGVkQXJyYXk/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHNvcnRlZEFycmF5Py51bnNoaWZ0KHtcbiAgICAgICAgbGFiZWw6IFwiU2VsZWN0IGFsbFwiLFxuICAgICAgICB2YWx1ZTogdGhpcy5TRUxFQ1RfQUxMX0VOVU0sXG4gICAgICAgIGNoZWNrZWQ6IHNvcnRlZEFycmF5Py5ldmVyeSh5ID0+IHk/LmNoZWNrZWQpXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNvcnRlZEFycmF5O1xuICB9XG5cbiAgdG9nZ2xlU2VsZWN0ZWRJdGVtcyhldmVudCwgaXRlbTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW0pIHtcbiAgICBldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgaWYgKHRoaXMuZW5hYmxlU2VsZWN0QWxsICYmIGl0ZW0/LnZhbHVlID09PSB0aGlzLlNFTEVDVF9BTExfRU5VTSkge1xuICAgICAgdGhpcy5sb2NhbERhdGEgPSB0aGlzLmxvY2FsRGF0YT8ubWFwKHQgPT4gKHtcbiAgICAgICAgLi4udCxcbiAgICAgICAgY2hlY2tlZDogIWl0ZW0/LmNoZWNrZWRcbiAgICAgIH0pKSB8fCBbXTtcbiAgICAgIGlmICh0aGlzLmhpZGVBcHBseUJ1dHRvbikge1xuICAgICAgICB0aGlzLmFwcGx5RmlsdGVycygpO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaXRlbT8uY2hlY2tlZCkge1xuICAgICAgdGhpcy5sb2NhbERhdGEgPSBbXG4gICAgICAgIC4uLnRoaXMubG9jYWxEYXRhPy5tYXAoYSA9PiB7XG4gICAgICAgICAgaWYgKGE/LnZhbHVlID09PSBpdGVtPy52YWx1ZSB8fCBhPy52YWx1ZSA9PT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0pIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLmEsXG4gICAgICAgICAgICAgIGNoZWNrZWQ6IGZhbHNlXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYTtcbiAgICAgICAgfSkgfHwgW11cbiAgICAgIF07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9jYWxEYXRhID0gW1xuICAgICAgICAuLi50aGlzLmxvY2FsRGF0YT8ubWFwKGEgPT4ge1xuICAgICAgICAgIGlmIChhPy52YWx1ZSA9PT0gaXRlbT8udmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLmEsXG4gICAgICAgICAgICAgIGNoZWNrZWQ6IHRydWVcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBhO1xuICAgICAgICB9KSB8fCBbXVxuICAgICAgXTtcbiAgICAgIGlmICh0aGlzLmVuYWJsZVNlbGVjdEFsbCAmJiB0aGlzLmxvY2FsRGF0YT8uZmlsdGVyKHIgPT4gcj8udmFsdWUgIT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNKT8uZXZlcnkodCA9PiB0Py5jaGVja2VkKSkge1xuICAgICAgICB0aGlzLmxvY2FsRGF0YSA9IFtcbiAgICAgICAgICAuLi50aGlzLmxvY2FsRGF0YT8ubWFwKGEgPT4ge1xuICAgICAgICAgICAgaWYgKGE/LnZhbHVlID09PSB0aGlzLlNFTEVDVF9BTExfRU5VTSkge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLmEsXG4gICAgICAgICAgICAgICAgY2hlY2tlZDogdHJ1ZVxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGE7XG4gICAgICAgICAgfSkgfHwgW11cbiAgICAgICAgXTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuc2VhcmNoRW5hYmxlZCkge1xuICAgICAgdGhpcy5zZWFyY2hJbnB1dE9uQ2hhbmdlKHRoaXMuc2VhcmNoSW5wdXQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5oaWRlQXBwbHlCdXR0b24pIHtcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXJzKCk7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlGaWx0ZXJzKCkge1xuICAgIHRoaXMub25DaGFuZ2U/LmVtaXQoXG4gICAgICB0aGlzLmxvY2FsRGF0YVxuICAgICAgICA/LmZpbHRlcihhID0+IHtcbiAgICAgICAgICByZXR1cm4gYT8uY2hlY2tlZCAmJiBhPy52YWx1ZSAhPT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU07XG4gICAgICAgIH0pXG4gICAgICAgID8ubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgIGNvbnN0IHsgY2hlY2tlZCwgLi4uZGF0YSB9ID0gaXRlbSB8fCB7fTtcbiAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgfSkgfHwgW11cbiAgICApO1xuICAgIGlmICghdGhpcy5oaWRlQXBwbHlCdXR0b24pIHtcbiAgICAgIHRoaXMub25DYW5jZWwoKTtcbiAgICB9XG4gIH1cblxuICBvblJlc2V0KCkge1xuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBmYWxzZTtcbiAgICB0aGlzLm9uQ2hhbmdlPy5lbWl0KFtdKTtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBcIlwiO1xuICB9XG5cbiAgb25DYW5jZWwoKSB7XG4gICAgdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCA9IGZhbHNlO1xuICAgIHRoaXMubG9jYWxEYXRhID0gdGhpcy5sb2NhbERhdGE/Lm1hcChhID0+IHtcbiAgICAgIGlmICh0aGlzLmxvY2FsU2VsZWN0ZWRJdGVtcz8uc29tZShiID0+IGI/LnZhbHVlID09PSBhPy52YWx1ZSAmJiBTdHJpbmcoYj8uY2hlY2tlZCkgIT09IFN0cmluZyhhPy5jaGVja2VkKSkpIHtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZihhPy52YWx1ZSAhPT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0gJiYgdGhpcy5oaWRlQXBwbHlCdXR0b24pe1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5hLFxuICAgICAgICAgICAgY2hlY2tlZDogZmFsc2VcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfVxuICAgIH0pIHx8IFtdO1xuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5zZWFyY2hJbnB1dCA9IFwiXCI7XG4gICAgdGhpcy5vdmVybGF5UmVmPy5kZXRhY2goKTtcbiAgICB0aGlzLnNlYXJjaElucHV0ID0gXCJcIjtcbiAgfVxufVxuZXhwb3J0IGludGVyZmFjZSBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGNoZWNrZWQ/OiBib29sZWFuO1xuICBpY29uPzogc3RyaW5nO1xuICBkaXNhYmxlZD86Ym9vbGVhblxufVxuZXhwb3J0IGludGVyZmFjZSBPUFRJT05TIHtcbiAgc29ydExhYmVsczogYm9vbGVhbjtcbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjb250YWluZXJcIlxuICBbbmdTdHlsZV09XCJ7XG4gICAgaGVpZ2h0OiBoZWlnaHQubGVuZ3RoID4gMCA/IGhlaWdodCA6ICcnLFxuICAgIHdpZHRoOiB3aWR0aC5sZW5ndGggPiAwID8gd2lkdGggOiAnJ1xuICB9XCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZHJvcGRvd25cIlxuICAgICNzZWxlY3RcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIChrZXl1cC5lbnRlcik9XCJ0b2dnbGVEcm9wZG93bigpXCJcbiAgICAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgW25nU3R5bGVdPVwieyBiYWNrZ3JvdW5kOiBpc09wZW4gPyAnI0U2RUJGNycgOiAnJyB9XCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjdXN0b21MYWJlbFRlbXBsYXRlXCI+XG4gICAgICA8cCBjbGFzcz1cInRleHRcIj57eyBsYWJlbCB9fTwvcD5cbiAgICAgIDxwICpuZ0lmPVwic2hvd1NlbGVjdGVkQ291bnQgJiYgbG9jYWxTZWxlY3RlZEl0ZW1zPy5sZW5ndGggPiAwXCIgY2xhc3M9XCJjb3VudFwiPlxuICAgICAgICB7eyBsb2NhbFNlbGVjdGVkSXRlbXM/Lmxlbmd0aCB9fVxuICAgICAgPC9wPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXN0b21MYWJlbFRlbXBsYXRlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tTGFiZWxUZW1wbGF0ZVwiPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJoYW5kbGVcIlxuICAgICAgW25nU3R5bGVdPVwieyB0cmFuc2Zvcm06IGlzT3BlbiA/ICdyb3RhdGUoMTgwZGVnKScgOiAncm90YXRlKDBkZWcpJyB9XCJcbiAgICAgIHdpZHRoPVwiMjBcIlxuICAgICAgaGVpZ2h0PVwiMjBcIlxuICAgICAgdmlld0JveD1cIjAgMCAyMCAyMFwiXG4gICAgICBmaWxsPVwibm9uZVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgIGQ9XCJNMTMuODI1IDcuMTU4NDVMMTAgMTAuOTc1MUw2LjE3NSA3LjE1ODQ1TDUgOC4zMzM0NUwxMCAxMy4zMzM0TDE1IDguMzMzNDVMMTMuODI1IDcuMTU4NDVaXCJcbiAgICAgICAgZmlsbD1cIiMxODFGMzNcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgPC9kaXY+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjcG9wdXBDb250YWluZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInBvcHVwLWNvbnRhaW5lclwiXG4gICAgW25nU3R5bGVdPVwie1xuICAgICAgJ2hlaWdodCc6IGRyb3Bkb3duTGlzdEhlaWdodCxcbiAgICAgIHdpZHRoOiBkcm9wZG93bkxpc3RXaWR0aFxuICAgIH1cIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdwb3NpdGlvbi1sZWZ0JzogZHJvcGRvd25MaXN0UG9zaXRpb24gPT09ICdMZWZ0JyxcbiAgICAgICdwb3NpdGlvbi1yaWdodCc6IGRyb3Bkb3duTGlzdFBvc2l0aW9uID09PSAnUmlnaHQnXG4gICAgfVwiXG4gID5cbiAgICAgIDxkaXYgKm5nSWY9XCJzZWFyY2hFbmFibGVkXCIgY2xhc3M9XCJzZWFyY2gtY29udGFpbmVyXCI+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAqbmdJZj1cIiFpc1NlYXJjaElucHV0Rm9jdXNlZFwiXG4gICAgICAgICAgY2xhc3M9XCJzZWFyY2gtaWNvblwiXG4gICAgICAgICAgd2lkdGg9XCIyNFwiXG4gICAgICAgICAgaGVpZ2h0PVwiMjRcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgZD1cIk00LjIxNTA4IDExLjE0NTZDNC4yMTUwOCA3LjMxNzkgNy4zMzcyMiA0LjIxMTY1IDExLjE5MjYgNC4yMTE2NUMxNS4wNDggNC4yMTE2NSAxOC4xNzAyIDcuMzE3OSAxOC4xNzAyIDExLjE0NTZDMTguMTcwMiAxMi42OTMxIDE3LjY1OTkgMTQuMTIyNiAxNi43OTcyIDE1LjI3NjdMMTUuMzY4NSAxNi43MDEzQzE0LjIwNDQgMTcuNTY2OCAxMi43NTkgMTguMDc5NiAxMS4xOTI2IDE4LjA3OTZDNy4zMzcyMiAxOC4wNzk2IDQuMjE1MDggMTQuOTczNCA0LjIxNTA4IDExLjE0NTZaTTE1Ljk0MjEgMTcuNzgzNUMxNC42MDIxIDE4LjczMjkgMTIuOTYyNyAxOS4yOTEzIDExLjE5MjYgMTkuMjkxM0M2LjY2OTc3IDE5LjI5MTMgMyAxNS42NDYxIDMgMTEuMTQ1NkMzIDYuNjQ1MTIgNi42Njk3NyAzIDExLjE5MjYgM0MxNS43MTU1IDMgMTkuMzg1MiA2LjY0NTEyIDE5LjM4NTIgMTEuMTQ1NkMxOS4zODUyIDEyLjkzNzEgMTguODAzNyAxNC41OTMxIDE3LjgxODQgMTUuOTM3NUwxOS44MzYxIDE3LjQwNDhDMjAuNjcwNSAxNy45MTIgMjEuNzU1NCAxOC42NTQzIDIwLjI0NTQgMjAuMjE1QzE4LjczNTMgMjEuNzc1NiAxOC4wMDk5IDIwLjY2NjMgMTcuNDk5MSAxOS44MzY0TDE1Ljk0MjEgMTcuNzgzNVpcIlxuICAgICAgICAgICAgZmlsbD1cIiM2QTczN0RcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2hJbnB1dFwiXG4gICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgcGFkZGluZ0xlZnQ6IGlzU2VhcmNoSW5wdXRGb2N1c2VkID8gJzEycHgnIDogJzQ1cHgnLFxuICAgICAgICAgICAgYm9yZGVyOiBpc1NlYXJjaElucHV0Rm9jdXNlZCA/ICcxcHggc29saWQgIzA5MzdCMicgOiAnMXB4IHNvbGlkICNlMGUwZTAnLFxuICAgICAgICAgICAgcGFkZGluZ1JpZ2h0OiBpc1NlYXJjaElucHV0Rm9jdXNlZCA/ICc0NXB4JyA6ICcxMHB4J1xuICAgICAgICAgIH1cIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaElucHV0T25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImlzU2VhcmNoSW5wdXRGb2N1c2VkID8gJycgOiBzZWFyY2hJbnB1dFBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAoZm9jdXMpPVwic2VhcmNoSW5wdXRGb2N1c2VkKHRydWUpXCJcbiAgICAgICAgICBjbGFzcz1cInNlYXJjaC1pbnB1dFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICAqbmdJZj1cImlzU2VhcmNoSW5wdXRGb2N1c2VkXCJcbiAgICAgICAgICBjbGFzcz1cImNhbmNlbC1pY29uXCJcbiAgICAgICAgICAoY2xpY2spPVwic2VhcmNoSW5wdXRDYW5jZWxlZCgkZXZlbnQpXCJcbiAgICAgICAgICB3aWR0aD1cIjI0XCJcbiAgICAgICAgICBoZWlnaHQ9XCIyNFwiXG4gICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICBkPVwiTTguODc0NDYgNy4zMjE0NEM4LjQ0NTg4IDYuODkyODUgNy43NTEgNi44OTI4NSA3LjMyMjQyIDcuMzIxNDRDNi44OTM4MyA3Ljc1MDAyIDYuODkzODMgOC40NDQ5IDcuMzIyNDIgOC44NzM0OUwxMC40NDg4IDExLjk5OTlMNy4zMjM1NyAxNS4xMjUyQzYuODk0OTggMTUuNTUzOCA2Ljg5NDk4IDE2LjI0ODYgNy4zMjM1NyAxNi42NzcyQzcuNzUyMTUgMTcuMTA1OCA4LjQ0NzAzIDE3LjEwNTggOC44NzU2MSAxNi42NzcyTDEyLjAwMDkgMTMuNTUyTDE1LjEyNjEgMTYuNjc3MkMxNS41NTQ3IDE3LjEwNTggMTYuMjQ5NiAxNy4xMDU4IDE2LjY3ODEgMTYuNjc3MkMxNy4xMDY3IDE2LjI0ODYgMTcuMTA2NyAxNS41NTM3IDE2LjY3ODEgMTUuMTI1MUwxMy41NTI5IDExLjk5OTlMMTYuNjc5MyA4Ljg3MzU0QzE3LjEwNzkgOC40NDQ5NiAxNy4xMDc5IDcuNzUwMDggMTYuNjc5MyA3LjMyMTVDMTYuMjUwNyA2Ljg5MjkxIDE1LjU1NTggNi44OTI5MSAxNS4xMjczIDcuMzIxNUwxMi4wMDA5IDEwLjQ0NzlMOC44NzQ0NiA3LjMyMTQ0WlwiXG4gICAgICAgICAgICBmaWxsPVwiIzZBNzM3RFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9zdmc+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpdGVtc1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJpdGVtXCJcbiAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJ0b2dnbGVTZWxlY3RlZEl0ZW1zKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVTZWxlY3RlZEl0ZW1zKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNlYXJjaElucHV0ID8gc2VhcmNoRGF0YSA6IGxvY2FsRGF0YVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6aXRlbS5kaXNhYmxlZH1cIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrYm94LWNvbnRhaW5lci13cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3gtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgIDxtaXMtY2hlY2tib3ggW2NoZWNrZWRdPVwiaXRlbS5jaGVja2VkXCIgdGFiaW5kZXg9XCItMVwiPjwvbWlzLWNoZWNrYm94PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8cCBjbGFzcz1cImxhYmVsXCI+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWluZXJcIiAqbmdJZj1cIml0ZW0uaWNvblwiPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cImljb25cIiBbc3JjXT1cIml0ZW0uaWNvblwiIGFsdD1cIm5vIGltZ1wiIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibm9EYXRhXCIgKm5nSWY9XCIoc2VhcmNoSW5wdXQgPyBzZWFyY2hEYXRhIDogbG9jYWxEYXRhKS5sZW5ndGggPT09IDBcIj5cbiAgICAgICAgICB7eyBzZWFyY2hJbnB1dCA9PT0gXCJcIiA/IG5vRGF0YU1lc3NhZ2UgOiBcIk5vIHJlc3VsdHNcIiB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJsb2NhbERhdGEubGVuZ3RoICE9PSAwICYmICFoaWRlQXBwbHlCdXR0b25cIiBjbGFzcz1cImFjdGlvbnMtY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IFtuZ1N0eWxlXT1cInsnd2lkdGgnOiAnY2FsYyg1MCUgLSA0cHgpJ31cIiAoY2xpY2spPVwib25SZXNldCgpXCI+XG4gICAgICAgIDxtaXMtYnV0dG9uIFtuYW1lXT1cIidSZXNldCdcIiBbdHlwZV09XCInVGV4dCdcIiBbd2lkdGhdPVwiJzEwMCUnXCIgPjwvbWlzLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogJ2NhbGMoNTAlIC0gNHB4KSd9XCIgKGNsaWNrKT1cImFwcGx5RmlsdGVycygpXCI+XG4gICAgICAgIDxtaXMtYnV0dG9uIFtuYW1lXT1cIidBcHBseSdcIiBbdHlwZV09XCInU29saWQnXCIgW3dpZHRoXT1cIicxMDAlJ1wiID48L21pcy1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
489
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL211bHRpLXNlbGVjdC1kcm9wZG93bi9tdWx0aS1zZWxlY3QtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvbXVsdGktc2VsZWN0LWRyb3Bkb3duL211bHRpLXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQWtCLE1BQU0sRUFBZSxTQUFTLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQzdJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQXVCLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNnQjVGLDZCQUE2RTtJQUMzRSxZQUNGO0lBQUEsaUJBQUk7OztJQURGLGNBQ0Y7SUFERSw0R0FDRjs7O0lBSkEsNkJBQTJDO0lBQzNDLDRCQUFnQjtJQUFBLFlBQVc7SUFBQSxpQkFBSTtJQUMvQix3RkFBNkU7Ozs7SUFEN0QsZUFBVztJQUFYLGtDQUFXO0lBQ3ZCLGNBQXlEO0lBQXpELG9JQUF5RDs7O0lBSzdELHdCQUNlOzs7SUFGakIsNkJBQTBDO0lBQ3hDLCtHQUFzRDs7OztJQUF2QyxjQUFxQztJQUFyQyw2REFBcUM7Ozs7SUFtQ2xELCtCQVFDO0lBQ0MsMkJBS0U7SUFDSixpQkFBTTs7Ozs7SUFhTiwrQkFTQztJQU5DLHFOQUFTLGtDQUEyQixLQUFDO0lBT3JDLDJCQUtFO0lBQ0osaUJBQU07Ozs7SUE3Q1IsK0JBQW9EO0lBQ2xELHVHQVFDO0lBUUQsaUNBV0U7SUFGQSxBQUZBLDROQUFpQixrQ0FBMkIs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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgTmdab25lLCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvcG9ydGFsXCI7XG5pbXBvcnQgeyBPdmVybGF5UmVmLCBPdmVybGF5LCBDb25uZWN0aW9uUG9zaXRpb25QYWlyLCBPdmVybGF5Q29uZmlnIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWlzLW11bHRpLXNlbGVjdC1kcm9wZG93blwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL211bHRpLXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vbXVsdGktc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzZWFyY2hJbnB1dDogc3RyaW5nID0gXCJcIjtcbiAgaXNPcGVuID0gZmFsc2U7XG4gIGxvY2FsU2VsZWN0ZWRJdGVtczogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSA9IFtdO1xuICBsb2NhbERhdGE6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtW10gPSBbXTtcbiAgc2VhcmNoRGF0YTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSA9IFtdO1xuICBpc1NlYXJjaElucHV0Rm9jdXNlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBTRUxFQ1RfQUxMX0VOVU0gPSBcIlNFTEVDVF9BTExfRU5BQkxFRFwiO1xuICBASW5wdXQoKSBzZXQgZGF0YSh2YWx1ZXM6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtW10pIHtcbiAgICB0aGlzLmxvY2FsRGF0YSA9IHZhbHVlcz8ubWFwKGl0ZW0gPT4ge1xuICAgICAgcmV0dXJuIHsgLi4uaXRlbSwgY2hlY2tlZDogZmFsc2UgfTtcbiAgICB9KSB8fCBbXTtcbiAgfVxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gXCJTZWxlY3RcIjtcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSBcIlwiO1xuICBASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgZHJvcGRvd25MaXN0SGVpZ2h0OiBzdHJpbmcgPSBcIlwiO1xuICBASW5wdXQoKSBkcm9wZG93bkxpc3RXaWR0aDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgZHJvcGRvd25MaXN0UG9zaXRpb246IFwiTGVmdFwiIHwgXCJSaWdodFwiID0gXCJMZWZ0XCI7XG4gIEBJbnB1dCgpIGVuYWJsZVNlbGVjdEFsbDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzZWFyY2hFbmFibGVkOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd1NlbGVjdGVkQ291bnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbm9EYXRhTWVzc2FnZTogc3RyaW5nID0gXCJObyBEYXRhXCI7XG4gIEBJbnB1dCgpIG9wdGlvbnM6IE9QVElPTlMgPSB7XG4gICAgc29ydExhYmVsczogdHJ1ZVxuICB9O1xuICBASW5wdXQoKSBzZXQgc2VsZWN0ZWRJdGVtcyh2YWx1ZXM6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtW10pIHtcbiAgICB0aGlzLmhhbmRsZXJTZXRMb2NhbFNlbGVjdGVkSXRlbXModmFsdWVzKTtcbiAgfVxuICBASW5wdXQoKSBoaWRlQXBwbHlCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2VhcmNoSW5wdXRQbGFjZWhvbGRlcjogc3RyaW5nID0gXCJTZWFyY2ggS2V5d29yZFwiO1xuICBASW5wdXQoKSBjdXN0b21MYWJlbFRlbXBsYXRlIDogVGVtcGxhdGVSZWY8YW55PjtcbiAgQE91dHB1dCgpIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKFwic2VsZWN0XCIsIHsgc3RhdGljOiBmYWxzZSB9KSBzZWxlY3RFbGVtZW50OiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKFwicG9wdXBDb250YWluZXJcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcHVwQ29udGFpbmVyOiBUZW1wbGF0ZVJlZjxFbGVtZW50PjtcbiAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZVJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LCBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHt9XG4gIG5nT25Jbml0KCkge31cblxuICBoYW5kbGVyU2V0TG9jYWxTZWxlY3RlZEl0ZW1zKHZhbHVlcykge1xuICAgIHRoaXMubG9jYWxTZWxlY3RlZEl0ZW1zID0gdmFsdWVzIHx8IFtdO1xuICAgIHRoaXMubG9jYWxEYXRhID0gdGhpcy5sb2NhbERhdGE/Lm1hcChpdGVtID0+IHtcbiAgICAgIGlmIChpdGVtPy52YWx1ZSA9PT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0gICYmIHZhbHVlcz8ubGVuZ3RoID09PSB0aGlzLmxvY2FsRGF0YT8ubGVuZ3RoLTEpIHtcbiAgICAgICAgcmV0dXJuIHsgLi4uaXRlbSwgY2hlY2tlZDogdHJ1ZSB9O1xuICAgICAgfVxuICAgICAgaWYgKHZhbHVlcz8uc29tZShiYXNlID0+IGJhc2U/LnZhbHVlID09PSBpdGVtPy52YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIHsgLi4uaXRlbSwgY2hlY2tlZDogdHJ1ZSB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYoaXRlbT8udmFsdWUgIT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNIHx8ICF0aGlzLmhpZGVBcHBseUJ1dHRvbil7XG4gICAgICAgICAgcmV0dXJuIHsgLi4uaXRlbSwgY2hlY2tlZDogZmFsc2UgfTtcbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pIHx8IFtdO1xuICAgIHRoaXMubG9jYWxEYXRhID0gdGhpcy5mb3JtYXRWYWx1ZXModGhpcy5sb2NhbERhdGEpO1xuICB9XG5cbiAgc2VhcmNoSW5wdXRGb2N1c2VkKGlzRm9jdXNlZDogYm9vbGVhbikge1xuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBpc0ZvY3VzZWQ7XG4gIH1cblxuICBzZWFyY2hJbnB1dENhbmNlbGVkKGV2ZW50KSB7XG4gICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBcIlwiO1xuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHRvZ2dsZURyb3Bkb3duKCkge1xuICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcbiAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICB0aGlzLmhhbmRsZXJTZXRMb2NhbFNlbGVjdGVkSXRlbXModGhpcy5sb2NhbFNlbGVjdGVkSXRlbXMpO1xuICAgICAgICB0aGlzLmxvY2FsRGF0YSA9IHRoaXMuZm9ybWF0VmFsdWVzKHRoaXMubG9jYWxEYXRhKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmlzT3BlbikgdGhpcy5vcGVuRHJvcGRvd24odGhpcy5wb3B1cENvbnRhaW5lciwgdGhpcy5zZWxlY3RFbGVtZW50Py5uYXRpdmVFbGVtZW50KTtcbiAgICAgIGVsc2UgdGhpcy5vbkNhbmNlbCgpO1xuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIG9wZW5Ecm9wZG93bih0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8RWxlbWVudD4sIG9yaWdpbjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwb3NpdGlvbnNCb3R0b20gPSBbXG4gICAgICBuZXcgQ29ubmVjdGlvblBvc2l0aW9uUGFpcih7IG9yaWdpblg6IFwic3RhcnRcIiwgb3JpZ2luWTogXCJib3R0b21cIiB9LCB7IG92ZXJsYXlYOiBcInN0YXJ0XCIsIG92ZXJsYXlZOiBcInRvcFwiIH0sIDAsIDQpLFxuICAgICAgbmV3IENvbm5lY3Rpb25Qb3NpdGlvblBhaXIoeyBvcmlnaW5YOiBcImVuZFwiLCBvcmlnaW5ZOiBcImJvdHRvbVwiIH0sIHsgb3ZlcmxheVg6IFwiZW5kXCIsIG92ZXJsYXlZOiBcInRvcFwiIH0sIDAsIDQpXG4gICAgXTtcbiAgICBjb25zdCBwb3NpdGlvbnNUb3AgPSBbXG4gICAgICBuZXcgQ29ubmVjdGlvblBvc2l0aW9uUGFpcih7IG9yaWdpblg6IFwic3RhcnRcIiwgb3JpZ2luWTogXCJ0b3BcIiB9LCB7IG92ZXJsYXlYOiBcInN0YXJ0XCIsIG92ZXJsYXlZOiBcImJvdHRvbVwiIH0sIDAsIC00KSxcbiAgICAgIG5ldyBDb25uZWN0aW9uUG9zaXRpb25QYWlyKHsgb3JpZ2luWDogXCJlbmRcIiwgb3JpZ2luWTogXCJ0b3BcIiB9LCB7IG92ZXJsYXlYOiBcImVuZFwiLCBvdmVybGF5WTogXCJib3R0b21cIiB9LCAwLCAtNClcbiAgICBdO1xuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhvcmlnaW4pXG4gICAgICAud2l0aFBvc2l0aW9ucyhbXG4gICAgICAgIC4uLih0aGlzLmRyb3Bkb3duTGlzdFBvc2l0aW9uID09PSBcIlJpZ2h0XCIgPyBwb3NpdGlvbnNCb3R0b20ucmV2ZXJzZSgpIDogcG9zaXRpb25zQm90dG9tKSxcbiAgICAgICAgLi4uKHRoaXMuZHJvcGRvd25MaXN0UG9zaXRpb24gPT09IFwiUmlnaHRcIiA/IHBvc2l0aW9uc1RvcC5yZXZlcnNlKCkgOiBwb3NpdGlvbnNUb3ApXG4gICAgICBdKVxuICAgICAgLndpdGhQdXNoKHRydWUpO1xuICAgIGNvbnN0IGNvbmZpZ3MgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6IFwiY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BcIixcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgd2lkdGg6IG9yaWdpbj8uY2xpZW50V2lkdGhcbiAgICB9KTtcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKGNvbmZpZ3MpO1xuICAgIGlmICh0aGlzLmRyb3Bkb3duTGlzdFdpZHRoKSB0aGlzLm92ZXJsYXlSZWY/LnVwZGF0ZVNpemUoeyB3aWR0aDogdGhpcy5kcm9wZG93bkxpc3RXaWR0aCB9KTtcbiAgICBpZiAodGhpcy5kcm9wZG93bkxpc3RIZWlnaHQpIHRoaXMub3ZlcmxheVJlZj8udXBkYXRlU2l6ZSh7IGhlaWdodDogdGhpcy5kcm9wZG93bkxpc3RIZWlnaHQgfSk7XG4gICAgdGhpcy5vdmVybGF5UmVmPy5hdHRhY2gobmV3IFRlbXBsYXRlUG9ydGFsKHRlbXBsYXRlLCB0aGlzLnZpZXdDb250YWluZXJSZWYpKTtcbiAgICB0aGlzLm92ZXJsYXlSZWY/LmJhY2tkcm9wQ2xpY2soKT8uc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICB0aGlzLm9uQ2FuY2VsKCk7XG4gICAgfSk7XG4gIH1cblxuICBmaWx0ZXJCeVZhbHVlKGFycmF5OiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbVtdLCBzdHJpbmc6IHN0cmluZykge1xuICAgIHJldHVybiBhcnJheT8uZmlsdGVyKG8gPT4gbz8ubGFiZWw/LnRvTG93ZXJDYXNlKCk/LmluY2x1ZGVzKHN0cmluZz8udG9Mb3dlckNhc2UoKSkpIHx8IFtdO1xuICB9XG5cbiAgc2VhcmNoSW5wdXRPbkNoYW5nZShuZXdWYWx1ZSkge1xuICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBuZXdWYWx1ZTtcbiAgICBpZiAobmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuc2VhcmNoRGF0YSA9IHRoaXMuZmlsdGVyQnlWYWx1ZSh0aGlzLmxvY2FsRGF0YSwgbmV3VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlYXJjaERhdGEgPSBbXTtcbiAgICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBcIlwiO1xuICAgIH1cbiAgfVxuXG4gIGZvcm1hdFZhbHVlcyhhcnJheTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW1bXSkge1xuICAgIGxldCBzb3J0ZWRBcnJheSA9IGFycmF5IHx8IFtdO1xuICAgIGlmICh0aGlzLm9wdGlvbnM/LnNvcnRMYWJlbHMpIHtcbiAgICAgIGNvbnN0IGNoZWNrZWRWYWx1ZXMgPSBhcnJheVxuICAgICAgICA/LmZpbHRlcihhID0+IGE/LmNoZWNrZWQpXG4gICAgICAgID8uc29ydCgoYTogTXVsdGlTZWxlY3REcm9wZG93bkl0ZW0sIGI6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtKSA9PiAoYT8ubGFiZWwgPiBiPy5sYWJlbCA/IDEgOiBiPy5sYWJlbCA+IGE/LmxhYmVsID8gLTEgOiAwKSkgfHwgW107XG4gICAgICBjb25zdCB1bkNoZWNrZWRWYWx1ZXMgPSBhcnJheVxuICAgICAgICA/LmZpbHRlcihhID0+ICFhPy5jaGVja2VkKVxuICAgICAgICA/LnNvcnQoKGE6IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtLCBiOiBNdWx0aVNlbGVjdERyb3Bkb3duSXRlbSkgPT4gKGE/LmxhYmVsID4gYj8ubGFiZWwgPyAxIDogYj8ubGFiZWwgPiBhPy5sYWJlbCA/IC0xIDogMCkpIHx8IFtdO1xuICAgICAgc29ydGVkQXJyYXkgPSBbLi4uY2hlY2tlZFZhbHVlcywgLi4udW5DaGVja2VkVmFsdWVzXT8uZmlsdGVyKHQgPT4gdD8udmFsdWUgIT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNKSB8fCBbXTtcbiAgICB9XG4gICAgaWYgKCFzb3J0ZWRBcnJheT8uc29tZShvcHRpb24gPT4gb3B0aW9uPy52YWx1ZSA9PT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0pICYmIHRoaXMuZW5hYmxlU2VsZWN0QWxsICYmIHNvcnRlZEFycmF5Py5sZW5ndGggPiAwKSB7XG4gICAgICBzb3J0ZWRBcnJheT8udW5zaGlmdCh7XG4gICAgICAgIGxhYmVsOiBcIlNlbGVjdCBhbGxcIixcbiAgICAgICAgdmFsdWU6IHRoaXMuU0VMRUNUX0FMTF9FTlVNLFxuICAgICAgICBjaGVja2VkOiBzb3J0ZWRBcnJheT8uZXZlcnkoeSA9PiB5Py5jaGVja2VkKVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBzb3J0ZWRBcnJheTtcbiAgfVxuXG4gIHRvZ2dsZVNlbGVjdGVkSXRlbXMoZXZlbnQsIGl0ZW06IE11bHRpU2VsZWN0RHJvcGRvd25JdGVtKSB7XG4gICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGlmICh0aGlzLmVuYWJsZVNlbGVjdEFsbCAmJiBpdGVtPy52YWx1ZSA9PT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0pIHtcbiAgICAgIHRoaXMubG9jYWxEYXRhID0gdGhpcy5sb2NhbERhdGE/Lm1hcCh0ID0+ICh7XG4gICAgICAgIC4uLnQsXG4gICAgICAgIGNoZWNrZWQ6ICFpdGVtPy5jaGVja2VkXG4gICAgICB9KSkgfHwgW107XG4gICAgICBpZiAodGhpcy5oaWRlQXBwbHlCdXR0b24pIHtcbiAgICAgICAgdGhpcy5hcHBseUZpbHRlcnMoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGl0ZW0/LmNoZWNrZWQpIHtcbiAgICAgIHRoaXMubG9jYWxEYXRhID0gW1xuICAgICAgICAuLi50aGlzLmxvY2FsRGF0YT8ubWFwKGEgPT4ge1xuICAgICAgICAgIGlmIChhPy52YWx1ZSA9PT0gaXRlbT8udmFsdWUgfHwgYT8udmFsdWUgPT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi5hLFxuICAgICAgICAgICAgICBjaGVja2VkOiBmYWxzZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGE7XG4gICAgICAgIH0pIHx8IFtdXG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2FsRGF0YSA9IFtcbiAgICAgICAgLi4udGhpcy5sb2NhbERhdGE/Lm1hcChhID0+IHtcbiAgICAgICAgICBpZiAoYT8udmFsdWUgPT09IGl0ZW0/LnZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi5hLFxuICAgICAgICAgICAgICBjaGVja2VkOiB0cnVlXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYTtcbiAgICAgICAgfSkgfHwgW11cbiAgICAgIF07XG4gICAgICBpZiAodGhpcy5lbmFibGVTZWxlY3RBbGwgJiYgdGhpcy5sb2NhbERhdGE/LmZpbHRlcihyID0+IHI/LnZhbHVlICE9PSB0aGlzLlNFTEVDVF9BTExfRU5VTSk/LmV2ZXJ5KHQgPT4gdD8uY2hlY2tlZCkpIHtcbiAgICAgICAgdGhpcy5sb2NhbERhdGEgPSBbXG4gICAgICAgICAgLi4udGhpcy5sb2NhbERhdGE/Lm1hcChhID0+IHtcbiAgICAgICAgICAgIGlmIChhPy52YWx1ZSA9PT0gdGhpcy5TRUxFQ1RfQUxMX0VOVU0pIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5hLFxuICAgICAgICAgICAgICAgIGNoZWNrZWQ6IHRydWVcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBhO1xuICAgICAgICAgIH0pIHx8IFtdXG4gICAgICAgIF07XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLnNlYXJjaEVuYWJsZWQpIHtcbiAgICAgIHRoaXMuc2VhcmNoSW5wdXRPbkNoYW5nZSh0aGlzLnNlYXJjaElucHV0KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaGlkZUFwcGx5QnV0dG9uKSB7XG4gICAgICB0aGlzLmFwcGx5RmlsdGVycygpO1xuICAgIH1cbiAgfVxuXG4gIGFwcGx5RmlsdGVycygpIHtcbiAgICB0aGlzLm9uQ2hhbmdlPy5lbWl0KFxuICAgICAgdGhpcy5sb2NhbERhdGFcbiAgICAgICAgPy5maWx0ZXIoYSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGE/LmNoZWNrZWQgJiYgYT8udmFsdWUgIT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNO1xuICAgICAgICB9KVxuICAgICAgICA/Lm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCB7IGNoZWNrZWQsIC4uLmRhdGEgfSA9IGl0ZW0gfHwge307XG4gICAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICAgIH0pIHx8IFtdXG4gICAgKTtcbiAgICBpZiAoIXRoaXMuaGlkZUFwcGx5QnV0dG9uKSB7XG4gICAgICB0aGlzLm9uQ2FuY2VsKCk7XG4gICAgfVxuICB9XG5cbiAgb25SZXNldCgpIHtcbiAgICB0aGlzLmlzU2VhcmNoSW5wdXRGb2N1c2VkID0gZmFsc2U7XG4gICAgdGhpcy5vbkNoYW5nZT8uZW1pdChbXSk7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLnNlYXJjaElucHV0ID0gXCJcIjtcbiAgfVxuXG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBmYWxzZTtcbiAgICB0aGlzLmxvY2FsRGF0YSA9IHRoaXMubG9jYWxEYXRhPy5tYXAoYSA9PiB7XG4gICAgICBpZiAodGhpcy5sb2NhbFNlbGVjdGVkSXRlbXM/LnNvbWUoYiA9PiBiPy52YWx1ZSA9PT0gYT8udmFsdWUgJiYgU3RyaW5nKGI/LmNoZWNrZWQpICE9PSBTdHJpbmcoYT8uY2hlY2tlZCkpKSB7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYoYT8udmFsdWUgIT09IHRoaXMuU0VMRUNUX0FMTF9FTlVNICYmIHRoaXMuaGlkZUFwcGx5QnV0dG9uKXtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uYSxcbiAgICAgICAgICAgIGNoZWNrZWQ6IGZhbHNlXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cbiAgICB9KSB8fCBbXTtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBcIlwiO1xuICAgIHRoaXMub3ZlcmxheVJlZj8uZGV0YWNoKCk7XG4gICAgdGhpcy5zZWFyY2hJbnB1dCA9IFwiXCI7XG4gIH1cbn1cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlTZWxlY3REcm9wZG93bkl0ZW0ge1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBjaGVja2VkPzogYm9vbGVhbjtcbiAgaWNvbj86IHN0cmluZztcbiAgZGlzYWJsZWQ/OmJvb2xlYW5cbn1cbmV4cG9ydCBpbnRlcmZhY2UgT1BUSU9OUyB7XG4gIHNvcnRMYWJlbHM6IGJvb2xlYW47XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY29udGFpbmVyXCJcbiAgW25nU3R5bGVdPVwie1xuICAgIGhlaWdodDogaGVpZ2h0Lmxlbmd0aCA+IDAgPyBoZWlnaHQgOiAnJyxcbiAgICB3aWR0aDogd2lkdGgubGVuZ3RoID4gMCA/IHdpZHRoIDogJydcbiAgfVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cImRyb3Bkb3duXCJcbiAgICAjc2VsZWN0XG4gICAgdGFiaW5kZXg9XCIwXCJcbiAgICAoa2V5dXAuZW50ZXIpPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgKGNsaWNrKT1cInRvZ2dsZURyb3Bkb3duKClcIlxuICAgIFtuZ1N0eWxlXT1cInsgYmFja2dyb3VuZDogaXNPcGVuID8gJyNFNkVCRjcnIDogJycgfVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY3VzdG9tTGFiZWxUZW1wbGF0ZVwiPlxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0XCI+e3sgbGFiZWwgfX08L3A+XG4gICAgICA8cCAqbmdJZj1cInNob3dTZWxlY3RlZENvdW50ICYmIGxvY2FsU2VsZWN0ZWRJdGVtcz8ubGVuZ3RoID4gMFwiIGNsYXNzPVwiY291bnRcIj5cbiAgICAgICAge3sgbG9jYWxTZWxlY3RlZEl0ZW1zPy5sZW5ndGggfX1cbiAgICAgIDwvcD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tTGFiZWxUZW1wbGF0ZVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImN1c3RvbUxhYmVsVGVtcGxhdGVcIj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwiaGFuZGxlXCJcbiAgICAgIFtuZ1N0eWxlXT1cInsgdHJhbnNmb3JtOiBpc09wZW4gPyAncm90YXRlKDE4MGRlZyknIDogJ3JvdGF0ZSgwZGVnKScgfVwiXG4gICAgICB3aWR0aD1cIjIwXCJcbiAgICAgIGhlaWdodD1cIjIwXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxuICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBkPVwiTTEzLjgyNSA3LjE1ODQ1TDEwIDEwLjk3NTFMNi4xNzUgNy4xNTg0NUw1IDguMzMzNDVMMTAgMTMuMzMzNEwxNSA4LjMzMzQ1TDEzLjgyNSA3LjE1ODQ1WlwiXG4gICAgICAgIGZpbGw9XCIjMTgxRjMzXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gIDwvZGl2PlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI3BvcHVwQ29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJwb3B1cC1jb250YWluZXJcIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICdoZWlnaHQnOiBkcm9wZG93bkxpc3RIZWlnaHQsXG4gICAgICB3aWR0aDogZHJvcGRvd25MaXN0V2lkdGhcbiAgICB9XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAncG9zaXRpb24tbGVmdCc6IGRyb3Bkb3duTGlzdFBvc2l0aW9uID09PSAnTGVmdCcsXG4gICAgICAncG9zaXRpb24tcmlnaHQnOiBkcm9wZG93bkxpc3RQb3NpdGlvbiA9PT0gJ1JpZ2h0J1xuICAgIH1cIlxuICA+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoRW5hYmxlZFwiIGNsYXNzPVwic2VhcmNoLWNvbnRhaW5lclwiPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgKm5nSWY9XCIhaXNTZWFyY2hJbnB1dEZvY3VzZWRcIlxuICAgICAgICAgIGNsYXNzPVwic2VhcmNoLWljb25cIlxuICAgICAgICAgIHdpZHRoPVwiMjRcIlxuICAgICAgICAgIGhlaWdodD1cIjI0XCJcbiAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgIGQ9XCJNNC4yMTUwOCAxMS4xNDU2QzQuMjE1MDggNy4zMTc5IDcuMzM3MjIgNC4yMTE2NSAxMS4xOTI2IDQuMjExNjVDMTUuMDQ4IDQuMjExNjUgMTguMTcwMiA3LjMxNzkgMTguMTcwMiAxMS4xNDU2QzE4LjE3MDIgMTIuNjkzMSAxNy42NTk5IDE0LjEyMjYgMTYuNzk3MiAxNS4yNzY3TDE1LjM2ODUgMTYuNzAxM0MxNC4yMDQ0IDE3LjU2NjggMTIuNzU5IDE4LjA3OTYgMTEuMTkyNiAxOC4wNzk2QzcuMzM3MjIgMTguMDc5NiA0LjIxNTA4IDE0Ljk3MzQgNC4yMTUwOCAxMS4xNDU2Wk0xNS45NDIxIDE3Ljc4MzVDMTQuNjAyMSAxOC43MzI5IDEyLjk2MjcgMTkuMjkxMyAxMS4xOTI2IDE5LjI5MTNDNi42Njk3NyAxOS4yOTEzIDMgMTUuNjQ2MSAzIDExLjE0NTZDMyA2LjY0NTEyIDYuNjY5NzcgMyAxMS4xOTI2IDNDMTUuNzE1NSAzIDE5LjM4NTIgNi42NDUxMiAxOS4zODUyIDExLjE0NTZDMTkuMzg1MiAxMi45MzcxIDE4LjgwMzcgMTQuNTkzMSAxNy44MTg0IDE1LjkzNzVMMTkuODM2MSAxNy40MDQ4QzIwLjY3MDUgMTcuOTEyIDIxLjc1NTQgMTguNjU0MyAyMC4yNDU0IDIwLjIxNUMxOC43MzUzIDIxLjc3NTYgMTguMDA5OSAyMC42NjYzIDE3LjQ5OTEgMTkuODM2NEwxNS45NDIxIDE3Ljc4MzVaXCJcbiAgICAgICAgICAgIGZpbGw9XCIjNkE3MzdEXCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L3N2Zz5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoSW5wdXRcIlxuICAgICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiBpc1NlYXJjaElucHV0Rm9jdXNlZCA/ICcxMnB4JyA6ICc0NXB4JyxcbiAgICAgICAgICAgIGJvcmRlcjogaXNTZWFyY2hJbnB1dEZvY3VzZWQgPyAnMXB4IHNvbGlkICMwOTM3QjInIDogJzFweCBzb2xpZCAjZTBlMGUwJyxcbiAgICAgICAgICAgIHBhZGRpbmdSaWdodDogaXNTZWFyY2hJbnB1dEZvY3VzZWQgPyAnNDVweCcgOiAnMTBweCdcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWFyY2hJbnB1dE9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJpc1NlYXJjaElucHV0Rm9jdXNlZCA/ICcnIDogc2VhcmNoSW5wdXRQbGFjZWhvbGRlclwiXG4gICAgICAgICAgKGZvY3VzKT1cInNlYXJjaElucHV0Rm9jdXNlZCh0cnVlKVwiXG4gICAgICAgICAgY2xhc3M9XCJzZWFyY2gtaW5wdXRcIlxuICAgICAgICAvPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgKm5nSWY9XCJpc1NlYXJjaElucHV0Rm9jdXNlZFwiXG4gICAgICAgICAgY2xhc3M9XCJjYW5jZWwtaWNvblwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlYXJjaElucHV0Q2FuY2VsZWQoJGV2ZW50KVwiXG4gICAgICAgICAgd2lkdGg9XCIyNFwiXG4gICAgICAgICAgaGVpZ2h0PVwiMjRcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgZD1cIk04Ljg3NDQ2IDcuMzIxNDRDOC40NDU4OCA2Ljg5Mjg1IDcuNzUxIDYuODkyODUgNy4zMjI0MiA3LjMyMTQ0QzYuODkzODMgNy43NTAwMiA2Ljg5MzgzIDguNDQ0OSA3LjMyMjQyIDguODczNDlMMTAuNDQ4OCAxMS45OTk5TDcuMzIzNTcgMTUuMTI1MkM2Ljg5NDk4IDE1LjU1MzggNi44OTQ5OCAxNi4yNDg2IDcuMzIzNTcgMTYuNjc3MkM3Ljc1MjE1IDE3LjEwNTggOC40NDcwMyAxNy4xMDU4IDguODc1NjEgMTYuNjc3MkwxMi4wMDA5IDEzLjU1MkwxNS4xMjYxIDE2LjY3NzJDMTUuNTU0NyAxNy4xMDU4IDE2LjI0OTYgMTcuMTA1OCAxNi42NzgxIDE2LjY3NzJDMTcuMTA2NyAxNi4yNDg2IDE3LjEwNjcgMTUuNTUzNyAxNi42NzgxIDE1LjEyNTFMMTMuNTUyOSAxMS45OTk5TDE2LjY3OTMgOC44NzM1NEMxNy4xMDc5IDguNDQ0OTYgMTcuMTA3OSA3Ljc1MDA4IDE2LjY3OTMgNy4zMjE1QzE2LjI1MDcgNi44OTI5MSAxNS41NTU4IDYuODkyOTEgMTUuMTI3MyA3LjMyMTVMMTIuMDAwOSAxMC40NDc5TDguODc0NDYgNy4zMjE0NFpcIlxuICAgICAgICAgICAgZmlsbD1cIiM2QTczN0RcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbXNcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiaXRlbVwiXG4gICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwidG9nZ2xlU2VsZWN0ZWRJdGVtcygkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlU2VsZWN0ZWRJdGVtcygkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZWFyY2hJbnB1dCA/IHNlYXJjaERhdGEgOiBsb2NhbERhdGFcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZWQnOml0ZW0uZGlzYWJsZWR9XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGVja2JveC1jb250YWluZXItd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrYm94LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICA8bWlzLWNoZWNrYm94IFtjaGVja2VkXT1cIml0ZW0uY2hlY2tlZFwiIHRhYmluZGV4PVwiLTFcIj48L21pcy1jaGVja2JveD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImljb24tY29udGFpbmVyXCIgKm5nSWY9XCJpdGVtLmljb25cIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpY29uXCIgW3NyY109XCJpdGVtLmljb25cIiBhbHQ9XCJubyBpbWdcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5vRGF0YVwiICpuZ0lmPVwiKHNlYXJjaElucHV0ID8gc2VhcmNoRGF0YSA6IGxvY2FsRGF0YSkubGVuZ3RoID09PSAwXCI+XG4gICAgICAgICAge3sgc2VhcmNoSW5wdXQgPT09IFwiXCIgPyBub0RhdGFNZXNzYWdlIDogXCJObyByZXN1bHRzXCIgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibG9jYWxEYXRhLmxlbmd0aCAhPT0gMCAmJiAhaGlkZUFwcGx5QnV0dG9uXCIgY2xhc3M9XCJhY3Rpb25zLWNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogJ2NhbGMoNTAlIC0gNHB4KSd9XCIgKGNsaWNrKT1cIm9uUmVzZXQoKVwiPlxuICAgICAgICA8bWlzLWJ1dHRvbiBbbmFtZV09XCInUmVzZXQnXCIgW3R5cGVdPVwiJ1RleHQnXCIgW3dpZHRoXT1cIicxMDAlJ1wiID48L21pcy1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgW25nU3R5bGVdPVwieyd3aWR0aCc6ICdjYWxjKDUwJSAtIDRweCknfVwiIChjbGljayk9XCJhcHBseUZpbHRlcnMoKVwiPlxuICAgICAgICA8bWlzLWJ1dHRvbiBbbmFtZV09XCInQXBwbHknXCIgW3R5cGVdPVwiJ1NvbGlkJ1wiIFt3aWR0aF09XCInMTAwJSdcIiA+PC9taXMtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -10,7 +10,7 @@ export class MultiSelectDropdownModule {
10
10
  static forRoot() {
11
11
  return { ngModule: MultiSelectDropdownModule, providers: [] };
12
12
  }
13
- static { this.ɵfac = function MultiSelectDropdownModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MultiSelectDropdownModule)(); }; }
13
+ static { this.ɵfac = function MultiSelectDropdownModule_Factory(t) { return new (t || MultiSelectDropdownModule)(); }; }
14
14
  static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MultiSelectDropdownModule }); }
15
15
  static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, OverlayModule, CheckboxModule, ButtonModule] }); }
16
16
  }
@@ -23,4 +23,4 @@ export class MultiSelectDropdownModule {
23
23
  }]
24
24
  }], null, null); })();
25
25
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MultiSelectDropdownModule, { declarations: [MultiSelectDropdownComponent], imports: [CommonModule, FormsModule, OverlayModule, CheckboxModule, ButtonModule], exports: [MultiSelectDropdownComponent] }); })();
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWRyb3Bkb3duLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL211bHRpLXNlbGVjdC1kcm9wZG93bi9tdWx0aS1zZWxlY3QtZHJvcGRvd24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBT2hFLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNoRSxDQUFDOzBIQUhVLHlCQUF5QjttRUFBekIseUJBQXlCO3VFQUgxQixZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWTs7aUZBR3JFLHlCQUF5QjtjQUxyQyxRQUFRO2VBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsNEJBQTRCLENBQUM7Z0JBQzVDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxZQUFZLENBQUM7Z0JBQ2pGLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2FBQ3hDOzt3RkFDWSx5QkFBeUIsbUJBSnJCLDRCQUE0QixhQUNqQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWSxhQUN0RSw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3REcm9wZG93bkNvbXBvbmVudCB9IGZyb20gXCIuL211bHRpLXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnRcIjtcbmltcG9ydCB7IENoZWNrYm94TW9kdWxlIH0gZnJvbSBcIm1pcy1jcnlzdGFsLWRlc2lnbi1zeXN0ZW0vY2hlY2tib3hcIjtcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL2J1dHRvblwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtNdWx0aVNlbGVjdERyb3Bkb3duQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIENoZWNrYm94TW9kdWxlLCBCdXR0b25Nb2R1bGVdLFxuICBleHBvcnRzOiBbTXVsdGlTZWxlY3REcm9wZG93bkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3REcm9wZG93bk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TXVsdGlTZWxlY3REcm9wZG93bk1vZHVsZT4ge1xuICAgIHJldHVybiB7IG5nTW9kdWxlOiBNdWx0aVNlbGVjdERyb3Bkb3duTW9kdWxlLCBwcm92aWRlcnM6IFtdIH07XG4gIH1cbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWRyb3Bkb3duLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL211bHRpLXNlbGVjdC1kcm9wZG93bi9tdWx0aS1zZWxlY3QtZHJvcGRvd24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBT2hFLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNoRSxDQUFDOzBGQUhVLHlCQUF5QjttRUFBekIseUJBQXlCO3VFQUgxQixZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWTs7aUZBR3JFLHlCQUF5QjtjQUxyQyxRQUFRO2VBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsNEJBQTRCLENBQUM7Z0JBQzVDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxZQUFZLENBQUM7Z0JBQ2pGLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2FBQ3hDOzt3RkFDWSx5QkFBeUIsbUJBSnJCLDRCQUE0QixhQUNqQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWSxhQUN0RSw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3REcm9wZG93bkNvbXBvbmVudCB9IGZyb20gXCIuL211bHRpLXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnRcIjtcbmltcG9ydCB7IENoZWNrYm94TW9kdWxlIH0gZnJvbSBcIm1pcy1jcnlzdGFsLWRlc2lnbi1zeXN0ZW0vY2hlY2tib3hcIjtcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL2J1dHRvblwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtNdWx0aVNlbGVjdERyb3Bkb3duQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIENoZWNrYm94TW9kdWxlLCBCdXR0b25Nb2R1bGVdLFxuICBleHBvcnRzOiBbTXVsdGlTZWxlY3REcm9wZG93bkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3REcm9wZG93bk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TXVsdGlTZWxlY3REcm9wZG93bk1vZHVsZT4ge1xuICAgIHJldHVybiB7IG5nTW9kdWxlOiBNdWx0aVNlbGVjdERyb3Bkb3duTW9kdWxlLCBwcm92aWRlcnM6IFtdIH07XG4gIH1cbn1cbiJdfQ==