@theseam/ui-common 0.4.27 → 0.4.28-beta.0

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 (183) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
  2. package/datatable/datatable/datatable.component.d.ts +60 -9
  3. package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
  4. package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
  5. package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
  6. package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
  7. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
  8. package/datatable/datatable.module.d.ts +29 -20
  9. package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
  10. package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
  11. package/datatable/models/action-item-column-position.d.ts +13 -0
  12. package/datatable/models/columns-data-filter.d.ts +57 -0
  13. package/datatable/models/columns-data-filters/models.d.ts +65 -0
  14. package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
  15. package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
  16. package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
  17. package/datatable/models/columns-data-filters/utils.d.ts +15 -0
  18. package/datatable/models/datatable-config.d.ts +90 -0
  19. package/datatable/models/table-column.d.ts +22 -1
  20. package/datatable/public-api.d.ts +14 -0
  21. package/datatable/services/columns-filters.service.d.ts +29 -0
  22. package/datatable/services/columns-manager.service.d.ts +7 -0
  23. package/datatable/utils/create-action-menu-column.d.ts +1 -1
  24. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +2 -2
  25. package/esm2020/datatable/datatable/datatable.component.mjs +231 -31
  26. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +2 -2
  27. package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
  28. package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
  29. package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
  30. package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
  31. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +1 -1
  32. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +1 -1
  33. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +1 -1
  34. package/esm2020/datatable/datatable.module.mjs +49 -7
  35. package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
  36. package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
  37. package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
  38. package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
  39. package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
  40. package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
  41. package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
  42. package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
  43. package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
  44. package/esm2020/datatable/models/datatable-config.mjs +3 -0
  45. package/esm2020/datatable/models/table-column.mjs +1 -1
  46. package/esm2020/datatable/public-api.mjs +15 -1
  47. package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
  48. package/esm2020/datatable/services/columns-manager.service.mjs +27 -2
  49. package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
  50. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +1 -1
  51. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +1 -1
  52. package/esm2020/framework/base-layout/base-layout.component.mjs +14 -4
  53. package/esm2020/framework/base-layout/base-layout.module.mjs +6 -1
  54. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +21 -5
  55. package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
  56. package/esm2020/framework/base-layout/index.mjs +2 -1
  57. package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
  58. package/esm2020/framework/nav/index.mjs +6 -0
  59. package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
  60. package/esm2020/framework/nav/nav-utils.mjs +107 -0
  61. package/esm2020/framework/nav/nav.models.mjs +2 -0
  62. package/esm2020/framework/nav/nav.module.mjs +67 -0
  63. package/esm2020/framework/nav/nav.service.mjs +204 -0
  64. package/esm2020/framework/public-api.mjs +2 -1
  65. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +2 -2
  66. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +28 -67
  67. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +12 -5
  68. package/esm2020/framework/side-nav/side-nav.component.mjs +116 -38
  69. package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
  70. package/esm2020/framework/side-nav/side-nav.module.mjs +9 -39
  71. package/esm2020/framework/side-nav/side-nav.service.mjs +1 -1
  72. package/esm2020/framework/top-bar/index.mjs +3 -1
  73. package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
  74. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +10 -4
  75. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +6 -4
  76. package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
  77. package/esm2020/framework/top-bar/top-bar.component.mjs +55 -11
  78. package/esm2020/framework/top-bar/top-bar.module.mjs +15 -5
  79. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +1 -1
  80. package/esm2020/graphql/datatable/index.mjs +4 -1
  81. package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
  82. package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
  83. package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
  84. package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
  85. package/esm2020/layout/layout.service.mjs +12 -2
  86. package/esm2020/menu/menu-toggle.directive.mjs +7 -2
  87. package/esm2020/popover/popover/popover.component.mjs +7 -3
  88. package/esm2020/popover/popover.directive.mjs +6 -2
  89. package/esm2020/rich-text/public-api.mjs +1 -1
  90. package/esm2020/rich-text/utils/models.mjs +1 -1
  91. package/esm2020/rich-text/utils/utils.mjs +1 -1
  92. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +5 -3
  93. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +2 -2
  94. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  95. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +2 -2
  96. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  97. package/fesm2015/theseam-ui-common-datatable.mjs +1025 -62
  98. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  99. package/fesm2015/theseam-ui-common-framework.mjs +905 -156
  100. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  101. package/fesm2015/theseam-ui-common-graphql.mjs +254 -1
  102. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  103. package/fesm2015/theseam-ui-common-layout.mjs +11 -2
  104. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  105. package/fesm2015/theseam-ui-common-menu.mjs +6 -1
  106. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  107. package/fesm2015/theseam-ui-common-popover.mjs +11 -3
  108. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  109. package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
  110. package/fesm2015/theseam-ui-common-table-cell-types.mjs +4 -2
  111. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  112. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +2 -2
  113. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  114. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +2 -2
  115. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  116. package/fesm2020/theseam-ui-common-datatable.mjs +1010 -62
  117. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  118. package/fesm2020/theseam-ui-common-framework.mjs +907 -156
  119. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  120. package/fesm2020/theseam-ui-common-graphql.mjs +254 -1
  121. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  122. package/fesm2020/theseam-ui-common-layout.mjs +11 -2
  123. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  124. package/fesm2020/theseam-ui-common-menu.mjs +6 -1
  125. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  126. package/fesm2020/theseam-ui-common-popover.mjs +11 -3
  127. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  128. package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
  129. package/fesm2020/theseam-ui-common-table-cell-types.mjs +4 -2
  130. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  131. package/framework/base-layout/base-layout.component.d.ts +4 -2
  132. package/framework/base-layout/base-layout.component.scss +18 -10
  133. package/framework/base-layout/base-layout.module.d.ts +11 -10
  134. package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
  135. package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
  136. package/framework/base-layout/index.d.ts +1 -0
  137. package/framework/base-layout/styles/_variables.scss +21 -0
  138. package/framework/nav/_nav-theme.scss +4 -0
  139. package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
  140. package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
  141. package/framework/nav/index.d.ts +5 -0
  142. package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
  143. package/framework/nav/nav-item/nav-item.component.scss +203 -0
  144. package/framework/nav/nav-utils.d.ts +20 -0
  145. package/framework/nav/nav.models.d.ts +77 -0
  146. package/framework/nav/nav.module.d.ts +17 -0
  147. package/framework/nav/nav.service.d.ts +27 -0
  148. package/framework/nav/styles/_themes/light/_variables.scss +56 -0
  149. package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
  150. package/framework/nav/styles/_utilities.scss +3 -0
  151. package/framework/nav/styles/_variables.scss +2 -0
  152. package/framework/public-api.d.ts +1 -0
  153. package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
  154. package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
  155. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
  156. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
  157. package/framework/side-nav/side-nav.component.d.ts +13 -1
  158. package/framework/side-nav/side-nav.component.scss +0 -1
  159. package/framework/side-nav/side-nav.models.d.ts +7 -1
  160. package/framework/side-nav/side-nav.module.d.ts +1 -9
  161. package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
  162. package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
  163. package/framework/top-bar/index.d.ts +2 -0
  164. package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
  165. package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
  166. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
  167. package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
  168. package/framework/top-bar/top-bar.component.d.ts +25 -3
  169. package/framework/top-bar/top-bar.component.scss +7 -2
  170. package/framework/top-bar/top-bar.module.d.ts +10 -8
  171. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  172. package/graphql/datatable/index.d.ts +3 -0
  173. package/graphql/datatable/map-filter-states.d.ts +2 -2
  174. package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
  175. package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
  176. package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
  177. package/layout/layout.service.d.ts +9 -1
  178. package/menu/menu-toggle.directive.d.ts +2 -1
  179. package/package.json +2 -2
  180. package/popover/popover/popover.component.d.ts +4 -1
  181. package/popover/popover.directive.d.ts +2 -1
  182. package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
  183. package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
@@ -111,7 +111,7 @@ export class PopoverComponent {
111
111
  }
112
112
  }
113
113
  PopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PopoverComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
114
- PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PopoverComponent, selector: "seam-popover", inputs: { template: "template", popoverClass: "popoverClass", baseWidth: "baseWidth" }, host: { listeners: { "@slideDown.start": "_onAnimationStart($event)", "@slideDown.done": "_animationDone.next($event)", "keydown": "_handleKeydown($event)" }, properties: { "@slideDown": "{\n value: _state,\n params: {\n enterAnimationDuration: enterAnimationDuration,\n exitAnimationDuration: exitAnimationDuration\n }\n }", "style.width": "_popoverWidth", "attr.role": "this._role", "attr.tabindex": "this._tabindex" }, classAttribute: "popover show m-2 position-static" }, ngImport: i0, template: "<div class=\"popover-body\">\n <ng-container *ngIf=\"template; else noTemplate\">\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n </ng-container>\n\n <ng-template #noTemplate>\n Example\n <!-- <ng-content></ng-content> -->\n </ng-template>\n</div>\n", styles: [":host{display:block;max-width:800px;min-width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
114
+ PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PopoverComponent, selector: "seam-popover", inputs: { template: "template", popoverClass: "popoverClass", popover: "popover", popoverContext: "popoverContext", baseWidth: "baseWidth" }, host: { listeners: { "@slideDown.start": "_onAnimationStart($event)", "@slideDown.done": "_animationDone.next($event)", "keydown": "_handleKeydown($event)" }, properties: { "@slideDown": "{\n value: _state,\n params: {\n enterAnimationDuration: enterAnimationDuration,\n exitAnimationDuration: exitAnimationDuration\n }\n }", "style.width": "_popoverWidth", "attr.role": "this._role", "attr.tabindex": "this._tabindex" }, classAttribute: "popover show m-2 position-static" }, ngImport: i0, template: "<div class=\"popover-body\">\n <ng-container *ngIf=\"template; else noTemplate\">\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ $implicit: popover, popover: popover, popoverContext: popoverContext }\"></ng-template>\n </ng-container>\n\n <ng-template #noTemplate>\n Example\n <!-- <ng-content></ng-content> -->\n </ng-template>\n</div>\n", styles: [":host{display:block;max-width:800px;min-width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
115
115
  trigger('slideDown', [
116
116
  transition(':enter', useAnimation(popoverExpandIn)),
117
117
  transition(':leave', useAnimation(popoverExpandOut)),
@@ -136,7 +136,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
136
136
  '(@slideDown.start)': '_onAnimationStart($event)',
137
137
  '(@slideDown.done)': '_animationDone.next($event)',
138
138
  '[style.width]': '_popoverWidth'
139
- }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"popover-body\">\n <ng-container *ngIf=\"template; else noTemplate\">\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n </ng-container>\n\n <ng-template #noTemplate>\n Example\n <!-- <ng-content></ng-content> -->\n </ng-template>\n</div>\n", styles: [":host{display:block;max-width:800px;min-width:100%}\n"] }]
139
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"popover-body\">\n <ng-container *ngIf=\"template; else noTemplate\">\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ $implicit: popover, popover: popover, popoverContext: popoverContext }\"></ng-template>\n </ng-container>\n\n <ng-template #noTemplate>\n Example\n <!-- <ng-content></ng-content> -->\n </ng-template>\n</div>\n", styles: [":host{display:block;max-width:800px;min-width:100%}\n"] }]
140
140
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { _role: [{
141
141
  type: HostBinding,
142
142
  args: ['attr.role']
@@ -147,10 +147,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
147
147
  type: Input
148
148
  }], popoverClass: [{
149
149
  type: Input
150
+ }], popover: [{
151
+ type: Input
152
+ }], popoverContext: [{
153
+ type: Input
150
154
  }], baseWidth: [{
151
155
  type: Input
152
156
  }], _handleKeydown: [{
153
157
  type: HostListener,
154
158
  args: ['keydown', ['$event']]
155
159
  }] } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcG9wb3Zlci9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3BvcG92ZXIvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0IsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN2RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzlELE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUlOLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQW1DLE1BQU0sdUJBQXVCLENBQUE7OztBQTJCMUcsTUFBTSxPQUFPLGdCQUFnQjtJQTRCM0IscUVBQXFFO0lBQ3JFLElBQThCLEtBQUssS0FBSyxPQUFPLFFBQVEsQ0FBQSxDQUFDLENBQUM7SUFFekQsSUFBa0MsU0FBUyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDO0lBUTNEOzs7T0FHRztJQUNILElBQ0ksU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFL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LENBQUUsUUFBUSxDQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQsIHRyYW5zaXRpb24sIHRyaWdnZXIsIHVzZUFuaW1hdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IEVTQ0FQRSwgaGFzTW9kaWZpZXJLZXkgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tRXZlbnQsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgcG9wb3ZlckV4cGFuZEluLCBwb3BvdmVyRXhwYW5kT3V0LCBwb3BvdmVyU2xpZGVJbiwgcG9wb3ZlclNsaWRlT3V0IH0gZnJvbSAnLi4vcG9wb3Zlci1hbmltYXRpb25zJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvcG92ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3NsaWRlRG93bicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIHVzZUFuaW1hdGlvbihwb3BvdmVyRXhwYW5kSW4pKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIHVzZUFuaW1hdGlvbihwb3BvdmVyRXhwYW5kT3V0KSksXG4gICAgXSlcbiAgXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAncG9wb3ZlciBzaG93IG0tMiBwb3NpdGlvbi1zdGF0aWMnLFxuICAgICdbQHNsaWRlRG93bl0nOiBge1xuICAgICAgdmFsdWU6IF9zdGF0ZSxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICBlbnRlckFuaW1hdGlvbkR1cmF0aW9uOiBlbnRlckFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgICBleGl0QW5pbWF0aW9uRHVyYXRpb246IGV4aXRBbmltYXRpb25EdXJhdGlvblxuICAgICAgfVxuICAgIH1gLFxuICAgICcoQHNsaWRlRG93bi5zdGFydCknOiAnX29uQW5pbWF0aW9uU3RhcnQoJGV2ZW50KScsXG4gICAgJyhAc2xpZGVEb3duLmRvbmUpJzogJ19hbmltYXRpb25Eb25lLm5leHQoJGV2ZW50KScsXG4gICAgJ1tzdHlsZS53aWR0aF0nOiAnX3BvcG92ZXJXaWR0aCdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIC8qKiBEdXJhdGlvbiBvZiB0aGUgZW50ZXIgYW5pbWF0aW9uLiBIYXMgdG8gYmUgYSB2YWxpZCBDU1MgdmFsdWUgKGUuZy4gMTAwbXMpLiAqL1xuICBlbnRlckFuaW1hdGlvbkR1cmF0aW9uPzogc3RyaW5nID0gJzIyNW1zJ1xuXG4gIC8qKiBEdXJhdGlvbiBvZiB0aGUgZXhpdCBhbmltYXRpb24uIEhhcyB0byBiZSBhIHZhbGlkIENTUyB2YWx1ZSAoZS5nLiA1MG1zKS4gKi9cbiAgZXhpdEFuaW1hdGlvbkR1cmF0aW9uPzogc3RyaW5nID0gJzIyNW1zJ1xuXG4gIC8qKiBTdGF0ZSBvZiB0aGUgZGlhbG9nIGFuaW1hdGlvbi4gKi9cbiAgX3N0YXRlOiAndm9pZCcgfCAnZW50ZXInIHwgJ2V4aXQnID0gJ2VudGVyJ1xuXG4gIC8qKiBBIHN1YmplY3QgZW1pdHRpbmcgYmVmb3JlIHRoZSBkaWFsb2cgZW50ZXJzIHRoZSB2aWV3LiAqL1xuICBfYmVmb3JlRW50ZXI6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBhZnRlciB0aGUgZGlhbG9nIGVudGVycyB0aGUgdmlldy4gKi9cbiAgX2FmdGVyRW50ZXI6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBiZWZvcmUgdGhlIGRpYWxvZyBleGl0cyB0aGUgdmlldy4gKi9cbiAgX2JlZm9yZUV4aXQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBhZnRlciB0aGUgZGlhbG9nIGV4aXRzIHRoZSB2aWV3LiAqL1xuICBfYWZ0ZXJFeGl0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKVxuXG4gIC8qKiBTdHJlYW0gb2YgYW5pbWF0aW9uIGBkb25lYCBldmVudHMuICovXG4gIF9hbmltYXRpb25Eb25lID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KClcblxuICAvLyBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIGdldCBfcm9sZSgpIHsgcmV0dXJuIHRoaXMuX2NvbmZpZy5yb2xlIH1cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKSBnZXQgX3JvbGUoKSB7IHJldHVybiAnZGlhbG9nJyB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgZ2V0IF90YWJpbmRleCgpIHsgcmV0dXJuIC0xIH1cblxuICBASW5wdXQoKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCB8IG51bGxcblxuICAvLyBAT3V0cHV0KCkgcmVhZG9ubHkgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkIHwgJ2NsaWNrJyB8ICdrZXlkb3duJz4oKVxuXG4gIEBJbnB1dCgpIHBvcG92ZXJDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgd2lkdGggZm9yIGEgcG9wb3ZlciB0aGF0IHdpbGwgc2NhbGUgZG93biBpZiB0aGUgd2luZG93IGlubmVyV2lkdGggaXNcbiAgICogc21hbGxlciB0aGFuIHRoZSB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBiYXNlV2lkdGgoKSB7IHJldHVybiB0aGlzLl9iYXNlV2lkdGgudmFsdWUgfVxuICBzZXQgYmFzZVdpZHRoKHZhbHVlOiBudW1iZXIgfCBudWxsKSB7XG4gICAgY29uc3QgX3ZhbCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlLCBudWxsKVxuICAgIGlmIChfdmFsICE9PSB0aGlzLl9iYXNlV2lkdGgudmFsdWUpIHtcbiAgICAgIHRoaXMuX2Jhc2VXaWR0aC5uZXh0KF92YWwpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2Jhc2VXaWR0aCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyIHwgbnVsbD4oNjAwKVxuICAvLyBfcG9wb3ZlcldpZHRoJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+XG4gIF9wb3BvdmVyV2lkdGg6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAvLyBUT0RPOiBJbXBsZW1lbnQgUG9wb3ZlckNvbmZpZ1xuICApIHtcbiAgICAvLyBXZSB1c2UgYSBTdWJqZWN0IHdpdGggYSBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgcmF0aGVyIHRoYW4gYSBjYWxsYmFjayBhdHRhY2hlZCB0byAuZG9uZSxcbiAgICAvLyBiZWNhdXNlIHNvbWUgYnJvd3NlcnMgZmlyZSB0aGUgZG9uZSBldmVudCB0d2ljZSBhbmQgd2UgZG9uJ3Qgd2FudCB0byBlbWl0IGR1cGxpY2F0ZSBldmVudHMuXG4gICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yNDA4NFxuICAgIHRoaXMuX2FuaW1hdGlvbkRvbmUucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeCwgeSkgPT4ge1xuICAgICAgcmV0dXJuIHguZnJvbVN0YXRlID09PSB5LmZyb21TdGF0ZSAmJiB4LnRvU3RhdGUgPT09IHkudG9TdGF0ZVxuICAgIH0pKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgLy8gRW1pdCBsaWZlY3ljbGUgZXZlbnRzIGJhc2VkIG9uIGFuaW1hdGlvbiBgZG9uZWAgY2FsbGJhY2suXG4gICAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ2VudGVyJykge1xuICAgICAgICB0aGlzLl9hZnRlckVudGVyLm5leHQoKVxuICAgICAgICB0aGlzLl9hZnRlckVudGVyLmNvbXBsZXRlKClcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50LmZyb21TdGF0ZSA9PT0gJ2VudGVyJyAmJiAoZXZlbnQudG9TdGF0ZSA9PT0gJ3ZvaWQnIHx8IGV2ZW50LnRvU3RhdGUgPT09ICdleGl0JykpIHtcbiAgICAgICAgdGhpcy5fYWZ0ZXJFeGl0Lm5leHQoKVxuICAgICAgICB0aGlzLl9hZnRlckV4aXQuY29tcGxldGUoKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAvLyB0aGlzLl9wb3BvdmVyV2lkdGgkID1cbiAgICB0aGlzLl9iYXNlV2lkdGgucGlwZShcbiAgICAgIHN3aXRjaE1hcChiYXNlV2lkdGggPT4ge1xuICAgICAgICBpZiAoYmFzZVdpZHRoKSB7XG4gICAgICAgICAgcmV0dXJuIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKS5waXBlKFxuICAgICAgICAgICAgc3RhcnRXaXRoKHVuZGVmaW5lZCksXG4gICAgICAgICAgICBtYXAoKCkgPT4gd2luZG93LmlubmVyV2lkdGggPCBiYXNlV2lkdGggPyBgJHt3aW5kb3cuaW5uZXJXaWR0aH1weGAgOiBgJHtiYXNlV2lkdGh9cHhgKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YodW5kZWZpbmVkKVxuICAgICAgfSksXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApLnN1YnNjcmliZSh3ID0+IHtcbiAgICAgIHRoaXMuX3BvcG92ZXJXaWR0aCA9IHdcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgfSlcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIC8vIHRoaXMuY2xvc2VkLmNvbXBsZXRlKClcbiAgICB0aGlzLl9hbmltYXRpb25Eb25lLmNvbXBsZXRlKClcblxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCh1bmRlZmluZWQpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICAvKiogU3RhcnRzIHRoZSBkaWFsb2cgZXhpdCBhbmltYXRpb24uICovXG4gIF9zdGFydEV4aXRpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnZXhpdCdcblxuICAgIC8vIE1hcmsgdGhlIGNvbnRhaW5lciBmb3IgY2hlY2sgc28gaXQgY2FuIHJlYWN0IGlmIHRoZVxuICAgIC8vIHZpZXcgY29udGFpbmVyIGlzIHVzaW5nIE9uUHVzaCBjaGFuZ2UgZGV0ZWN0aW9uLlxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gIH1cblxuICAvKiogRW1pdCBsaWZlY3ljbGUgZXZlbnRzIGJhc2VkIG9uIGFuaW1hdGlvbiBgc3RhcnRgIGNhbGxiYWNrLiAqL1xuICBfb25BbmltYXRpb25TdGFydChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ2VudGVyJykge1xuICAgICAgdGhpcy5fYmVmb3JlRW50ZXIubmV4dCgpXG4gICAgICB0aGlzLl9iZWZvcmVFbnRlci5jb21wbGV0ZSgpXG4gICAgfVxuICAgIGlmIChldmVudC5mcm9tU3RhdGUgPT09ICdlbnRlcicgJiYgKGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyB8fCBldmVudC50b1N0YXRlID09PSAnZXhpdCcpKSB7XG4gICAgICB0aGlzLl9iZWZvcmVFeGl0Lm5leHQoKVxuICAgICAgdGhpcy5fYmVmb3JlRXhpdC5jb21wbGV0ZSgpXG4gICAgfVxuICB9XG5cbiAgLyoqIEhhbmRsZSBhIGtleWJvYXJkIGV2ZW50IGZyb20gdGhlIG1lbnUsIGRlbGVnYXRpbmcgdG8gdGhlIGFwcHJvcHJpYXRlIGFjdGlvbi4gKi9cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsgJyRldmVudCcgXSlcbiAgX2hhbmRsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6ZGVwcmVjYXRpb25cbiAgICBjb25zdCBrZXlDb2RlID0gZXZlbnQua2V5Q29kZVxuXG4gICAgc3dpdGNoIChrZXlDb2RlKSB7XG4gICAgICBjYXNlIEVTQ0FQRTpcbiAgICAgICAgaWYgKCFoYXNNb2RpZmllcktleShldmVudCkpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgLy8gdGhpcy5jbG9zZWQuZW1pdCgna2V5ZG93bicpXG4gICAgICAgICAgdGhpcy5fc3RhcnRFeGl0aW5nKClcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwicG9wb3Zlci1ib2R5XCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZTsgZWxzZSBub1RlbXBsYXRlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNub1RlbXBsYXRlPlxuICAgIEV4YW1wbGVcbiAgICA8IS0tIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gLS0+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcG9wb3Zlci9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3BvcG92ZXIvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0IsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN2RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzlELE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUlOLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7O0FBNEJ6RSxNQUFNLE9BQU8sZ0JBQWdCO0lBNEIzQixxRUFBcUU7SUFDckUsSUFBOEIsS0FBSyxLQUFLLE9BQU8sUUFBUSxDQUFBLENBQUMsQ0FBQztJQUV6RCxJQUFrQyxTQUFTLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFZM0Q7OztPQUdHO0lBQ0gsSUFDSSxTQUFTLEtBQUssT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUss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LEtBQUs7Z0JBcUZOLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRpb25FdmVudCwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgRVNDQVBFLCBoYXNNb2RpZmllcktleSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2RlcydcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb21FdmVudCwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBwb3BvdmVyRXhwYW5kSW4sIHBvcG92ZXJFeHBhbmRPdXQgfSBmcm9tICcuLi9wb3BvdmVyLWFuaW1hdGlvbnMnXG5pbXBvcnQgeyBUaGVTZWFtUG9wb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uL3BvcG92ZXIuZGlyZWN0aXZlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvcG92ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3NsaWRlRG93bicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIHVzZUFuaW1hdGlvbihwb3BvdmVyRXhwYW5kSW4pKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIHVzZUFuaW1hdGlvbihwb3BvdmVyRXhwYW5kT3V0KSksXG4gICAgXSlcbiAgXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAncG9wb3ZlciBzaG93IG0tMiBwb3NpdGlvbi1zdGF0aWMnLFxuICAgICdbQHNsaWRlRG93bl0nOiBge1xuICAgICAgdmFsdWU6IF9zdGF0ZSxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICBlbnRlckFuaW1hdGlvbkR1cmF0aW9uOiBlbnRlckFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgICBleGl0QW5pbWF0aW9uRHVyYXRpb246IGV4aXRBbmltYXRpb25EdXJhdGlvblxuICAgICAgfVxuICAgIH1gLFxuICAgICcoQHNsaWRlRG93bi5zdGFydCknOiAnX29uQW5pbWF0aW9uU3RhcnQoJGV2ZW50KScsXG4gICAgJyhAc2xpZGVEb3duLmRvbmUpJzogJ19hbmltYXRpb25Eb25lLm5leHQoJGV2ZW50KScsXG4gICAgJ1tzdHlsZS53aWR0aF0nOiAnX3BvcG92ZXJXaWR0aCdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIC8qKiBEdXJhdGlvbiBvZiB0aGUgZW50ZXIgYW5pbWF0aW9uLiBIYXMgdG8gYmUgYSB2YWxpZCBDU1MgdmFsdWUgKGUuZy4gMTAwbXMpLiAqL1xuICBlbnRlckFuaW1hdGlvbkR1cmF0aW9uPzogc3RyaW5nID0gJzIyNW1zJ1xuXG4gIC8qKiBEdXJhdGlvbiBvZiB0aGUgZXhpdCBhbmltYXRpb24uIEhhcyB0byBiZSBhIHZhbGlkIENTUyB2YWx1ZSAoZS5nLiA1MG1zKS4gKi9cbiAgZXhpdEFuaW1hdGlvbkR1cmF0aW9uPzogc3RyaW5nID0gJzIyNW1zJ1xuXG4gIC8qKiBTdGF0ZSBvZiB0aGUgZGlhbG9nIGFuaW1hdGlvbi4gKi9cbiAgX3N0YXRlOiAndm9pZCcgfCAnZW50ZXInIHwgJ2V4aXQnID0gJ2VudGVyJ1xuXG4gIC8qKiBBIHN1YmplY3QgZW1pdHRpbmcgYmVmb3JlIHRoZSBkaWFsb2cgZW50ZXJzIHRoZSB2aWV3LiAqL1xuICBfYmVmb3JlRW50ZXI6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBhZnRlciB0aGUgZGlhbG9nIGVudGVycyB0aGUgdmlldy4gKi9cbiAgX2FmdGVyRW50ZXI6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBiZWZvcmUgdGhlIGRpYWxvZyBleGl0cyB0aGUgdmlldy4gKi9cbiAgX2JlZm9yZUV4aXQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpXG5cbiAgLyoqIEEgc3ViamVjdCBlbWl0dGluZyBhZnRlciB0aGUgZGlhbG9nIGV4aXRzIHRoZSB2aWV3LiAqL1xuICBfYWZ0ZXJFeGl0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKVxuXG4gIC8qKiBTdHJlYW0gb2YgYW5pbWF0aW9uIGBkb25lYCBldmVudHMuICovXG4gIF9hbmltYXRpb25Eb25lID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KClcblxuICAvLyBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIGdldCBfcm9sZSgpIHsgcmV0dXJuIHRoaXMuX2NvbmZpZy5yb2xlIH1cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKSBnZXQgX3JvbGUoKSB7IHJldHVybiAnZGlhbG9nJyB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgZ2V0IF90YWJpbmRleCgpIHsgcmV0dXJuIC0xIH1cblxuICBASW5wdXQoKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZCB8IG51bGxcblxuICAvLyBAT3V0cHV0KCkgcmVhZG9ubHkgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkIHwgJ2NsaWNrJyB8ICdrZXlkb3duJz4oKVxuXG4gIEBJbnB1dCgpIHBvcG92ZXJDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIEBJbnB1dCgpIHBvcG92ZXI6IFRoZVNlYW1Qb3BvdmVyRGlyZWN0aXZlIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIEBJbnB1dCgpIHBvcG92ZXJDb250ZXh0OiBhbnlcblxuICAvKipcbiAgICogRGVmaW5lcyBhIHdpZHRoIGZvciBhIHBvcG92ZXIgdGhhdCB3aWxsIHNjYWxlIGRvd24gaWYgdGhlIHdpbmRvdyBpbm5lcldpZHRoIGlzXG4gICAqIHNtYWxsZXIgdGhhbiB0aGUgdmFsdWUuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgYmFzZVdpZHRoKCkgeyByZXR1cm4gdGhpcy5fYmFzZVdpZHRoLnZhbHVlIH1cbiAgc2V0IGJhc2VXaWR0aCh2YWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgIGNvbnN0IF92YWwgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSwgbnVsbClcbiAgICBpZiAoX3ZhbCAhPT0gdGhpcy5fYmFzZVdpZHRoLnZhbHVlKSB7XG4gICAgICB0aGlzLl9iYXNlV2lkdGgubmV4dChfdmFsKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9iYXNlV2lkdGggPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlciB8IG51bGw+KDYwMClcbiAgLy8gX3BvcG92ZXJXaWR0aCQ6IE9ic2VydmFibGU8c3RyaW5nIHwgdW5kZWZpbmVkPlxuICBfcG9wb3ZlcldpZHRoOiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgLy8gVE9ETzogSW1wbGVtZW50IFBvcG92ZXJDb25maWdcbiAgKSB7XG4gICAgLy8gV2UgdXNlIGEgU3ViamVjdCB3aXRoIGEgZGlzdGluY3RVbnRpbENoYW5nZWQsIHJhdGhlciB0aGFuIGEgY2FsbGJhY2sgYXR0YWNoZWQgdG8gLmRvbmUsXG4gICAgLy8gYmVjYXVzZSBzb21lIGJyb3dzZXJzIGZpcmUgdGhlIGRvbmUgZXZlbnQgdHdpY2UgYW5kIHdlIGRvbid0IHdhbnQgdG8gZW1pdCBkdXBsaWNhdGUgZXZlbnRzLlxuICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMjQwODRcbiAgICB0aGlzLl9hbmltYXRpb25Eb25lLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IHtcbiAgICAgIHJldHVybiB4LmZyb21TdGF0ZSA9PT0geS5mcm9tU3RhdGUgJiYgeC50b1N0YXRlID09PSB5LnRvU3RhdGVcbiAgICB9KSkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIC8vIEVtaXQgbGlmZWN5Y2xlIGV2ZW50cyBiYXNlZCBvbiBhbmltYXRpb24gYGRvbmVgIGNhbGxiYWNrLlxuICAgICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09ICdlbnRlcicpIHtcbiAgICAgICAgdGhpcy5fYWZ0ZXJFbnRlci5uZXh0KClcbiAgICAgICAgdGhpcy5fYWZ0ZXJFbnRlci5jb21wbGV0ZSgpXG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudC5mcm9tU3RhdGUgPT09ICdlbnRlcicgJiYgKGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyB8fCBldmVudC50b1N0YXRlID09PSAnZXhpdCcpKSB7XG4gICAgICAgIHRoaXMuX2FmdGVyRXhpdC5uZXh0KClcbiAgICAgICAgdGhpcy5fYWZ0ZXJFeGl0LmNvbXBsZXRlKClcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gdGhpcy5fcG9wb3ZlcldpZHRoJCA9XG4gICAgdGhpcy5fYmFzZVdpZHRoLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoYmFzZVdpZHRoID0+IHtcbiAgICAgICAgaWYgKGJhc2VXaWR0aCkge1xuICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJykucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh1bmRlZmluZWQpLFxuICAgICAgICAgICAgbWFwKCgpID0+IHdpbmRvdy5pbm5lcldpZHRoIDwgYmFzZVdpZHRoID8gYCR7d2luZG93LmlubmVyV2lkdGh9cHhgIDogYCR7YmFzZVdpZHRofXB4YClcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgICAgIH0pLFxuICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpXG4gICAgKS5zdWJzY3JpYmUodyA9PiB7XG4gICAgICB0aGlzLl9wb3BvdmVyV2lkdGggPSB3XG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgIH0pXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICAvLyB0aGlzLmNsb3NlZC5jb21wbGV0ZSgpXG4gICAgdGhpcy5fYW5pbWF0aW9uRG9uZS5jb21wbGV0ZSgpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqIFN0YXJ0cyB0aGUgZGlhbG9nIGV4aXQgYW5pbWF0aW9uLiAqL1xuICBfc3RhcnRFeGl0aW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2V4aXQnXG5cbiAgICAvLyBNYXJrIHRoZSBjb250YWluZXIgZm9yIGNoZWNrIHNvIGl0IGNhbiByZWFjdCBpZiB0aGVcbiAgICAvLyB2aWV3IGNvbnRhaW5lciBpcyB1c2luZyBPblB1c2ggY2hhbmdlIGRldGVjdGlvbi5cbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICB9XG5cbiAgLyoqIEVtaXQgbGlmZWN5Y2xlIGV2ZW50cyBiYXNlZCBvbiBhbmltYXRpb24gYHN0YXJ0YCBjYWxsYmFjay4gKi9cbiAgX29uQW5pbWF0aW9uU3RhcnQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09ICdlbnRlcicpIHtcbiAgICAgIHRoaXMuX2JlZm9yZUVudGVyLm5leHQoKVxuICAgICAgdGhpcy5fYmVmb3JlRW50ZXIuY29tcGxldGUoKVxuICAgIH1cbiAgICBpZiAoZXZlbnQuZnJvbVN0YXRlID09PSAnZW50ZXInICYmIChldmVudC50b1N0YXRlID09PSAndm9pZCcgfHwgZXZlbnQudG9TdGF0ZSA9PT0gJ2V4aXQnKSkge1xuICAgICAgdGhpcy5fYmVmb3JlRXhpdC5uZXh0KClcbiAgICAgIHRoaXMuX2JlZm9yZUV4aXQuY29tcGxldGUoKVxuICAgIH1cbiAgfVxuXG4gIC8qKiBIYW5kbGUgYSBrZXlib2FyZCBldmVudCBmcm9tIHRoZSBtZW51LCBkZWxlZ2F0aW5nIHRvIHRoZSBhcHByb3ByaWF0ZSBhY3Rpb24uICovXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbICckZXZlbnQnIF0pXG4gIF9oYW5kbGVLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRlcHJlY2F0aW9uXG4gICAgY29uc3Qga2V5Q29kZSA9IGV2ZW50LmtleUNvZGVcblxuICAgIHN3aXRjaCAoa2V5Q29kZSkge1xuICAgICAgY2FzZSBFU0NBUEU6XG4gICAgICAgIGlmICghaGFzTW9kaWZpZXJLZXkoZXZlbnQpKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIC8vIHRoaXMuY2xvc2VkLmVtaXQoJ2tleWRvd24nKVxuICAgICAgICAgIHRoaXMuX3N0YXJ0RXhpdGluZygpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cInBvcG92ZXItYm9keVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidGVtcGxhdGU7IGVsc2Ugbm9UZW1wbGF0ZVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcG9wb3ZlciwgcG9wb3ZlcjogcG9wb3ZlciwgcG9wb3ZlckNvbnRleHQ6IHBvcG92ZXJDb250ZXh0IH1cIj48L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctdGVtcGxhdGUgI25vVGVtcGxhdGU+XG4gICAgRXhhbXBsZVxuICAgIDwhLS0gPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiAtLT5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
@@ -116,6 +116,8 @@ export class TheSeamPopoverDirective {
116
116
  this._closingActionsSubscription = this._popoverClosingActions().subscribe(() => this.closePopover());
117
117
  this._compRef.instance.template = this.seamPopover;
118
118
  this._compRef.instance.baseWidth = this.seamPopoverBaseWidth;
119
+ this._compRef.instance.popover = this;
120
+ this._compRef.instance.popoverContext = this.seamPopoverContext;
119
121
  this._compRef.changeDetectorRef.markForCheck();
120
122
  this._popoverClosedSubscription = this._compRef.instance._afterExit.subscribe(v => {
121
123
  // console.log('closed', v)
@@ -229,7 +231,7 @@ export class TheSeamPopoverDirective {
229
231
  }
230
232
  }
231
233
  TheSeamPopoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamPopoverDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.Overlay }, { token: i2.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive });
232
- TheSeamPopoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamPopoverDirective, selector: "[seamPopover]", inputs: { seamPopover: "seamPopover", seamPopoverBaseWidth: "seamPopoverBaseWidth", seamPopoverDisabled: "seamPopoverDisabled" }, host: { attributes: { "aria-haspopup": "true" }, listeners: { "mousedown": "_onMouseDown($event)", "click": "_onClick($event)", "document:keydown": "_onDocumentKeydown($event)" }, properties: { "attr.aria-expanded": "popoverOpen() || null" } }, exportAs: ["seamPopover"], ngImport: i0 });
234
+ TheSeamPopoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamPopoverDirective, selector: "[seamPopover]", inputs: { seamPopover: "seamPopover", seamPopoverContext: "seamPopoverContext", seamPopoverBaseWidth: "seamPopoverBaseWidth", seamPopoverDisabled: "seamPopoverDisabled" }, host: { attributes: { "aria-haspopup": "true" }, listeners: { "mousedown": "_onMouseDown($event)", "click": "_onClick($event)", "document:keydown": "_onDocumentKeydown($event)" }, properties: { "attr.aria-expanded": "popoverOpen() || null" } }, exportAs: ["seamPopover"], ngImport: i0 });
233
235
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamPopoverDirective, decorators: [{
234
236
  type: Directive,
235
237
  args: [{
@@ -243,6 +245,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
243
245
  }]
244
246
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i1.Overlay }, { type: i2.FocusMonitor }]; }, propDecorators: { seamPopover: [{
245
247
  type: Input
248
+ }], seamPopoverContext: [{
249
+ type: Input
246
250
  }], seamPopoverBaseWidth: [{
247
251
  type: Input
248
252
  }], seamPopoverDisabled: [{
@@ -257,4 +261,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
257
261
  type: HostListener,
258
262
  args: ['document:keydown', ['$event']]
259
263
  }] } });
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcG9wb3Zlci9wb3BvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTZCLCtCQUErQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDOUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDbkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRTlDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQWdCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFvRCxNQUFNLGVBQWUsQ0FBQTtBQUMxSSxPQUFPLEVBQUUsZUFBZSxFQUFhLEtBQUssRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNuRixPQUFPLEVBQWEsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUE7Ozs7QUFFOUQsb0RBQW9EO0FBQ3BELE1BQU0sMkJBQTJCLEdBQUcsK0JBQStCLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtBQVd0RixNQUFNLE9BQU8sdUJBQXVCO0lBTWxDOzs7T0FHRztJQUNILElBQ0ksb0JBQW9CLEtBQUssT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUN0RSxJQUFJLG9CQUFvQixDQUFDLEtBQW9CO1FBQzNDLE1BQU0sSUFBSSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtR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LHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQVRuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6Qix1REFBdUQ7b0JBQ3ZELElBQUksRUFBRTt3QkFDSixlQUFlLEVBQUUsTUFBTTt3QkFDdkIsc0JBQXNCLEVBQUUsdUJBQXVCO3FCQUNoRDtvQkFDRCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7aUxBS1UsV0FBVztzQkFBbkIsS0FBSztnQkFPRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBV0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQW9DTixZQUFZO3NCQURYLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQVV2QyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQU1uQyxrQkFBa0I7c0JBRGpCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luLCBpc0Zha2VNb3VzZWRvd25Gcm9tU2NyZWVuUmVhZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgRVNDQVBFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJ1xuaW1wb3J0IHsgQ29ubmVjdGlvblBvc2l0aW9uUGFpciwgT3ZlcmxheSwgT3ZlcmxheVJlZiwgUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xuaW1wb3J0IHsgbm9ybWFsaXplUGFzc2l2ZUxpc3RlbmVyT3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSdcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnXG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZnJvbUV2ZW50LCBtZXJnZSwgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50J1xuXG4vKiogT3B0aW9ucyBmb3IgYmluZGluZyBhIHBhc3NpdmUgZXZlbnQgbGlzdGVuZXIuICovXG5jb25zdCBwYXNzaXZlRXZlbnRMaXN0ZW5lck9wdGlvbnMgPSBub3JtYWxpemVQYXNzaXZlTGlzdGVuZXJPcHRpb25zKHsgcGFzc2l2ZTogdHJ1ZSB9KVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2VhbVBvcG92ZXJdJyxcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnVzZS1ob3N0LXByb3BlcnR5LWRlY29yYXRvclxuICBob3N0OiB7XG4gICAgJ2FyaWEtaGFzcG9wdXAnOiAndHJ1ZScsXG4gICAgJ1thdHRyLmFyaWEtZXhwYW5kZWRdJzogJ3BvcG92ZXJPcGVuKCkgfHwgbnVsbCdcbiAgfSxcbiAgZXhwb3J0QXM6ICdzZWFtUG9wb3Zlcidcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgQElucHV0KCkgc2VhbVBvcG92ZXI/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgd2lkdGggZm9yIGEgcG9wb3ZlciB0aGF0IHdpbGwgc2NhbGUgZG93biBpZiB0aGUgd2luZG93IGlubmVyV2lkdGggaXNcbiAgICogc21hbGxlciB0aGFuIHRoZSB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBzZWFtUG9wb3ZlckJhc2VXaWR0aCgpIHsgcmV0dXJuIHRoaXMuX3NlYW1Qb3BvdmVyQmFzZVdpZHRoLnZhbHVlIH1cbiAgc2V0IHNlYW1Qb3BvdmVyQmFzZVdpZHRoKHZhbHVlOiBudW1iZXIgfCBudWxsKSB7XG4gICAgY29uc3QgX3ZhbCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlLCBudWxsKVxuICAgIGlmIChfdmFsICE9PSB0aGlzLl9zZWFtUG9wb3ZlckJhc2VXaWR0aC52YWx1ZSkge1xuICAgICAgdGhpcy5fc2VhbVBvcG92ZXJCYXNlV2lkdGgubmV4dChfdmFsKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9zZWFtUG9wb3ZlckJhc2VXaWR0aCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyIHwgbnVsbD4obnVsbClcblxuICBASW5wdXQoKVxuICBnZXQgc2VhbVBvcG92ZXJEaXNhYmxlZCgpIHsgcmV0dXJuIHRoaXMuX3NlYW1Qb3BvdmVyRGlzYWJsZWQudmFsdWUgfVxuICBzZXQgc2VhbVBvcG92ZXJEaXNhYmxlZCh2YWw6IGJvb2xlYW4pIHsgdGhpcy5fc2VhbVBvcG92ZXJEaXNhYmxlZC5uZXh0KGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWwpKSB9XG4gIHByaXZhdGUgX3NlYW1Qb3BvdmVyRGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuXG4gIC8vIG5nT25Jbml0KCkge1xuICAvLyAgIHRoaXMuX3NlYW1Qb3BvdmVyRGlzYWJsZWQucGlwZShcbiAgLy8gICAgIHN3aXRjaE1hcChkaXNhYmxlZCA9PiB7XG4gIC8vICAgICAgIGlmIChkaXNhYmxlZCkge1xuICAvLyAgICAgICAgIHRoaXMuY2xvc2UoKVxuICAvLyAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpXG4gIC8vICAgICAgIH1cblxuICAvLyAgICAgICBpZiAoISh0aGlzLl9lbGVtZW50UmVmICYmIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpIHtcbiAgLy8gICAgICAgICByZXR1cm4gb2YodW5kZWZpbmVkKVxuICAvLyAgICAgICB9XG5cbiAgLy8gICAgICAgcmV0dXJuIGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpXG4gIC8vICAgICB9KVxuICAvLyAgICkuc3Vic2NyaWJlKClcbiAgLy8gfVxuXG4gIHByaXZhdGUgX2FjdGl2ZSA9IGZhbHNlXG4gIHByaXZhdGUgX2Nsb3NpbmcgPSBmYWxzZVxuICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgdW5kZWZpbmVkIHwgbnVsbFxuICBwcml2YXRlIF9jb21wUmVmOiBDb21wb25lbnRSZWY8UG9wb3ZlckNvbXBvbmVudD4gfCB1bmRlZmluZWQgfCBudWxsXG4gIHByaXZhdGUgX3BvcG92ZXJDbG9zZWRTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFlcbiAgcHJpdmF0ZSBfY2xvc2luZ0FjdGlvbnNTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFlcblxuICBwdWJsaWMgcmVzdG9yZUZvY3VzID0gdHJ1ZVxuXG4gIC8vIFRyYWNraW5nIGlucHV0IHR5cGUgaXMgbmVjZXNzYXJ5IHNvIGl0J3MgcG9zc2libGUgdG8gb25seSBhdXRvLWZvY3VzXG4gIC8vIHRoZSBmaXJzdCBpdGVtIG9mIHRoZSBsaXN0IHdoZW4gdGhlIG1lbnUgaXMgb3BlbmVkIHZpYSB0aGUga2V5Ym9hcmRcbiAgX29wZW5lZEJ5OiAnbW91c2UnIHwgJ3RvdWNoJyB8IG51bGwgPSBudWxsXG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyAnJGV2ZW50JyBdKVxuICBfb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAoIWlzRmFrZU1vdXNlZG93bkZyb21TY3JlZW5SZWFkZXIoZXZlbnQpKSB7XG4gICAgICAvLyBTaW5jZSByaWdodCBvciBtaWRkbGUgYnV0dG9uIGNsaWNrcyB3b24ndCB0cmlnZ2VyIHRoZSBgY2xpY2tgIGV2ZW50LFxuICAgICAgLy8gd2Ugc2hvdWxkbid0IGNvbnNpZGVyIHRoZSBtZW51IGFzIG9wZW5lZCBieSBtb3VzZSBpbiB0aG9zZSBjYXNlcy5cbiAgICAgIHRoaXMuX29wZW5lZEJ5ID0gZXZlbnQuYnV0dG9uID09PSAwID8gJ21vdXNlJyA6IG51bGxcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsgJyRldmVudCcgXSlcbiAgX29uQ2xpY2soZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudG9nZ2xlKClcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbICckZXZlbnQnIF0pXG4gIF9vbkRvY3VtZW50S2V5ZG93bihldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50LmtleUNvZGUgPT09IEVTQ0FQRSkge1xuICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMuX2hhbmRsZVRvdWNoU3RhcnQsXG4gICAgICAgIHBhc3NpdmVFdmVudExpc3RlbmVyT3B0aW9ucylcblxuICAgIHRoaXMuX3NlYW1Qb3BvdmVyQmFzZVdpZHRoXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHcgPT4ge1xuICAgICAgICBpZiAodGhpcy5fY29tcFJlZiAmJiB0aGlzLl9jb21wUmVmLmluc3RhbmNlKSB7XG4gICAgICAgICAgdGhpcy5fY29tcFJlZi5pbnN0YW5jZS5iYXNlV2lkdGggPSB3XG4gICAgICAgICAgdGhpcy5fY29tcFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICB9XG4gICAgICB9KVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5jbG9zZVBvcG92ZXIoKVxuXG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLl9oYW5kbGVUb3VjaFN0YXJ0LFxuICAgICAgICBwYXNzaXZlRXZlbnRMaXN0ZW5lck9wdGlvbnMpXG5cbiAgICB0aGlzLl9wb3BvdmVyQ2xvc2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICB0aGlzLl9jbG9zaW5nQWN0aW9uc1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQodW5kZWZpbmVkKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdG91Y2ggc3RhcnQgZXZlbnRzIG9uIHRoZSB0cmlnZ2VyLlxuICAgKiBOZWVkcyB0byBiZSBhbiBhcnJvdyBmdW5jdGlvbiBzbyB3ZSBjYW4gZWFzaWx5IHVzZSBhZGRFdmVudExpc3RlbmVyIGFuZCByZW1vdmVFdmVudExpc3RlbmVyLlxuICAgKi9cbiAgcHJpdmF0ZSBfaGFuZGxlVG91Y2hTdGFydCA9ICgpID0+IHRoaXMuX29wZW5lZEJ5ID0gJ3RvdWNoJ1xuXG4gIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2FjdGl2ZSB8fCB0aGlzLnNlYW1Qb3BvdmVyRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuUG9wb3ZlcigpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9wZW5Qb3BvdmVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9hY3RpdmUgfHwgIXRoaXMuc2VhbVBvcG92ZXIpIHsgcmV0dXJuIH1cbiAgICB0aGlzLl9hY3RpdmUgPSB0cnVlXG5cbiAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUoe1xuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBiYWNrZHJvcENsYXNzOiAndHJhbnNwYXJlbnQnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5nZXRPdmVybGF5UG9zaXRpb24odGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSxcbiAgICB9KVxuXG4gICAgdGhpcy5fY29tcFJlZiA9IHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKG5ldyBDb21wb25lbnRQb3J0YWwoUG9wb3ZlckNvbXBvbmVudCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZikpXG5cbiAgICB0aGlzLl9jbG9zaW5nQWN0aW9uc1N1YnNjcmlwdGlvbiA9IHRoaXMuX3BvcG92ZXJDbG9zaW5nQWN0aW9ucygpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlUG9wb3ZlcigpKVxuXG4gICAgdGhpcy5fY29tcFJlZi5pbnN0YW5jZS50ZW1wbGF0ZSA9IHRoaXMuc2VhbVBvcG92ZXJcbiAgICB0aGlzLl9jb21wUmVmLmluc3RhbmNlLmJhc2VXaWR0aCA9IHRoaXMuc2VhbVBvcG92ZXJCYXNlV2lkdGhcbiAgICB0aGlzLl9jb21wUmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG5cbiAgICB0aGlzLl9wb3BvdmVyQ2xvc2VkU3Vic2NyaXB0aW9uID0gdGhpcy5fY29tcFJlZi5pbnN0YW5jZS5fYWZ0ZXJFeGl0LnN1YnNjcmliZSh2ID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdjbG9zZWQnLCB2KVxuICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZXNldFBvcG92ZXIoKVxuXG4gICAgICB0aGlzLl9wb3BvdmVyQ2xvc2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgIHRoaXMuX2Nsb3NpbmdBY3Rpb25zU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcblxuICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2VcbiAgICAgIHRoaXMuX2Nsb3NpbmcgPSBmYWxzZVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgY2xvc2VQb3BvdmVyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fYWN0aXZlKSB7IHJldHVybiB9XG5cbiAgICBpZiAoIXRoaXMuX2Nsb3NpbmcpIHtcbiAgICAgIGlmICh0aGlzLl9jb21wUmVmICYmIHRoaXMuX2NvbXBSZWYuaW5zdGFuY2UpIHtcbiAgICAgICAgdGhpcy5fY2xvc2luZyA9IHRydWVcbiAgICAgICAgdGhpcy5fY29tcFJlZi5pbnN0YW5jZS5fc3RhcnRFeGl0aW5nKClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcG9wb3Zlck9wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkgPz8gZmFsc2VcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3ZlcmxheVBvc2l0aW9uKG9yaWdpbjogSFRNTEVsZW1lbnQpOiBQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhvcmlnaW4pXG4gICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLmdldFBvc2l0aW9ucygpKVxuICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnMoZmFsc2UpXG4gICAgICAud2l0aFB1c2godHJ1ZSlcblxuICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5XG4gIH1cblxuICBwcml2YXRlIGdldFBvc2l0aW9ucygpOiBDb25uZWN0aW9uUG9zaXRpb25QYWlyW10ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgICAgICBvdmVybGF5WTogJ2JvdHRvbSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgIH0sXG4gICAgXVxuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIHBvcG92ZXIgdHJpZ2dlci5cbiAgICogQHBhcmFtIG9yaWdpbiBTb3VyY2Ugb2YgdGhlIHBvcG92ZXIgdHJpZ2dlcidzIGZvY3VzLlxuICAgKi9cbiAgZm9jdXMob3JpZ2luOiBGb2N1c09yaWdpbiA9ICdwcm9ncmFtJykge1xuICAgIGlmICh0aGlzLl9mb2N1c01vbml0b3IpIHtcbiAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5mb2N1c1ZpYSh0aGlzLl9lbGVtZW50UmVmLCBvcmlnaW4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHJlc2V0cyB0aGUgcG9wb3ZlciB3aGVuIGl0J3MgY2xvc2VkLCBtb3N0IGltcG9ydGFudGx5IHJlc3RvcmluZ1xuICAgKiBmb2N1cyB0byB0aGUgcG9wb3ZlciB0cmlnZ2VyIGlmIHRoZSBwb3BvdmVyIHdhcyBvcGVuZWQgdmlhIHRoZSBrZXlib2FyZC5cbiAgICovXG4gIHByaXZhdGUgX3Jlc2V0UG9wb3ZlcigpOiB2b2lkIHtcbiAgICAvLyBXZSBzaG91bGQgcmVzZXQgZm9jdXMgaWYgdGhlIHVzZXIgaXMgbmF2aWdhdGluZyB1c2luZyBhIGtleWJvYXJkIG9yXG4gICAgLy8gaWYgd2UgaGF2ZSBhIHRvcC1sZXZlbCB0cmlnZ2VyIHdoaWNoIG1pZ2h0IGNhdXNlIGZvY3VzIHRvIGJlIGxvc3RcbiAgICAvLyB3aGVuIGNsaWNraW5nIG9uIHRoZSBiYWNrZHJvcC5cbiAgICBpZiAodGhpcy5yZXN0b3JlRm9jdXMpIHtcbiAgICAgIGlmICghdGhpcy5fb3BlbmVkQnkpIHtcbiAgICAgICAgLy8gTm90ZSB0aGF0IHRoZSBmb2N1cyBzdHlsZSB3aWxsIHNob3cgdXAgYm90aCBmb3IgYHByb2dyYW1gIGFuZFxuICAgICAgICAvLyBga2V5Ym9hcmRgIHNvIHdlIGRvbid0IGhhdmUgdG8gc3BlY2lmeSB3aGljaCBvbmUgaXQgaXMuXG4gICAgICAgIHRoaXMuZm9jdXMoKVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX29wZW5lZEJ5ID0gbnVsbFxuICB9XG5cbiAgLyoqIFJldHVybnMgYSBzdHJlYW0gdGhhdCBlbWl0cyB3aGVuZXZlciBhbiBhY3Rpb24gdGhhdCBzaG91bGQgY2xvc2UgdGhlIHBvcG92ZXIgb2NjdXJzLiAqL1xuICBwcml2YXRlIF9wb3BvdmVyQ2xvc2luZ0FjdGlvbnMoKSB7XG4gICAgY29uc3QgYmFja2Ryb3AgPSB0aGlzLl9vdmVybGF5UmVmPy5iYWNrZHJvcENsaWNrKCkgPz8gb2YoKVxuICAgIGNvbnN0IGRldGFjaG1lbnRzID0gdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNobWVudHMoKSA/PyBvZigpXG4gICAgY29uc3QgaG92ZXIgPSBvZigpXG5cbiAgICByZXR1cm4gbWVyZ2UoYmFja2Ryb3AsIGhvdmVyLCBkZXRhY2htZW50cylcbiAgfVxuXG59XG4iXX0=
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcG9wb3Zlci9wb3BvdmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTZCLCtCQUErQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDOUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDbkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRTlDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQWdCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFvRCxNQUFNLGVBQWUsQ0FBQTtBQUMxSSxPQUFPLEVBQUUsZUFBZSxFQUFhLEtBQUssRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNuRixPQUFPLEVBQWEsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUE7Ozs7QUFFOUQsb0RBQW9EO0FBQ3BELE1BQU0sMkJBQTJCLEdBQUcsK0JBQStCLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtBQVd0RixNQUFNLE9BQU8sdUJBQXVCO0lBUWxDOzs7T0FHRztJQUNILElBQ0ksb0JBQW9CLEtBQUssT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUN0RSxJQUFJLG9CQUFvQixDQUFDLEtBQW9CO1FBQzNDLE1BQU0sSUFBSSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtR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UUFDM0QsTUFBTSxLQUFLLEdBQUcsRUFBRSxFQUFFLENBQUE7UUFFbEIsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUM1QyxDQUFDOztvSEF4UVUsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFUbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsdURBQXVEO29CQUN2RCxJQUFJLEVBQUU7d0JBQ0osZUFBZSxFQUFFLE1BQU07d0JBQ3ZCLHNCQUFzQixFQUFFLHVCQUF1QjtxQkFDaEQ7b0JBQ0QsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCO2lMQUtVLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQU9GLG9CQUFvQjtzQkFEdkIsS0FBSztnQkFXRixtQkFBbUI7c0JBRHRCLEtBQUs7Z0JBb0NOLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBRSxRQUFRLENBQUU7Z0JBVXZDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUU7Z0JBTW5DLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxDQUFFLFFBQVEsQ0FBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4sIGlzRmFrZU1vdXNlZG93bkZyb21TY3JlZW5SZWFkZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSdcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBFU0NBUEUgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnXG5pbXBvcnQgeyBDb25uZWN0aW9uUG9zaXRpb25QYWlyLCBPdmVybGF5LCBPdmVybGF5UmVmLCBQb3NpdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBub3JtYWxpemVQYXNzaXZlTGlzdGVuZXJPcHRpb25zIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJ1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tRXZlbnQsIG1lcmdlLCBvZiwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnXG5cbi8qKiBPcHRpb25zIGZvciBiaW5kaW5nIGEgcGFzc2l2ZSBldmVudCBsaXN0ZW5lci4gKi9cbmNvbnN0IHBhc3NpdmVFdmVudExpc3RlbmVyT3B0aW9ucyA9IG5vcm1hbGl6ZVBhc3NpdmVMaXN0ZW5lck9wdGlvbnMoeyBwYXNzaXZlOiB0cnVlIH0pXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzZWFtUG9wb3Zlcl0nLFxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dXNlLWhvc3QtcHJvcGVydHktZGVjb3JhdG9yXG4gIGhvc3Q6IHtcbiAgICAnYXJpYS1oYXNwb3B1cCc6ICd0cnVlJyxcbiAgICAnW2F0dHIuYXJpYS1leHBhbmRlZF0nOiAncG9wb3Zlck9wZW4oKSB8fCBudWxsJ1xuICB9LFxuICBleHBvcnRBczogJ3NlYW1Qb3BvdmVyJ1xufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtUG9wb3ZlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBASW5wdXQoKSBzZWFtUG9wb3Zlcj86IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsXG5cbiAgQElucHV0KCkgc2VhbVBvcG92ZXJDb250ZXh0PzogYW55XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYSB3aWR0aCBmb3IgYSBwb3BvdmVyIHRoYXQgd2lsbCBzY2FsZSBkb3duIGlmIHRoZSB3aW5kb3cgaW5uZXJXaWR0aCBpc1xuICAgKiBzbWFsbGVyIHRoYW4gdGhlIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHNlYW1Qb3BvdmVyQmFzZVdpZHRoKCkgeyByZXR1cm4gdGhpcy5fc2VhbVBvcG92ZXJCYXNlV2lkdGgudmFsdWUgfVxuICBzZXQgc2VhbVBvcG92ZXJCYXNlV2lkdGgodmFsdWU6IG51bWJlciB8IG51bGwpIHtcbiAgICBjb25zdCBfdmFsID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUsIG51bGwpXG4gICAgaWYgKF92YWwgIT09IHRoaXMuX3NlYW1Qb3BvdmVyQmFzZVdpZHRoLnZhbHVlKSB7XG4gICAgICB0aGlzLl9zZWFtUG9wb3ZlckJhc2VXaWR0aC5uZXh0KF92YWwpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX3NlYW1Qb3BvdmVyQmFzZVdpZHRoID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXIgfCBudWxsPihudWxsKVxuXG4gIEBJbnB1dCgpXG4gIGdldCBzZWFtUG9wb3ZlckRpc2FibGVkKCkgeyByZXR1cm4gdGhpcy5fc2VhbVBvcG92ZXJEaXNhYmxlZC52YWx1ZSB9XG4gIHNldCBzZWFtUG9wb3ZlckRpc2FibGVkKHZhbDogYm9vbGVhbikgeyB0aGlzLl9zZWFtUG9wb3ZlckRpc2FibGVkLm5leHQoY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbCkpIH1cbiAgcHJpdmF0ZSBfc2VhbVBvcG92ZXJEaXNhYmxlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG5cbiAgLy8gbmdPbkluaXQoKSB7XG4gIC8vICAgdGhpcy5fc2VhbVBvcG92ZXJEaXNhYmxlZC5waXBlKFxuICAvLyAgICAgc3dpdGNoTWFwKGRpc2FibGVkID0+IHtcbiAgLy8gICAgICAgaWYgKGRpc2FibGVkKSB7XG4gIC8vICAgICAgICAgdGhpcy5jbG9zZSgpXG4gIC8vICAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZClcbiAgLy8gICAgICAgfVxuXG4gIC8vICAgICAgIGlmICghKHRoaXMuX2VsZW1lbnRSZWYgJiYgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSkge1xuICAvLyAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpXG4gIC8vICAgICAgIH1cblxuICAvLyAgICAgICByZXR1cm4gZnJvbUV2ZW50KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgLy8gICAgIH0pXG4gIC8vICAgKS5zdWJzY3JpYmUoKVxuICAvLyB9XG5cbiAgcHJpdmF0ZSBfYWN0aXZlID0gZmFsc2VcbiAgcHJpdmF0ZSBfY2xvc2luZyA9IGZhbHNlXG4gIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCB1bmRlZmluZWQgfCBudWxsXG4gIHByaXZhdGUgX2NvbXBSZWY6IENvbXBvbmVudFJlZjxQb3BvdmVyQ29tcG9uZW50PiB8IHVuZGVmaW5lZCB8IG51bGxcbiAgcHJpdmF0ZSBfcG9wb3ZlckNsb3NlZFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWVxuICBwcml2YXRlIF9jbG9zaW5nQWN0aW9uc1N1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWVxuXG4gIHB1YmxpYyByZXN0b3JlRm9jdXMgPSB0cnVlXG5cbiAgLy8gVHJhY2tpbmcgaW5wdXQgdHlwZSBpcyBuZWNlc3Nhcnkgc28gaXQncyBwb3NzaWJsZSB0byBvbmx5IGF1dG8tZm9jdXNcbiAgLy8gdGhlIGZpcnN0IGl0ZW0gb2YgdGhlIGxpc3Qgd2hlbiB0aGUgbWVudSBpcyBvcGVuZWQgdmlhIHRoZSBrZXlib2FyZFxuICBfb3BlbmVkQnk6ICdtb3VzZScgfCAndG91Y2gnIHwgbnVsbCA9IG51bGxcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbICckZXZlbnQnIF0pXG4gIF9vbk1vdXNlRG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICghaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudCkpIHtcbiAgICAgIC8vIFNpbmNlIHJpZ2h0IG9yIG1pZGRsZSBidXR0b24gY2xpY2tzIHdvbid0IHRyaWdnZXIgdGhlIGBjbGlja2AgZXZlbnQsXG4gICAgICAvLyB3ZSBzaG91bGRuJ3QgY29uc2lkZXIgdGhlIG1lbnUgYXMgb3BlbmVkIGJ5IG1vdXNlIGluIHRob3NlIGNhc2VzLlxuICAgICAgdGhpcy5fb3BlbmVkQnkgPSBldmVudC5idXR0b24gPT09IDAgPyAnbW91c2UnIDogbnVsbFxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyAnJGV2ZW50JyBdKVxuICBfb25DbGljayhldmVudDogYW55KSB7XG4gICAgdGhpcy50b2dnbGUoKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsgJyRldmVudCcgXSlcbiAgX29uRG9jdW1lbnRLZXlkb3duKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFKSB7XG4gICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpXG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIF9vdmVybGF5OiBPdmVybGF5LFxuICAgIHByaXZhdGUgX2ZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yXG4gICkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5faGFuZGxlVG91Y2hTdGFydCxcbiAgICAgICAgcGFzc2l2ZUV2ZW50TGlzdGVuZXJPcHRpb25zKVxuXG4gICAgdGhpcy5fc2VhbVBvcG92ZXJCYXNlV2lkdGhcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUodyA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9jb21wUmVmICYmIHRoaXMuX2NvbXBSZWYuaW5zdGFuY2UpIHtcbiAgICAgICAgICB0aGlzLl9jb21wUmVmLmluc3RhbmNlLmJhc2VXaWR0aCA9IHdcbiAgICAgICAgICB0aGlzLl9jb21wUmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNsb3NlUG9wb3ZlcigpXG5cbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMuX2hhbmRsZVRvdWNoU3RhcnQsXG4gICAgICAgIHBhc3NpdmVFdmVudExpc3RlbmVyT3B0aW9ucylcblxuICAgIHRoaXMuX3BvcG92ZXJDbG9zZWRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICAgIHRoaXMuX2Nsb3NpbmdBY3Rpb25zU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcblxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCh1bmRlZmluZWQpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyB0b3VjaCBzdGFydCBldmVudHMgb24gdGhlIHRyaWdnZXIuXG4gICAqIE5lZWRzIHRvIGJlIGFuIGFycm93IGZ1bmN0aW9uIHNvIHdlIGNhbiBlYXNpbHkgdXNlIGFkZEV2ZW50TGlzdGVuZXIgYW5kIHJlbW92ZUV2ZW50TGlzdGVuZXIuXG4gICAqL1xuICBwcml2YXRlIF9oYW5kbGVUb3VjaFN0YXJ0ID0gKCkgPT4gdGhpcy5fb3BlbmVkQnkgPSAndG91Y2gnXG5cbiAgcHVibGljIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fYWN0aXZlIHx8IHRoaXMuc2VhbVBvcG92ZXJEaXNhYmxlZCkge1xuICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW5Qb3BvdmVyKClcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlblBvcG92ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2FjdGl2ZSB8fCAhdGhpcy5zZWFtUG9wb3ZlcikgeyByZXR1cm4gfVxuICAgIHRoaXMuX2FjdGl2ZSA9IHRydWVcblxuICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICd0cmFuc3BhcmVudCcsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLmdldE92ZXJsYXlQb3NpdGlvbih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpLFxuICAgIH0pXG5cbiAgICB0aGlzLl9jb21wUmVmID0gdGhpcy5fb3ZlcmxheVJlZi5hdHRhY2gobmV3IENvbXBvbmVudFBvcnRhbChQb3BvdmVyQ29tcG9uZW50LCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKSlcblxuICAgIHRoaXMuX2Nsb3NpbmdBY3Rpb25zU3Vic2NyaXB0aW9uID0gdGhpcy5fcG9wb3ZlckNsb3NpbmdBY3Rpb25zKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2VQb3BvdmVyKCkpXG5cbiAgICB0aGlzLl9jb21wUmVmLmluc3RhbmNlLnRlbXBsYXRlID0gdGhpcy5zZWFtUG9wb3ZlclxuICAgIHRoaXMuX2NvbXBSZWYuaW5zdGFuY2UuYmFzZVdpZHRoID0gdGhpcy5zZWFtUG9wb3ZlckJhc2VXaWR0aFxuICAgIHRoaXMuX2NvbXBSZWYuaW5zdGFuY2UucG9wb3ZlciA9IHRoaXNcbiAgICB0aGlzLl9jb21wUmVmLmluc3RhbmNlLnBvcG92ZXJDb250ZXh0ID0gdGhpcy5zZWFtUG9wb3ZlckNvbnRleHRcbiAgICB0aGlzLl9jb21wUmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG5cbiAgICB0aGlzLl9wb3BvdmVyQ2xvc2VkU3Vic2NyaXB0aW9uID0gdGhpcy5fY29tcFJlZi5pbnN0YW5jZS5fYWZ0ZXJFeGl0LnN1YnNjcmliZSh2ID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdjbG9zZWQnLCB2KVxuICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZXNldFBvcG92ZXIoKVxuXG4gICAgICB0aGlzLl9wb3BvdmVyQ2xvc2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgIHRoaXMuX2Nsb3NpbmdBY3Rpb25zU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcblxuICAgICAgdGhpcy5fYWN0aXZlID0gZmFsc2VcbiAgICAgIHRoaXMuX2Nsb3NpbmcgPSBmYWxzZVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgY2xvc2VQb3BvdmVyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fYWN0aXZlKSB7IHJldHVybiB9XG5cbiAgICBpZiAoIXRoaXMuX2Nsb3NpbmcpIHtcbiAgICAgIGlmICh0aGlzLl9jb21wUmVmICYmIHRoaXMuX2NvbXBSZWYuaW5zdGFuY2UpIHtcbiAgICAgICAgdGhpcy5fY2xvc2luZyA9IHRydWVcbiAgICAgICAgdGhpcy5fY29tcFJlZi5pbnN0YW5jZS5fc3RhcnRFeGl0aW5nKClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcG9wb3Zlck9wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkgPz8gZmFsc2VcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3ZlcmxheVBvc2l0aW9uKG9yaWdpbjogSFRNTEVsZW1lbnQpOiBQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhvcmlnaW4pXG4gICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLmdldFBvc2l0aW9ucygpKVxuICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnMoZmFsc2UpXG4gICAgICAud2l0aFB1c2godHJ1ZSlcblxuICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5XG4gIH1cblxuICBwcml2YXRlIGdldFBvc2l0aW9ucygpOiBDb25uZWN0aW9uUG9zaXRpb25QYWlyW10ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgICAgICBvdmVybGF5WTogJ2JvdHRvbSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgIH0sXG4gICAgXVxuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIHBvcG92ZXIgdHJpZ2dlci5cbiAgICogQHBhcmFtIG9yaWdpbiBTb3VyY2Ugb2YgdGhlIHBvcG92ZXIgdHJpZ2dlcidzIGZvY3VzLlxuICAgKi9cbiAgZm9jdXMob3JpZ2luOiBGb2N1c09yaWdpbiA9ICdwcm9ncmFtJykge1xuICAgIGlmICh0aGlzLl9mb2N1c01vbml0b3IpIHtcbiAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5mb2N1c1ZpYSh0aGlzLl9lbGVtZW50UmVmLCBvcmlnaW4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHJlc2V0cyB0aGUgcG9wb3ZlciB3aGVuIGl0J3MgY2xvc2VkLCBtb3N0IGltcG9ydGFudGx5IHJlc3RvcmluZ1xuICAgKiBmb2N1cyB0byB0aGUgcG9wb3ZlciB0cmlnZ2VyIGlmIHRoZSBwb3BvdmVyIHdhcyBvcGVuZWQgdmlhIHRoZSBrZXlib2FyZC5cbiAgICovXG4gIHByaXZhdGUgX3Jlc2V0UG9wb3ZlcigpOiB2b2lkIHtcbiAgICAvLyBXZSBzaG91bGQgcmVzZXQgZm9jdXMgaWYgdGhlIHVzZXIgaXMgbmF2aWdhdGluZyB1c2luZyBhIGtleWJvYXJkIG9yXG4gICAgLy8gaWYgd2UgaGF2ZSBhIHRvcC1sZXZlbCB0cmlnZ2VyIHdoaWNoIG1pZ2h0IGNhdXNlIGZvY3VzIHRvIGJlIGxvc3RcbiAgICAvLyB3aGVuIGNsaWNraW5nIG9uIHRoZSBiYWNrZHJvcC5cbiAgICBpZiAodGhpcy5yZXN0b3JlRm9jdXMpIHtcbiAgICAgIGlmICghdGhpcy5fb3BlbmVkQnkpIHtcbiAgICAgICAgLy8gTm90ZSB0aGF0IHRoZSBmb2N1cyBzdHlsZSB3aWxsIHNob3cgdXAgYm90aCBmb3IgYHByb2dyYW1gIGFuZFxuICAgICAgICAvLyBga2V5Ym9hcmRgIHNvIHdlIGRvbid0IGhhdmUgdG8gc3BlY2lmeSB3aGljaCBvbmUgaXQgaXMuXG4gICAgICAgIHRoaXMuZm9jdXMoKVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX29wZW5lZEJ5ID0gbnVsbFxuICB9XG5cbiAgLyoqIFJldHVybnMgYSBzdHJlYW0gdGhhdCBlbWl0cyB3aGVuZXZlciBhbiBhY3Rpb24gdGhhdCBzaG91bGQgY2xvc2UgdGhlIHBvcG92ZXIgb2NjdXJzLiAqL1xuICBwcml2YXRlIF9wb3BvdmVyQ2xvc2luZ0FjdGlvbnMoKSB7XG4gICAgY29uc3QgYmFja2Ryb3AgPSB0aGlzLl9vdmVybGF5UmVmPy5iYWNrZHJvcENsaWNrKCkgPz8gb2YoKVxuICAgIGNvbnN0IGRldGFjaG1lbnRzID0gdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNobWVudHMoKSA/PyBvZigpXG4gICAgY29uc3QgaG92ZXIgPSBvZigpXG5cbiAgICByZXR1cm4gbWVyZ2UoYmFja2Ryb3AsIGhvdmVyLCBkZXRhY2htZW50cylcbiAgfVxuXG59XG4iXX0=
@@ -2,4 +2,4 @@ export * from './rich-text/rich-text.component';
2
2
  export * from './utils/models';
3
3
  export * from './utils/utils';
4
4
  export * from './rich-text.module';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9yaWNoLXRleHQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFBO0FBRS9DLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxlQUFlLENBQUE7QUFFN0IsY0FBYyxvQkFBb0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0L3JpY2gtdGV4dC5jb21wb25lbnQnXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL21vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscy91dGlscydcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0Lm1vZHVsZSdcclxuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9yaWNoLXRleHQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFBO0FBRS9DLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxlQUFlLENBQUE7QUFFN0IsY0FBYyxvQkFBb0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0L3JpY2gtdGV4dC5jb21wb25lbnQnXG5cbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvbW9kZWxzJ1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy91dGlscydcblxuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQubW9kdWxlJ1xuIl19
@@ -21,4 +21,4 @@ export const THESEAM_QUILL_FORMATS = [
21
21
  'video',
22
22
  'mention'
23
23
  ];
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3JpY2gtdGV4dC91dGlscy9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdVFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLE9BQU87SUFDUCxZQUFZO0lBQ1osWUFBWTtJQUNaLE1BQU07SUFDTixZQUFZO0lBQ1osTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsTUFBTTtJQUNOLFFBQVE7SUFDUixPQUFPO0lBQ1AsUUFBUTtJQUNSLFFBQVE7SUFDUixNQUFNO0lBQ04sTUFBTTtJQUNOLFFBQVE7SUFDUixNQUFNO0lBQ04sUUFBUTtJQUNSLFdBQVc7SUFDWCxPQUFPO0lBQ1AsU0FBUztDQUNELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21Nb2R1bGUsIEN1c3RvbU9wdGlvbiwgUXVpbGxNb2R1bGVzIH0gZnJvbSAnbmd4LXF1aWxsJ1xyXG5pbXBvcnQgUXVpbGxUeXBlIGZyb20gJ3F1aWxsJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtUXVpbGxNZW50aW9uTWVudU9wdGlvbiB7XHJcbiAgLyoqIE11c3QgYmUgdW5pcXVlLiAqL1xyXG4gIGlkOiBzdHJpbmdcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHZhbHVlIGlzIHVzZWQgYXMgdGhlIGxhYmVsIGZvciB0aGUgbWVudGlvbnMsXHJcbiAgICogYm90aCBpbiB0aGUgdGV4dCBhcmVhIGFuZCBpbiB0aGUgbWVudS5cclxuICAgKi9cclxuICB2YWx1ZTogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gYHRydWVgLCB0aGlzIGl0ZW0gd2lsbCBiZSBpbmNsdWRlZCBpbiB0aGUgbWVudSxcclxuICAgKiByZWdhcmRsZXNzIG9mIHRoZSBzZWFyY2ggZnVuY3Rpb24gYXBwbGllZC5cclxuICAgKi9cclxuICBzZWFyY2hJZ25vcmU/OiBib29sZWFuXHJcblxyXG4gIC8qKlxyXG4gICAqIElmIHByb3ZpZGVkLCB3aWxsIGdyb3VwIGl0ZW1zIHdpdGggdGhlIHNhbWUgYGdyb3VwTmFtZWBcclxuICAgKiB1bmRlciBvbmUgaGVhZGVyLlxyXG4gICAqL1xyXG4gIGdyb3VwTmFtZT86IHN0cmluZ1xyXG5cclxuICAvKiogQW55IGFkZGl0aW9uYWwgb3B0aW9uYWwgcGFyYW1ldGVycyAqL1xyXG4gIFtrZXk6IHN0cmluZ106IGFueVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51RGl2aWRlciB7XHJcbiAgdHlwZTogJ2RpdmlkZXInXHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVIZWFkZXIge1xyXG4gIHZhbHVlOiBzdHJpbmdcclxuICB0eXBlOiAnZ3JvdXBOYW1lJ1xyXG4gIGRpc2FibGVkPzogYm9vbGVhblxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW0gPSBUaGVTZWFtUXVpbGxNZW50aW9uTWVudU9wdGlvbiB8IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51RGl2aWRlciB8IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SGVhZGVyXHJcblxyXG5leHBvcnQgdHlwZSBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4gPSAoXHJcbiAgc291cmNlOiBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW1bXSxcclxuICB0ZXh0QWZ0ZXI6IHN0cmluZyxcclxuICBtZW50aW9uQ2hhcjogc3RyaW5nXHJcbikgPT4gVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtW11cclxuXHJcbmV4cG9ydCB0eXBlIFRoZVNlYW1RdWlsbE1lbnRpb25Tb3VyY2VGbiA9IChcclxuICBzb3VyY2U6IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbVtdLFxyXG4gIHNlYXJjaEZuOiBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4sXHJcbiAgZW1wdHlMaXN0SXRlbTogVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtIHwgdW5kZWZpbmVkLFxyXG4gIHRleHRBZnRlcjogc3RyaW5nLFxyXG4gIHJlbmRlckxpc3Q6IChcclxuICAgIG1hdGNoZXM6IHtcclxuICAgICAgaWQ6IHN0cmluZ1xyXG4gICAgICB2YWx1ZTogc3RyaW5nXHJcbiAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHVuZGVmaW5lZFxyXG4gICAgfVtdLFxyXG4gICAgc2VhcmNoVGVybTogc3RyaW5nXHJcbiAgKSA9PiB2b2lkLFxyXG4gIG1lbnRpb25DaGFyOiBzdHJpbmdcclxuKSA9PiB2b2lkXHJcblxyXG4vKipcclxuICogVHlwZWQgdmVyc2lvbiBvZiBPcHRpb25zIG9iamVjdCwgY29waWVkIGZyb20gcXVpbGwtbWVudGlvbkB2Ni4wLjEgKHR5cGVzY3JpcHQgdmVyc2lvbilcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVF1aWxsTWVudGlvbk9wdGlvbnMge1xyXG4gIC8qKlxyXG4gICAqIFNwZWNpZmllcyB3aGljaCBjaGFyYWN0ZXJzIHdpbGwgY2F1c2UgdGhlIG1lbnRpb24gYXV0b2NvbXBsZXRlIHRvIG9wZW5cclxuICAgKiBAZGVmYXVsdCBbJ0AnXVxyXG4gICAqL1xyXG4gIG1lbnRpb25EZW5vdGF0aW9uQ2hhcnM/OiBzdHJpbmdbXVxyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRvIHNob3cgdGhlIHVzZWQgZGVub3RhdGlvbiBjaGFyYWN0ZXIgaW4gdGhlIG1lbnRpb24gaXRlbSBvciBub3RcclxuICAgKiBAZGVmYXVsdCB0cnVlXHJcbiAgICovXHJcbiAgc2hvd0Rlbm90YXRpb25DaGFyPzogYm9vbGVhblxyXG5cclxuICAvKipcclxuICAgKiBBbGxvd2VkIGNoYXJhY3RlcnMgaW4gc2VhcmNoIHRlcm0gdHJpZ2dlcmluZyBhIHNlYXJjaCByZXF1ZXN0IHVzaW5nIHJlZ3VsYXIgZXhwcmVzc2lvbnMuIENhbiBiZSBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIGRlbm90YXRpb25DaGFyIGFuZCByZXR1cm5zIGEgcmVnZXguXHJcbiAgICogQGRlZmF1bHQgL15bYS16QS1aMC05X10qJC9cclxuICAgKi9cclxuICBhbGxvd2VkQ2hhcnM/OiBSZWdFeHAgfCAoKGNoYXI6IHN0cmluZykgPT4gUmVnRXhwKVxyXG5cclxuICAvKipcclxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIGFmdGVyIHRoZSBAIHN5bWJvbCB0cmlnZ2VyaW5nIGEgc2VhcmNoIHJlcXVlc3RcclxuICAgKiBAZGVmYXVsdCAwXHJcbiAgICovXHJcbiAgbWluQ2hhcnM/OiBudW1iZXJcclxuXHJcbiAgLyoqXHJcbiAgICogTWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyBhZnRlciB0aGUgQCBzeW1ib2wgdHJpZ2dlcmluZyBhIHNlYXJjaCByZXF1ZXN0XHJcbiAgICogQGRlZmF1bHQgMzFcclxuICAgKi9cclxuICBtYXhDaGFycz86IG51bWJlclxyXG5cclxuICAvKipcclxuICAgKiBBZGRpdGlvbmFsIHRvcCBvZmZzZXQgb2YgdGhlIG1lbnRpb24gY29udGFpbmVyIHBvc2l0aW9uXHJcbiAgICogQGRlZmF1bHQgMlxyXG4gICAqL1xyXG4gIG9mZnNldFRvcD86IG51bWJlclxyXG5cclxuICAvKipcclxuICAgKiBBZGRpdGlvbmFsIGxlZnQgb2Zmc2V0IG9mIHRoZSBtZW50aW9uIGNvbnRhaW5lciBwb3NpdGlvblxyXG4gICAqIEBkZWZhdWx0IDBcclxuICAgKi9cclxuICBvZmZzZXRMZWZ0PzogbnVtYmVyXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSBkZW5vdGF0aW9uIGNoYXJhY3RlcihzKSBzaG91bGQgYmUgaXNvbGF0ZWQuIEZvciBleGFtcGxlLCB0byBhdm9pZCBtZW50aW9uaW5nIGluIGFuIGVtYWlsLlxyXG4gICAqIEBkZWZhdWx0IGZhbHNlXHJcbiAgICovXHJcbiAgaXNvbGF0ZUNoYXJhY3Rlcj86IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogT25seSB3b3JrcyBpZiBpc29sYXRlQ2hhcmFjdGVyIGlzIHNldCB0byB0cnVlLiBXaGV0aGVyIG9yIG5vdCB0aGUgZGVub3RhdGlvbiBjaGFyYWN0ZXIocykgY2FuIGFwcGVhciBpbmxpbmUgb2YgdGhlIG1lbnRpb24gdGV4dC4gRm9yIGV4YW1wbGUsIHRvIGFsbG93IG1lbnRpb25pbmcgYW4gZW1haWwgd2l0aCB0aGUgQCBzeW1ib2wgYXMgdGhlIGRlbm90YXRpb24gY2hhcmFjdGVyLlxyXG4gICAqIEBkZWZhdWx0IGZhbHNlXHJcbiAgICovXHJcbiAgYWxsb3dJbmxpbmVNZW50aW9uQ2hhcj86IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBzZXQgdG8gdHJ1ZSwgdGhlIG1lbnRpb25zIG1lbnUgd2lsbCBiZSByZW5kZXJlZCBhYm92ZSBvciBiZWxvdyB0aGUgcXVpbGwgY29udGFpbmVyLiBPdGhlcndpc2UsIHRoZSBtZW50aW9ucyBtZW51IHdpbGwgdHJhY2sgdGhlIGRlbm90YXRpb24gY2hhcmFjdGVyKHMpO1xyXG4gICAqIEBkZWZhdWx0IGZhbHNlXHJcbiAgICovXHJcbiAgZml4TWVudGlvbnNUb1F1aWxsPzogYm9vbGVhblxyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25zIGFyZSAnbm9ybWFsJyBhbmQgJ2ZpeGVkJy4gV2hlbiAnZml4ZWQnLCB0aGUgbWVudSB3aWxsIGJlIGFwcGVuZGVkIHRvIHRoZSBib2R5IGFuZCB1c2UgZml4ZWQgcG9zaXRpb25pbmcuIFVzZSB0aGlzIGlmIHRoZSBtZW51IGlzIGNsaXBwZWQgYnkgYSBwYXJlbnQgZWxlbWVudCB0aGF0J3MgdXNpbmcgYG92ZXJmbG93OmhpZGRlblxyXG4gICAqIEBkZWZhdWx0ICdub3JtYWwnXHJcbiAgICovXHJcbiAgcG9zaXRpb25pbmdTdHJhdGVneT86ICdub3JtYWwnIHwgJ2ZpeGVkJ1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25zIGFyZSAnYm90dG9tJyBhbmQgJ3RvcCcuIERldGVybWluZXMgd2hhdCB0aGUgZGVmYXVsdCBvcmllbnRhdGlvbiBvZiB0aGUgbWVudSB3aWxsIGJlLiBRdWlsbC1tZW50aW9uIHdpbGwgYXR0ZW1wdCB0byByZW5kZXIgdGhlIG1lbnUgZWl0aGVyIGFib3ZlIG9yIGJlbG93IHRoZSBlZGl0b3IuIElmICd0b3AnIGlzIHByb3ZpZGVkIGFzIGEgdmFsdWUsIGFuZCB0aGVyZSBpcyBub3QgZW5vdWdoIHNwYWNlIGFib3ZlIHRoZSBlZGl0b3IsIHRoZSBtZW51IHdpbGwgYmUgcmVuZGVyZWQgYmVsb3cuIFZpY2UgdmVyc2EsIGlmIHRoZXJlIGlzIG5vdCBlbm91Z2ggc3BhY2UgYmVsb3cgdGhlIGVkaXRvciwgYW5kICdib3R0b20nIGlzIHByb3ZpZGVkIGFzIGEgdmFsdWUgKG9yIG5vIHZhbHVlIGlzIHByb3ZpZGVkIGF0IGFsbCksIHRoZSBtZW51IHdpbGwgYmUgcmVuZGVyZWQgYWJvdmUgdGhlIGVkaXRvci5cclxuICAgKiBAZGVmYXVsdCAnYm90dG9tJ1xyXG4gICAqL1xyXG4gIGRlZmF1bHRNZW51T3JpZW50YXRpb24/OiAndG9wJyB8ICdib3R0b20nXHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBRdWlsbCBCbG90IHRvIGJlIHVzZWQgZm9yIGluc2VydGVkIG1lbnRpb25zLiBBIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gaXMgcHJvdmlkZWQgbmFtZWQgJ21lbnRpb24nLCB3aGljaCBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRoIGEgY3VzdG9tIGJsb3QuXHJcbiAgICogQGRlZmF1bHQgJ21lbnRpb24nXHJcbiAgICovXHJcbiAgYmxvdE5hbWU/OiBzdHJpbmdcclxuXHJcbiAgLyoqXHJcbiAgICogQSBsaXN0IG9mIGRhdGEgdmFsdWVzIHlvdSB3aXNoIHRvIGJlIHBhc3NlZCBmcm9tIHlvdXIgbGlzdCBkYXRhIHRvIHRoZSBodG1sIG5vZGUuIChpZCwgdmFsdWUsIGRlbm90YXRpb25DaGFyLCBsaW5rLCB0YXJnZXQgYXJlIGluY2x1ZGVkIGJ5IGRlZmF1bHQpLlxyXG4gICAqIEBkZWZhdWx0IFsnaWQnLCAndmFsdWUnLCAnZGVub3RhdGlvbkNoYXInLCAnbGluaycsICd0YXJnZXQnLCAnZGlzYWJsZWQnXVxyXG4gICAqL1xyXG4gIGRhdGFBdHRyaWJ1dGVzPzogc3RyaW5nW11cclxuXHJcbiAgLyoqXHJcbiAgICogTGluayB0YXJnZXQgZm9yIG1lbnRpb25zIHdpdGggYSBsaW5rXHJcbiAgICogQGRlZmF1bHQgJ19ibGFuaydcclxuICAgKi9cclxuICBsaW5rVGFyZ2V0Pzogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFN0eWxlIGNsYXNzIHRvIGJlIHVzZWQgZm9yIGxpc3QgaXRlbXMgKG1heSBiZSBudWxsKVxyXG4gICAqIEBkZWZhdWx0ICdxbC1tZW50aW9uLWxpc3QtaXRlbSdcclxuICAgKi9cclxuICBsaXN0SXRlbUNsYXNzPzogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFN0eWxlIGNsYXNzIHRvIGJlIHVzZWQgZm9yIHRoZSBtZW50aW9uIGxpc3QgY29udGFpbmVyIChtYXkgYmUgbnVsbClcclxuICAgKiBAZGVmYXVsdCAncWwtbWVudGlvbi1saXN0LWNvbnRhaW5lcidcclxuICAgKi9cclxuICBtZW50aW9uQ29udGFpbmVyQ2xhc3M/OiBzdHJpbmdcclxuXHJcbiAgLyoqXHJcbiAgICogU3R5bGUgY2xhc3MgdG8gYmUgdXNlZCBmb3IgdGhlIG1lbnRpb24gbGlzdCAobWF5IGJlIG51bGwpXHJcbiAgICogQGRlZmF1bHQgJ3FsLW1lbnRpb24tbGlzdCdcclxuICAgKi9cclxuICBtZW50aW9uTGlzdENsYXNzPzogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgb3Igbm90IGluc2VydCAxIHNwYWNlIGFmdGVyIG1lbnRpb24gYmxvY2sgaW4gdGV4dFxyXG4gICAqIEBkZWZhdWx0IHRydWVcclxuICAgKi9cclxuICBzcGFjZUFmdGVySW5zZXJ0PzogYm9vbGVhblxyXG5cclxuICAvKipcclxuICAgKiBBbiBhcnJheSBvZiBrZXlib2FyZCBrZXkgY29kZXMgdGhhdCB3aWxsIHRyaWdnZXIgdGhlIHNlbGVjdCBhY3Rpb24gZm9yIHRoZSBtZW50aW9uIGRyb3Bkb3duLiBEZWZhdWx0IGlzIEVOVEVSIGtleS4gU2VlIHRoaXMgcmVmZXJlbmNlIGZvciBhIGxpc3Qgb2YgbnVtYmVycyBmb3IgZWFjaCBrZXlib2FyZCBrZXkuXHJcbiAgICogQGRlZmF1bHQgWzEzXVxyXG4gICAqL1xyXG4gIHNlbGVjdEtleXM/OiAoc3RyaW5nIHwgbnVtYmVyIHwgc3RyaW5nKVtdXHJcblxyXG4gIC8qKlxyXG4gICAqIFJlcXVpcmVkIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB0aGUgc2VhcmNoIHRlcm0gYW5kIGNvbm5lY3QgaXQgdG8gYSBkYXRhIHNvdXJjZSBmb3IgbWF0Y2hlcy4gVGhlIGRhdGEgc291cmNlIGNhbiBiZSBhIGxvY2FsIHNvdXJjZSBvciBhbiBBSkFYIHJlcXVlc3QuXHJcbiAgICogVGhlIGNhbGxiYWNrIHNob3VsZCBjYWxsIHJlbmRlckxpc3QobWF0Y2hlcywgc2VhcmNoVGVybSk7IHdpdGggbWF0Y2hlcyBvZiBKU09OIE9iamVjdHMgaW4gYW4gYXJyYXkgdG8gc2hvdyB0aGUgcmVzdWx0IGZvciB0aGUgdXNlci4gVGhlIEpTT04gT2JqZWN0cyBzaG91bGQgaGF2ZSBpZCBhbmQgdmFsdWUgYnV0IGNhbiBhbHNvIGhhdmUgb3RoZXIgdmFsdWVzIHRvIGJlIHVzZWQgaW4gcmVuZGVySXRlbSBmb3IgY3VzdG9tIGRpc3BsYXkuXHJcbiAgICogQHBhcmFtIHRleHRBZnRlclxyXG4gICAqIEBwYXJhbSByZW5kZXJcclxuICAgKiBAcGFyYW0gbWVudGlvbkNoYXJcclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIHNvdXJjZTogKFxyXG4gICAgdGV4dEFmdGVyOiBzdHJpbmcsXHJcbiAgICByZW5kZXJMaXN0OiAoXHJcbiAgICAgIG1hdGNoZXM6IHtcclxuICAgICAgICBpZDogc3RyaW5nXHJcbiAgICAgICAgdmFsdWU6IHN0cmluZ1xyXG4gICAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHVuZGVmaW5lZFxyXG4gICAgICB9W10sXHJcbiAgICAgIHNlYXJjaFRlcm06IHN0cmluZ1xyXG4gICAgKSA9PiB2b2lkLFxyXG4gICAgbWVudGlvbkNoYXI6IHN0cmluZ1xyXG4gICkgPT4gdm9pZFxyXG5cclxuICAvKipcclxuICAgKiBDYWxsYmFjayB3aGVuIG1lbnRpb24gZHJvcGRvd24gaXMgb3Blbi5cclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIG9uT3Blbj86ICgpID0+IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbGJhY2sgYmVmb3JlIHRoZSBET00gb2YgbWVudGlvbiBkcm9wZG93biBpcyByZW1vdmVkLlxyXG4gICAqIEByZXR1cm5zXHJcbiAgICovXHJcbiAgb25CZWZvcmVDbG9zZT86ICgpID0+IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbGJhY2sgd2hlbiBtZW50aW9uIGRyb3Bkb3duIGlzIGNsb3NlZC5cclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIG9uQ2xvc2U/OiAoKSA9PiBib29sZWFuXHJcblxyXG4gIC8qKlxyXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBnaXZlcyB5b3UgY29udHJvbCBvdmVyIGhvdyBtYXRjaGVzIGZyb20gc291cmNlIGFyZSBkaXNwbGF5ZWQuIFlvdSBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gaGlnaGxpZ2h0IHRoZSBzZWFyY2ggdGVybSBvciBjaGFuZ2UgdGhlIGRlc2lnbiB3aXRoIGN1c3RvbSBIVE1MLiBUaGlzIGZ1bmN0aW9uIHdpbGwgbmVlZCB0byByZXR1cm4gZWl0aGVyIGEgc3RyaW5nIHBvc3NpYmx5IGNvbnRhaW5pbmcgdW5zYW5pdGl6ZWQgdXNlciBjb250ZW50LCBvciBhIGNsYXNzIGltcGxlbWVudGluZyB0aGUgTm9kZSBpbnRlcmZhY2Ugd2hpY2ggd2lsbCBiZSB0cmVhdGVkIGFzIGEgc2FuaXRpemVkIERPTSBub2RlLlxyXG4gICAqIEBwYXJhbSBpdGVtXHJcbiAgICogQHBhcmFtIHNlYXJjaFRlcm1cclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIHJlbmRlckl0ZW0/OiAoXHJcbiAgICBpdGVtOiB7IGlkOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSxcclxuICAgIHNlYXJjaFRlcm06IHN0cmluZ1xyXG4gICkgPT4gc3RyaW5nIHwgSFRNTEVsZW1lbnRcclxuXHJcbiAgLyoqXHJcbiAgICogQSBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIEhUTUwgZm9yIGEgbG9hZGluZyBtZXNzYWdlIGR1cmluZyBhc3luYyBjYWxscyBmcm9tIHNvdXJjZS4gVGhlIGZ1bmN0aW9uIHdpbGwgbmVlZCB0byByZXR1cm4gZWl0aGVyIGEgc3RyaW5nIHBvc3NpYmx5IGNvbnRhaW5pbmcgdW5zYW5pdGl6ZWQgdXNlciBjb250ZW50LCBvciBhIGNsYXNzIGltcGxlbWVudGluZyB0aGUgTm9kZSBpbnRlcmZhY2Ugd2hpY2ggd2lsbCBiZSB0cmVhdGVkIGFzIGEgc2FuaXRpemVkIERPTSBub2RlLiBUaGUgZGVmYXVsdCBmdW5jdGlvbnMgcmV0dXJucyBudWxsIHRvIHByZXZlbnQgYSBsb2FkaW5nIG1lc3NhZ2UuXHJcbiAgICogQHJldHVybnNcclxuICAgKi9cclxuICByZW5kZXJMb2FkaW5nPzogKCkgPT4gc3RyaW5nIHwgSFRNTEVsZW1lbnQgfCBudWxsXHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxiYWNrIGZvciBhIHNlbGVjdGVkIGl0ZW0uIFdoZW4gb3ZlcnJpZGluZyB0aGlzIG1ldGhvZCwgaW5zZXJ0SXRlbSBzaG91bGQgYmUgdXNlZCB0byBpbnNlcnQgaXRlbSB0byB0aGUgZWRpdG9yLiBUaGlzIG1ha2VzIGFzeW5jIHJlcXVlc3RzIHBvc3NpYmxlLlxyXG4gICAqIEBwYXJhbSBpdGVtXHJcbiAgICogQHBhcmFtIGluc2VydEl0ZW1cclxuICAgKi9cclxuICBvblNlbGVjdD86IChcclxuICAgIGl0ZW06IERPTVN0cmluZ01hcCxcclxuICAgIGluc2VydEl0ZW06IChcclxuICAgICAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXHJcbiAgICAgIHByb2dyYW1tYXRpY0luc2VydD86IGJvb2xlYW4sXHJcbiAgICAgIG92ZXJyaWRkZW5PcHRpb25zPzogb2JqZWN0XHJcbiAgICApID0+IHZvaWRcclxuICApID0+IHZvaWRcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtUXVpbGxNb2R1bGVzIGV4dGVuZHMgUXVpbGxNb2R1bGVzIHtcclxuICBtZW50aW9uPzogUGFydGlhbDxUaGVTZWFtUXVpbGxNZW50aW9uT3B0aW9ucz5cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fUVVJTExfRk9STUFUUyA9IFtcclxuICAnYWxpZ24nLFxyXG4gICdiYWNrZ3JvdW5kJyxcclxuICAnYmxvY2txdW90ZScsXHJcbiAgJ2JvbGQnLFxyXG4gICdjb2RlLWJsb2NrJyxcclxuICAnY29kZScsXHJcbiAgJ2NvbG9yJyxcclxuICAnZGlyZWN0aW9uJyxcclxuICAnZm9udCcsXHJcbiAgJ2hlYWRlcicsXHJcbiAgJ2ltYWdlJyxcclxuICAnaW5kZW50JyxcclxuICAnaXRhbGljJyxcclxuICAnbGluaycsXHJcbiAgJ2xpc3QnLFxyXG4gICdzY3JpcHQnLFxyXG4gICdzaXplJyxcclxuICAnc3RyaWtlJyxcclxuICAndW5kZXJsaW5lJyxcclxuICAndmlkZW8nLFxyXG4gICdtZW50aW9uJ1xyXG5dIGFzIGNvbnN0XHJcblxyXG5leHBvcnQgdHlwZSBUaGVTZWFtUXVpbGxTdHlsZUZvcm1hdCA9ICh0eXBlb2YgVEhFU0VBTV9RVUlMTF9GT1JNQVRTKVtudW1iZXJdXHJcblxyXG5leHBvcnQgdHlwZSBUaGVTZWFtUXVpbGxJbnB1dEZvcm1hdCA9ICdvYmplY3QnIHwgJ2h0bWwnIHwgJ3RleHQnIHwgJ2pzb24nXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1RdWlsbEVkaXRvckNvbmZpZyB7XHJcbiAgLyoqXHJcbiAgICogVGhlIGZvcm1hdCBvZiB0aGUgdGV4dCBpbnNpZGUgdGhlIGVkaXRvci5cclxuICAgKlxyXG4gICAqIEBkZWZhdWx0ICdodG1sJ1xyXG4gICAqL1xyXG4gIGZvcm1hdDogVGhlU2VhbVF1aWxsSW5wdXRGb3JtYXRcclxuXHJcbiAgLyoqIEBkZWZhdWx0ICdzbm93JyAqL1xyXG4gIHRoZW1lPzogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFVzZWQgdG8gc2V0IGN1c3RvbSBjb25maWcgZm9yIGJ1aWx0LWluIGFuZCBhZGQtb24gbW9kdWxlcy5cclxuICAgKlxyXG4gICAqIFNlZSBgU0VBTV9RVUlMTF9NT0RVTEVTX0RFRkFVTFRgIGZvciBkZWZhdWx0IHZhbHVlLlxyXG4gICAqL1xyXG4gIG1vZHVsZXM/OiBUaGVTZWFtUXVpbGxNb2R1bGVzXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnNvbGUgbGV2ZWwgZm9yIGRlYnVnIG1lc3NhZ2VzLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYHdhcm5gXHJcbiAgICovXHJcbiAgZGVidWc/OiAnd2FybicgfCAnbG9nJyB8ICdlcnJvcicgfCBmYWxzZVxyXG5cclxuICAvKipcclxuICAgKiBMaXN0IG9mIGZvcm1hdHMgYWxsb3dlZCBpbiBlZGl0b3IuXHJcbiAgICpcclxuICAgKiBTZWUgYFNFQU1fUVVJTExfRk9STUFUU19ERUZBVUxUYCBmb3IgZGVmYXVsdCB2YWx1ZS5cclxuICAgKlxyXG4gICAqIE5PVEU6IEFkZGluZyBvciByZW1vdmluZyBhIHZhbHVlIHdpbGwgZW5hYmxlL2Rpc2FibGUgdGhhdCBmb3JtYXRcclxuICAgKiBpbiB0aGUgZWRpdG9yLCBidXQgaGFzIG5vIGVmZmVjdCBvbiB0aGUgdG9vbGJhciBidXR0b25zLlxyXG4gICAqIFRvIG1vZGlmeSB0aGUgdG9vbGJhciBkaXNwbGF5LCB1cGRhdGUgYG1vZHVsZXMudG9vbGJhcmAuXHJcbiAgICovXHJcbiAgZm9ybWF0cz86IFRoZVNlYW1RdWlsbFN0eWxlRm9ybWF0W10gfCBudWxsXHJcblxyXG4gIC8qKiBAZGVmYXVsdCAndG9wJyAqL1xyXG4gIGN1c3RvbVRvb2xiYXJQb3NpdGlvbjogJ3RvcCcgfCAnYm90dG9tJ1xyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGB0cnVlYCwgcnVucyB0aGUgY29udHJvbCB2YWx1ZSB0aHJvdWdoIEFuZ3VsYXIncyBET00gc2FuaXRpemVyXHJcbiAgICogYmVmb3JlIHNldHRpbmcgdGhlIHZhbHVlLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgZmFsc2VcclxuICAgKi9cclxuICBzYW5pdGl6ZTogYm9vbGVhblxyXG5cclxuICAvKiogQ3VzdG9tIGNzcyBzdHlsZXMgdG8gYWRkIHRvIHRoZSBgLnFsLWNvbnRhaW5lcmAgZWxlbWVudC4gKi9cclxuICBzdHlsZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgbnVsbFxyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGBmYWxzZWAsIHVzZXIgaW50ZXJhY3Rpb25zIGluIHRoZSB0b29sYmFyIHdpbGwgZW1pdCBldmVuXHJcbiAgICogaWYgdGhlIGVkaXRvciBpcyBtYXJrZWQgYXMgYHJlYWRPbmx5YC4gVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG9cclxuICAgKiBtYWtlIHNvbWUgZm9ybWF0dGluZyBjaGFuZ2VzIChlLmcuIGNyZWF0aW5nIGEgbGlzdCkgdG8gYSB2YWx1ZVxyXG4gICAqIHRoYXQgc2hvdWxkIGJlIGRpc2FibGVkLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgdHJ1ZS5cclxuICAgKi9cclxuICBzdHJpY3Q6IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogQW4gZWxlbWVudCBvciBzZWxlY3RvciB0aGF0IHNwZWNpZmllcyB0aGUgc2Nyb2xsaW5nIGVsZW1lbnQgb2YgdGhlIGVkaXRvci5cclxuICAgKlxyXG4gICAqIERlZmF1bHQgc2Nyb2xsaW5nQ29udGFpbmVyIGlzIHRoZSBgLnFsLWVkaXRvcmAgZWxlbWVudC5cclxuICAgKi9cclxuICBzY3JvbGxpbmdDb250YWluZXI/OiBIVE1MRWxlbWVudCB8IHN0cmluZyB8IG51bGxcclxuXHJcbiAgLyoqXHJcbiAgICogQW4gZWxlbWVudCBvciBzZWxlY3RvciB0aGF0IHNwZWNpZmllcyB0aGUgY29uZmluaW5nIGVsZW1lbnQgb2YgdGhlIGVkaXRvci5cclxuICAgKlxyXG4gICAqIERlZmF1bHQgYm91bmRhcnkgY29udGFpbmVyIGlzIHRoZSBkb2N1bWVudCdzIGBib2R5YCBlbGVtZW50LlxyXG4gICAqL1xyXG4gIGJvdW5kcz86IEhUTUxFbGVtZW50IHwgc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZXMgY3VzdG9tIGZvcm1hdHMgZm9yIHRoZSBlZGl0b3IuIENhbiBiZSB1c2VkIHRvIG92ZXJ3cml0ZSBleGlzdGluZyBvcHRpb25zLlxyXG4gICAqXHJcbiAgICogVE9ETzogUmVzZWFyY2ggdGhpcyBtb3JlLlxyXG4gICAqL1xyXG4gIGN1c3RvbU9wdGlvbnM6IEN1c3RvbU9wdGlvbltdXHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZXMgY3VzdG9tIG1vZHVsZXMgZm9yIHRoZSBlZGl0b3IuIENhbiBiZSB1c2VkIHRvIG92ZXJ3cml0ZSBleGlzdGluZyBtb2R1bGVzLlxyXG4gICAqXHJcbiAgICogVE9ETzogUmVzZWFyY2ggdGhpcyBtb3JlLlxyXG4gICAqL1xyXG4gIGN1c3RvbU1vZHVsZXM6IEN1c3RvbU1vZHVsZVtdXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gYHVzZXJgLCBvbmx5IGNoYW5nZSBldmVudHMgZnJvbSB0aGUgdXNlciB3aWxsIHRyaWdnZXIgYSBtb2RlbCBjaGFuZ2UuXHJcbiAgICogVGhpcyBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvciwgYW5kIGlzIHByZWZlcnJlZC5cclxuICAgKlxyXG4gICAqIENoYW5naW5nIHRvIGBhbGxgIGlzIG5vdCByZWNvbW1lbmRlZC5cclxuICAgKi9cclxuICB0cmFja0NoYW5nZXM/OiAndXNlcicgfCAnYWxsJ1xyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGB0cnVlYCwgcHJlc2VydmVzIGR1cGxpY2F0ZWQgd2hpdGVzcGFjZXMuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBmYWxzZVxyXG4gICAqL1xyXG4gIHByZXNlcnZlV2hpdGVzcGFjZTogYm9vbGVhblxyXG5cclxuICAvKiogQ3VzdG9tIGNsYXNzZXMgdG8gYWRkIHRvIHRoZSBgLnFsLWNvbnRhaW5lcmAgZWxlbWVudC4gKi9cclxuICBjbGFzc2VzPzogc3RyaW5nXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gYHRydWVgLCB0cmltcyBsZWFkaW5nL3RyYWlsaW5nIG5ld2xpbmVzIHdoZW4gdmFsaWRhdGlvbiBpcyBydW4uXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBmYWxzZVxyXG4gICAqL1xyXG4gIHRyaW1PblZhbGlkYXRpb246IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyBhIHBsYWNlaG9sZGVyIGZvciB0aGUgbGluayBpbnB1dCBpbiB0aGUgaHlwZXJsaW5rIGZvcm0uXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCAnaHR0cHM6Ly9xdWlsbGpzLmNvbSdcclxuICAgKi9cclxuICBsaW5rUGxhY2Vob2xkZXI/OiBzdHJpbmdcclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBgdHJ1ZWAsIGRvZXMgYSBiYXNpYyBjb21wYXJlICh1c2luZyBKU09OLnN0cmluZ2lmeSkgYmV0d2VlbiB0aGUgb2xkXHJcbiAgICogYW5kIG5ldyB2YWx1ZSBvbiBgd3JpdGVWYWx1ZSgpYC4gSWYgdGhlIHZhbHVlcyBhcmUgdGhlIHNhbWUsIGl0IHNraXBzIHRoZSB1cGRhdGUuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBmYWxzZVxyXG4gICAqL1xyXG4gIGNvbXBhcmVWYWx1ZXM6IGJvb2xlYW5cclxuXHJcbiAgLyoqXHJcbiAgICogV2hlbiBgdHJ1ZWAsIHNraXBzIHRoZSB1cGRhdGUgZm9yIG51bGwgdmFsdWVzIG9uIGB3cml0ZVZhbHVlKClgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgZmFsc2VcclxuICAgKi9cclxuICBmaWx0ZXJOdWxsOiBib29sZWFuXHJcblxyXG4gIC8qKlxyXG4gICAqIERlYm91bmNlcyBgb25Db250ZW50Q2hhbmdlZCgpYCwgYG9uRWRpdG9yQ2hhbmdlZCgpYCwgYG5nTW9kZWxgIGFuZCBmb3JtIGNvbnRyb2wgYHZhbHVlQ2hhbmdlKClgLlxyXG4gICAqXHJcbiAgICogRGVmYXVsdHMgdG8gYHVuZGVmaW5lZGAsIHNvIGNoYW5nZXMgYWx3YXlzIGVtaXQgaW1tZWRpYXRlbHkuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcclxuICAgKi9cclxuICBkZWJvdW5jZVRpbWU/OiBudW1iZXJcclxuXHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVGhlIGBuZ3gtcXVpbGxgIGxpYnJhcnkgZG9lc24ndCBhY2N1cmF0ZWx5IGhhbmRsZSB1bmRlZmluZWRcclxuICAgKiBpbnB1dHMsIGFuZCB0aGUgZGVmYXVsdCBgdmFsdWVHZXR0ZXJgIGZ1bmN0aW9uIGlzIGltcG9zc2libGUgdG8gcmVmZXJlbmNlIGhlcmUsXHJcbiAgICogc28gdGhpcyBjb25maWcgb3B0aW9uIGlzIG5vdCB1c2VkLlxyXG4gICAqXHJcbiAgICogRGVmaW5lcyBjdXN0b20gbG9naWMgZm9yIHJlYWRpbmcgdGhlIGh0bWwgdmFsdWUgb2YgdGhlIGVkaXRvci5cclxuICAgKi9cclxuICB2YWx1ZUdldHRlcj86IChcclxuICAgIHF1aWxsRWRpdG9yOiBRdWlsbFR5cGUsXHJcbiAgICBlZGl0b3JFbGVtZW50OiBIVE1MRWxlbWVudFxyXG4gICkgPT4gc3RyaW5nIHwgYW55XHJcblxyXG4gIC8qKlxyXG4gICAqIEBkZXByZWNhdGVkIFRoZSBgbmd4LXF1aWxsYCBsaWJyYXJ5IGRvZXNuJ3QgYWNjdXJhdGVseSBoYW5kbGUgdW5kZWZpbmVkXHJcbiAgICogaW5wdXRzLCBhbmQgdGhlIGRlZmF1bHQgYHZhbHVlU2V0dGVyYCBmdW5jdGlvbiBpcyBpbXBvc3NpYmxlIHRvIHJlZmVyZW5jZSBoZXJlLFxyXG4gICAqIHNvIHRoaXMgY29uZmlnIG9wdGlvbiBpcyBub3QgdXNlZC5cclxuICAgKlxyXG4gICAqIERlZmluZXMgY3VzdG9tIGxvZ2ljIGZvciBzZXR0aW5nIHRoZSBodG1sIHZhbHVlIG9mIHRoZSBlZGl0b3IuXHJcbiAgICovXHJcbiAgdmFsdWVTZXR0ZXI/OiAocXVpbGxFZGl0b3I6IFF1aWxsVHlwZSwgdmFsdWU6IGFueSkgPT4gYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRoZVNlYW1DaGFyYWN0ZXJDb3VudGVyRm4gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICBmb3JtYXQ6IFRoZVNlYW1RdWlsbElucHV0Rm9ybWF0IHwgdW5kZWZpbmVkXHJcbikgPT4gbnVtYmVyXHJcbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3JpY2gtdGV4dC91dGlscy9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdVFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLE9BQU87SUFDUCxZQUFZO0lBQ1osWUFBWTtJQUNaLE1BQU07SUFDTixZQUFZO0lBQ1osTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsTUFBTTtJQUNOLFFBQVE7SUFDUixPQUFPO0lBQ1AsUUFBUTtJQUNSLFFBQVE7SUFDUixNQUFNO0lBQ04sTUFBTTtJQUNOLFFBQVE7SUFDUixNQUFNO0lBQ04sUUFBUTtJQUNSLFdBQVc7SUFDWCxPQUFPO0lBQ1AsU0FBUztDQUNELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21Nb2R1bGUsIEN1c3RvbU9wdGlvbiwgUXVpbGxNb2R1bGVzIH0gZnJvbSAnbmd4LXF1aWxsJ1xuaW1wb3J0IFF1aWxsVHlwZSBmcm9tICdxdWlsbCdcblxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtUXVpbGxNZW50aW9uTWVudU9wdGlvbiB7XG4gIC8qKiBNdXN0IGJlIHVuaXF1ZS4gKi9cbiAgaWQ6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgaXMgdXNlZCBhcyB0aGUgbGFiZWwgZm9yIHRoZSBtZW50aW9ucyxcbiAgICogYm90aCBpbiB0aGUgdGV4dCBhcmVhIGFuZCBpbiB0aGUgbWVudS5cbiAgICovXG4gIHZhbHVlOiBzdHJpbmdcblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHRoaXMgaXRlbSB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBtZW51LFxuICAgKiByZWdhcmRsZXNzIG9mIHRoZSBzZWFyY2ggZnVuY3Rpb24gYXBwbGllZC5cbiAgICovXG4gIHNlYXJjaElnbm9yZT86IGJvb2xlYW5cblxuICAvKipcbiAgICogSWYgcHJvdmlkZWQsIHdpbGwgZ3JvdXAgaXRlbXMgd2l0aCB0aGUgc2FtZSBgZ3JvdXBOYW1lYFxuICAgKiB1bmRlciBvbmUgaGVhZGVyLlxuICAgKi9cbiAgZ3JvdXBOYW1lPzogc3RyaW5nXG5cbiAgLyoqIEFueSBhZGRpdGlvbmFsIG9wdGlvbmFsIHBhcmFtZXRlcnMgKi9cbiAgW2tleTogc3RyaW5nXTogYW55XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVEaXZpZGVyIHtcbiAgdHlwZTogJ2RpdmlkZXInXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SGVhZGVyIHtcbiAgdmFsdWU6IHN0cmluZ1xuICB0eXBlOiAnZ3JvdXBOYW1lJ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtID0gVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVPcHRpb24gfCBUaGVTZWFtUXVpbGxNZW50aW9uTWVudURpdmlkZXIgfCBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUhlYWRlclxuXG5leHBvcnQgdHlwZSBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4gPSAoXG4gIHNvdXJjZTogVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtW10sXG4gIHRleHRBZnRlcjogc3RyaW5nLFxuICBtZW50aW9uQ2hhcjogc3RyaW5nXG4pID0+IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbVtdXG5cbmV4cG9ydCB0eXBlIFRoZVNlYW1RdWlsbE1lbnRpb25Tb3VyY2VGbiA9IChcbiAgc291cmNlOiBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW1bXSxcbiAgc2VhcmNoRm46IFRoZVNlYW1RdWlsbE1lbnRpb25TZWFyY2hGbixcbiAgZW1wdHlMaXN0SXRlbTogVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtIHwgdW5kZWZpbmVkLFxuICB0ZXh0QWZ0ZXI6IHN0cmluZyxcbiAgcmVuZGVyTGlzdDogKFxuICAgIG1hdGNoZXM6IHtcbiAgICAgIGlkOiBzdHJpbmdcbiAgICAgIHZhbHVlOiBzdHJpbmdcbiAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIH1bXSxcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmdcbiAgKSA9PiB2b2lkLFxuICBtZW50aW9uQ2hhcjogc3RyaW5nXG4pID0+IHZvaWRcblxuLyoqXG4gKiBUeXBlZCB2ZXJzaW9uIG9mIE9wdGlvbnMgb2JqZWN0LCBjb3BpZWQgZnJvbSBxdWlsbC1tZW50aW9uQHY2LjAuMSAodHlwZXNjcmlwdCB2ZXJzaW9uKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1RdWlsbE1lbnRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB3aGljaCBjaGFyYWN0ZXJzIHdpbGwgY2F1c2UgdGhlIG1lbnRpb24gYXV0b2NvbXBsZXRlIHRvIG9wZW5cbiAgICogQGRlZmF1bHQgWydAJ11cbiAgICovXG4gIG1lbnRpb25EZW5vdGF0aW9uQ2hhcnM/OiBzdHJpbmdbXVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHNob3cgdGhlIHVzZWQgZGVub3RhdGlvbiBjaGFyYWN0ZXIgaW4gdGhlIG1lbnRpb24gaXRlbSBvciBub3RcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgc2hvd0Rlbm90YXRpb25DaGFyPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBBbGxvd2VkIGNoYXJhY3RlcnMgaW4gc2VhcmNoIHRlcm0gdHJpZ2dlcmluZyBhIHNlYXJjaCByZXF1ZXN0IHVzaW5nIHJlZ3VsYXIgZXhwcmVzc2lvbnMuIENhbiBiZSBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIGRlbm90YXRpb25DaGFyIGFuZCByZXR1cm5zIGEgcmVnZXguXG4gICAqIEBkZWZhdWx0IC9eW2EtekEtWjAtOV9dKiQvXG4gICAqL1xuICBhbGxvd2VkQ2hhcnM/OiBSZWdFeHAgfCAoKGNoYXI6IHN0cmluZykgPT4gUmVnRXhwKVxuXG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIGFmdGVyIHRoZSBAIHN5bWJvbCB0cmlnZ2VyaW5nIGEgc2VhcmNoIHJlcXVlc3RcbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgbWluQ2hhcnM/OiBudW1iZXJcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyBhZnRlciB0aGUgQCBzeW1ib2wgdHJpZ2dlcmluZyBhIHNlYXJjaCByZXF1ZXN0XG4gICAqIEBkZWZhdWx0IDMxXG4gICAqL1xuICBtYXhDaGFycz86IG51bWJlclxuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIHRvcCBvZmZzZXQgb2YgdGhlIG1lbnRpb24gY29udGFpbmVyIHBvc2l0aW9uXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIG9mZnNldFRvcD86IG51bWJlclxuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGxlZnQgb2Zmc2V0IG9mIHRoZSBtZW50aW9uIGNvbnRhaW5lciBwb3NpdGlvblxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICBvZmZzZXRMZWZ0PzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSBkZW5vdGF0aW9uIGNoYXJhY3RlcihzKSBzaG91bGQgYmUgaXNvbGF0ZWQuIEZvciBleGFtcGxlLCB0byBhdm9pZCBtZW50aW9uaW5nIGluIGFuIGVtYWlsLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgaXNvbGF0ZUNoYXJhY3Rlcj86IGJvb2xlYW5cblxuICAvKipcbiAgICogT25seSB3b3JrcyBpZiBpc29sYXRlQ2hhcmFjdGVyIGlzIHNldCB0byB0cnVlLiBXaGV0aGVyIG9yIG5vdCB0aGUgZGVub3RhdGlvbiBjaGFyYWN0ZXIocykgY2FuIGFwcGVhciBpbmxpbmUgb2YgdGhlIG1lbnRpb24gdGV4dC4gRm9yIGV4YW1wbGUsIHRvIGFsbG93IG1lbnRpb25pbmcgYW4gZW1haWwgd2l0aCB0aGUgQCBzeW1ib2wgYXMgdGhlIGRlbm90YXRpb24gY2hhcmFjdGVyLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgYWxsb3dJbmxpbmVNZW50aW9uQ2hhcj86IGJvb2xlYW5cblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gdHJ1ZSwgdGhlIG1lbnRpb25zIG1lbnUgd2lsbCBiZSByZW5kZXJlZCBhYm92ZSBvciBiZWxvdyB0aGUgcXVpbGwgY29udGFpbmVyLiBPdGhlcndpc2UsIHRoZSBtZW50aW9ucyBtZW51IHdpbGwgdHJhY2sgdGhlIGRlbm90YXRpb24gY2hhcmFjdGVyKHMpO1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZml4TWVudGlvbnNUb1F1aWxsPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBPcHRpb25zIGFyZSAnbm9ybWFsJyBhbmQgJ2ZpeGVkJy4gV2hlbiAnZml4ZWQnLCB0aGUgbWVudSB3aWxsIGJlIGFwcGVuZGVkIHRvIHRoZSBib2R5IGFuZCB1c2UgZml4ZWQgcG9zaXRpb25pbmcuIFVzZSB0aGlzIGlmIHRoZSBtZW51IGlzIGNsaXBwZWQgYnkgYSBwYXJlbnQgZWxlbWVudCB0aGF0J3MgdXNpbmcgYG92ZXJmbG93OmhpZGRlblxuICAgKiBAZGVmYXVsdCAnbm9ybWFsJ1xuICAgKi9cbiAgcG9zaXRpb25pbmdTdHJhdGVneT86ICdub3JtYWwnIHwgJ2ZpeGVkJ1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGFyZSAnYm90dG9tJyBhbmQgJ3RvcCcuIERldGVybWluZXMgd2hhdCB0aGUgZGVmYXVsdCBvcmllbnRhdGlvbiBvZiB0aGUgbWVudSB3aWxsIGJlLiBRdWlsbC1tZW50aW9uIHdpbGwgYXR0ZW1wdCB0byByZW5kZXIgdGhlIG1lbnUgZWl0aGVyIGFib3ZlIG9yIGJlbG93IHRoZSBlZGl0b3IuIElmICd0b3AnIGlzIHByb3ZpZGVkIGFzIGEgdmFsdWUsIGFuZCB0aGVyZSBpcyBub3QgZW5vdWdoIHNwYWNlIGFib3ZlIHRoZSBlZGl0b3IsIHRoZSBtZW51IHdpbGwgYmUgcmVuZGVyZWQgYmVsb3cuIFZpY2UgdmVyc2EsIGlmIHRoZXJlIGlzIG5vdCBlbm91Z2ggc3BhY2UgYmVsb3cgdGhlIGVkaXRvciwgYW5kICdib3R0b20nIGlzIHByb3ZpZGVkIGFzIGEgdmFsdWUgKG9yIG5vIHZhbHVlIGlzIHByb3ZpZGVkIGF0IGFsbCksIHRoZSBtZW51IHdpbGwgYmUgcmVuZGVyZWQgYWJvdmUgdGhlIGVkaXRvci5cbiAgICogQGRlZmF1bHQgJ2JvdHRvbSdcbiAgICovXG4gIGRlZmF1bHRNZW51T3JpZW50YXRpb24/OiAndG9wJyB8ICdib3R0b20nXG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBRdWlsbCBCbG90IHRvIGJlIHVzZWQgZm9yIGluc2VydGVkIG1lbnRpb25zLiBBIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gaXMgcHJvdmlkZWQgbmFtZWQgJ21lbnRpb24nLCB3aGljaCBtYXkgYmUgb3ZlcnJpZGRlbiB3aXRoIGEgY3VzdG9tIGJsb3QuXG4gICAqIEBkZWZhdWx0ICdtZW50aW9uJ1xuICAgKi9cbiAgYmxvdE5hbWU/OiBzdHJpbmdcblxuICAvKipcbiAgICogQSBsaXN0IG9mIGRhdGEgdmFsdWVzIHlvdSB3aXNoIHRvIGJlIHBhc3NlZCBmcm9tIHlvdXIgbGlzdCBkYXRhIHRvIHRoZSBodG1sIG5vZGUuIChpZCwgdmFsdWUsIGRlbm90YXRpb25DaGFyLCBsaW5rLCB0YXJnZXQgYXJlIGluY2x1ZGVkIGJ5IGRlZmF1bHQpLlxuICAgKiBAZGVmYXVsdCBbJ2lkJywgJ3ZhbHVlJywgJ2Rlbm90YXRpb25DaGFyJywgJ2xpbmsnLCAndGFyZ2V0JywgJ2Rpc2FibGVkJ11cbiAgICovXG4gIGRhdGFBdHRyaWJ1dGVzPzogc3RyaW5nW11cblxuICAvKipcbiAgICogTGluayB0YXJnZXQgZm9yIG1lbnRpb25zIHdpdGggYSBsaW5rXG4gICAqIEBkZWZhdWx0ICdfYmxhbmsnXG4gICAqL1xuICBsaW5rVGFyZ2V0Pzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFN0eWxlIGNsYXNzIHRvIGJlIHVzZWQgZm9yIGxpc3QgaXRlbXMgKG1heSBiZSBudWxsKVxuICAgKiBAZGVmYXVsdCAncWwtbWVudGlvbi1saXN0LWl0ZW0nXG4gICAqL1xuICBsaXN0SXRlbUNsYXNzPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFN0eWxlIGNsYXNzIHRvIGJlIHVzZWQgZm9yIHRoZSBtZW50aW9uIGxpc3QgY29udGFpbmVyIChtYXkgYmUgbnVsbClcbiAgICogQGRlZmF1bHQgJ3FsLW1lbnRpb24tbGlzdC1jb250YWluZXInXG4gICAqL1xuICBtZW50aW9uQ29udGFpbmVyQ2xhc3M/OiBzdHJpbmdcblxuICAvKipcbiAgICogU3R5bGUgY2xhc3MgdG8gYmUgdXNlZCBmb3IgdGhlIG1lbnRpb24gbGlzdCAobWF5IGJlIG51bGwpXG4gICAqIEBkZWZhdWx0ICdxbC1tZW50aW9uLWxpc3QnXG4gICAqL1xuICBtZW50aW9uTGlzdENsYXNzPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IGluc2VydCAxIHNwYWNlIGFmdGVyIG1lbnRpb24gYmxvY2sgaW4gdGV4dFxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBzcGFjZUFmdGVySW5zZXJ0PzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBrZXlib2FyZCBrZXkgY29kZXMgdGhhdCB3aWxsIHRyaWdnZXIgdGhlIHNlbGVjdCBhY3Rpb24gZm9yIHRoZSBtZW50aW9uIGRyb3Bkb3duLiBEZWZhdWx0IGlzIEVOVEVSIGtleS4gU2VlIHRoaXMgcmVmZXJlbmNlIGZvciBhIGxpc3Qgb2YgbnVtYmVycyBmb3IgZWFjaCBrZXlib2FyZCBrZXkuXG4gICAqIEBkZWZhdWx0IFsxM11cbiAgICovXG4gIHNlbGVjdEtleXM/OiAoc3RyaW5nIHwgbnVtYmVyIHwgc3RyaW5nKVtdXG5cbiAgLyoqXG4gICAqIFJlcXVpcmVkIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB0aGUgc2VhcmNoIHRlcm0gYW5kIGNvbm5lY3QgaXQgdG8gYSBkYXRhIHNvdXJjZSBmb3IgbWF0Y2hlcy4gVGhlIGRhdGEgc291cmNlIGNhbiBiZSBhIGxvY2FsIHNvdXJjZSBvciBhbiBBSkFYIHJlcXVlc3QuXG4gICAqIFRoZSBjYWxsYmFjayBzaG91bGQgY2FsbCByZW5kZXJMaXN0KG1hdGNoZXMsIHNlYXJjaFRlcm0pOyB3aXRoIG1hdGNoZXMgb2YgSlNPTiBPYmplY3RzIGluIGFuIGFycmF5IHRvIHNob3cgdGhlIHJlc3VsdCBmb3IgdGhlIHVzZXIuIFRoZSBKU09OIE9iamVjdHMgc2hvdWxkIGhhdmUgaWQgYW5kIHZhbHVlIGJ1dCBjYW4gYWxzbyBoYXZlIG90aGVyIHZhbHVlcyB0byBiZSB1c2VkIGluIHJlbmRlckl0ZW0gZm9yIGN1c3RvbSBkaXNwbGF5LlxuICAgKiBAcGFyYW0gdGV4dEFmdGVyXG4gICAqIEBwYXJhbSByZW5kZXJcbiAgICogQHBhcmFtIG1lbnRpb25DaGFyXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBzb3VyY2U6IChcbiAgICB0ZXh0QWZ0ZXI6IHN0cmluZyxcbiAgICByZW5kZXJMaXN0OiAoXG4gICAgICBtYXRjaGVzOiB7XG4gICAgICAgIGlkOiBzdHJpbmdcbiAgICAgICAgdmFsdWU6IHN0cmluZ1xuICAgICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAgIH1bXSxcbiAgICAgIHNlYXJjaFRlcm06IHN0cmluZ1xuICAgICkgPT4gdm9pZCxcbiAgICBtZW50aW9uQ2hhcjogc3RyaW5nXG4gICkgPT4gdm9pZFxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB3aGVuIG1lbnRpb24gZHJvcGRvd24gaXMgb3Blbi5cbiAgICogQHJldHVybnNcbiAgICovXG4gIG9uT3Blbj86ICgpID0+IGJvb2xlYW5cblxuICAvKipcbiAgICogQ2FsbGJhY2sgYmVmb3JlIHRoZSBET00gb2YgbWVudGlvbiBkcm9wZG93biBpcyByZW1vdmVkLlxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgb25CZWZvcmVDbG9zZT86ICgpID0+IGJvb2xlYW5cblxuICAvKipcbiAgICogQ2FsbGJhY2sgd2hlbiBtZW50aW9uIGRyb3Bkb3duIGlzIGNsb3NlZC5cbiAgICogQHJldHVybnNcbiAgICovXG4gIG9uQ2xvc2U/OiAoKSA9PiBib29sZWFuXG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdGhhdCBnaXZlcyB5b3UgY29udHJvbCBvdmVyIGhvdyBtYXRjaGVzIGZyb20gc291cmNlIGFyZSBkaXNwbGF5ZWQuIFlvdSBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gaGlnaGxpZ2h0IHRoZSBzZWFyY2ggdGVybSBvciBjaGFuZ2UgdGhlIGRlc2lnbiB3aXRoIGN1c3RvbSBIVE1MLiBUaGlzIGZ1bmN0aW9uIHdpbGwgbmVlZCB0byByZXR1cm4gZWl0aGVyIGEgc3RyaW5nIHBvc3NpYmx5IGNvbnRhaW5pbmcgdW5zYW5pdGl6ZWQgdXNlciBjb250ZW50LCBvciBhIGNsYXNzIGltcGxlbWVudGluZyB0aGUgTm9kZSBpbnRlcmZhY2Ugd2hpY2ggd2lsbCBiZSB0cmVhdGVkIGFzIGEgc2FuaXRpemVkIERPTSBub2RlLlxuICAgKiBAcGFyYW0gaXRlbVxuICAgKiBAcGFyYW0gc2VhcmNoVGVybVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcmVuZGVySXRlbT86IChcbiAgICBpdGVtOiB7IGlkOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSxcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmdcbiAgKSA9PiBzdHJpbmcgfCBIVE1MRWxlbWVudFxuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgSFRNTCBmb3IgYSBsb2FkaW5nIG1lc3NhZ2UgZHVyaW5nIGFzeW5jIGNhbGxzIGZyb20gc291cmNlLiBUaGUgZnVuY3Rpb24gd2lsbCBuZWVkIHRvIHJldHVybiBlaXRoZXIgYSBzdHJpbmcgcG9zc2libHkgY29udGFpbmluZyB1bnNhbml0aXplZCB1c2VyIGNvbnRlbnQsIG9yIGEgY2xhc3MgaW1wbGVtZW50aW5nIHRoZSBOb2RlIGludGVyZmFjZSB3aGljaCB3aWxsIGJlIHRyZWF0ZWQgYXMgYSBzYW5pdGl6ZWQgRE9NIG5vZGUuIFRoZSBkZWZhdWx0IGZ1bmN0aW9ucyByZXR1cm5zIG51bGwgdG8gcHJldmVudCBhIGxvYWRpbmcgbWVzc2FnZS5cbiAgICogQHJldHVybnNcbiAgICovXG4gIHJlbmRlckxvYWRpbmc/OiAoKSA9PiBzdHJpbmcgfCBIVE1MRWxlbWVudCB8IG51bGxcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZm9yIGEgc2VsZWN0ZWQgaXRlbS4gV2hlbiBvdmVycmlkaW5nIHRoaXMgbWV0aG9kLCBpbnNlcnRJdGVtIHNob3VsZCBiZSB1c2VkIHRvIGluc2VydCBpdGVtIHRvIHRoZSBlZGl0b3IuIFRoaXMgbWFrZXMgYXN5bmMgcmVxdWVzdHMgcG9zc2libGUuXG4gICAqIEBwYXJhbSBpdGVtXG4gICAqIEBwYXJhbSBpbnNlcnRJdGVtXG4gICAqL1xuICBvblNlbGVjdD86IChcbiAgICBpdGVtOiBET01TdHJpbmdNYXAsXG4gICAgaW5zZXJ0SXRlbTogKFxuICAgICAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICBwcm9ncmFtbWF0aWNJbnNlcnQ/OiBib29sZWFuLFxuICAgICAgb3ZlcnJpZGRlbk9wdGlvbnM/OiBvYmplY3RcbiAgICApID0+IHZvaWRcbiAgKSA9PiB2b2lkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlU2VhbVF1aWxsTW9kdWxlcyBleHRlbmRzIFF1aWxsTW9kdWxlcyB7XG4gIG1lbnRpb24/OiBQYXJ0aWFsPFRoZVNlYW1RdWlsbE1lbnRpb25PcHRpb25zPlxufVxuXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9GT1JNQVRTID0gW1xuICAnYWxpZ24nLFxuICAnYmFja2dyb3VuZCcsXG4gICdibG9ja3F1b3RlJyxcbiAgJ2JvbGQnLFxuICAnY29kZS1ibG9jaycsXG4gICdjb2RlJyxcbiAgJ2NvbG9yJyxcbiAgJ2RpcmVjdGlvbicsXG4gICdmb250JyxcbiAgJ2hlYWRlcicsXG4gICdpbWFnZScsXG4gICdpbmRlbnQnLFxuICAnaXRhbGljJyxcbiAgJ2xpbmsnLFxuICAnbGlzdCcsXG4gICdzY3JpcHQnLFxuICAnc2l6ZScsXG4gICdzdHJpa2UnLFxuICAndW5kZXJsaW5lJyxcbiAgJ3ZpZGVvJyxcbiAgJ21lbnRpb24nXG5dIGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIFRoZVNlYW1RdWlsbFN0eWxlRm9ybWF0ID0gKHR5cGVvZiBUSEVTRUFNX1FVSUxMX0ZPUk1BVFMpW251bWJlcl1cblxuZXhwb3J0IHR5cGUgVGhlU2VhbVF1aWxsSW5wdXRGb3JtYXQgPSAnb2JqZWN0JyB8ICdodG1sJyB8ICd0ZXh0JyB8ICdqc29uJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1RdWlsbEVkaXRvckNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgZm9ybWF0IG9mIHRoZSB0ZXh0IGluc2lkZSB0aGUgZWRpdG9yLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnaHRtbCdcbiAgICovXG4gIGZvcm1hdDogVGhlU2VhbVF1aWxsSW5wdXRGb3JtYXRcblxuICAvKiogQGRlZmF1bHQgJ3Nub3cnICovXG4gIHRoZW1lPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gc2V0IGN1c3RvbSBjb25maWcgZm9yIGJ1aWx0LWluIGFuZCBhZGQtb24gbW9kdWxlcy5cbiAgICpcbiAgICogU2VlIGBTRUFNX1FVSUxMX01PRFVMRVNfREVGQVVMVGAgZm9yIGRlZmF1bHQgdmFsdWUuXG4gICAqL1xuICBtb2R1bGVzPzogVGhlU2VhbVF1aWxsTW9kdWxlc1xuXG4gIC8qKlxuICAgKiBDb25zb2xlIGxldmVsIGZvciBkZWJ1ZyBtZXNzYWdlcy5cbiAgICpcbiAgICogQGRlZmF1bHQgYHdhcm5gXG4gICAqL1xuICBkZWJ1Zz86ICd3YXJuJyB8ICdsb2cnIHwgJ2Vycm9yJyB8IGZhbHNlXG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZm9ybWF0cyBhbGxvd2VkIGluIGVkaXRvci5cbiAgICpcbiAgICogU2VlIGBTRUFNX1FVSUxMX0ZPUk1BVFNfREVGQVVMVGAgZm9yIGRlZmF1bHQgdmFsdWUuXG4gICAqXG4gICAqIE5PVEU6IEFkZGluZyBvciByZW1vdmluZyBhIHZhbHVlIHdpbGwgZW5hYmxlL2Rpc2FibGUgdGhhdCBmb3JtYXRcbiAgICogaW4gdGhlIGVkaXRvciwgYnV0IGhhcyBubyBlZmZlY3Qgb24gdGhlIHRvb2xiYXIgYnV0dG9ucy5cbiAgICogVG8gbW9kaWZ5IHRoZSB0b29sYmFyIGRpc3BsYXksIHVwZGF0ZSBgbW9kdWxlcy50b29sYmFyYC5cbiAgICovXG4gIGZvcm1hdHM/OiBUaGVTZWFtUXVpbGxTdHlsZUZvcm1hdFtdIHwgbnVsbFxuXG4gIC8qKiBAZGVmYXVsdCAndG9wJyAqL1xuICBjdXN0b21Ub29sYmFyUG9zaXRpb246ICd0b3AnIHwgJ2JvdHRvbSdcblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHJ1bnMgdGhlIGNvbnRyb2wgdmFsdWUgdGhyb3VnaCBBbmd1bGFyJ3MgRE9NIHNhbml0aXplclxuICAgKiBiZWZvcmUgc2V0dGluZyB0aGUgdmFsdWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBzYW5pdGl6ZTogYm9vbGVhblxuXG4gIC8qKiBDdXN0b20gY3NzIHN0eWxlcyB0byBhZGQgdG8gdGhlIGAucWwtY29udGFpbmVyYCBlbGVtZW50LiAqL1xuICBzdHlsZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgbnVsbFxuXG4gIC8qKlxuICAgKiBXaGVuIGBmYWxzZWAsIHVzZXIgaW50ZXJhY3Rpb25zIGluIHRoZSB0b29sYmFyIHdpbGwgZW1pdCBldmVuXG4gICAqIGlmIHRoZSBlZGl0b3IgaXMgbWFya2VkIGFzIGByZWFkT25seWAuIFRoaXMgYWxsb3dzIHRoZSB1c2VyIHRvXG4gICAqIG1ha2Ugc29tZSBmb3JtYXR0aW5nIGNoYW5nZXMgKGUuZy4gY3JlYXRpbmcgYSBsaXN0KSB0byBhIHZhbHVlXG4gICAqIHRoYXQgc2hvdWxkIGJlIGRpc2FibGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlLlxuICAgKi9cbiAgc3RyaWN0OiBib29sZWFuXG5cbiAgLyoqXG4gICAqIEFuIGVsZW1lbnQgb3Igc2VsZWN0b3IgdGhhdCBzcGVjaWZpZXMgdGhlIHNjcm9sbGluZyBlbGVtZW50IG9mIHRoZSBlZGl0b3IuXG4gICAqXG4gICAqIERlZmF1bHQgc2Nyb2xsaW5nQ29udGFpbmVyIGlzIHRoZSBgLnFsLWVkaXRvcmAgZWxlbWVudC5cbiAgICovXG4gIHNjcm9sbGluZ0NvbnRhaW5lcj86IEhUTUxFbGVtZW50IHwgc3RyaW5nIHwgbnVsbFxuXG4gIC8qKlxuICAgKiBBbiBlbGVtZW50IG9yIHNlbGVjdG9yIHRoYXQgc3BlY2lmaWVzIHRoZSBjb25maW5pbmcgZWxlbWVudCBvZiB0aGUgZWRpdG9yLlxuICAgKlxuICAgKiBEZWZhdWx0IGJvdW5kYXJ5IGNvbnRhaW5lciBpcyB0aGUgZG9jdW1lbnQncyBgYm9keWAgZWxlbWVudC5cbiAgICovXG4gIGJvdW5kcz86IEhUTUxFbGVtZW50IHwgc3RyaW5nXG5cbiAgLyoqXG4gICAqIERlZmluZXMgY3VzdG9tIGZvcm1hdHMgZm9yIHRoZSBlZGl0b3IuIENhbiBiZSB1c2VkIHRvIG92ZXJ3cml0ZSBleGlzdGluZyBvcHRpb25zLlxuICAgKlxuICAgKiBUT0RPOiBSZXNlYXJjaCB0aGlzIG1vcmUuXG4gICAqL1xuICBjdXN0b21PcHRpb25zOiBDdXN0b21PcHRpb25bXVxuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGN1c3RvbSBtb2R1bGVzIGZvciB0aGUgZWRpdG9yLiBDYW4gYmUgdXNlZCB0byBvdmVyd3JpdGUgZXhpc3RpbmcgbW9kdWxlcy5cbiAgICpcbiAgICogVE9ETzogUmVzZWFyY2ggdGhpcyBtb3JlLlxuICAgKi9cbiAgY3VzdG9tTW9kdWxlczogQ3VzdG9tTW9kdWxlW11cblxuICAvKipcbiAgICogV2hlbiBgdXNlcmAsIG9ubHkgY2hhbmdlIGV2ZW50cyBmcm9tIHRoZSB1c2VyIHdpbGwgdHJpZ2dlciBhIG1vZGVsIGNoYW5nZS5cbiAgICogVGhpcyBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvciwgYW5kIGlzIHByZWZlcnJlZC5cbiAgICpcbiAgICogQ2hhbmdpbmcgdG8gYGFsbGAgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgKi9cbiAgdHJhY2tDaGFuZ2VzPzogJ3VzZXInIHwgJ2FsbCdcblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHByZXNlcnZlcyBkdXBsaWNhdGVkIHdoaXRlc3BhY2VzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHJlc2VydmVXaGl0ZXNwYWNlOiBib29sZWFuXG5cbiAgLyoqIEN1c3RvbSBjbGFzc2VzIHRvIGFkZCB0byB0aGUgYC5xbC1jb250YWluZXJgIGVsZW1lbnQuICovXG4gIGNsYXNzZXM/OiBzdHJpbmdcblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHRyaW1zIGxlYWRpbmcvdHJhaWxpbmcgbmV3bGluZXMgd2hlbiB2YWxpZGF0aW9uIGlzIHJ1bi5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHRyaW1PblZhbGlkYXRpb246IGJvb2xlYW5cblxuICAvKipcbiAgICogU2V0cyBhIHBsYWNlaG9sZGVyIGZvciB0aGUgbGluayBpbnB1dCBpbiB0aGUgaHlwZXJsaW5rIGZvcm0uXG4gICAqXG4gICAqIEBkZWZhdWx0ICdodHRwczovL3F1aWxsanMuY29tJ1xuICAgKi9cbiAgbGlua1BsYWNlaG9sZGVyPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCBkb2VzIGEgYmFzaWMgY29tcGFyZSAodXNpbmcgSlNPTi5zdHJpbmdpZnkpIGJldHdlZW4gdGhlIG9sZFxuICAgKiBhbmQgbmV3IHZhbHVlIG9uIGB3cml0ZVZhbHVlKClgLiBJZiB0aGUgdmFsdWVzIGFyZSB0aGUgc2FtZSwgaXQgc2tpcHMgdGhlIHVwZGF0ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGNvbXBhcmVWYWx1ZXM6IGJvb2xlYW5cblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHNraXBzIHRoZSB1cGRhdGUgZm9yIG51bGwgdmFsdWVzIG9uIGB3cml0ZVZhbHVlKClgLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZmlsdGVyTnVsbDogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBEZWJvdW5jZXMgYG9uQ29udGVudENoYW5nZWQoKWAsIGBvbkVkaXRvckNoYW5nZWQoKWAsIGBuZ01vZGVsYCBhbmQgZm9ybSBjb250cm9sIGB2YWx1ZUNoYW5nZSgpYC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gYHVuZGVmaW5lZGAsIHNvIGNoYW5nZXMgYWx3YXlzIGVtaXQgaW1tZWRpYXRlbHkuXG4gICAqXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgZGVib3VuY2VUaW1lPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFRoZSBgbmd4LXF1aWxsYCBsaWJyYXJ5IGRvZXNuJ3QgYWNjdXJhdGVseSBoYW5kbGUgdW5kZWZpbmVkXG4gICAqIGlucHV0cywgYW5kIHRoZSBkZWZhdWx0IGB2YWx1ZUdldHRlcmAgZnVuY3Rpb24gaXMgaW1wb3NzaWJsZSB0byByZWZlcmVuY2UgaGVyZSxcbiAgICogc28gdGhpcyBjb25maWcgb3B0aW9uIGlzIG5vdCB1c2VkLlxuICAgKlxuICAgKiBEZWZpbmVzIGN1c3RvbSBsb2dpYyBmb3IgcmVhZGluZyB0aGUgaHRtbCB2YWx1ZSBvZiB0aGUgZWRpdG9yLlxuICAgKi9cbiAgdmFsdWVHZXR0ZXI/OiAoXG4gICAgcXVpbGxFZGl0b3I6IFF1aWxsVHlwZSxcbiAgICBlZGl0b3JFbGVtZW50OiBIVE1MRWxlbWVudFxuICApID0+IHN0cmluZyB8IGFueVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGUgYG5neC1xdWlsbGAgbGlicmFyeSBkb2Vzbid0IGFjY3VyYXRlbHkgaGFuZGxlIHVuZGVmaW5lZFxuICAgKiBpbnB1dHMsIGFuZCB0aGUgZGVmYXVsdCBgdmFsdWVTZXR0ZXJgIGZ1bmN0aW9uIGlzIGltcG9zc2libGUgdG8gcmVmZXJlbmNlIGhlcmUsXG4gICAqIHNvIHRoaXMgY29uZmlnIG9wdGlvbiBpcyBub3QgdXNlZC5cbiAgICpcbiAgICogRGVmaW5lcyBjdXN0b20gbG9naWMgZm9yIHNldHRpbmcgdGhlIGh0bWwgdmFsdWUgb2YgdGhlIGVkaXRvci5cbiAgICovXG4gIHZhbHVlU2V0dGVyPzogKHF1aWxsRWRpdG9yOiBRdWlsbFR5cGUsIHZhbHVlOiBhbnkpID0+IGFueVxufVxuXG5leHBvcnQgdHlwZSBUaGVTZWFtQ2hhcmFjdGVyQ291bnRlckZuID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICBmb3JtYXQ6IFRoZVNlYW1RdWlsbElucHV0Rm9ybWF0IHwgdW5kZWZpbmVkXG4pID0+IG51bWJlclxuIl19
@@ -120,4 +120,4 @@ export const defaultMentionRenderListFn = (source, searchFn, emptyListItem, text
120
120
  // return item.value
121
121
  // }
122
122
  // }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcmljaC10ZXh0L3V0aWxzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFM0csTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsV0FBVyxDQUFBO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUF1QjtJQUN2RSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQztJQUN6QyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDekMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNmLENBQUMsTUFBTSxDQUFDO0lBQ1IsQ0FBQyxPQUFPLENBQUM7Q0FDVixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQXdDO0lBQ3hGLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsbUJBQW1CLEVBQUUsT0FBTztJQUM1QixjQUFjLEVBQUUsQ0FBRSxNQUFNLENBQUU7Q0FDM0IsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUF3QjtJQUNoRSxPQUFPLEVBQUUscUNBQXFDO0NBQy9DLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBOEI7SUFDdEUsT0FBTztJQUNQLE1BQU07SUFDTixRQUFRO0lBQ1Is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SUFBSTtBQUNKLFNBQVM7QUFDVCxzQkFBc0I7QUFDdEIsSUFBSTtBQUNOLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcclxuaW1wb3J0IHsgUXVpbGxUb29sYmFyQ29uZmlnIH0gZnJvbSBcIm5neC1xdWlsbFwiXHJcbmltcG9ydCB7IFRoZVNlYW1RdWlsbE1vZHVsZXMsIFRoZVNlYW1RdWlsbFN0eWxlRm9ybWF0LCBUaGVTZWFtUXVpbGxFZGl0b3JDb25maWcsIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51T3B0aW9uLCBUaGVTZWFtUXVpbGxJbnB1dEZvcm1hdCwgVGhlU2VhbVF1aWxsTWVudGlvbk9wdGlvbnMsIFRoZVNlYW1RdWlsbE1lbnRpb25Tb3VyY2VGbiwgVGhlU2VhbVF1aWxsTWVudGlvblNlYXJjaEZuLCBUaGVTZWFtQ2hhcmFjdGVyQ291bnRlckZuLCBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW0gfSBmcm9tIFwiLi9tb2RlbHNcIlxyXG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCwgbm90TnVsbE9yVW5kZWZpbmVkLCBub3ROdWxsT3JVbmRlZmluZWRPckVtcHR5IH0gZnJvbSBcIkB0aGVzZWFtL3VpLWNvbW1vbi91dGlsc1wiXHJcblxyXG5leHBvcnQgY29uc3QgSFRNTF9FTlRJVFlfUkVHRVggPSAvPFtePl0rPi9nbVxyXG5cclxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fUVVJTExfVE9PTEJBUl9PUFRJT05TX0RFRkFVTFQ6IFF1aWxsVG9vbGJhckNvbmZpZyA9IFtcclxuICBbJ2JvbGQnLCAnaXRhbGljJywgJ3VuZGVybGluZScsICdzdHJpa2UnXSxcclxuICBbeyBoZWFkZXI6IFswLCAxLCAyLCAzLCA0LCA1XSB9XSxcclxuICBbeyBsaXN0OiAnb3JkZXJlZCcgfSwgeyBsaXN0OiAnYnVsbGV0JyB9XSxcclxuICBbeyBhbGlnbjogW10gfV0sXHJcbiAgWydsaW5rJ10sXHJcbiAgWydjbGVhbiddLFxyXG5dXHJcblxyXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9NRU5USU9OX09QVElPTlNfREVGQVVMVDogUGFydGlhbDxUaGVTZWFtUXVpbGxNZW50aW9uT3B0aW9ucz4gPSB7XHJcbiAgc3BhY2VBZnRlckluc2VydDogZmFsc2UsXHJcbiAgcG9zaXRpb25pbmdTdHJhdGVneTogJ2ZpeGVkJyxcclxuICBkYXRhQXR0cmlidXRlczogWyAndHlwZScgXVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9NT0RVTEVTX0RFRkFVTFQ6IFRoZVNlYW1RdWlsbE1vZHVsZXMgPSB7XHJcbiAgdG9vbGJhcjogVEhFU0VBTV9RVUlMTF9UT09MQkFSX09QVElPTlNfREVGQVVMVFxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9GT1JNQVRTX0RFRkFVTFQ6IFRoZVNlYW1RdWlsbFN0eWxlRm9ybWF0W10gPSBbXHJcbiAgJ2FsaWduJyxcclxuICAnYm9sZCcsXHJcbiAgJ2hlYWRlcicsXHJcbiAgJ2luZGVudCcsXHJcbiAgJ2l0YWxpYycsXHJcbiAgJ2xpbmsnLFxyXG4gICdsaXN0JyxcclxuICAnc2l6ZScsXHJcbiAgJ3N0cmlrZScsXHJcbiAgJ3VuZGVybGluZScsXHJcbiAgJ21lbnRpb24nXHJcbl1cclxuXHJcbmV4cG9ydCBjb25zdCBUSEVTRUFNX1FVSUxMX0VESVRPUl9DT05GSUdfREVGQVVMVDogVGhlU2VhbVF1aWxsRWRpdG9yQ29uZmlnID0ge1xyXG4gIGZvcm1hdDogJ2h0bWwnLFxyXG4gIG1vZHVsZXM6IFRIRVNFQU1fUVVJTExfTU9EVUxFU19ERUZBVUxULFxyXG4gIGZvcm1hdHM6IFRIRVNFQU1fUVVJTExfRk9STUFUU19ERUZBVUxULFxyXG4gIGxpbmtQbGFjZWhvbGRlcjogJ2h0dHBzOi8vZ29vZ2xlLmNvbScsXHJcbiAgY3VzdG9tVG9vbGJhclBvc2l0aW9uOiAndG9wJyxcclxuICBzYW5pdGl6ZTogZmFsc2UsXHJcbiAgc3RyaWN0OiB0cnVlLFxyXG4gIGN1c3RvbU9wdGlvbnM6IFtdLFxyXG4gIGN1c3RvbU1vZHVsZXM6IFtdLFxyXG4gIHByZXNlcnZlV2hpdGVzcGFjZTogZmFsc2UsXHJcbiAgdHJpbU9uVmFsaWRhdGlvbjogZmFsc2UsXHJcbiAgY29tcGFyZVZhbHVlczogZmFsc2UsXHJcbiAgZmlsdGVyTnVsbDogZmFsc2VcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fUVVJTExfRURJVE9SX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUaGVTZWFtUXVpbGxFZGl0b3JDb25maWc+KCdUaGVTZWFtUXVpbGxFZGl0b3JDb25maWcnKVxyXG5cclxuZXhwb3J0IGNvbnN0IGRlZmF1bHRIdG1sQ2hhcmFjdGVyQ291bnRlckZuOiBUaGVTZWFtQ2hhcmFjdGVyQ291bnRlckZuID0gKHZhbHVlOiBzdHJpbmcsIGZvcm1hdDogVGhlU2VhbVF1aWxsSW5wdXRGb3JtYXQgfCB1bmRlZmluZWQpOiBudW1iZXIgPT4ge1xyXG4gIGlmIChmb3JtYXQgPT09ICdodG1sJykge1xyXG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoSFRNTF9FTlRJVFlfUkVHRVgsICcgJykucmVwbGFjZSgvXFxzXFxzKy9nLCAnICcpLnRyaW0oKS5sZW5ndGhcclxuICB9XHJcbiAgZWxzZSBpZiAoZm9ybWF0ID09PSAndGV4dCcpIHtcclxuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKC9cXHNcXHMrL2csICcgJykudHJpbSgpLmxlbmd0aFxyXG4gIH1cclxuICBlbHNlIHtcclxuICAgIGNvbnNvbGUud2FybihgRm9ybWF0ICR7Zm9ybWF0fSBub3Qgc3VwcG9ydGVkIWApXHJcbiAgICByZXR1cm4gMFxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzTWVudGlvbk1lbnVPcHRpb24odmFsdWU6IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbSB8IHVuZGVmaW5lZCk6IHZhbHVlIGlzIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51T3B0aW9uIHtcclxuICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpIHx8IHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcclxuICAgIHJldHVybiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWx1ZSwgJ2lkJylcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGRlZmF1bHRNZW50aW9uU2VhcmNoRm46IFRoZVNlYW1RdWlsbE1lbnRpb25TZWFyY2hGbiA9IChzb3VyY2U6IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbVtdLCB0ZXh0QWZ0ZXI6IHN0cmluZywgbWVudGlvbkNoYXI6IHN0cmluZykgPT4ge1xyXG4gIHJldHVybiBzb3VyY2UuZmlsdGVyKHUgPT4ge1xyXG4gICAgaWYgKCFpc01lbnRpb25NZW51T3B0aW9uKHUpIHx8IHUuc2VhcmNoSWdub3JlID09PSB0cnVlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHUudmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0QWZ0ZXIudG9Mb3dlckNhc2UoKSlcclxuICB9KVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZGVmYXVsdE1lbnRpb25SZW5kZXJMaXN0Rm46IFRoZVNlYW1RdWlsbE1lbnRpb25Tb3VyY2VGbiA9IChzb3VyY2U6IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbVtdLCBzZWFyY2hGbjogVGhlU2VhbVF1aWxsTWVudGlvblNlYXJjaEZuLCBlbXB0eUxpc3RJdGVtOiBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW0gfCB1bmRlZmluZWQsIHRleHRBZnRlcjogc3RyaW5nLCByZW5kZXJMaXN0OiAobGlzdDogYW55W10sIHNlYXJjaFRlcm06IHN0cmluZykgPT4gYW55LCBtZW50aW9uQ2hhcjogc3RyaW5nKSA9PiB7XHJcbiAgbGV0IGxpc3QgPSBzZWFyY2hGbihzb3VyY2UsIHRleHRBZnRlciwgbWVudGlvbkNoYXIpXHJcblxyXG4gIGlmIChsaXN0Lmxlbmd0aCA9PT0gMCAmJiBub3ROdWxsT3JVbmRlZmluZWQoZW1wdHlMaXN0SXRlbSkpIHtcclxuICAgIGxpc3QucHVzaChlbXB0eUxpc3RJdGVtKVxyXG4gIH1cclxuICBlbHNlIHtcclxuICAgIGxldCByZWR1Y2VJZHggPSAwXHJcbiAgICBsaXN0ID0gbGlzdC5yZWR1Y2UoKGFjYywgbWVudGlvbikgPT4ge1xyXG4gICAgICBjb25zdCBwcmV2aW91c01lbnVJdGVtID0gYWNjW3JlZHVjZUlkeCAtIDFdXHJcbiAgICAgIGNvbnN0IHByZXZpb3VzTWVudUl0ZW1Hcm91cE5hbWUgPSBpc01lbnRpb25NZW51T3B0aW9uKHByZXZpb3VzTWVudUl0ZW0pID8gcHJldmlvdXNNZW51SXRlbS5ncm91cE5hbWUgOiB1bmRlZmluZWRcclxuICAgICAgaWYgKGlzTWVudGlvbk1lbnVPcHRpb24obWVudGlvbilcclxuICAgICAgICAgICYmIG5vdE51bGxPclVuZGVmaW5lZE9yRW1wdHkobWVudGlvbi5ncm91cE5hbWUpXHJcbiAgICAgICAgICAmJiBtZW50aW9uLmdyb3VwTmFtZSAhPT0gcHJldmlvdXNNZW51SXRlbUdyb3VwTmFtZVxyXG4gICAgICApIHtcclxuICAgICAgICBhY2MucHVzaCh7XHJcbiAgICAgICAgICB2YWx1ZTogbWVudGlvbi5ncm91cE5hbWUsXHJcbiAgICAgICAgICBkaXNhYmxlZDogdHJ1ZSxcclxuICAgICAgICAgIHR5cGU6ICdncm91cE5hbWUnXHJcbiAgICAgICAgfSlcclxuXHJcbiAgICAgICAgcmVkdWNlSWR4KytcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFpc01lbnRpb25NZW51T3B0aW9uKG1lbnRpb24pKSB7XHJcbiAgICAgICAgbWVudGlvbi5kaXNhYmxlZCA9IHRydWVcclxuICAgICAgfVxyXG5cclxuICAgICAgYWNjLnB1c2gobWVudGlvbilcclxuICAgICAgcmVkdWNlSWR4KytcclxuXHJcbiAgICAgIHJldHVybiBhY2NcclxuICAgIH0sIDxUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW1bXT5bXSBzYXRpc2ZpZXMgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtW10pXHJcbiAgfVxyXG5cclxuICByZW5kZXJMaXN0KGxpc3QsIHRleHRBZnRlcilcclxufVxyXG5cclxuLy8gS2VlcGluZyB0aGlzIGFzIGFuIGV4YW1wbGUgZm9yIGEgY3VzdG9tIG1lbnUgaXRlbS5cclxuLy8gVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUgYSBiZXR0ZXIgd2F5IG9mIHBhc3NpbmcgaW4gYSBjdXN0b20gdGVtcGxhdGUuXHJcbi8vIGV4cG9ydCBjb25zdCBkZWZhdWx0TWVudGlvblJlbmRlckl0ZW0gPSAoaXRlbTogVGhlU2VhbVF1aWxsTWVudGlvbkxpc3RJdGVtKSA9PiB7XHJcbiAgLy8gaWYgKGl0ZW0udHlwZSA9PT0gJ2dyb3VwTmFtZScpIHtcclxuICAvLyAgIGNvbnN0IHRleHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKVxyXG4gIC8vICAgdGV4dC5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgJ3NtYWxsIHRleHQtYmxhY2stNTAnKVxyXG4gIC8vICAgdGV4dC5pbm5lclRleHQgPSBpdGVtLnZhbHVlXHJcblxyXG4gIC8vICAgcmV0dXJuIHRleHQub3V0ZXJIVE1MXHJcbiAgLy8gfVxyXG4gIC8vIGVsc2UgaWYgKGl0ZW0udHlwZSA9PT0gJ2RpdmlkZXInKSB7XHJcbiAgLy8gICBjb25zdCBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdocicpXHJcbiAgLy8gICBkaXYuc2V0QXR0cmlidXRlKCdjbGFzcycsICdteS0yJylcclxuICAvLyAgIHJldHVybiBkaXYub3V0ZXJIVE1MXHJcbiAgLy8gfVxyXG4gIC8vIGVsc2Uge1xyXG4gIC8vICAgcmV0dXJuIGl0ZW0udmFsdWVcclxuICAvLyB9XHJcbi8vIH1cclxuIl19
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vcmljaC10ZXh0L3V0aWxzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFM0csTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsV0FBVyxDQUFBO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUF1QjtJQUN2RSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQztJQUN6QyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2hDLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDekMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNmLENBQUMsTUFBTSxDQUFDO0lBQ1IsQ0FBQyxPQUFPLENBQUM7Q0FDVixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQXdDO0lBQ3hGLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsbUJBQW1CLEVBQUUsT0FBTztJQUM1QixjQUFjLEVBQUUsQ0FBRSxNQUFNLENBQUU7Q0FDM0IsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUF3QjtJQUNoRSxPQUFPLEVBQUUscUNBQXFDO0NBQy9DLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBOEI7SUFDdEUsT0FBTztJQUNQLE1BQU07SUFDTixRQUFRO0lBQ1Is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SUFBSTtBQUNKLFNBQVM7QUFDVCxzQkFBc0I7QUFDdEIsSUFBSTtBQUNOLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcbmltcG9ydCB7IFF1aWxsVG9vbGJhckNvbmZpZyB9IGZyb20gXCJuZ3gtcXVpbGxcIlxuaW1wb3J0IHsgVGhlU2VhbVF1aWxsTW9kdWxlcywgVGhlU2VhbVF1aWxsU3R5bGVGb3JtYXQsIFRoZVNlYW1RdWlsbEVkaXRvckNvbmZpZywgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVPcHRpb24sIFRoZVNlYW1RdWlsbElucHV0Rm9ybWF0LCBUaGVTZWFtUXVpbGxNZW50aW9uT3B0aW9ucywgVGhlU2VhbVF1aWxsTWVudGlvblNvdXJjZUZuLCBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4sIFRoZVNlYW1DaGFyYWN0ZXJDb3VudGVyRm4sIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbSB9IGZyb20gXCIuL21vZGVsc1wiXG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCwgbm90TnVsbE9yVW5kZWZpbmVkLCBub3ROdWxsT3JVbmRlZmluZWRPckVtcHR5IH0gZnJvbSBcIkB0aGVzZWFtL3VpLWNvbW1vbi91dGlsc1wiXG5cbmV4cG9ydCBjb25zdCBIVE1MX0VOVElUWV9SRUdFWCA9IC88W14+XSs+L2dtXG5cbmV4cG9ydCBjb25zdCBUSEVTRUFNX1FVSUxMX1RPT0xCQVJfT1BUSU9OU19ERUZBVUxUOiBRdWlsbFRvb2xiYXJDb25maWcgPSBbXG4gIFsnYm9sZCcsICdpdGFsaWMnLCAndW5kZXJsaW5lJywgJ3N0cmlrZSddLFxuICBbeyBoZWFkZXI6IFswLCAxLCAyLCAzLCA0LCA1XSB9XSxcbiAgW3sgbGlzdDogJ29yZGVyZWQnIH0sIHsgbGlzdDogJ2J1bGxldCcgfV0sXG4gIFt7IGFsaWduOiBbXSB9XSxcbiAgWydsaW5rJ10sXG4gIFsnY2xlYW4nXSxcbl1cblxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fUVVJTExfTUVOVElPTl9PUFRJT05TX0RFRkFVTFQ6IFBhcnRpYWw8VGhlU2VhbVF1aWxsTWVudGlvbk9wdGlvbnM+ID0ge1xuICBzcGFjZUFmdGVySW5zZXJ0OiBmYWxzZSxcbiAgcG9zaXRpb25pbmdTdHJhdGVneTogJ2ZpeGVkJyxcbiAgZGF0YUF0dHJpYnV0ZXM6IFsgJ3R5cGUnIF1cbn1cblxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fUVVJTExfTU9EVUxFU19ERUZBVUxUOiBUaGVTZWFtUXVpbGxNb2R1bGVzID0ge1xuICB0b29sYmFyOiBUSEVTRUFNX1FVSUxMX1RPT0xCQVJfT1BUSU9OU19ERUZBVUxUXG59XG5cbmV4cG9ydCBjb25zdCBUSEVTRUFNX1FVSUxMX0ZPUk1BVFNfREVGQVVMVDogVGhlU2VhbVF1aWxsU3R5bGVGb3JtYXRbXSA9IFtcbiAgJ2FsaWduJyxcbiAgJ2JvbGQnLFxuICAnaGVhZGVyJyxcbiAgJ2luZGVudCcsXG4gICdpdGFsaWMnLFxuICAnbGluaycsXG4gICdsaXN0JyxcbiAgJ3NpemUnLFxuICAnc3RyaWtlJyxcbiAgJ3VuZGVybGluZScsXG4gICdtZW50aW9uJ1xuXVxuXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9FRElUT1JfQ09ORklHX0RFRkFVTFQ6IFRoZVNlYW1RdWlsbEVkaXRvckNvbmZpZyA9IHtcbiAgZm9ybWF0OiAnaHRtbCcsXG4gIG1vZHVsZXM6IFRIRVNFQU1fUVVJTExfTU9EVUxFU19ERUZBVUxULFxuICBmb3JtYXRzOiBUSEVTRUFNX1FVSUxMX0ZPUk1BVFNfREVGQVVMVCxcbiAgbGlua1BsYWNlaG9sZGVyOiAnaHR0cHM6Ly9nb29nbGUuY29tJyxcbiAgY3VzdG9tVG9vbGJhclBvc2l0aW9uOiAndG9wJyxcbiAgc2FuaXRpemU6IGZhbHNlLFxuICBzdHJpY3Q6IHRydWUsXG4gIGN1c3RvbU9wdGlvbnM6IFtdLFxuICBjdXN0b21Nb2R1bGVzOiBbXSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlOiBmYWxzZSxcbiAgdHJpbU9uVmFsaWRhdGlvbjogZmFsc2UsXG4gIGNvbXBhcmVWYWx1ZXM6IGZhbHNlLFxuICBmaWx0ZXJOdWxsOiBmYWxzZVxufVxuXG5leHBvcnQgY29uc3QgVEhFU0VBTV9RVUlMTF9FRElUT1JfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPFRoZVNlYW1RdWlsbEVkaXRvckNvbmZpZz4oJ1RoZVNlYW1RdWlsbEVkaXRvckNvbmZpZycpXG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0SHRtbENoYXJhY3RlckNvdW50ZXJGbjogVGhlU2VhbUNoYXJhY3RlckNvdW50ZXJGbiA9ICh2YWx1ZTogc3RyaW5nLCBmb3JtYXQ6IFRoZVNlYW1RdWlsbElucHV0Rm9ybWF0IHwgdW5kZWZpbmVkKTogbnVtYmVyID0+IHtcbiAgaWYgKGZvcm1hdCA9PT0gJ2h0bWwnKSB7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoSFRNTF9FTlRJVFlfUkVHRVgsICcgJykucmVwbGFjZSgvXFxzXFxzKy9nLCAnICcpLnRyaW0oKS5sZW5ndGhcbiAgfVxuICBlbHNlIGlmIChmb3JtYXQgPT09ICd0ZXh0Jykge1xuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKC9cXHNcXHMrL2csICcgJykudHJpbSgpLmxlbmd0aFxuICB9XG4gIGVsc2Uge1xuICAgIGNvbnNvbGUud2FybihgRm9ybWF0ICR7Zm9ybWF0fSBub3Qgc3VwcG9ydGVkIWApXG4gICAgcmV0dXJuIDBcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNZW50aW9uTWVudU9wdGlvbih2YWx1ZTogVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtIHwgdW5kZWZpbmVkKTogdmFsdWUgaXMgVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVPcHRpb24ge1xuICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpIHx8IHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWUsICdpZCcpXG59XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0TWVudGlvblNlYXJjaEZuOiBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4gPSAoc291cmNlOiBUaGVTZWFtUXVpbGxNZW50aW9uTWVudUl0ZW1bXSwgdGV4dEFmdGVyOiBzdHJpbmcsIG1lbnRpb25DaGFyOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIHNvdXJjZS5maWx0ZXIodSA9PiB7XG4gICAgaWYgKCFpc01lbnRpb25NZW51T3B0aW9uKHUpIHx8IHUuc2VhcmNoSWdub3JlID09PSB0cnVlKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiB1LnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGV4dEFmdGVyLnRvTG93ZXJDYXNlKCkpXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0TWVudGlvblJlbmRlckxpc3RGbjogVGhlU2VhbVF1aWxsTWVudGlvblNvdXJjZUZuID0gKHNvdXJjZTogVGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtW10sIHNlYXJjaEZuOiBUaGVTZWFtUXVpbGxNZW50aW9uU2VhcmNoRm4sIGVtcHR5TGlzdEl0ZW06IFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbSB8IHVuZGVmaW5lZCwgdGV4dEFmdGVyOiBzdHJpbmcsIHJlbmRlckxpc3Q6IChsaXN0OiBhbnlbXSwgc2VhcmNoVGVybTogc3RyaW5nKSA9PiBhbnksIG1lbnRpb25DaGFyOiBzdHJpbmcpID0+IHtcbiAgbGV0IGxpc3QgPSBzZWFyY2hGbihzb3VyY2UsIHRleHRBZnRlciwgbWVudGlvbkNoYXIpXG5cbiAgaWYgKGxpc3QubGVuZ3RoID09PSAwICYmIG5vdE51bGxPclVuZGVmaW5lZChlbXB0eUxpc3RJdGVtKSkge1xuICAgIGxpc3QucHVzaChlbXB0eUxpc3RJdGVtKVxuICB9XG4gIGVsc2Uge1xuICAgIGxldCByZWR1Y2VJZHggPSAwXG4gICAgbGlzdCA9IGxpc3QucmVkdWNlKChhY2MsIG1lbnRpb24pID0+IHtcbiAgICAgIGNvbnN0IHByZXZpb3VzTWVudUl0ZW0gPSBhY2NbcmVkdWNlSWR4IC0gMV1cbiAgICAgIGNvbnN0IHByZXZpb3VzTWVudUl0ZW1Hcm91cE5hbWUgPSBpc01lbnRpb25NZW51T3B0aW9uKHByZXZpb3VzTWVudUl0ZW0pID8gcHJldmlvdXNNZW51SXRlbS5ncm91cE5hbWUgOiB1bmRlZmluZWRcbiAgICAgIGlmIChpc01lbnRpb25NZW51T3B0aW9uKG1lbnRpb24pXG4gICAgICAgICAgJiYgbm90TnVsbE9yVW5kZWZpbmVkT3JFbXB0eShtZW50aW9uLmdyb3VwTmFtZSlcbiAgICAgICAgICAmJiBtZW50aW9uLmdyb3VwTmFtZSAhPT0gcHJldmlvdXNNZW51SXRlbUdyb3VwTmFtZVxuICAgICAgKSB7XG4gICAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgICB2YWx1ZTogbWVudGlvbi5ncm91cE5hbWUsXG4gICAgICAgICAgZGlzYWJsZWQ6IHRydWUsXG4gICAgICAgICAgdHlwZTogJ2dyb3VwTmFtZSdcbiAgICAgICAgfSlcblxuICAgICAgICByZWR1Y2VJZHgrK1xuICAgICAgfVxuXG4gICAgICBpZiAoIWlzTWVudGlvbk1lbnVPcHRpb24obWVudGlvbikpIHtcbiAgICAgICAgbWVudGlvbi5kaXNhYmxlZCA9IHRydWVcbiAgICAgIH1cblxuICAgICAgYWNjLnB1c2gobWVudGlvbilcbiAgICAgIHJlZHVjZUlkeCsrXG5cbiAgICAgIHJldHVybiBhY2NcbiAgICB9LCA8VGhlU2VhbVF1aWxsTWVudGlvbk1lbnVJdGVtW10+W10gc2F0aXNmaWVzIFRoZVNlYW1RdWlsbE1lbnRpb25NZW51SXRlbVtdKVxuICB9XG5cbiAgcmVuZGVyTGlzdChsaXN0LCB0ZXh0QWZ0ZXIpXG59XG5cbi8vIEtlZXBpbmcgdGhpcyBhcyBhbiBleGFtcGxlIGZvciBhIGN1c3RvbSBtZW51IGl0ZW0uXG4vLyBUaGVyZSBkb2Vzbid0IGFwcGVhciB0byBiZSBhIGJldHRlciB3YXkgb2YgcGFzc2luZyBpbiBhIGN1c3RvbSB0ZW1wbGF0ZS5cbi8vIGV4cG9ydCBjb25zdCBkZWZhdWx0TWVudGlvblJlbmRlckl0ZW0gPSAoaXRlbTogVGhlU2VhbVF1aWxsTWVudGlvbkxpc3RJdGVtKSA9PiB7XG4gIC8vIGlmIChpdGVtLnR5cGUgPT09ICdncm91cE5hbWUnKSB7XG4gIC8vICAgY29uc3QgdGV4dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpXG4gIC8vICAgdGV4dC5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgJ3NtYWxsIHRleHQtYmxhY2stNTAnKVxuICAvLyAgIHRleHQuaW5uZXJUZXh0ID0gaXRlbS52YWx1ZVxuXG4gIC8vICAgcmV0dXJuIHRleHQub3V0ZXJIVE1MXG4gIC8vIH1cbiAgLy8gZWxzZSBpZiAoaXRlbS50eXBlID09PSAnZGl2aWRlcicpIHtcbiAgLy8gICBjb25zdCBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdocicpXG4gIC8vICAgZGl2LnNldEF0dHJpYnV0ZSgnY2xhc3MnLCAnbXktMicpXG4gIC8vICAgcmV0dXJuIGRpdi5vdXRlckhUTUxcbiAgLy8gfVxuICAvLyBlbHNlIHtcbiAgLy8gICByZXR1cm4gaXRlbS52YWx1ZVxuICAvLyB9XG4vLyB9XG4iXX0=
@@ -101,7 +101,9 @@ export class TableCellTypeStringComponent {
101
101
  if (configAction.type === 'link') {
102
102
  link = this._parseConfigValue(configAction.link);
103
103
  if (link !== undefined && link !== null) {
104
- newTplType = this._parseConfigValue(configAction.asset) ? 'link-encrypted' : 'link';
104
+ newTplType = this._parseConfigValue(configAction.asset)
105
+ ? 'link-encrypted'
106
+ : this._parseConfigValue(configAction.external) ? 'link-external' : 'link';
105
107
  download = !!this._parseConfigValue(configAction.download);
106
108
  detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent);
107
109
  queryParams = this._parseConfigValue(configAction.queryParams);
@@ -159,7 +161,7 @@ export class TableCellTypeStringComponent {
159
161
  }
160
162
  }
161
163
  TableCellTypeStringComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TableCellTypeStringComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TableCellTypesHelpersService }, { token: i2.DatatableComponent, optional: true }, { token: i3.TableComponent, optional: true }, { token: TABLE_CELL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
162
- TableCellTypeStringComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TableCellTypeStringComponent, selector: "seam-table-cell-type-string", inputs: { value: "value", config: "config", title: "title", style: "style", classAttr: "classAttr" }, host: { properties: { "attr.title": "this._titleAttr", "attr.style": "this._styleAttr", "class": "this._classAttr" } }, ngImport: i0, template: "<ng-template #popoverTpl>\n {{ value }}\n</ng-template>\n\n<ng-template #noPopover>\n <div class=\"text-truncate\">\n {{ value }}\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <div *ngIf=\"canPopover; else noPopover\" [seamPopover]=\"popoverTpl\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </div>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block text-body text-decoration-none\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\">\n <a class=\"d-block text-body text-decoration-none\"\n [attr.href]=\"_link\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [attr.title]=\"_title\"\n (click)=\"_doButtonAction()\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i6.TheSeamPopoverDirective, selector: "[seamPopover]", inputs: ["seamPopover", "seamPopoverBaseWidth", "seamPopoverDisabled"], exportAs: ["seamPopover"] }, { kind: "directive", type: i7.EncryptedAssetLinkDirective, selector: "[seamEncryptedAssetLink]", inputs: ["seamEncryptedAssetLink", "seamShowLoadingOverlay", "seamDetectMimeFromContent", "seamDownloadAsset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
164
+ TableCellTypeStringComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TableCellTypeStringComponent, selector: "seam-table-cell-type-string", inputs: { value: "value", config: "config", title: "title", style: "style", classAttr: "classAttr" }, host: { properties: { "attr.title": "this._titleAttr", "attr.style": "this._styleAttr", "class": "this._classAttr" } }, ngImport: i0, template: "<ng-template #popoverTpl>\n {{ value }}\n</ng-template>\n\n<ng-template #noPopover>\n <div class=\"text-truncate\">\n {{ value }}\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <div *ngIf=\"canPopover; else noPopover\" [seamPopover]=\"popoverTpl\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </div>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block text-body text-decoration-none\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\">\n <a class=\"d-block text-body text-decoration-none\"\n [attr.href]=\"_link\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [attr.title]=\"_title\"\n (click)=\"_doButtonAction()\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i6.TheSeamPopoverDirective, selector: "[seamPopover]", inputs: ["seamPopover", "seamPopoverContext", "seamPopoverBaseWidth", "seamPopoverDisabled"], exportAs: ["seamPopover"] }, { kind: "directive", type: i7.EncryptedAssetLinkDirective, selector: "[seamEncryptedAssetLink]", inputs: ["seamEncryptedAssetLink", "seamShowLoadingOverlay", "seamDetectMimeFromContent", "seamDownloadAsset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
163
165
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TableCellTypeStringComponent, decorators: [{
164
166
  type: Component,
165
167
  args: [{ selector: 'seam-table-cell-type-string', host: {}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #popoverTpl>\n {{ value }}\n</ng-template>\n\n<ng-template #noPopover>\n <div class=\"text-truncate\">\n {{ value }}\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <div *ngIf=\"canPopover; else noPopover\" [seamPopover]=\"popoverTpl\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </div>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block text-body text-decoration-none\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\">\n <a class=\"d-block text-body text-decoration-none\"\n [attr.href]=\"_link\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [attr.title]=\"_title\"\n (click)=\"_doButtonAction()\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n" }]
@@ -192,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
192
194
  type: HostBinding,
193
195
  args: ['class']
194
196
  }] } });
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLXN0cmluZy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUkxQyxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFBOzs7Ozs7Ozs7QUFjbEcsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxJQUNJLEtBQUssS0FBSyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUEsQ0FBQyxDQUFDO0lBQ2xDLElBQUksS0FBSyxDQUFDLEdBQThCO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFBO1FBQ2pCLHlFQUF5RTtRQUN6RSxzRUFBc0U7UUFDdEUsMkVBQTJFO1FBQzNFLDZCQUE2QjtRQUM3QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO1NBQ3ZCO0lBQ0gsQ0FBQztJQUdELElBQ0ksTUFBTSxLQUFL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QWlCLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUM7aUJBQ3hFLFNBQVMsQ0FDUixDQUFDLENBQUMsRUFBRSxHQUFFLENBQUM7WUFDUCxzQ0FBc0M7WUFDdEMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUN6QixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FDbkMsQ0FBQTtTQUNKO0lBQ0gsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQywyQkFBMkIsRUFBRSxDQUFBO1NBQzlDO2FBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsMkJBQTJCLEVBQUUsQ0FBQTtTQUMxQztJQUNILENBQUM7O3lIQW5NVSw0QkFBNEIsK0xBdUVqQixlQUFlOzZHQXZFMUIsNEJBQTRCLGlTQzlCekMsc3BEQXlEQTsyRkQzQmEsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNFLDZCQUE2QixRQUdqQyxFQUFHLG1CQUNRLHVCQUF1QixDQUFDLE1BQU07OzBCQXVFNUMsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxlQUFlOzRDQWxFakMsS0FBSztzQkFEUixLQUFLO2dCQWVGLE1BQU07c0JBRFQsS0FBSztnQkE2QkYsS0FBSztzQkFEUixLQUFLO2dCQUl5QixVQUFVO3NCQUF4QyxXQUFXO3VCQUFDLFlBQVk7Z0JBR3JCLEtBQUs7c0JBRFIsS0FBSztnQkFJeUIsVUFBVTtzQkFBeEMsV0FBVzt1QkFBQyxZQUFZO2dCQUdyQixTQUFTO3NCQURaLEtBQUs7Z0JBSW9CLFVBQVU7c0JBQW5DLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBEYXRhdGFibGVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZGF0YXRhYmxlJ1xuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUnXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLCBUQUJMRV9DRUxMX0RBVEEgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHR5cGUgeyBUYWJsZUNlbGxEYXRhLCBUaGVTZWFtVGFibGVDb2x1bW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nLCBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uIH0gZnJvbSAnLi90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLWNvbmZpZydcblxuZXhwb3J0IHR5cGUgU3RyaW5nVGVtcGxhdGVUeXBlID0gJ2RlZmF1bHQnIHwgJ2xpbmsnIHwgJ2xpbmstZXh0ZXJuYWwnIHwgJ2xpbmstZW5jcnlwdGVkJyB8ICdidXR0b24nXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGFibGUtY2VsbC10eXBlLXN0cmluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7IH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ2VsbFR5cGVTdHJpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKSB7IHJldHVybiB0aGlzLl92YWx1ZSB9XG4gIHNldCB2YWx1ZSh2YWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbFxuICAgIC8vIFRPRE86IFRoaXMgaXMgdGVtcG9yYXJ5IHRvIHRlc3QgdGhlIGZlYXR1cmUgYW5kIHdpbGwgYmUgZml4ZWQgd2hlbiB0aGVcbiAgICAvLyBkeW5hbWljIGNvbHVtbiBkYXRhIGlzIGZpeGVkLiBUaGUgcGxhbiBpcyB0byBhZGQgYSBjb25maWcgdG9nZ2xlIHRvXG4gICAgLy8gYWx3YXlzIGVuYWJsZSBhbmQgZGVwZW5kaW5nIG9uIHBlcmZvcm1hbmNlIGl0IGNvdWxkIHRyeSB0byBkZWNpZGUgb24gaXRzXG4gICAgLy8gb3duIGJhc2VkIG9uIGNvbnRlbnQgc2l6ZS5cbiAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+IDMwKSB7XG4gICAgICB0aGlzLmNhblBvcG92ZXIgPSB0cnVlXG4gICAgfVxuICB9XG4gIF92YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpXG4gIGdldCBjb25maWcoKSB7IHJldHVybiB0aGlzLl9jb25maWcgfVxuICBzZXQgY29uZmlnKHZhbHVlOiBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIHRoaXMuX2NvbmZpZyA9IHZhbHVlXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnNldENvbmZpZyh2YWx1ZSlcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfY29uZmlnOiBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIF90cGxUeXBlOiBTdHJpbmdUZW1wbGF0ZVR5cGUgPSAnZGVmYXVsdCdcbiAgX2xpbms/OiBzdHJpbmdcbiAgX3RpdGxlPzogc3RyaW5nXG4gIF9xdWVyeVBhcmFtcz86IHsgW2s6IHN0cmluZ106IGFueSB9XG5cbiAgX3N0eWxlPzogc3RyaW5nXG4gIF9jbGFzcz86IHN0cmluZ1xuXG4gIF9idXR0b25BY3Rpb24/OiBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uXG5cbiAgX3RhYmxlQ2VsbERhdGE/OiBUYWJsZUNlbGxEYXRhPCdzdHJpbmcnLCBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nPlxuICBfcm93PzogYW55XG4gIF9yb3dJbmRleD86IG51bWJlclxuICBfY29sRGF0YT86IFRoZVNlYW1UYWJsZUNvbHVtbjwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cblxuICBfZG93bmxvYWQ/OiBib29sZWFuXG4gIF9kZXRlY3RNaW1lQ29udGVudD86IGJvb2xlYW5cblxuICBASW5wdXQoKVxuICBzZXQgdGl0bGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl90aXRsZSA9IHZhbHVlIH1cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7IHJldHVybiB0aGlzLl90aXRsZSB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRpdGxlJykgZ2V0IF90aXRsZUF0dHIoKSB7IHJldHVybiB0aGlzLnRpdGxlIHx8IHRoaXMudmFsdWUgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBzdHlsZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7IHRoaXMuX3N0eWxlID0gdmFsdWUgfVxuICBnZXQgc3R5bGUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHsgcmV0dXJuIHRoaXMuX3N0eWxlIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuc3R5bGUnKSBnZXQgX3N0eWxlQXR0cigpIHsgcmV0dXJuIHRoaXMuc3R5bGUgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjbGFzc0F0dHIodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl9jbGFzcyA9IHZhbHVlIH1cbiAgZ2V0IGNsYXNzQXR0cigpOiBzdHJpbmcgfCB1bmRlZmluZWQgeyByZXR1cm4gdGhpcy5fY2xhc3MgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgX2NsYXNzQXR0cigpIHsgcmV0dXJuIHRoaXMuY2xhc3NBdHRyIH1cblxuICBjYW5Qb3BvdmVyID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jZGY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlQ2VsbFR5cGVIZWxwZXJzOiBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RhdGF0YWJsZT86IERhdGF0YWJsZUNvbXBvbmVudCxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF90YWJsZT86IFRhYmxlQ29tcG9uZW50LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEFCTEVfQ0VMTF9EQVRBKSByZWFkb25seSBfdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cbiAgKSB7XG4gICAgY29uc3QgX2RhdGEgPSBfdGFibGVEYXRhXG4gICAgdGhpcy5fdGFibGVDZWxsRGF0YSA9IF90YWJsZURhdGFcblxuICAgIHRoaXMuX3JvdyA9IF9kYXRhICYmIF9kYXRhLnJvd1xuICAgIHRoaXMuX3Jvd0luZGV4ID0gX2RhdGEgJiYgX2RhdGEucm93SW5kZXhcblxuICAgIHRoaXMudmFsdWUgPSBfZGF0YSAmJiBfZGF0YS52YWx1ZVxuICAgIHRoaXMuX2NvbERhdGEgPSBfZGF0YSAmJiBfZGF0YS5jb2xEYXRhXG4gICAgaWYgKF9kYXRhICYmIF9kYXRhLmNvbERhdGEgJiYgKF9kYXRhLmNvbERhdGEgYXMgYW55KS5jZWxsVHlwZUNvbmZpZykge1xuICAgICAgdGhpcy5jb25maWcgPSAoX2RhdGEuY29sRGF0YSBhcyBhbnkpLmNlbGxUeXBlQ29uZmlnXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgX2RhdGEgPSB0aGlzLl90YWJsZURhdGFcbiAgICBpZiAoX2RhdGEpIHtcbiAgICAgIF9kYXRhLmNoYW5nZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodi5jaGFuZ2VzLCAndmFsdWUnKSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHYuY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWVcbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodi5jaGFuZ2VzLCAnY29sRGF0YScpKSB7XG4gICAgICAgICAgICBjb25zdCBjb2xEYXRhID0gdi5jaGFuZ2VzLmNvbERhdGEuY3VycmVudFZhbHVlXG4gICAgICAgICAgICBpZiAoY29sRGF0YSAmJiBjb2xEYXRhLmNlbGxUeXBlQ29uZmlnICE9PSB0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbERhdGEuY2VsbFR5cGVDb25maWdcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2LmNoYW5nZXMsICdyb3cnKSkge1xuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1hc3NpZ25cbiAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSB0aGlzLmNvbmZpZ1xuICAgICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KHVuZGVmaW5lZClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpb24oY29uZmlnQWN0aW9uPzogVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvbikge1xuICAgIGxldCBuZXdUcGxUeXBlOiBTdHJpbmdUZW1wbGF0ZVR5cGUgPSAnZGVmYXVsdCdcbiAgICBsZXQgbGluazogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgbGV0IGRvd25sb2FkID0gZmFsc2VcbiAgICBsZXQgZGV0ZWN0TWltZUNvbnRlbnQgPSBmYWxzZVxuICAgIGxldCBxdWVyeVBhcmFtczogeyBbazogc3RyaW5nXTogYW55IH0gfCB1bmRlZmluZWRcblxuICAgIGlmIChjb25maWdBY3Rpb24pIHtcbiAgICAgIGlmIChjb25maWdBY3Rpb24udHlwZSA9PT0gJ2xpbmsnKSB7XG4gICAgICAgIGxpbmsgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5saW5rKVxuICAgICAgICBpZiAobGluayAhPT0gdW5kZWZpbmVkICYmIGxpbmsgIT09IG51bGwpIHtcbiAgICAgICAgICBuZXdUcGxUeXBlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uYXNzZXQpID8gJ2xpbmstZW5jcnlwdGVkJyA6ICdsaW5rJ1xuICAgICAgICAgIGRvd25sb2FkID0gISF0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5kb3dubG9hZClcbiAgICAgICAgICBkZXRlY3RNaW1lQ29udGVudCA9ICEhdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uZGV0ZWN0TWltZUNvbnRlbnQpXG4gICAgICAgICAgcXVlcnlQYXJhbXMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5xdWVyeVBhcmFtcylcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChjb25maWdBY3Rpb24udHlwZSA9PT0gJ21vZGFsJykge1xuICAgICAgICBuZXdUcGxUeXBlID0gJ2J1dHRvbidcbiAgICAgICAgdGhpcy5fYnV0dG9uQWN0aW9uID0gY29uZmlnQWN0aW9uXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fdHBsVHlwZSA9IG5ld1RwbFR5cGVcbiAgICB0aGlzLl9saW5rID0gbGlua1xuICAgIHRoaXMuX2Rvd25sb2FkID0gZG93bmxvYWRcbiAgICB0aGlzLl9kZXRlY3RNaW1lQ29udGVudCA9IGRldGVjdE1pbWVDb250ZW50XG4gICAgdGhpcy5fcXVlcnlQYXJhbXMgPSBxdWVyeVBhcmFtc1xuICB9XG5cbiAgcHVibGljIHNldENvbmZpZyhjb25maWc/OiBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFjb25maWcpIHsgcmV0dXJuIH1cblxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWcudGl0bGVBdHRyKVxuICAgIGlmICh0aXRsZSkge1xuICAgICAgdGhpcy50aXRsZSA9IHRpdGxlXG4gICAgfVxuXG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZy5zdHlsZUF0dHIpXG4gICAgaWYgKHN0eWxlKSB7XG4gICAgICB0aGlzLnN0eWxlID0gc3R5bGVcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc0F0dHIgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZy5jbGFzc0F0dHIpXG4gICAgaWYgKGNsYXNzQXR0cikge1xuICAgICAgdGhpcy5jbGFzc0F0dHIgPSBjbGFzc0F0dHJcbiAgICB9XG5cbiAgICB0aGlzLnNldEFjdGlvbihjb25maWcuYWN0aW9uKVxuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VDb25maWdWYWx1ZSh2YWw6IGFueSkge1xuICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh2YWwsIHRoaXMuX3RhYmxlQ2VsbERhdGEpXG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLnBhcnNlVmFsdWVQcm9wKHZhbCwgY29udGV4dEZuKVxuICB9XG5cbiAgX2RvQnV0dG9uQWN0aW9uKCkge1xuICAgIGlmICh0aGlzLl9idXR0b25BY3Rpb24gJiYgdGhpcy5fYnV0dG9uQWN0aW9uLnR5cGUgPT09ICdtb2RhbCcpIHtcbiAgICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh0aGlzLnZhbHVlLCB0aGlzLl90YWJsZUNlbGxEYXRhKVxuICAgICAgdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuaGFuZGxlTW9kYWxBY3Rpb24odGhpcy5fYnV0dG9uQWN0aW9uLCBjb250ZXh0Rm4pXG4gICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgciA9PiB7fSxcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgIGVyciA9PiBjb25zb2xlLmVycm9yKGVyciksXG4gICAgICAgICAgKCkgPT4gdGhpcy5fYWN0aW9uUmVmcmVzaFJlcXVlc3QoKVxuICAgICAgICApXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYWN0aW9uUmVmcmVzaFJlcXVlc3QoKSB7XG4gICAgaWYgKHRoaXMuX2RhdGF0YWJsZSkge1xuICAgICAgdGhpcy5fZGF0YXRhYmxlLnRyaWdnZXJBY3Rpb25SZWZyZXNoUmVxdWVzdCgpXG4gICAgfSBlbHNlIGlmICh0aGlzLl90YWJsZSkge1xuICAgICAgdGhpcy5fdGFibGUudHJpZ2dlckFjdGlvblJlZnJlc2hSZXF1ZXN0KClcbiAgICB9XG4gIH1cblxufVxuIiwiPG5nLXRlbXBsYXRlICNwb3BvdmVyVHBsPlxuICB7eyB2YWx1ZSB9fVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNub1BvcG92ZXI+XG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCI+XG4gICAge3sgdmFsdWUgfX1cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiIV90cGxUeXBlIHx8IF90cGxUeXBlID09PSAnZGVmYXVsdCdcIj5cbiAgPGRpdiAqbmdJZj1cImNhblBvcG92ZXI7IGVsc2Ugbm9Qb3BvdmVyXCIgW3NlYW1Qb3BvdmVyXT1cInBvcG92ZXJUcGxcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibm9Qb3BvdmVyXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuXG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJfdHBsVHlwZSA9PT0gJ2xpbmsnXCI+XG4gIDxhIGNsYXNzPVwiZC1ibG9jayB0ZXh0LWJvZHkgdGV4dC1kZWNvcmF0aW9uLW5vbmVcIlxuICAgIFtyb3V0ZXJMaW5rXT1cIl9saW5rXCJcbiAgICBbcXVlcnlQYXJhbXNdPVwiX3F1ZXJ5UGFyYW1zXCJcbiAgICBbYXR0ci50aXRsZV09XCJfdGl0bGVcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibm9Qb3BvdmVyXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9hPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJfdHBsVHlwZSA9PT0gJ2xpbmstZXh0ZXJuYWwnXCI+XG4gIDxhIGNsYXNzPVwiZC1ibG9jayB0ZXh0LWJvZHkgdGV4dC1kZWNvcmF0aW9uLW5vbmVcIlxuICAgIFthdHRyLmhyZWZdPVwiX2xpbmtcIlxuICAgIFthdHRyLnRpdGxlXT1cIl90aXRsZVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJub1BvcG92ZXJcIj48L25nLXRlbXBsYXRlPlxuICA8L2E+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIl90cGxUeXBlID09PSAnbGluay1lbmNyeXB0ZWQnXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGluayBwLTAgZC1ibG9jayB0ZXh0LWJvZHkgdGV4dC1kZWNvcmF0aW9uLW5vbmVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIFtzZWFtRW5jcnlwdGVkQXNzZXRMaW5rXT1cIl9saW5rXCJcbiAgICBbc2VhbURldGVjdE1pbWVGcm9tQ29udGVudF09XCJfZGV0ZWN0TWltZUNvbnRlbnRcIlxuICAgIFtzZWFtRG93bmxvYWRBc3NldF09XCJfZG93bmxvYWRcIlxuICAgIFthdHRyLnRpdGxlXT1cIl90aXRsZVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJub1BvcG92ZXJcIj48L25nLXRlbXBsYXRlPlxuICA8L2J1dHRvbj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3RwbFR5cGUgPT09ICdidXR0b24nXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGluayBwLTAgZC1ibG9jayB0ZXh0LWJvZHkgdGV4dC1kZWNvcmF0aW9uLW5vbmVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIFthdHRyLnRpdGxlXT1cIl90aXRsZVwiXG4gICAgKGNsaWNrKT1cIl9kb0J1dHRvbkFjdGlvbigpXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vUG9wb3ZlclwiPjwvbmctdGVtcGxhdGU+XG4gIDwvYnV0dG9uPlxuPC9uZy1jb250YWluZXI+XG5cbiJdfQ==
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLXN0cmluZy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUkxQyxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFBOzs7Ozs7Ozs7QUFjbEcsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxJQUNJLEtBQUssS0FBSyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUEsQ0FBQyxDQUFDO0lBQ2xDLElBQUksS0FBSyxDQUFDLEdBQThCO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFBO1FBQ2pCLHlFQUF5RTtRQUN6RSxzRUFBc0U7UUFDdEUsMkVBQTJFO1FBQzNFLDZCQUE2QjtRQUM3QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO1NBQ3ZCO0lBQ0gsQ0FBQztJQUdELElBQ0ksTUFBTSxLQUFL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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBEYXRhdGFibGVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZGF0YXRhYmxlJ1xuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUnXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLCBUQUJMRV9DRUxMX0RBVEEgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHR5cGUgeyBUYWJsZUNlbGxEYXRhLCBUaGVTZWFtVGFibGVDb2x1bW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nLCBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uIH0gZnJvbSAnLi90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLWNvbmZpZydcblxuZXhwb3J0IHR5cGUgU3RyaW5nVGVtcGxhdGVUeXBlID0gJ2RlZmF1bHQnIHwgJ2xpbmsnIHwgJ2xpbmstZXh0ZXJuYWwnIHwgJ2xpbmstZW5jcnlwdGVkJyB8ICdidXR0b24nXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGFibGUtY2VsbC10eXBlLXN0cmluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLXR5cGUtc3RyaW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7IH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ2VsbFR5cGVTdHJpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKSB7IHJldHVybiB0aGlzLl92YWx1ZSB9XG4gIHNldCB2YWx1ZSh2YWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbFxuICAgIC8vIFRPRE86IFRoaXMgaXMgdGVtcG9yYXJ5IHRvIHRlc3QgdGhlIGZlYXR1cmUgYW5kIHdpbGwgYmUgZml4ZWQgd2hlbiB0aGVcbiAgICAvLyBkeW5hbWljIGNvbHVtbiBkYXRhIGlzIGZpeGVkLiBUaGUgcGxhbiBpcyB0byBhZGQgYSBjb25maWcgdG9nZ2xlIHRvXG4gICAgLy8gYWx3YXlzIGVuYWJsZSBhbmQgZGVwZW5kaW5nIG9uIHBlcmZvcm1hbmNlIGl0IGNvdWxkIHRyeSB0byBkZWNpZGUgb24gaXRzXG4gICAgLy8gb3duIGJhc2VkIG9uIGNvbnRlbnQgc2l6ZS5cbiAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+IDMwKSB7XG4gICAgICB0aGlzLmNhblBvcG92ZXIgPSB0cnVlXG4gICAgfVxuICB9XG4gIF92YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpXG4gIGdldCBjb25maWcoKSB7IHJldHVybiB0aGlzLl9jb25maWcgfVxuICBzZXQgY29uZmlnKHZhbHVlOiBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIHRoaXMuX2NvbmZpZyA9IHZhbHVlXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnNldENvbmZpZyh2YWx1ZSlcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfY29uZmlnOiBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIF90cGxUeXBlOiBTdHJpbmdUZW1wbGF0ZVR5cGUgPSAnZGVmYXVsdCdcbiAgX2xpbms/OiBzdHJpbmdcbiAgX3RpdGxlPzogc3RyaW5nXG4gIF9xdWVyeVBhcmFtcz86IHsgW2s6IHN0cmluZ106IGFueSB9XG5cbiAgX3N0eWxlPzogc3RyaW5nXG4gIF9jbGFzcz86IHN0cmluZ1xuXG4gIF9idXR0b25BY3Rpb24/OiBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uXG5cbiAgX3RhYmxlQ2VsbERhdGE/OiBUYWJsZUNlbGxEYXRhPCdzdHJpbmcnLCBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nPlxuICBfcm93PzogYW55XG4gIF9yb3dJbmRleD86IG51bWJlclxuICBfY29sRGF0YT86IFRoZVNlYW1UYWJsZUNvbHVtbjwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cblxuICBfZG93bmxvYWQ/OiBib29sZWFuXG4gIF9kZXRlY3RNaW1lQ29udGVudD86IGJvb2xlYW5cblxuICBASW5wdXQoKVxuICBzZXQgdGl0bGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl90aXRsZSA9IHZhbHVlIH1cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7IHJldHVybiB0aGlzLl90aXRsZSB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRpdGxlJykgZ2V0IF90aXRsZUF0dHIoKSB7IHJldHVybiB0aGlzLnRpdGxlIHx8IHRoaXMudmFsdWUgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBzdHlsZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7IHRoaXMuX3N0eWxlID0gdmFsdWUgfVxuICBnZXQgc3R5bGUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHsgcmV0dXJuIHRoaXMuX3N0eWxlIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuc3R5bGUnKSBnZXQgX3N0eWxlQXR0cigpIHsgcmV0dXJuIHRoaXMuc3R5bGUgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjbGFzc0F0dHIodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl9jbGFzcyA9IHZhbHVlIH1cbiAgZ2V0IGNsYXNzQXR0cigpOiBzdHJpbmcgfCB1bmRlZmluZWQgeyByZXR1cm4gdGhpcy5fY2xhc3MgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgX2NsYXNzQXR0cigpIHsgcmV0dXJuIHRoaXMuY2xhc3NBdHRyIH1cblxuICBjYW5Qb3BvdmVyID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jZGY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3RhYmxlQ2VsbFR5cGVIZWxwZXJzOiBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RhdGF0YWJsZT86IERhdGF0YWJsZUNvbXBvbmVudCxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF90YWJsZT86IFRhYmxlQ29tcG9uZW50LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEFCTEVfQ0VMTF9EQVRBKSByZWFkb25seSBfdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cbiAgKSB7XG4gICAgY29uc3QgX2RhdGEgPSBfdGFibGVEYXRhXG4gICAgdGhpcy5fdGFibGVDZWxsRGF0YSA9IF90YWJsZURhdGFcblxuICAgIHRoaXMuX3JvdyA9IF9kYXRhICYmIF9kYXRhLnJvd1xuICAgIHRoaXMuX3Jvd0luZGV4ID0gX2RhdGEgJiYgX2RhdGEucm93SW5kZXhcblxuICAgIHRoaXMudmFsdWUgPSBfZGF0YSAmJiBfZGF0YS52YWx1ZVxuICAgIHRoaXMuX2NvbERhdGEgPSBfZGF0YSAmJiBfZGF0YS5jb2xEYXRhXG4gICAgaWYgKF9kYXRhICYmIF9kYXRhLmNvbERhdGEgJiYgKF9kYXRhLmNvbERhdGEgYXMgYW55KS5jZWxsVHlwZUNvbmZpZykge1xuICAgICAgdGhpcy5jb25maWcgPSAoX2RhdGEuY29sRGF0YSBhcyBhbnkpLmNlbGxUeXBlQ29uZmlnXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgX2RhdGEgPSB0aGlzLl90YWJsZURhdGFcbiAgICBpZiAoX2RhdGEpIHtcbiAgICAgIF9kYXRhLmNoYW5nZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodi5jaGFuZ2VzLCAndmFsdWUnKSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHYuY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWVcbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodi5jaGFuZ2VzLCAnY29sRGF0YScpKSB7XG4gICAgICAgICAgICBjb25zdCBjb2xEYXRhID0gdi5jaGFuZ2VzLmNvbERhdGEuY3VycmVudFZhbHVlXG4gICAgICAgICAgICBpZiAoY29sRGF0YSAmJiBjb2xEYXRhLmNlbGxUeXBlQ29uZmlnICE9PSB0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbERhdGEuY2VsbFR5cGVDb25maWdcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2LmNoYW5nZXMsICdyb3cnKSkge1xuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1hc3NpZ25cbiAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSB0aGlzLmNvbmZpZ1xuICAgICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KHVuZGVmaW5lZClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpb24oY29uZmlnQWN0aW9uPzogVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvbikge1xuICAgIGxldCBuZXdUcGxUeXBlOiBTdHJpbmdUZW1wbGF0ZVR5cGUgPSAnZGVmYXVsdCdcbiAgICBsZXQgbGluazogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgbGV0IGRvd25sb2FkID0gZmFsc2VcbiAgICBsZXQgZGV0ZWN0TWltZUNvbnRlbnQgPSBmYWxzZVxuICAgIGxldCBxdWVyeVBhcmFtczogeyBbazogc3RyaW5nXTogYW55IH0gfCB1bmRlZmluZWRcblxuICAgIGlmIChjb25maWdBY3Rpb24pIHtcbiAgICAgIGlmIChjb25maWdBY3Rpb24udHlwZSA9PT0gJ2xpbmsnKSB7XG4gICAgICAgIGxpbmsgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5saW5rKVxuICAgICAgICBpZiAobGluayAhPT0gdW5kZWZpbmVkICYmIGxpbmsgIT09IG51bGwpIHtcbiAgICAgICAgICBuZXdUcGxUeXBlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uYXNzZXQpXG4gICAgICAgICAgICA/ICdsaW5rLWVuY3J5cHRlZCdcbiAgICAgICAgICAgIDogdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uZXh0ZXJuYWwpID8gJ2xpbmstZXh0ZXJuYWwnIDogJ2xpbmsnXG4gICAgICAgICAgZG93bmxvYWQgPSAhIXRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnQWN0aW9uLmRvd25sb2FkKVxuICAgICAgICAgIGRldGVjdE1pbWVDb250ZW50ID0gISF0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5kZXRlY3RNaW1lQ29udGVudClcbiAgICAgICAgICBxdWVyeVBhcmFtcyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnQWN0aW9uLnF1ZXJ5UGFyYW1zKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGNvbmZpZ0FjdGlvbi50eXBlID09PSAnbW9kYWwnKSB7XG4gICAgICAgIG5ld1RwbFR5cGUgPSAnYnV0dG9uJ1xuICAgICAgICB0aGlzLl9idXR0b25BY3Rpb24gPSBjb25maWdBY3Rpb25cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLl90cGxUeXBlID0gbmV3VHBsVHlwZVxuICAgIHRoaXMuX2xpbmsgPSBsaW5rXG4gICAgdGhpcy5fZG93bmxvYWQgPSBkb3dubG9hZFxuICAgIHRoaXMuX2RldGVjdE1pbWVDb250ZW50ID0gZGV0ZWN0TWltZUNvbnRlbnRcbiAgICB0aGlzLl9xdWVyeVBhcmFtcyA9IHF1ZXJ5UGFyYW1zXG4gIH1cblxuICBwdWJsaWMgc2V0Q29uZmlnKGNvbmZpZz86IFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIWNvbmZpZykgeyByZXR1cm4gfVxuXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZy50aXRsZUF0dHIpXG4gICAgaWYgKHRpdGxlKSB7XG4gICAgICB0aGlzLnRpdGxlID0gdGl0bGVcbiAgICB9XG5cbiAgICBjb25zdCBzdHlsZSA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnLnN0eWxlQXR0cilcbiAgICBpZiAoc3R5bGUpIHtcbiAgICAgIHRoaXMuc3R5bGUgPSBzdHlsZVxuICAgIH1cblxuICAgIGNvbnN0IGNsYXNzQXR0ciA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnLmNsYXNzQXR0cilcbiAgICBpZiAoY2xhc3NBdHRyKSB7XG4gICAgICB0aGlzLmNsYXNzQXR0ciA9IGNsYXNzQXR0clxuICAgIH1cblxuICAgIHRoaXMuc2V0QWN0aW9uKGNvbmZpZy5hY3Rpb24pXG4gIH1cblxuICBwcml2YXRlIF9wYXJzZUNvbmZpZ1ZhbHVlKHZhbDogYW55KSB7XG4gICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHZhbCwgdGhpcy5fdGFibGVDZWxsRGF0YSlcbiAgICByZXR1cm4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMucGFyc2VWYWx1ZVByb3AodmFsLCBjb250ZXh0Rm4pXG4gIH1cblxuICBfZG9CdXR0b25BY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuX2J1dHRvbkFjdGlvbiAmJiB0aGlzLl9idXR0b25BY3Rpb24udHlwZSA9PT0gJ21vZGFsJykge1xuICAgICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHRoaXMudmFsdWUsIHRoaXMuX3RhYmxlQ2VsbERhdGEpXG4gICAgICB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5oYW5kbGVNb2RhbEFjdGlvbih0aGlzLl9idXR0b25BY3Rpb24sIGNvbnRleHRGbilcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICByID0+IHt9LFxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgZXJyID0+IGNvbnNvbGUuZXJyb3IoZXJyKSxcbiAgICAgICAgICAoKSA9PiB0aGlzLl9hY3Rpb25SZWZyZXNoUmVxdWVzdCgpXG4gICAgICAgIClcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9hY3Rpb25SZWZyZXNoUmVxdWVzdCgpIHtcbiAgICBpZiAodGhpcy5fZGF0YXRhYmxlKSB7XG4gICAgICB0aGlzLl9kYXRhdGFibGUudHJpZ2dlckFjdGlvblJlZnJlc2hSZXF1ZXN0KClcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3RhYmxlKSB7XG4gICAgICB0aGlzLl90YWJsZS50cmlnZ2VyQWN0aW9uUmVmcmVzaFJlcXVlc3QoKVxuICAgIH1cbiAgfVxuXG59XG4iLCI8bmctdGVtcGxhdGUgI3BvcG92ZXJUcGw+XG4gIHt7IHZhbHVlIH19XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI25vUG9wb3Zlcj5cbiAgPGRpdiBjbGFzcz1cInRleHQtdHJ1bmNhdGVcIj5cbiAgICB7eyB2YWx1ZSB9fVxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhX3RwbFR5cGUgfHwgX3RwbFR5cGUgPT09ICdkZWZhdWx0J1wiPlxuICA8ZGl2ICpuZ0lmPVwiY2FuUG9wb3ZlcjsgZWxzZSBub1BvcG92ZXJcIiBbc2VhbVBvcG92ZXJdPVwicG9wb3ZlclRwbFwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJub1BvcG92ZXJcIj48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIl90cGxUeXBlID09PSAnbGluaydcIj5cbiAgPGEgY2xhc3M9XCJkLWJsb2NrIHRleHQtYm9keSB0ZXh0LWRlY29yYXRpb24tbm9uZVwiXG4gICAgW3JvdXRlckxpbmtdPVwiX2xpbmtcIlxuICAgIFtxdWVyeVBhcmFtc109XCJfcXVlcnlQYXJhbXNcIlxuICAgIFthdHRyLnRpdGxlXT1cIl90aXRsZVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJub1BvcG92ZXJcIj48L25nLXRlbXBsYXRlPlxuICA8L2E+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIl90cGxUeXBlID09PSAnbGluay1leHRlcm5hbCdcIj5cbiAgPGEgY2xhc3M9XCJkLWJsb2NrIHRleHQtYm9keSB0ZXh0LWRlY29yYXRpb24tbm9uZVwiXG4gICAgW2F0dHIuaHJlZl09XCJfbGlua1wiXG4gICAgW2F0dHIudGl0bGVdPVwiX3RpdGxlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vUG9wb3ZlclwiPjwvbmctdGVtcGxhdGU+XG4gIDwvYT5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3RwbFR5cGUgPT09ICdsaW5rLWVuY3J5cHRlZCdcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIHAtMCBkLWJsb2NrIHRleHQtYm9keSB0ZXh0LWRlY29yYXRpb24tbm9uZVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgW3NlYW1FbmNyeXB0ZWRBc3NldExpbmtdPVwiX2xpbmtcIlxuICAgIFtzZWFtRGV0ZWN0TWltZUZyb21Db250ZW50XT1cIl9kZXRlY3RNaW1lQ29udGVudFwiXG4gICAgW3NlYW1Eb3dubG9hZEFzc2V0XT1cIl9kb3dubG9hZFwiXG4gICAgW2F0dHIudGl0bGVdPVwiX3RpdGxlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vUG9wb3ZlclwiPjwvbmctdGVtcGxhdGU+XG4gIDwvYnV0dG9uPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJfdHBsVHlwZSA9PT0gJ2J1dHRvbidcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rIHAtMCBkLWJsb2NrIHRleHQtYm9keSB0ZXh0LWRlY29yYXRpb24tbm9uZVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgW2F0dHIudGl0bGVdPVwiX3RpdGxlXCJcbiAgICAoY2xpY2spPVwiX2RvQnV0dG9uQWN0aW9uKClcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibm9Qb3BvdmVyXCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9idXR0b24+XG48L25nLWNvbnRhaW5lcj5cblxuIl19
@@ -164,10 +164,10 @@ class BreadcrumbsComponent {
164
164
  }
165
165
  }
166
166
  BreadcrumbsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BreadcrumbsComponent, deps: [{ token: TheSeamBreadcrumbsService }], target: i0.ɵɵFactoryTarget.Component });
167
- BreadcrumbsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: BreadcrumbsComponent, selector: "seam-breadcrumbs", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb mb-0\">\n <li *ngFor=\"let crumb of crumbs$ | async; last as isLast\"\n class=\"breadcrumb-item\"\n [ngClass]=\"{ 'active': isLast }\"\n [attr.aria-current]=\"isLast ? 'page' : undefined\">\n <a *ngIf=\"!isLast; else notLink\" [routerLink]=\"crumb.path\">{{ crumb.value }}</a>\n <ng-template #notLink>{{ crumb.value }}</ng-template>\n </li>\n </ol>\n</nav>\n", styles: ["seam-breadcrumbs li{color:#fff}seam-breadcrumbs li a{color:inherit}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
167
+ BreadcrumbsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: BreadcrumbsComponent, selector: "seam-breadcrumbs", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb mb-0\">\n <li *ngFor=\"let crumb of crumbs$ | async; last as isLast\"\n class=\"breadcrumb-item\"\n [ngClass]=\"{ 'active': isLast }\"\n [attr.aria-current]=\"isLast ? 'page' : undefined\">\n <a *ngIf=\"!isLast; else notLink\" [routerLink]=\"crumb.path\">{{ crumb.value }}</a>\n <ng-template #notLink>{{ crumb.value }}</ng-template>\n </li>\n </ol>\n</nav>\n", styles: ["seam-breadcrumbs li{color:#fff}seam-breadcrumbs li a{color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
168
168
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BreadcrumbsComponent, decorators: [{
169
169
  type: Component,
170
- args: [{ selector: 'seam-breadcrumbs', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb mb-0\">\n <li *ngFor=\"let crumb of crumbs$ | async; last as isLast\"\n class=\"breadcrumb-item\"\n [ngClass]=\"{ 'active': isLast }\"\n [attr.aria-current]=\"isLast ? 'page' : undefined\">\n <a *ngIf=\"!isLast; else notLink\" [routerLink]=\"crumb.path\">{{ crumb.value }}</a>\n <ng-template #notLink>{{ crumb.value }}</ng-template>\n </li>\n </ol>\n</nav>\n", styles: ["seam-breadcrumbs li{color:#fff}seam-breadcrumbs li a{color:inherit}\n"] }]
170
+ args: [{ selector: 'seam-breadcrumbs', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb mb-0\">\n <li *ngFor=\"let crumb of crumbs$ | async; last as isLast\"\n class=\"breadcrumb-item\"\n [ngClass]=\"{ 'active': isLast }\"\n [attr.aria-current]=\"isLast ? 'page' : undefined\">\n <a *ngIf=\"!isLast; else notLink\" [routerLink]=\"crumb.path\">{{ crumb.value }}</a>\n <ng-template #notLink>{{ crumb.value }}</ng-template>\n </li>\n </ol>\n</nav>\n", styles: ["seam-breadcrumbs li{color:#fff}seam-breadcrumbs li a{color:#fff}\n"] }]
171
171
  }], ctorParameters: function () { return [{ type: TheSeamBreadcrumbsService }]; } });
172
172
 
173
173
  class TheSeamBreadcrumbsModule {