@acorex/components 6.5.90 → 6.6.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 (189) hide show
  1. package/README.md +7 -7
  2. package/esm2022/index.mjs +1 -1
  3. package/esm2022/lib/accordion/accordion.component.mjs +4 -4
  4. package/esm2022/lib/accordion/accordion.module.mjs +5 -5
  5. package/esm2022/lib/base/base-page.class.mjs +10 -8
  6. package/esm2022/lib/base/components.class.mjs +7 -7
  7. package/esm2022/lib/base/element.class.mjs +16 -16
  8. package/esm2022/lib/base/events.class.mjs +1 -1
  9. package/esm2022/lib/button/button.component.mjs +5 -5
  10. package/esm2022/lib/button/button.module.mjs +5 -5
  11. package/esm2022/lib/calendar/calendar-box/calendar-box.component.mjs +5 -5
  12. package/esm2022/lib/calendar/calendar-box/calendar-box.module.mjs +5 -5
  13. package/esm2022/lib/calendar/scheduler/scheduler-views.property.mjs +10 -10
  14. package/esm2022/lib/calendar/scheduler/scheduler.class.mjs +1 -1
  15. package/esm2022/lib/calendar/scheduler/scheduler.component.mjs +5 -5
  16. package/esm2022/lib/calendar/scheduler/scheduler.module.mjs +5 -5
  17. package/esm2022/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.mjs +15 -15
  18. package/esm2022/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.mjs +7 -7
  19. package/esm2022/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.mjs +5 -5
  20. package/esm2022/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.mjs +5 -5
  21. package/esm2022/lib/calendar/scheduler/views/month/scheduler-month-view.component.mjs +5 -5
  22. package/esm2022/lib/calendar/scheduler/views/scheduler-view.component.mjs +4 -4
  23. package/esm2022/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.mjs +5 -5
  24. package/esm2022/lib/checkbox/checkbox.component.mjs +5 -5
  25. package/esm2022/lib/checkbox/checkbox.module.mjs +5 -5
  26. package/esm2022/lib/color-picker/color-box/color-box.component.mjs +6 -6
  27. package/esm2022/lib/color-picker/color-picker.component.mjs +6 -6
  28. package/esm2022/lib/color-picker/color-picker.module.mjs +5 -5
  29. package/esm2022/lib/context-menu/context-menu.component.mjs +5 -5
  30. package/esm2022/lib/context-menu/context-menu.directive.mjs +4 -4
  31. package/esm2022/lib/context-menu/context-menu.module.mjs +5 -5
  32. package/esm2022/lib/data-filter/columns/filter-column-date.component.mjs +28 -28
  33. package/esm2022/lib/data-filter/columns/filter-column-number.component.mjs +33 -33
  34. package/esm2022/lib/data-filter/columns/filter-column-selection.component.mjs +14 -14
  35. package/esm2022/lib/data-filter/columns/filter-column-string.component.mjs +33 -33
  36. package/esm2022/lib/data-filter/filter-panel/filter-panel.component.mjs +5 -5
  37. package/esm2022/lib/data-filter/filter.class.mjs +4 -4
  38. package/esm2022/lib/data-filter/filter.module.mjs +5 -5
  39. package/esm2022/lib/data-filter/toolbar/filter-toolbar.component.mjs +5 -5
  40. package/esm2022/lib/data-list/core/data-list.component.mjs +4 -4
  41. package/esm2022/lib/data-list/list/list.component.mjs +5 -5
  42. package/esm2022/lib/data-list/list/list.module.mjs +5 -5
  43. package/esm2022/lib/data-list/list/toolbar-list-view.component.mjs +33 -33
  44. package/esm2022/lib/data-source/datasource.component.mjs +4 -4
  45. package/esm2022/lib/data-source/datasource.module.mjs +5 -5
  46. package/esm2022/lib/data-source/read-param.mjs +1 -1
  47. package/esm2022/lib/date-picker/date-picker.component.mjs +474 -99
  48. package/esm2022/lib/date-picker/date-picker.module.mjs +5 -5
  49. package/esm2022/lib/dialog/dialog.component.mjs +5 -5
  50. package/esm2022/lib/dialog/dialog.module.mjs +5 -5
  51. package/esm2022/lib/dialog/dialog.service.mjs +4 -4
  52. package/esm2022/lib/drawer/content.component.mjs +4 -4
  53. package/esm2022/lib/drawer/drawer-container.component.mjs +11 -11
  54. package/esm2022/lib/drawer/drawer.component.mjs +10 -10
  55. package/esm2022/lib/drawer/drawer.module.mjs +5 -5
  56. package/esm2022/lib/dropdown/dropdown.component.mjs +5 -5
  57. package/esm2022/lib/dropdown/dropdown.module.mjs +5 -5
  58. package/esm2022/lib/fieldset/fieldset.component.mjs +5 -5
  59. package/esm2022/lib/fieldset/fieldset.module.mjs +5 -5
  60. package/esm2022/lib/form-group/form-group.component.mjs +5 -5
  61. package/esm2022/lib/form-group/form-group.module.mjs +5 -5
  62. package/esm2022/lib/label/label.component.mjs +5 -5
  63. package/esm2022/lib/label/label.module.mjs +5 -5
  64. package/esm2022/lib/loading/loading-indicator.component.mjs +5 -5
  65. package/esm2022/lib/loading/loading-panel.component.mjs +13 -13
  66. package/esm2022/lib/loading/loading.module.mjs +5 -5
  67. package/esm2022/lib/loading/loading.service.mjs +4 -4
  68. package/esm2022/lib/menu/menu-item.component.mjs +17 -17
  69. package/esm2022/lib/menu/menu.component.mjs +5 -5
  70. package/esm2022/lib/menu/menu.module.mjs +5 -5
  71. package/esm2022/lib/menu/menu2.component.mjs +21 -21
  72. package/esm2022/lib/number-box/number-box.component.mjs +5 -5
  73. package/esm2022/lib/number-box/number-box.module.mjs +5 -5
  74. package/esm2022/lib/page/content.component.mjs +15 -15
  75. package/esm2022/lib/page/footer.component.mjs +7 -7
  76. package/esm2022/lib/page/page.component.mjs +19 -19
  77. package/esm2022/lib/page/page.module.mjs +5 -5
  78. package/esm2022/lib/panel-box/panel-box.component.mjs +5 -5
  79. package/esm2022/lib/panel-box/panel-box.module.mjs +5 -5
  80. package/esm2022/lib/password-box/password-box.component.mjs +5 -5
  81. package/esm2022/lib/password-box/password-box.module.mjs +5 -5
  82. package/esm2022/lib/popover/custom-cdk-overlay.service.mjs +7 -7
  83. package/esm2022/lib/popover/overlay.service.mjs +4 -4
  84. package/esm2022/lib/popover/popover.component.mjs +5 -5
  85. package/esm2022/lib/popover/popover.module.mjs +5 -5
  86. package/esm2022/lib/popup/popup.component.mjs +6 -5
  87. package/esm2022/lib/popup/popup.module.mjs +5 -5
  88. package/esm2022/lib/popup/popup.service.mjs +4 -4
  89. package/esm2022/lib/progress-bar/progress-bar.component.mjs +5 -5
  90. package/esm2022/lib/progress-bar/progress-bar.module.mjs +5 -5
  91. package/esm2022/lib/property-editor/editors/check-editor/check-editor.mjs +29 -29
  92. package/esm2022/lib/property-editor/editors/check-editor/check.module.mjs +5 -5
  93. package/esm2022/lib/property-editor/editors/color-editor/color.editor.mjs +13 -13
  94. package/esm2022/lib/property-editor/editors/color-editor/color.module.mjs +5 -5
  95. package/esm2022/lib/property-editor/editors/column-editor/column.editor.mjs +5 -5
  96. package/esm2022/lib/property-editor/editors/column-editor/column.module.mjs +5 -5
  97. package/esm2022/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.mjs +5 -5
  98. package/esm2022/lib/property-editor/editors/conditional-color-editor/conditional-color.module.mjs +5 -5
  99. package/esm2022/lib/property-editor/editors/date-editor/date.editor.mjs +43 -43
  100. package/esm2022/lib/property-editor/editors/date-editor/date.module.mjs +5 -5
  101. package/esm2022/lib/property-editor/editors/number-editor/number.editor.mjs +34 -31
  102. package/esm2022/lib/property-editor/editors/number-editor/number.module.mjs +5 -5
  103. package/esm2022/lib/property-editor/editors/range-editor/range.editor.mjs +5 -5
  104. package/esm2022/lib/property-editor/editors/range-editor/range.module.mjs +5 -5
  105. package/esm2022/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.mjs +5 -5
  106. package/esm2022/lib/property-editor/editors/selectbox-editor/selectbox.editor.mjs +5 -5
  107. package/esm2022/lib/property-editor/editors/selectbox-editor/selectbox.module.mjs +5 -5
  108. package/esm2022/lib/property-editor/editors/selection-editor/selection-editor.mjs +31 -31
  109. package/esm2022/lib/property-editor/editors/selection-editor/selection.module.mjs +5 -5
  110. package/esm2022/lib/property-editor/editors/switch-editor/number.editor.mjs +7 -7
  111. package/esm2022/lib/property-editor/editors/switch-editor/number.module.mjs +5 -5
  112. package/esm2022/lib/property-editor/editors/text-editor/text.editor.mjs +6 -6
  113. package/esm2022/lib/property-editor/editors/text-editor/text.module.mjs +5 -5
  114. package/esm2022/lib/property-editor/editors/textarea-editor/textarea.editor.mjs +5 -5
  115. package/esm2022/lib/property-editor/editors/textarea-editor/textarea.module.mjs +5 -5
  116. package/esm2022/lib/property-editor/editors/time-editor/time.editor.mjs +14 -14
  117. package/esm2022/lib/property-editor/editors/time-editor/time.module.mjs +5 -5
  118. package/esm2022/lib/property-editor/property-editor-renderer.directive.mjs +4 -4
  119. package/esm2022/lib/property-editor/property-editor.class.mjs +4 -4
  120. package/esm2022/lib/property-editor/property-editor.module.mjs +5 -5
  121. package/esm2022/lib/query-builder/query-builder-group.component.mjs +5 -5
  122. package/esm2022/lib/query-builder/query-builder-popup/query-builder-popup.component.mjs +5 -5
  123. package/esm2022/lib/query-builder/query-builder-rule.component.mjs +5 -5
  124. package/esm2022/lib/query-builder/query-builder.class.mjs +1 -1
  125. package/esm2022/lib/query-builder/query-builder.component.mjs +5 -5
  126. package/esm2022/lib/query-builder/query-builder.module.mjs +5 -5
  127. package/esm2022/lib/query-builder/query-builder.service.mjs +4 -4
  128. package/esm2022/lib/search-bar/search-bar.component.mjs +5 -5
  129. package/esm2022/lib/search-bar/search-bar.module.mjs +5 -5
  130. package/esm2022/lib/searchbox/searchbox.component.mjs +30 -6
  131. package/esm2022/lib/searchbox/searchbox.module.mjs +5 -5
  132. package/esm2022/lib/selectbox/selectbox.component.mjs +130 -21
  133. package/esm2022/lib/selectbox/selectbox.module.mjs +5 -5
  134. package/esm2022/lib/selectbox/selectbox2.component.mjs +6 -6
  135. package/esm2022/lib/selection-list/selection-list.component.mjs +5 -5
  136. package/esm2022/lib/selection-list/selection-list.module.mjs +5 -5
  137. package/esm2022/lib/switch/switch.component.mjs +5 -5
  138. package/esm2022/lib/switch/switch.module.mjs +5 -5
  139. package/esm2022/lib/tab-page/tab-page-Renderer.component.mjs +4 -4
  140. package/esm2022/lib/tab-page/tab-page-host.component.mjs +19 -19
  141. package/esm2022/lib/tab-page/tab-page.module.mjs +5 -5
  142. package/esm2022/lib/tab-page/tab-page.service.mjs +6 -5
  143. package/esm2022/lib/tab-strip/tab-strip.component.mjs +5 -5
  144. package/esm2022/lib/tab-strip/tab-strip.module.mjs +5 -5
  145. package/esm2022/lib/tab-view/dynamic-tabs.directive.mjs +4 -4
  146. package/esm2022/lib/tab-view/tab-view.component.mjs +5 -5
  147. package/esm2022/lib/tab-view/tab-view.module.mjs +5 -5
  148. package/esm2022/lib/tab-view/tab.component.mjs +5 -5
  149. package/esm2022/lib/textarea/textarea.component.mjs +5 -5
  150. package/esm2022/lib/textarea/textarea.module.mjs +5 -5
  151. package/esm2022/lib/textbox/textbox.component.mjs +8 -8
  152. package/esm2022/lib/textbox/textbox.module.mjs +5 -5
  153. package/esm2022/lib/time-picker/time-picker.component.mjs +9 -6
  154. package/esm2022/lib/time-picker/time-picker.module.mjs +5 -5
  155. package/esm2022/lib/toast/toast-message/toast-message.component.mjs +5 -5
  156. package/esm2022/lib/toast/toast-wrapper/toast-wrapper.component.mjs +4 -4
  157. package/esm2022/lib/toast/toast.module.mjs +5 -5
  158. package/esm2022/lib/toast/toast.service.mjs +4 -4
  159. package/esm2022/lib/toolbar/group-button/toolbar-group-button.component.mjs +32 -32
  160. package/esm2022/lib/toolbar/menu/toolbar-menu.component.mjs +5 -5
  161. package/esm2022/lib/toolbar/search/toolbar-search.component.mjs +5 -5
  162. package/esm2022/lib/toolbar/title/toolbar-title.component.mjs +15 -15
  163. package/esm2022/lib/toolbar/toolbar-item.mjs +1 -1
  164. package/esm2022/lib/toolbar/toolbar.component.mjs +5 -5
  165. package/esm2022/lib/toolbar/toolbar.module.mjs +5 -5
  166. package/esm2022/lib/tooltip/tooltip.directive.mjs +4 -4
  167. package/esm2022/lib/tooltip/tooltip.module.mjs +5 -5
  168. package/esm2022/lib/tree-side-menu/tree-side-menu.component.mjs +5 -5
  169. package/esm2022/lib/tree-side-menu/tree-side-menu.module.mjs +5 -5
  170. package/esm2022/lib/tree-view/tree-view.component.mjs +5 -5
  171. package/esm2022/lib/tree-view/tree-view.module.mjs +5 -5
  172. package/esm2022/lib/upload-file/upload-file.component.mjs +18 -10
  173. package/esm2022/lib/upload-file/upload-file.events.mjs +1 -1
  174. package/esm2022/lib/upload-file/upload-file.module.mjs +5 -5
  175. package/esm2022/lib/validation/validation-form.component.mjs +4 -4
  176. package/esm2022/lib/validation/validation-rule.widget.mjs +4 -4
  177. package/esm2022/lib/validation/validation.class.mjs +1 -1
  178. package/esm2022/lib/validation/validation.component.mjs +7 -7
  179. package/esm2022/lib/validation/validation.module.mjs +5 -5
  180. package/fesm2022/acorex-components.mjs +1702 -1178
  181. package/fesm2022/acorex-components.mjs.map +1 -1
  182. package/lib/date-picker/date-picker.component.d.ts +4 -4
  183. package/lib/property-editor/editors/number-editor/number.editor.d.ts +1 -0
  184. package/lib/searchbox/searchbox.component.d.ts +2 -1
  185. package/lib/selectbox/selectbox.component.d.ts +38 -7
  186. package/lib/textbox/textbox.component.d.ts +2 -2
  187. package/lib/time-picker/time-picker.component.d.ts +2 -1
  188. package/lib/upload-file/upload-file.component.d.ts +1 -1
  189. package/package.json +1 -1
@@ -389,12 +389,12 @@ export class AXQueryBuilderRuleComponent {
389
389
  getOption(name) {
390
390
  return this.rule.control.options ? this.rule.control.options[name] : null;
391
391
  }
392
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderRuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
393
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXQueryBuilderRuleComponent, selector: "ax-query-rule", inputs: { isEditing: "isEditing", rule: "rule", parent: "parent", mode: "mode", fields: "fields" }, outputs: { onRuleDelete: "onRuleDelete", ruleChanged: "ruleChanged" }, host: { classAttribute: "ax ax-query-rule" }, viewQueries: [{ propertyName: "selectBox", first: true, predicate: ["selectBox"], descendants: true }, { propertyName: "selectBoxValue", first: true, predicate: ["selectBoxValue"], descendants: true }, { propertyName: "selectBoxBoolean", first: true, predicate: ["selectBoxBoolean"], descendants: true }, { propertyName: "textBoxNameValue", first: true, predicate: ["textBoxNameValue"], descendants: true }, { propertyName: "form", first: true, predicate: AXValidationFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"condition\" *ngIf=\"parent\">\r\n <div class=\"text {{parent.condition}}\">\r\n <span>{{parent.condition}}</span>\r\n </div>\r\n</div>\r\n<div class=\"handler\">\r\n <i class=\"far fa-grip-lines-vertical\"></i>\r\n</div>\r\n\r\n<div class=\"caption\" [ngClass]=\"{'editable': isEditing}\">\r\n <ng-container *ngIf=\"isEditing;else fieldsTemplate\">\r\n <ax-form-group>\r\n <ax-select-box [readonly]=\"mode == 'edit'\" (selectionChanged)=\"captionChange($event)\" allowNull=\"false\"\r\n [(selectedItems)]=\"rule.dataFieldItem\" textField=\"caption\" valueField=\"dataField\" [items]=\"fields\"\r\n mode=\"single\">\r\n </ax-select-box>\r\n </ax-form-group>\r\n </ng-container>\r\n <ng-template #fieldsTemplate>\r\n <div (click)=\"handleEditClick()\">\r\n {{rule.caption}}\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<div class=\"operator\" [ngClass]=\"{'editable': isEditing,'radius':!showValue}\">\r\n <ng-container *ngIf=\"isEditing;else operatorTemplate\">\r\n <ax-form-group>\r\n <ax-select-box [readonly]=\"mode == 'edit'\" *ngIf=\"showOperatorSelectBox\" [(selectedValues)]=\"rule.operator\"\r\n #selectBox (selectedItemsChange)=\"operatorChange($event)\" allowNull=\"false\" mode=\"single\">\r\n <ax-data-source [provideData]=\"provideDataOperator\">\r\n </ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n </ng-container>\r\n <ng-template #operatorTemplate>\r\n <div class=\"text\" (click)=\"handleEditClick()\">\r\n {{('queryBuilder.'+rule.operator) | trans}}\r\n </div>\r\n </ng-template>\r\n</div>\r\n<div *ngIf=\"showValue\" class=\"value\" [ngClass]=\"{'editable': isEditing}\">\r\n <ng-container *ngIf=\"isEditing;else valueTemplate\">\r\n\r\n <div *ngIf=\" rule.control && !isOnDemandLabel\" [ngSwitch]=\"rule.control.type\">\r\n <div *ngSwitchCase=\"'textBox'\">\r\n <ax-form-group>\r\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\r\n [(value)]=\"rule.value\">\r\n </ax-text-box>\r\n </ax-form-group>\r\n </div>\r\n <div *ngSwitchCase=\"'selectBox'\">\r\n <ax-form-group>\r\n <ax-select-box *ngIf=\"showSelectBox\" [mode]=\"getOption('mode')\"\r\n [remoteOperation]=\"getOption('remoteOperation')\" [valueField]=\"getOption('valueField')\"\r\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [textField]=\"getOption('textField')\"\r\n [(selectedItems)]=\"rule.valueItem\" (selectedItemsChange)=\"selectedItemsChange($event)\"\r\n #selectBoxValue>\r\n <ax-data-source [provideData]=\"getProvideData\"></ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'numberBox'\">\r\n <ax-form-group>\r\n <ax-number-box [decimalNumber]=\"2\" (onValueChanged)=\"valueChange($event)\"\r\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [(value)]=\"rule.value\">\r\n </ax-number-box>\r\n </ax-form-group>\r\n </div>\r\n <div *ngSwitchCase=\"'datetime'\">\r\n <ax-date-picker label=\"From\" [(value)]=\"rule.value\" (onValueChanged)=\"valueChange($event)\">\r\n </ax-date-picker>\r\n\r\n </div>\r\n <div *ngSwitchCase=\"'boolean'\">\r\n\r\n <ax-form-group>\r\n <ax-select-box #selectBoxBoolean (selectedItemsChange)=\"valueBooleanChange($event)\"\r\n allowNull=\"false\" [selectedValues]=\"rule.value\" mode=\"single\">\r\n <ax-data-source [provideData]=\"provideDataBoolean\">\r\n </ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n\r\n </div>\r\n <div *ngSwitchDefault>\r\n <ax-form-group>\r\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\r\n [(value)]=\"rule.value\">\r\n </ax-text-box>\r\n\r\n </ax-form-group>\r\n\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"isOnDemandLabel\">\r\n\r\n <ax-text-box #textBoxNameValue [value]=\"getOnDemandName(rule.onDemandLabel)\"\r\n (onValueChanged)=\"onDemandLabelChange($event)\" placeholder=\"\u0646\u0627\u0645 \u0645\u062A\u063A\u06CC\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\">\r\n <!-- <ax-validation>\r\n <ax-validation-rule type=\"required\"></ax-validation-rule>\r\n </ax-validation> -->\r\n </ax-text-box>\r\n\r\n\r\n </div>\r\n\r\n </ng-container>\r\n <ng-template #valueTemplate>\r\n <div (click)=\"handleEditClick()\">\r\n\r\n {{rule.text}}\r\n\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<div class=\"buttons-list\">\r\n <div *ngIf=\"showValue && isEditing && mode == 'new'\" class=\"button variable\"\r\n [ngClass]=\"{'active-button': isOnDemandLabel}\">\r\n <i class=\"far fa-dollar-sign\"></i>\r\n <ax-check-box [value]=\"isOnDemandLabel\" (onClick)=\"onDemandLabel($event)\">\r\n </ax-check-box>\r\n </div>\r\n\r\n <div class=\"button commit\" (click)=\"handleCommitClick()\" *ngIf=\"isEditing\">\r\n <i class=\"far fa-check\"></i>\r\n </div>\r\n <div class=\"button remove\" (click)=\"handleRemoveClick()\" *ngIf=\"mode == 'new'\">\r\n <i class=\"far fa-times\"></i>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["showDropDownButton", "rowInputTemplate", "showCheckBox", "readonly", "rtl", "disabled", "placeholder", "size", "allowNull", "textAlign", "bufferSize", "remoteOperation", "fitParent", "dropdownWidth", "dataSource", "validation", "disabledCallback", "allowSearch", "textField", "valueField", "disabledField", "mode", "items", "selectedItems", "selectedValues"], outputs: ["dropdownToggle", "itemsChange", "onBlur", "onFocus", "selectionChanged", "selectedItemsChange", "selectedValuesChange"] }, { kind: "component", type: i3.AXDataSourceComponent, selector: "ax-data-source", inputs: ["provideData", "params"] }, { kind: "component", type: i4.AXTextBoxComponent, selector: "ax-text-box", inputs: ["mask", "type", "showMask", "maxLength", "maskGuid", "maskPlaceholder", "maskKeepCharPositions"] }, { kind: "component", type: i5.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["min", "max", "showSeparator", "showCurrency", "showCounter", "scrollWeel", "showDoubleCounter", "maxLength", "intStep", "decimalNumber", "customStep"] }, { kind: "component", type: i6.AXFormGroupComponent, selector: "ax-form-group", inputs: ["size"] }, { kind: "component", type: i7.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["readonly", "disabled", "size", "label", "tabIndex", "indeterminate", "value"], outputs: ["onValueChanged", "valueChange", "onClick"] }, { kind: "component", type: i8.AXDatePickerComponent, selector: "ax-date-picker", inputs: ["dayStyle", "dayMinMaxResoan", "validation", "placeholder", "min", "max", "readonly", "disabled", "allowClear", "textAlign", "showToday", "selectableHoliday", "dateType", "showTodayButton", "openByClick", "size", "type", "value"], outputs: ["typeChange", "onValueChanged", "valueChange"] }, { kind: "pipe", type: i9.AXTranslatorPipe, name: "trans" }], encapsulation: i0.ViewEncapsulation.None });
392
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderRuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
393
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AXQueryBuilderRuleComponent, selector: "ax-query-rule", inputs: { isEditing: "isEditing", rule: "rule", parent: "parent", mode: "mode", fields: "fields" }, outputs: { onRuleDelete: "onRuleDelete", ruleChanged: "ruleChanged" }, host: { classAttribute: "ax ax-query-rule" }, viewQueries: [{ propertyName: "selectBox", first: true, predicate: ["selectBox"], descendants: true }, { propertyName: "selectBoxValue", first: true, predicate: ["selectBoxValue"], descendants: true }, { propertyName: "selectBoxBoolean", first: true, predicate: ["selectBoxBoolean"], descendants: true }, { propertyName: "textBoxNameValue", first: true, predicate: ["textBoxNameValue"], descendants: true }, { propertyName: "form", first: true, predicate: AXValidationFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"condition\" *ngIf=\"parent\">\n <div class=\"text {{parent.condition}}\">\n <span>{{parent.condition}}</span>\n </div>\n</div>\n<div class=\"handler\">\n <i class=\"far fa-grip-lines-vertical\"></i>\n</div>\n\n<div class=\"caption\" [ngClass]=\"{'editable': isEditing}\">\n <ng-container *ngIf=\"isEditing;else fieldsTemplate\">\n <ax-form-group>\n <ax-select-box [readonly]=\"mode == 'edit'\" (selectionChanged)=\"captionChange($event)\" allowNull=\"false\"\n [(selectedItems)]=\"rule.dataFieldItem\" textField=\"caption\" valueField=\"dataField\" [items]=\"fields\"\n mode=\"single\">\n </ax-select-box>\n </ax-form-group>\n </ng-container>\n <ng-template #fieldsTemplate>\n <div (click)=\"handleEditClick()\">\n {{rule.caption}}\n </div>\n </ng-template>\n</div>\n\n<div class=\"operator\" [ngClass]=\"{'editable': isEditing,'radius':!showValue}\">\n <ng-container *ngIf=\"isEditing;else operatorTemplate\">\n <ax-form-group>\n <ax-select-box [readonly]=\"mode == 'edit'\" *ngIf=\"showOperatorSelectBox\" [(selectedValues)]=\"rule.operator\"\n #selectBox (selectedItemsChange)=\"operatorChange($event)\" allowNull=\"false\" mode=\"single\">\n <ax-data-source [provideData]=\"provideDataOperator\">\n </ax-data-source>\n </ax-select-box>\n </ax-form-group>\n </ng-container>\n <ng-template #operatorTemplate>\n <div class=\"text\" (click)=\"handleEditClick()\">\n {{('queryBuilder.'+rule.operator) | trans}}\n </div>\n </ng-template>\n</div>\n<div *ngIf=\"showValue\" class=\"value\" [ngClass]=\"{'editable': isEditing}\">\n <ng-container *ngIf=\"isEditing;else valueTemplate\">\n\n <div *ngIf=\" rule.control && !isOnDemandLabel\" [ngSwitch]=\"rule.control.type\">\n <div *ngSwitchCase=\"'textBox'\">\n <ax-form-group>\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\n [(value)]=\"rule.value\">\n </ax-text-box>\n </ax-form-group>\n </div>\n <div *ngSwitchCase=\"'selectBox'\">\n <ax-form-group>\n <ax-select-box *ngIf=\"showSelectBox\" [mode]=\"getOption('mode')\"\n [remoteOperation]=\"getOption('remoteOperation')\" [valueField]=\"getOption('valueField')\"\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [textField]=\"getOption('textField')\"\n [(selectedItems)]=\"rule.valueItem\" (selectedItemsChange)=\"selectedItemsChange($event)\"\n #selectBoxValue>\n <ax-data-source [provideData]=\"getProvideData\"></ax-data-source>\n </ax-select-box>\n </ax-form-group>\n </div>\n\n <div *ngSwitchCase=\"'numberBox'\">\n <ax-form-group>\n <ax-number-box [decimalNumber]=\"2\" (onValueChanged)=\"valueChange($event)\"\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [(value)]=\"rule.value\">\n </ax-number-box>\n </ax-form-group>\n </div>\n <div *ngSwitchCase=\"'datetime'\">\n <ax-date-picker label=\"From\" [(value)]=\"rule.value\" (onValueChanged)=\"valueChange($event)\">\n </ax-date-picker>\n\n </div>\n <div *ngSwitchCase=\"'boolean'\">\n\n <ax-form-group>\n <ax-select-box #selectBoxBoolean (selectedItemsChange)=\"valueBooleanChange($event)\"\n allowNull=\"false\" [selectedValues]=\"rule.value\" mode=\"single\">\n <ax-data-source [provideData]=\"provideDataBoolean\">\n </ax-data-source>\n </ax-select-box>\n </ax-form-group>\n\n </div>\n <div *ngSwitchDefault>\n <ax-form-group>\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\n [(value)]=\"rule.value\">\n </ax-text-box>\n\n </ax-form-group>\n\n </div>\n </div>\n\n <div *ngIf=\"isOnDemandLabel\">\n\n <ax-text-box #textBoxNameValue [value]=\"getOnDemandName(rule.onDemandLabel)\"\n (onValueChanged)=\"onDemandLabelChange($event)\" placeholder=\"\u0646\u0627\u0645 \u0645\u062A\u063A\u06CC\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\">\n <!-- <ax-validation>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-validation> -->\n </ax-text-box>\n\n\n </div>\n\n </ng-container>\n <ng-template #valueTemplate>\n <div (click)=\"handleEditClick()\">\n\n {{rule.text}}\n\n </div>\n </ng-template>\n</div>\n\n<div class=\"buttons-list\">\n <div *ngIf=\"showValue && isEditing && mode == 'new'\" class=\"button variable\"\n [ngClass]=\"{'active-button': isOnDemandLabel}\">\n <i class=\"far fa-dollar-sign\"></i>\n <ax-check-box [value]=\"isOnDemandLabel\" (onClick)=\"onDemandLabel($event)\">\n </ax-check-box>\n </div>\n\n <div class=\"button commit\" (click)=\"handleCommitClick()\" *ngIf=\"isEditing\">\n <i class=\"far fa-check\"></i>\n </div>\n <div class=\"button remove\" (click)=\"handleRemoveClick()\" *ngIf=\"mode == 'new'\">\n <i class=\"far fa-times\"></i>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["showDropDownButton", "rowInputTemplate", "showCheckBox", "readonly", "rtl", "disabled", "placeholder", "size", "allowNull", "textAlign", "bufferSize", "remoteOperation", "fitParent", "dropdownWidth", "multiLine", "onDemandTranslate", "dataSource", "validation", "disabledCallback", "allowSearch", "textField", "valueField", "disabledField", "mode", "items", "selectedItems", "selectedValues"], outputs: ["dropdownToggle", "itemsChange", "onBlur", "onFocus", "selectionChanged", "selectedItemsChange", "selectedValuesChange"] }, { kind: "component", type: i3.AXDataSourceComponent, selector: "ax-data-source", inputs: ["provideData", "params"] }, { kind: "component", type: i4.AXTextBoxComponent, selector: "ax-text-box", inputs: ["mask", "showMask", "type", "maxLength", "maskGuid", "maskPlaceholder", "maskKeepCharPositions"] }, { kind: "component", type: i5.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["min", "max", "showSeparator", "showCurrency", "showCounter", "scrollWeel", "showDoubleCounter", "maxLength", "intStep", "decimalNumber", "customStep"] }, { kind: "component", type: i6.AXFormGroupComponent, selector: "ax-form-group", inputs: ["size"] }, { kind: "component", type: i7.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["readonly", "disabled", "size", "label", "tabIndex", "indeterminate", "value"], outputs: ["onValueChanged", "valueChange", "onClick"] }, { kind: "component", type: i8.AXDatePickerComponent, selector: "ax-date-picker", inputs: ["dayStyle", "dayMinMaxResoan", "validation", "placeholder", "min", "max", "readonly", "disabled", "allowClear", "textAlign", "showToday", "selectableHoliday", "dateType", "showTodayButton", "openByClick", "size", "type", "value"], outputs: ["typeChange", "onValueChanged", "valueChange"] }, { kind: "pipe", type: i9.AXTranslatorPipe, name: "trans" }], encapsulation: i0.ViewEncapsulation.None });
394
394
  }
395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderRuleComponent, decorators: [{
395
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderRuleComponent, decorators: [{
396
396
  type: Component,
397
- args: [{ selector: 'ax-query-rule', host: { class: 'ax ax-query-rule' }, encapsulation: ViewEncapsulation.None, template: "<div class=\"condition\" *ngIf=\"parent\">\r\n <div class=\"text {{parent.condition}}\">\r\n <span>{{parent.condition}}</span>\r\n </div>\r\n</div>\r\n<div class=\"handler\">\r\n <i class=\"far fa-grip-lines-vertical\"></i>\r\n</div>\r\n\r\n<div class=\"caption\" [ngClass]=\"{'editable': isEditing}\">\r\n <ng-container *ngIf=\"isEditing;else fieldsTemplate\">\r\n <ax-form-group>\r\n <ax-select-box [readonly]=\"mode == 'edit'\" (selectionChanged)=\"captionChange($event)\" allowNull=\"false\"\r\n [(selectedItems)]=\"rule.dataFieldItem\" textField=\"caption\" valueField=\"dataField\" [items]=\"fields\"\r\n mode=\"single\">\r\n </ax-select-box>\r\n </ax-form-group>\r\n </ng-container>\r\n <ng-template #fieldsTemplate>\r\n <div (click)=\"handleEditClick()\">\r\n {{rule.caption}}\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<div class=\"operator\" [ngClass]=\"{'editable': isEditing,'radius':!showValue}\">\r\n <ng-container *ngIf=\"isEditing;else operatorTemplate\">\r\n <ax-form-group>\r\n <ax-select-box [readonly]=\"mode == 'edit'\" *ngIf=\"showOperatorSelectBox\" [(selectedValues)]=\"rule.operator\"\r\n #selectBox (selectedItemsChange)=\"operatorChange($event)\" allowNull=\"false\" mode=\"single\">\r\n <ax-data-source [provideData]=\"provideDataOperator\">\r\n </ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n </ng-container>\r\n <ng-template #operatorTemplate>\r\n <div class=\"text\" (click)=\"handleEditClick()\">\r\n {{('queryBuilder.'+rule.operator) | trans}}\r\n </div>\r\n </ng-template>\r\n</div>\r\n<div *ngIf=\"showValue\" class=\"value\" [ngClass]=\"{'editable': isEditing}\">\r\n <ng-container *ngIf=\"isEditing;else valueTemplate\">\r\n\r\n <div *ngIf=\" rule.control && !isOnDemandLabel\" [ngSwitch]=\"rule.control.type\">\r\n <div *ngSwitchCase=\"'textBox'\">\r\n <ax-form-group>\r\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\r\n [(value)]=\"rule.value\">\r\n </ax-text-box>\r\n </ax-form-group>\r\n </div>\r\n <div *ngSwitchCase=\"'selectBox'\">\r\n <ax-form-group>\r\n <ax-select-box *ngIf=\"showSelectBox\" [mode]=\"getOption('mode')\"\r\n [remoteOperation]=\"getOption('remoteOperation')\" [valueField]=\"getOption('valueField')\"\r\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [textField]=\"getOption('textField')\"\r\n [(selectedItems)]=\"rule.valueItem\" (selectedItemsChange)=\"selectedItemsChange($event)\"\r\n #selectBoxValue>\r\n <ax-data-source [provideData]=\"getProvideData\"></ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'numberBox'\">\r\n <ax-form-group>\r\n <ax-number-box [decimalNumber]=\"2\" (onValueChanged)=\"valueChange($event)\"\r\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [(value)]=\"rule.value\">\r\n </ax-number-box>\r\n </ax-form-group>\r\n </div>\r\n <div *ngSwitchCase=\"'datetime'\">\r\n <ax-date-picker label=\"From\" [(value)]=\"rule.value\" (onValueChanged)=\"valueChange($event)\">\r\n </ax-date-picker>\r\n\r\n </div>\r\n <div *ngSwitchCase=\"'boolean'\">\r\n\r\n <ax-form-group>\r\n <ax-select-box #selectBoxBoolean (selectedItemsChange)=\"valueBooleanChange($event)\"\r\n allowNull=\"false\" [selectedValues]=\"rule.value\" mode=\"single\">\r\n <ax-data-source [provideData]=\"provideDataBoolean\">\r\n </ax-data-source>\r\n </ax-select-box>\r\n </ax-form-group>\r\n\r\n </div>\r\n <div *ngSwitchDefault>\r\n <ax-form-group>\r\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\r\n [(value)]=\"rule.value\">\r\n </ax-text-box>\r\n\r\n </ax-form-group>\r\n\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"isOnDemandLabel\">\r\n\r\n <ax-text-box #textBoxNameValue [value]=\"getOnDemandName(rule.onDemandLabel)\"\r\n (onValueChanged)=\"onDemandLabelChange($event)\" placeholder=\"\u0646\u0627\u0645 \u0645\u062A\u063A\u06CC\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\">\r\n <!-- <ax-validation>\r\n <ax-validation-rule type=\"required\"></ax-validation-rule>\r\n </ax-validation> -->\r\n </ax-text-box>\r\n\r\n\r\n </div>\r\n\r\n </ng-container>\r\n <ng-template #valueTemplate>\r\n <div (click)=\"handleEditClick()\">\r\n\r\n {{rule.text}}\r\n\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<div class=\"buttons-list\">\r\n <div *ngIf=\"showValue && isEditing && mode == 'new'\" class=\"button variable\"\r\n [ngClass]=\"{'active-button': isOnDemandLabel}\">\r\n <i class=\"far fa-dollar-sign\"></i>\r\n <ax-check-box [value]=\"isOnDemandLabel\" (onClick)=\"onDemandLabel($event)\">\r\n </ax-check-box>\r\n </div>\r\n\r\n <div class=\"button commit\" (click)=\"handleCommitClick()\" *ngIf=\"isEditing\">\r\n <i class=\"far fa-check\"></i>\r\n </div>\r\n <div class=\"button remove\" (click)=\"handleRemoveClick()\" *ngIf=\"mode == 'new'\">\r\n <i class=\"far fa-times\"></i>\r\n </div>\r\n</div>" }]
397
+ args: [{ selector: 'ax-query-rule', host: { class: 'ax ax-query-rule' }, encapsulation: ViewEncapsulation.None, template: "<div class=\"condition\" *ngIf=\"parent\">\n <div class=\"text {{parent.condition}}\">\n <span>{{parent.condition}}</span>\n </div>\n</div>\n<div class=\"handler\">\n <i class=\"far fa-grip-lines-vertical\"></i>\n</div>\n\n<div class=\"caption\" [ngClass]=\"{'editable': isEditing}\">\n <ng-container *ngIf=\"isEditing;else fieldsTemplate\">\n <ax-form-group>\n <ax-select-box [readonly]=\"mode == 'edit'\" (selectionChanged)=\"captionChange($event)\" allowNull=\"false\"\n [(selectedItems)]=\"rule.dataFieldItem\" textField=\"caption\" valueField=\"dataField\" [items]=\"fields\"\n mode=\"single\">\n </ax-select-box>\n </ax-form-group>\n </ng-container>\n <ng-template #fieldsTemplate>\n <div (click)=\"handleEditClick()\">\n {{rule.caption}}\n </div>\n </ng-template>\n</div>\n\n<div class=\"operator\" [ngClass]=\"{'editable': isEditing,'radius':!showValue}\">\n <ng-container *ngIf=\"isEditing;else operatorTemplate\">\n <ax-form-group>\n <ax-select-box [readonly]=\"mode == 'edit'\" *ngIf=\"showOperatorSelectBox\" [(selectedValues)]=\"rule.operator\"\n #selectBox (selectedItemsChange)=\"operatorChange($event)\" allowNull=\"false\" mode=\"single\">\n <ax-data-source [provideData]=\"provideDataOperator\">\n </ax-data-source>\n </ax-select-box>\n </ax-form-group>\n </ng-container>\n <ng-template #operatorTemplate>\n <div class=\"text\" (click)=\"handleEditClick()\">\n {{('queryBuilder.'+rule.operator) | trans}}\n </div>\n </ng-template>\n</div>\n<div *ngIf=\"showValue\" class=\"value\" [ngClass]=\"{'editable': isEditing}\">\n <ng-container *ngIf=\"isEditing;else valueTemplate\">\n\n <div *ngIf=\" rule.control && !isOnDemandLabel\" [ngSwitch]=\"rule.control.type\">\n <div *ngSwitchCase=\"'textBox'\">\n <ax-form-group>\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\n [(value)]=\"rule.value\">\n </ax-text-box>\n </ax-form-group>\n </div>\n <div *ngSwitchCase=\"'selectBox'\">\n <ax-form-group>\n <ax-select-box *ngIf=\"showSelectBox\" [mode]=\"getOption('mode')\"\n [remoteOperation]=\"getOption('remoteOperation')\" [valueField]=\"getOption('valueField')\"\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [textField]=\"getOption('textField')\"\n [(selectedItems)]=\"rule.valueItem\" (selectedItemsChange)=\"selectedItemsChange($event)\"\n #selectBoxValue>\n <ax-data-source [provideData]=\"getProvideData\"></ax-data-source>\n </ax-select-box>\n </ax-form-group>\n </div>\n\n <div *ngSwitchCase=\"'numberBox'\">\n <ax-form-group>\n <ax-number-box [decimalNumber]=\"2\" (onValueChanged)=\"valueChange($event)\"\n placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\" [(value)]=\"rule.value\">\n </ax-number-box>\n </ax-form-group>\n </div>\n <div *ngSwitchCase=\"'datetime'\">\n <ax-date-picker label=\"From\" [(value)]=\"rule.value\" (onValueChanged)=\"valueChange($event)\">\n </ax-date-picker>\n\n </div>\n <div *ngSwitchCase=\"'boolean'\">\n\n <ax-form-group>\n <ax-select-box #selectBoxBoolean (selectedItemsChange)=\"valueBooleanChange($event)\"\n allowNull=\"false\" [selectedValues]=\"rule.value\" mode=\"single\">\n <ax-data-source [provideData]=\"provideDataBoolean\">\n </ax-data-source>\n </ax-select-box>\n </ax-form-group>\n\n </div>\n <div *ngSwitchDefault>\n <ax-form-group>\n <ax-text-box (onValueChanged)=\"valueChange($event)\" placeholder=\"\u0645\u0642\u062F\u0627\u0631 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\"\n [(value)]=\"rule.value\">\n </ax-text-box>\n\n </ax-form-group>\n\n </div>\n </div>\n\n <div *ngIf=\"isOnDemandLabel\">\n\n <ax-text-box #textBoxNameValue [value]=\"getOnDemandName(rule.onDemandLabel)\"\n (onValueChanged)=\"onDemandLabelChange($event)\" placeholder=\"\u0646\u0627\u0645 \u0645\u062A\u063A\u06CC\u0631 \u062E\u0648\u062F \u0631\u0627 \u0648\u0627\u0631\u062F \u06A9\u0646\u06CC\u062F\">\n <!-- <ax-validation>\n <ax-validation-rule type=\"required\"></ax-validation-rule>\n </ax-validation> -->\n </ax-text-box>\n\n\n </div>\n\n </ng-container>\n <ng-template #valueTemplate>\n <div (click)=\"handleEditClick()\">\n\n {{rule.text}}\n\n </div>\n </ng-template>\n</div>\n\n<div class=\"buttons-list\">\n <div *ngIf=\"showValue && isEditing && mode == 'new'\" class=\"button variable\"\n [ngClass]=\"{'active-button': isOnDemandLabel}\">\n <i class=\"far fa-dollar-sign\"></i>\n <ax-check-box [value]=\"isOnDemandLabel\" (onClick)=\"onDemandLabel($event)\">\n </ax-check-box>\n </div>\n\n <div class=\"button commit\" (click)=\"handleCommitClick()\" *ngIf=\"isEditing\">\n <i class=\"far fa-check\"></i>\n </div>\n <div class=\"button remove\" (click)=\"handleRemoveClick()\" *ngIf=\"mode == 'new'\">\n <i class=\"far fa-times\"></i>\n </div>\n</div>" }]
398
398
  }], ctorParameters: function () { return []; }, propDecorators: { selectBox: [{
399
399
  type: ViewChild,
400
400
  args: ['selectBox']
@@ -425,4 +425,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
425
425
  }], ruleChanged: [{
426
426
  type: Output
427
427
  }] } });
428
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3BGLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLGtCQUFrQixHQUVuQixNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7OztBQVEvQixNQUFNLE9BQU8sMkJBQTJCO0lBQ2QsU0FBUyxDQUF1QjtJQUMzQixjQUFjLENBQXVCO0lBRW5DLGdCQUFnQixDQUF1QjtJQUV2QyxnQkFBZ0IsQ0FBcUI7SUFDOUIsSUFBSSxDQUE0QjtJQUV0RSxTQUFTLEdBQVksSUFBSSxDQUFDO0lBRzFCLElBQUksQ0FBcUI7SUFHekIsTUFBTSxDQUFzQjtJQUc1QixJQUFJLEdBQW1CLEtBQUssQ0FBQztJQUc3QixNQUFNLEdBQVUsRUFBRSxDQUFDO0lBR25CLFlBQVksR0FDVixJQUFJLFlBQVksRUFBMkIsQ0FBQztJ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QUFPLENBQUMsT0FBTyxFQUFFO2FBQzlDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsU0FBUyxDQUFDLElBQVk7UUFDcEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVFLENBQUM7dUdBMVpVLDJCQUEyQjsyRkFBM0IsMkJBQTJCLDhyQkFPM0IseUJBQXlCLGdEQ2pDdEMsMjhNQXNJTTs7MkZENUdPLDJCQUEyQjtrQkFOdkMsU0FBUzsrQkFDRSxlQUFlLFFBRW5CLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLGlCQUNwQixpQkFBaUIsQ0FBQyxJQUFJOzBFQUdiLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDTyxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFFSSxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUVFLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBQ1MsSUFBSTtzQkFBekMsU0FBUzt1QkFBQyx5QkFBeUI7Z0JBRXBDLFNBQVM7c0JBRFIsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxNQUFNO2dCQUtQLFdBQVc7c0JBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYVHJhbnNsYXRvciB9IGZyb20gJ0BhY29yZXgvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhTZWxlY3RCb3hDb21wb25lbnQgfSBmcm9tICcuLi9zZWxlY3Rib3gvc2VsZWN0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYVGV4dEJveENvbXBvbmVudCB9IGZyb20gJy4uL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBBWFF1ZXJ5QnVpbGRlckNvbnRyb2wsXHJcbiAgQVhRdWVyeUJ1aWxkZXJHcm91cCxcclxuICBBWFF1ZXJ5QnVpbGRlclJ1bGUsXHJcbiAgQVhRdWVyeUJ1aWxkZXJSdWxlRXZlbnQsXHJcbn0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtcXVlcnktcnVsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICdxdWVyeS1idWlsZGVyLXJ1bGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGhvc3Q6IHsgY2xhc3M6ICdheCBheC1xdWVyeS1ydWxlJyB9LFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlclJ1bGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveCcpIHNlbGVjdEJveDogQVhTZWxlY3RCb3hDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnc2VsZWN0Qm94VmFsdWUnKSBzZWxlY3RCb3hWYWx1ZTogQVhTZWxlY3RCb3hDb21wb25lbnQ7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveEJvb2xlYW4nKSBzZWxlY3RCb3hCb29sZWFuOiBBWFNlbGVjdEJveENvbXBvbmVudDtcclxuXHJcbiAgQFZpZXdDaGlsZCgndGV4dEJveE5hbWVWYWx1ZScpIHRleHRCb3hOYW1lVmFsdWU6IEFYVGV4dEJveENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKEFYVmFsaWRhdGlvbkZvcm1Db21wb25lbnQpIGZvcm06IEFYVmFsaWRhdGlvbkZvcm1Db21wb25lbnQ7XHJcbiAgQElucHV0KClcclxuICBpc0VkaXRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHJ1bGU6IEFYUXVlcnlCdWlsZGVyUnVsZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwYXJlbnQ6IEFYUXVlcnlCdWlsZGVyR3JvdXA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbW9kZTogJ25ldycgfCAnZWRpdCcgPSAnbmV3JztcclxuXHJcbiAgQElucHV0KClcclxuICBmaWVsZHM6IGFueVtdID0gW107XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIG9uUnVsZURlbGV0ZTogRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBydWxlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PigpO1xyXG5cclxuICBzaG93VmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgaXNPbkRlbWFuZExhYmVsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHNob3dTZWxlY3RCb3g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHNob3dPcGVyYXRvclNlbGVjdEJveDogYm9vbGVhbiA9IHRydWU7XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcbiAgICAgIGlmIChmaWVsZC5kYXRhRmllbGQgPT0gdGhpcy5ydWxlLmRhdGFGaWVsZCkge1xyXG4gICAgICAgIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgPSBmaWVsZC5jb250cm9sLm9wdGlvbnM7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucnVsZS5vbkRlbWFuZExhYmVsKSB7XHJcbiAgICAgIHRoaXMuaXNPbkRlbWFuZExhYmVsID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJvdmlkZURhdGFCb29sZWFuID0gKGUpID0+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICByZXNvbHZlKFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICB2YWx1ZTogJ3RydWUnLFxyXG4gICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLnRydWUnKSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHZhbHVlOiAnZmFsc2UnLFxyXG4gICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmZhbHNlJyksXHJcbiAgICAgICAgfSxcclxuICAgICAgXSk7XHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICBzYXZlUnVsZSgpIHtcclxuICAgIHRoaXMuZm9ybS52YWxpZGF0ZSgpLnRoZW4oKGMpID0+IHt9KTtcclxuICB9XHJcblxyXG4gIHByb3ZpZGVEYXRhT3BlcmF0b3IgPSAoZSkgPT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnJ1bGUuZGF0YVR5cGUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy5ydWxlICYmXHJcbiAgICAgICAgICB0aGlzLnJ1bGUuY29udHJvbCAmJlxyXG4gICAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wudHlwZSAmJlxyXG4gICAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wudHlwZSA9PSAnc2VsZWN0Qm94J1xyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgaWYgKHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMubW9kZSA9PSAnbXVsdGlwbGUnKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUoW1xyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlOiAnY29udGFpbnMnLFxyXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmNvbnRhaW5zJyksXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ25vdC1jb250YWlucycsXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LWNvbnRhaW5zJyksXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2NvbnRhaW5zLWFsbCcsXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuY29udGFpbnMtYWxsJyksXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ251bGwnLFxyXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm51bGwnKSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlOiAnbm90LW51bGwnLFxyXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1udWxsJyksXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXNvbHZlKFtcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2VxdWFsJyxcclxuICAgICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5lcXVhbCcpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdub3QtZXF1YWwnLFxyXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1lcXVhbCcpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcclxuICAgICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcclxuICAgICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ub3QtbnVsbCcpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXNvbHZlKFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHZhbHVlOiAnZXF1YWwnLFxyXG4gICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5lcXVhbCcpLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdmFsdWU6ICdjb250YWlucycsXHJcbiAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmNvbnRhaW5zJyksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB2YWx1ZTogJ3N0YXJ0LXdpdGgnLFxyXG4gICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5zdGFydC13aXRoJyksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB2YWx1ZTogJ2VuZC13aXRoJyxcclxuICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZW5kLXdpdGgnKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHZhbHVlOiAnbm90LWVxdWFsJyxcclxuICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LWVxdWFsJyksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB2YWx1ZTogJ251bGwnLFxyXG4gICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcclxuICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LW51bGwnKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5ydWxlLmRhdGFUeXBlID09PSAnbnVtYmVyJykge1xyXG4gICAgICAgIHJlc29sdmUoW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2VxdWFsJyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmVxdWFsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2d0JyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmdyZWF0ZXItdGhhbicpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdndGUnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZ3JlYXRlci10aGFuLWVxdWFsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2x0JyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmxlc3MtdGhhbicpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdsdGUnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubGVzcy10aGFuLWVxdWFsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ25vdC1lcXVhbCcsXHJcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ub3QtZXF1YWwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnbnVsbCcsXHJcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1udWxsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0pO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnJ1bGUuZGF0YVR5cGUgPT09ICdib29sZWFuJykge1xyXG4gICAgICAgIHJlc29sdmUoW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2VxdWFsJyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmVxdWFsJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ251bGwnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubnVsbCcpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdub3QtbnVsbCcsXHJcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ub3QtbnVsbCcpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5ydWxlLmRhdGFUeXBlID09PSAnZGF0ZXRpbWUnIHx8IHRoaXMucnVsZS5kYXRhVHlwZSA9PT0gJ2RhdGUnKSB7XHJcbiAgICAgICAgcmVzb2x2ZShbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnZXF1YWwnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZXF1YWwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnZ3QnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZ3JlYXRlci10aGFuJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2d0ZScsXHJcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ncmVhdGVyLXRoYW4tZXF1YWwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnbHQnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubGVzcy10aGFuJyksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2x0ZScsXHJcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5sZXNzLXRoYW4tZXF1YWwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnbm90LWVxdWFsJyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1lcXVhbCcpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcclxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm51bGwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnbm90LW51bGwnLFxyXG4gICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LW51bGwnKSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXSk7XHJcbiAgICAgIH1cclxuICAgICAgcmVzb2x2ZShbXSk7XHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICBoYW5kbGVFZGl0Q2xpY2soKSB7XHJcbiAgICB0aGlzLmlzRWRpdGluZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDb21taXRDbGljaygpIHtcclxuICAgIHRoaXMuaXNFZGl0aW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBpdGVtczogdGhpcy5ydWxlLCBjb21wb25lbnQ6IHRoaXMgfSk7XHJcbiAgfVxyXG4gIGhhbmRsZVJlbW92ZUNsaWNrKCkge1xyXG4gICAgdGhpcy5vblJ1bGVEZWxldGUuZW1pdCh7IGl0ZW1zOiB0aGlzLnJ1bGUsIGNvbXBvbmVudDogdGhpcyB9KTtcclxuICB9XHJcbiAgY2FwdGlvbkNoYW5nZShlKSB7XHJcbiAgICBpZiAoZS5zZWxlY3RlZEl0ZW1zWzBdKSB7XHJcbiAgICAgIHRoaXMucnVsZS5jYXB0aW9uID0gZS5zZWxlY3RlZEl0ZW1zWzBdLmNhcHRpb247XHJcbiAgICAgIHRoaXMucnVsZS5kYXRhRmllbGQgPSBlLnNlbGVjdGVkSXRlbXNbMF0uZGF0YUZpZWxkO1xyXG4gICAgICB0aGlzLnJ1bGUuZGF0YVR5cGUgPSBlLnNlbGVjdGVkSXRlbXNbMF0uZGF0YVR5cGU7XHJcbiAgICAgIHRoaXMucnVsZS5jb250cm9sID1cclxuICAgICAgICBlLnNlbGVjdGVkSXRlbXNbMF0uY29udHJvbCB8fCBuZXcgQVhRdWVyeUJ1aWxkZXJDb250cm9sKCk7XHJcbiAgICAgIHRoaXMucnVsZS5kYXRhRmllbGRJdGVtWzBdID0gZS5zZWxlY3RlZEl0ZW1zWzBdO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNlbGVjdEJveCkge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wudHlwZSA9PT0gJ3NlbGVjdEJveCcgJiZcclxuICAgICAgICB0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zLm1vZGUgPT0gJ211bHRpcGxlJ1xyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLnJ1bGUub3BlcmF0b3IgPSAnY29udGFpbnMnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucnVsZS5vcGVyYXRvciA9ICdlcXVhbCc7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zZWxlY3RCb3gucmVmcmVzaCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc2hvd09wZXJhdG9yU2VsZWN0Qm94ID0gZmFsc2U7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5zaG93T3BlcmF0b3JTZWxlY3RCb3ggPSB0cnVlO1xyXG4gICAgfSwgMjApO1xyXG5cclxuICAgIHRoaXMucnVsZS52YWx1ZSA9IG51bGw7XHJcbiAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gW107XHJcbiAgICB0aGlzLnJ1bGUudGV4dCA9ICcnO1xyXG5cclxuICAgIGlmICh0aGlzLnJ1bGUuY29udHJvbC50eXBlID09PSAnc2VsZWN0Qm94JyAmJiB0aGlzLnNlbGVjdEJveFZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2hvd1NlbGVjdEJveCA9IGZhbHNlO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLnNob3dTZWxlY3RCb3ggPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0Qm94VmFsdWUucmVmcmVzaCgpO1xyXG4gICAgICB9LCAyMCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5ydWxlLmNvbnRyb2wudHlwZSA9PSAnYm9vbGVhbicpIHtcclxuICAgICAgdGhpcy5zZWxlY3RCb3hCb29sZWFuLnJlZnJlc2goKTtcclxuICAgIH1cclxuICAgIHRoaXMucnVsZUNoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgaXRlbXM6IHRoaXMucnVsZSB9KTtcclxuICB9XHJcblxyXG4gIG9wZXJhdG9yQ2hhbmdlKGUpIHtcclxuICAgIHRoaXMucnVsZS5vcGVyYXRvciA9IGVbMF0udmFsdWU7XHJcbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGl0ZW1zOiB0aGlzLnJ1bGUgfSk7XHJcblxyXG4gICAgaWYgKGVbMF0udmFsdWUgIT09ICdudWxsJyAmJiBlWzBdLnZhbHVlICE9PSAnbm90LW51bGwnKSB7XHJcbiAgICAgIHRoaXMuc2hvd1ZhbHVlID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd1ZhbHVlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMucnVsZS52YWx1ZSA9ICcnO1xyXG4gICAgICB0aGlzLnJ1bGUudGV4dCA9ICcnO1xyXG4gICAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gW107XHJcbiAgICAgIHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHZhbHVlQ2hhbmdlKGUpIHtcclxuICAgIC8vIHRoaXMucnVsZS50ZXh0ID0gZS52YWx1ZSA9PSB1bmRlZmluZWQgPyBlWzBdLnZhbHVlIDogKGUudmFsdWUgPT0gbnVsbCA/ICcnIDogZS52YWx1ZSk7XHJcblxyXG4gICAgdGhpcy5ydWxlLnRleHQgPSBlWzBdXHJcbiAgICAgID8gZVswXS52YWx1ZSA9PSBudWxsXHJcbiAgICAgICAgPyAnJ1xyXG4gICAgICAgIDogZVswXS52YWx1ZVxyXG4gICAgICA6IGUudmFsdWUgPT0gbnVsbFxyXG4gICAgICA/ICcnXHJcbiAgICAgIDogZS52YWx1ZTtcclxuICAgIHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID0gJyc7XHJcbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGl0ZW1zOiB0aGlzLnJ1bGUgfSk7XHJcbiAgfVxyXG4gIG9uRGVtYW5kTGFiZWxDaGFuZ2UoZSkge1xyXG4gICAgLy8gdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSBlLnZhbHVlID09IHVuZGVmaW5lZCA/ICc/Pz8/fCcgKyBlWzBdLnZhbHVlIDogJz8/Pz98JyArIGUudmFsdWU7XHJcbiAgICB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9IGVbMF1cclxuICAgICAgPyAnPz8/P3wnICsgKGVbMF0udmFsdWUgPT0gbnVsbCA/ICcnIDogZVswXS52YWx1ZSlcclxuICAgICAgOiAnPz8/P3wnICsgKGUudmFsdWUgPT0gbnVsbCA/ICcnIDogZS52YWx1ZSk7XHJcbiAgICB0aGlzLnJ1bGUudmFsdWUgPSAnJztcclxuICAgIHRoaXMucnVsZS50ZXh0ID0gJyc7XHJcbiAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gW107XHJcblxyXG4gICAgdGhpcy5ydWxlQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBpdGVtczogdGhpcy5ydWxlIH0pO1xyXG4gIH1cclxuICB2YWx1ZUJvb2xlYW5DaGFuZ2UoZSkge1xyXG4gICAgLy8gdGhpcy5ydWxlLnRleHQgPSBlLnZhbHVlID09IHVuZGVmaW5lZCA/IGVbMF0udmFsdWUgOiAoZS52YWx1ZSA9PSBudWxsID8gJycgOiBlLnZhbHVlKTtcclxuICAgIHRoaXMucnVsZS50ZXh0ID0gZVswXVxyXG4gICAgICA/IGVbMF0udmFsdWUgPT0gbnVsbFxyXG4gICAgICAgID8gJydcclxuICAgICAgICA6IGVbMF0udmFsdWVcclxuICAgICAgOiBlLnZhbHVlID09IG51bGxcclxuICAgICAgPyAnJ1xyXG4gICAgICA6IGUudmFsdWU7XHJcbiAgICB0aGlzLnJ1bGUudmFsdWUgPSBlLnZhbHVlID09IHVuZGVmaW5lZCA/IGVbMF0udmFsdWUgOiBlLnZhbHVlO1xyXG4gICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSAnJztcclxuICAgIHRoaXMucnVsZUNoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgaXRlbXM6IHRoaXMucnVsZSB9KTtcclxuICB9XHJcbiAgZ2V0T25EZW1hbmROYW1lKHYpIHtcclxuICAgIHJldHVybiB2ID8gdi5zcGxpdCgnfCcpWzFdIDogJyc7XHJcbiAgfVxyXG4gIHNlbGVjdGVkSXRlbXNDaGFuZ2UoZSkge1xyXG4gICAgbGV0IG4gPSB0aGlzLmdldE9wdGlvbigndGV4dEZpZWxkJyk7XHJcblxyXG4gICAgaWYgKHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMubW9kZSA9PT0gJ3NpbmdsZScpIHtcclxuICAgICAgdGhpcy5ydWxlLnRleHQgPSBlWzBdW25dO1xyXG4gICAgICBpZiAodGhpcy5ydWxlICYmIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMudmFsdWVGaWVsZCkge1xyXG4gICAgICAgIHRoaXMucnVsZS52YWx1ZSA9IGVbMF1bdGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucy52YWx1ZUZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJ1bGUudmFsdWUgPSBlWzBdLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucnVsZS52YWx1ZUl0ZW1bMF0gPSBlWzBdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5ydWxlLnRleHQgPSBlLm1hcCgoeCkgPT4geFtuXSkuam9pbignLSAnKTtcclxuICAgICAgY29uc3QgVEhBVCA9IHRoaXM7XHJcbiAgICAgIGlmIChUSEFULnJ1bGUgJiYgVEhBVC5ydWxlLmNvbnRyb2wub3B0aW9ucy52YWx1ZUZpZWxkKSB7XHJcbiAgICAgICAgVEhBVC5ydWxlLnZhbHVlID0gZS5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcclxuICAgICAgICAgIHJldHVybiBpdGVtW1RIQVQucnVsZS5jb250cm9sLm9wdGlvbnMudmFsdWVGaWVsZF07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5ydWxlLnZhbHVlID0gZS5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcclxuICAgICAgICAgIHJldHVybiBpdGVtLnZhbHVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucnVsZS52YWx1ZUl0ZW0gPSBlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucnVsZUNoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgaXRlbXM6IHRoaXMucnVsZSB9KTtcclxuICAgIHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID0gJyc7XHJcbiAgfVxyXG4gIG9uRGVtYW5kTGFiZWwoZSkge1xyXG4gICAgLy8gaWYgKGUudmFsdWUgJiYgKHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID09ICc/Pz8/fCcgfHwgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPT09IHVuZGVmaW5lZCB8fCB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9PT0gbnVsbCB8fCB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9PT0gJycpKSB7XHJcbiAgICAvLyAgIHRoaXMudGV4dEJveE5hbWVWYWx1ZS5mb2N1cygpO1xyXG4gICAgLy8gfVxyXG4gICAgaWYgKGUudmFsdWUgPT0gZmFsc2UpIHtcclxuICAgICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSAnJztcclxuICAgIH1cclxuICAgIHRoaXMuaXNPbkRlbWFuZExhYmVsID0gZS52YWx1ZTtcclxuICB9XHJcbiAgZ2V0UHJvdmlkZURhdGEgPSAoZSkgPT4ge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLnJ1bGUgJiZcclxuICAgICAgdGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucyAmJlxyXG4gICAgICB0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zLmRhdGFTb3VyY2VcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gdGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucy5kYXRhU291cmNlKHtcclxuICAgICAgICAuLi5lLFxyXG4gICAgICAgIG9wdGlvbnNEYXRhOiB7IC4uLnRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgfSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgZ2V0T3B0aW9uKG5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgPyB0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zW25hbWVdIDogbnVsbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvbmRpdGlvblwiICpuZ0lmPVwicGFyZW50XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGV4dCB7e3BhcmVudC5jb25kaXRpb259fVwiPlxyXG4gICAgICAgIDxzcGFuPnt7cGFyZW50LmNvbmRpdGlvbn19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiaGFuZGxlclwiPlxyXG4gICAgPGkgY2xhc3M9XCJmYXIgZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbFwiPjwvaT5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwiY2FwdGlvblwiIFtuZ0NsYXNzXT1cInsnZWRpdGFibGUnOiBpc0VkaXRpbmd9XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFZGl0aW5nO2Vsc2UgZmllbGRzVGVtcGxhdGVcIj5cclxuICAgICAgICA8YXgtZm9ybS1ncm91cD5cclxuICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggW3JlYWRvbmx5XT1cIm1vZGUgPT0gJ2VkaXQnXCIgKHNlbGVjdGlvbkNoYW5nZWQpPVwiY2FwdGlvbkNoYW5nZSgkZXZlbnQpXCIgYWxsb3dOdWxsPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgWyhzZWxlY3RlZEl0ZW1zKV09XCJydWxlLmRhdGFGaWVsZEl0ZW1cIiB0ZXh0RmllbGQ9XCJjYXB0aW9uXCIgdmFsdWVGaWVsZD1cImRhdGFGaWVsZFwiIFtpdGVtc109XCJmaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgbW9kZT1cInNpbmdsZVwiPlxyXG4gICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ZpZWxkc1RlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgKGNsaWNrKT1cImhhbmRsZUVkaXRDbGljaygpXCI+XHJcbiAgICAgICAgICAgIHt7cnVsZS5jYXB0aW9ufX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm9wZXJhdG9yXCIgW25nQ2xhc3NdPVwieydlZGl0YWJsZSc6IGlzRWRpdGluZywncmFkaXVzJzohc2hvd1ZhbHVlfVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWRpdGluZztlbHNlIG9wZXJhdG9yVGVtcGxhdGVcIj5cclxuICAgICAgICA8YXgtZm9ybS1ncm91cD5cclxuICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggW3JlYWRvbmx5XT1cIm1vZGUgPT0gJ2VkaXQnXCIgKm5nSWY9XCJzaG93T3BlcmF0b3JTZWxlY3RCb3hcIiBbKHNlbGVjdGVkVmFsdWVzKV09XCJydWxlLm9wZXJhdG9yXCJcclxuICAgICAgICAgICAgICAgICNzZWxlY3RCb3ggKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwib3BlcmF0b3JDaGFuZ2UoJGV2ZW50KVwiIGFsbG93TnVsbD1cImZhbHNlXCIgbW9kZT1cInNpbmdsZVwiPlxyXG4gICAgICAgICAgICAgICAgPGF4LWRhdGEtc291cmNlIFtwcm92aWRlRGF0YV09XCJwcm92aWRlRGF0YU9wZXJhdG9yXCI+XHJcbiAgICAgICAgICAgICAgICA8L2F4LWRhdGEtc291cmNlPlxyXG4gICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8bmctdGVtcGxhdGUgI29wZXJhdG9yVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHRcIiAoY2xpY2spPVwiaGFuZGxlRWRpdENsaWNrKClcIj5cclxuICAgICAgICAgICAge3soJ3F1ZXJ5QnVpbGRlci4nK3J1bGUub3BlcmF0b3IpIHwgdHJhbnN9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuPC9kaXY+XHJcbjxkaXYgKm5nSWY9XCJzaG93VmFsdWVcIiBjbGFzcz1cInZhbHVlXCIgW25nQ2xhc3NdPVwieydlZGl0YWJsZSc6IGlzRWRpdGluZ31cIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0VkaXRpbmc7ZWxzZSB2YWx1ZVRlbXBsYXRlXCI+XHJcblxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIgcnVsZS5jb250cm9sICYmICFpc09uRGVtYW5kTGFiZWxcIiBbbmdTd2l0Y2hdPVwicnVsZS5jb250cm9sLnR5cGVcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ3RleHRCb3gnXCI+XHJcbiAgICAgICAgICAgICAgICA8YXgtZm9ybS1ncm91cD5cclxuICAgICAgICAgICAgICAgICAgICA8YXgtdGV4dC1ib3ggKG9uVmFsdWVDaGFuZ2VkKT1cInZhbHVlQ2hhbmdlKCRldmVudClcIiBwbGFjZWhvbGRlcj1cItmF2YLYr9in2LEg2YXZiNix2K8g2YbYuNixINiu2YjYryDYsdinINmI2KfYsdivINqp2YbbjNivXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwicnVsZS52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYXgtdGV4dC1ib3g+XHJcbiAgICAgICAgICAgICAgICA8L2F4LWZvcm0tZ3JvdXA+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInc2VsZWN0Qm94J1wiPlxyXG4gICAgICAgICAgICAgICAgPGF4LWZvcm0tZ3JvdXA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggKm5nSWY9XCJzaG93U2VsZWN0Qm94XCIgW21vZGVdPVwiZ2V0T3B0aW9uKCdtb2RlJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcmVtb3RlT3BlcmF0aW9uXT1cImdldE9wdGlvbigncmVtb3RlT3BlcmF0aW9uJylcIiBbdmFsdWVGaWVsZF09XCJnZXRPcHRpb24oJ3ZhbHVlRmllbGQnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi2YXZgtiv2KfYsSDZhdmI2LHYryDZhti42LEg2K7ZiNivINix2Kcg2YjYp9ix2K8g2qnZhtuM2K9cIiBbdGV4dEZpZWxkXT1cImdldE9wdGlvbigndGV4dEZpZWxkJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbKHNlbGVjdGVkSXRlbXMpXT1cInJ1bGUudmFsdWVJdGVtXCIgKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwic2VsZWN0ZWRJdGVtc0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdEJveFZhbHVlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YXgtZGF0YS1zb3VyY2UgW3Byb3ZpZGVEYXRhXT1cImdldFByb3ZpZGVEYXRhXCI+PC9heC1kYXRhLXNvdXJjZT5cclxuICAgICAgICAgICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgICAgICAgICA8L2F4LWZvcm0tZ3JvdXA+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ251bWJlckJveCdcIj5cclxuICAgICAgICAgICAgICAgIDxheC1mb3JtLWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgIDxheC1udW1iZXItYm94IFtkZWNpbWFsTnVtYmVyXT1cIjJcIiAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi2YXZgtiv2KfYsSDZhdmI2LHYryDZhti42LEg2K7ZiNivINix2Kcg2YjYp9ix2K8g2qnZhtuM2K9cIiBbKHZhbHVlKV09XCJydWxlLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9heC1udW1iZXItYm94PlxyXG4gICAgICAgICAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGV0aW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGF4LWRhdGUtcGlja2VyIGxhYmVsPVwiRnJvbVwiIFsodmFsdWUpXT1cInJ1bGUudmFsdWVcIiAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgPC9heC1kYXRlLXBpY2tlcj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInYm9vbGVhbidcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8YXgtZm9ybS1ncm91cD5cclxuICAgICAgICAgICAgICAgICAgICA8YXgtc2VsZWN0LWJveCAjc2VsZWN0Qm94Qm9vbGVhbiAoc2VsZWN0ZWRJdGVtc0NoYW5nZSk9XCJ2YWx1ZUJvb2xlYW5DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93TnVsbD1cImZhbHNlXCIgW3NlbGVjdGVkVmFsdWVzXT1cInJ1bGUudmFsdWVcIiBtb2RlPVwic2luZ2xlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1kYXRhLXNvdXJjZSBbcHJvdmlkZURhdGFdPVwicHJvdmlkZURhdGFCb29sZWFuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYXgtZGF0YS1zb3VyY2U+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9heC1zZWxlY3QtYm94PlxyXG4gICAgICAgICAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nU3dpdGNoRGVmYXVsdD5cclxuICAgICAgICAgICAgICAgIDxheC1mb3JtLWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgIDxheC10ZXh0LWJveCAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwi2YXZgtiv2KfYsSDZhdmI2LHYryDZhti42LEg2K7ZiNivINix2Kcg2YjYp9ix2K8g2qnZhtuM2K9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJydWxlLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9heC10ZXh0LWJveD5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2F4LWZvcm0tZ3JvdXA+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImlzT25EZW1hbmRMYWJlbFwiPlxyXG5cclxuICAgICAgICAgICAgPGF4LXRleHQtYm94ICN0ZXh0Qm94TmFtZVZhbHVlIFt2YWx1ZV09XCJnZXRPbkRlbWFuZE5hbWUocnVsZS5vbkRlbWFuZExhYmVsKVwiXHJcbiAgICAgICAgICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwib25EZW1hbmRMYWJlbENoYW5nZSgkZXZlbnQpXCIgcGxhY2Vob2xkZXI9XCLZhtin2YUg2YXYqti624zYsSDYrtmI2K8g2LHYpyDZiNin2LHYryDaqdmG24zYr1wiPlxyXG4gICAgICAgICAgICAgICAgPCEtLSA8YXgtdmFsaWRhdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIHR5cGU9XCJyZXF1aXJlZFwiPjwvYXgtdmFsaWRhdGlvbi1ydWxlPlxyXG4gICAgICAgICAgICAgICAgPC9heC12YWxpZGF0aW9uPiAtLT5cclxuICAgICAgICAgICAgPC9heC10ZXh0LWJveD5cclxuXHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLXRlbXBsYXRlICN2YWx1ZVRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgKGNsaWNrKT1cImhhbmRsZUVkaXRDbGljaygpXCI+XHJcblxyXG4gICAgICAgICAgICB7e3J1bGUudGV4dH19XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwiYnV0dG9ucy1saXN0XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd1ZhbHVlICYmIGlzRWRpdGluZyAmJiBtb2RlID09ICduZXcnXCIgY2xhc3M9XCJidXR0b24gdmFyaWFibGVcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnYWN0aXZlLWJ1dHRvbic6IGlzT25EZW1hbmRMYWJlbH1cIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhciBmYS1kb2xsYXItc2lnblwiPjwvaT5cclxuICAgICAgICA8YXgtY2hlY2stYm94IFt2YWx1ZV09XCJpc09uRGVtYW5kTGFiZWxcIiAob25DbGljayk9XCJvbkRlbWFuZExhYmVsKCRldmVudClcIj5cclxuICAgICAgICA8L2F4LWNoZWNrLWJveD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24gY29tbWl0XCIgKGNsaWNrKT1cImhhbmRsZUNvbW1pdENsaWNrKClcIiAqbmdJZj1cImlzRWRpdGluZ1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNoZWNrXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uIHJlbW92ZVwiIChjbGljayk9XCJoYW5kbGVSZW1vdmVDbGljaygpXCIgKm5nSWY9XCJtb2RlID09ICduZXcnXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtdGltZXNcIj48L2k+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
428
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3BGLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLGtCQUFrQixHQUVuQixNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7OztBQVEvQixNQUFNLE9BQU8sMkJBQTJCO0lBQ2QsU0FBUyxDQUF1QjtJQUMzQixjQUFjLENBQXVCO0lBRW5DLGdCQUFnQixDQUF1QjtJQUV2QyxnQkFBZ0IsQ0FBcUI7SUFDOUIsSUFBSSxDQUE0QjtJQUV0RSxTQUFTLEdBQVksSUFBSSxDQUFDO0lBRzFCLElBQUksQ0FBcUI7SUFHekIsTUFBTSxDQUFzQjtJQUc1QixJQUFJLEdBQW1CLEtBQUssQ0FBQztJQUc3QixNQUFNLEdBQVUsRUFBRSxDQUFDO0lBR25CLFlBQVksR0FDVixJQUFJLFlBQVksRUFBMkIsQ0FBQztJ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QUFPLENBQUMsT0FBTyxFQUFFO2FBQzlDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsU0FBUyxDQUFDLElBQVk7UUFDcEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVFLENBQUM7d0dBMVpVLDJCQUEyQjs0RkFBM0IsMkJBQTJCLDhyQkFPM0IseUJBQXlCLGdEQ2pDdEMsK3JNQXNJTTs7NEZENUdPLDJCQUEyQjtrQkFOdkMsU0FBUzsrQkFDRSxlQUFlLFFBRW5CLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLGlCQUNwQixpQkFBaUIsQ0FBQyxJQUFJOzBFQUdiLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDTyxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFFSSxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUVFLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBQ1MsSUFBSTtzQkFBekMsU0FBUzt1QkFBQyx5QkFBeUI7Z0JBRXBDLFNBQVM7c0JBRFIsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxNQUFNO2dCQUtQLFdBQVc7c0JBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYVHJhbnNsYXRvciB9IGZyb20gJ0BhY29yZXgvY29yZSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi4vc2VsZWN0Ym94L3NlbGVjdGJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhUZXh0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFYUXVlcnlCdWlsZGVyQ29udHJvbCxcbiAgQVhRdWVyeUJ1aWxkZXJHcm91cCxcbiAgQVhRdWVyeUJ1aWxkZXJSdWxlLFxuICBBWFF1ZXJ5QnVpbGRlclJ1bGVFdmVudCxcbn0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLmNsYXNzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtcXVlcnktcnVsZScsXG4gIHRlbXBsYXRlVXJsOiAncXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDogeyBjbGFzczogJ2F4IGF4LXF1ZXJ5LXJ1bGUnIH0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyUnVsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveCcpIHNlbGVjdEJveDogQVhTZWxlY3RCb3hDb21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveFZhbHVlJykgc2VsZWN0Qm94VmFsdWU6IEFYU2VsZWN0Qm94Q29tcG9uZW50O1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEJveEJvb2xlYW4nKSBzZWxlY3RCb3hCb29sZWFuOiBBWFNlbGVjdEJveENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCd0ZXh0Qm94TmFtZVZhbHVlJykgdGV4dEJveE5hbWVWYWx1ZTogQVhUZXh0Qm94Q29tcG9uZW50O1xuICBAVmlld0NoaWxkKEFYVmFsaWRhdGlvbkZvcm1Db21wb25lbnQpIGZvcm06IEFYVmFsaWRhdGlvbkZvcm1Db21wb25lbnQ7XG4gIEBJbnB1dCgpXG4gIGlzRWRpdGluZzogYm9vbGVhbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcnVsZTogQVhRdWVyeUJ1aWxkZXJSdWxlO1xuXG4gIEBJbnB1dCgpXG4gIHBhcmVudDogQVhRdWVyeUJ1aWxkZXJHcm91cDtcblxuICBASW5wdXQoKVxuICBtb2RlOiAnbmV3JyB8ICdlZGl0JyA9ICduZXcnO1xuXG4gIEBJbnB1dCgpXG4gIGZpZWxkczogYW55W10gPSBbXTtcblxuICBAT3V0cHV0KClcbiAgb25SdWxlRGVsZXRlOiBFdmVudEVtaXR0ZXI8QVhRdWVyeUJ1aWxkZXJSdWxlRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBydWxlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWFF1ZXJ5QnVpbGRlclJ1bGVFdmVudD4oKTtcblxuICBzaG93VmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc09uRGVtYW5kTGFiZWw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBzaG93U2VsZWN0Qm94OiBib29sZWFuID0gdHJ1ZTtcbiAgc2hvd09wZXJhdG9yU2VsZWN0Qm94OiBib29sZWFuID0gdHJ1ZTtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICBpZiAoZmllbGQuZGF0YUZpZWxkID09IHRoaXMucnVsZS5kYXRhRmllbGQpIHtcbiAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucyA9IGZpZWxkLmNvbnRyb2wub3B0aW9ucztcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwpIHtcbiAgICAgIHRoaXMuaXNPbkRlbWFuZExhYmVsID0gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgcHJvdmlkZURhdGFCb29sZWFuID0gKGUpID0+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHJlc29sdmUoW1xuICAgICAgICB7XG4gICAgICAgICAgdmFsdWU6ICd0cnVlJyxcbiAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIudHJ1ZScpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdmFsdWU6ICdmYWxzZScsXG4gICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmZhbHNlJyksXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICB9KTtcbiAgfTtcblxuICBzYXZlUnVsZSgpIHtcbiAgICB0aGlzLmZvcm0udmFsaWRhdGUoKS50aGVuKChjKSA9PiB7fSk7XG4gIH1cblxuICBwcm92aWRlRGF0YU9wZXJhdG9yID0gKGUpID0+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmICh0aGlzLnJ1bGUuZGF0YVR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLnJ1bGUgJiZcbiAgICAgICAgICB0aGlzLnJ1bGUuY29udHJvbCAmJlxuICAgICAgICAgIHRoaXMucnVsZS5jb250cm9sLnR5cGUgJiZcbiAgICAgICAgICB0aGlzLnJ1bGUuY29udHJvbC50eXBlID09ICdzZWxlY3RCb3gnXG4gICAgICAgICkge1xuICAgICAgICAgIGlmICh0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zLm1vZGUgPT0gJ211bHRpcGxlJykge1xuICAgICAgICAgICAgcmVzb2x2ZShbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2NvbnRhaW5zJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuY29udGFpbnMnKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHZhbHVlOiAnbm90LWNvbnRhaW5zJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LWNvbnRhaW5zJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2NvbnRhaW5zLWFsbCcsXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmNvbnRhaW5zLWFsbCcpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubnVsbCcpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdmFsdWU6ICdub3QtbnVsbCcsXG4gICAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1udWxsJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVzb2x2ZShbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZXF1YWwnKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHZhbHVlOiAnbm90LWVxdWFsJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LWVxdWFsJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ251bGwnLFxuICAgICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LW51bGwnKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXNvbHZlKFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdmFsdWU6ICdlcXVhbCcsXG4gICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5lcXVhbCcpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdmFsdWU6ICdjb250YWlucycsXG4gICAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5jb250YWlucycpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdmFsdWU6ICdzdGFydC13aXRoJyxcbiAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLnN0YXJ0LXdpdGgnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnZW5kLXdpdGgnLFxuICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIuZW5kLXdpdGgnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnbm90LWVxdWFsJyxcbiAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1lcXVhbCcpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcbiAgICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm51bGwnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnbm90LW51bGwnLFxuICAgICAgICAgICAgICB0ZXh0OiBBWFRyYW5zbGF0b3IuZ2V0KCdxdWVyeUJ1aWxkZXIubm90LW51bGwnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnJ1bGUuZGF0YVR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJlc29sdmUoW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnZXF1YWwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmVxdWFsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogJ2d0JyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ncmVhdGVyLXRoYW4nKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnZ3RlJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ncmVhdGVyLXRoYW4tZXF1YWwnKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnbHQnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmxlc3MtdGhhbicpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdsdGUnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmxlc3MtdGhhbi1lcXVhbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdub3QtZXF1YWwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1lcXVhbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ub3QtbnVsbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0pO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucnVsZS5kYXRhVHlwZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgIHJlc29sdmUoW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnZXF1YWwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmVxdWFsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogJ251bGwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm51bGwnKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnbm90LW51bGwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1udWxsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgXSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5ydWxlLmRhdGFUeXBlID09PSAnZGF0ZXRpbWUnIHx8IHRoaXMucnVsZS5kYXRhVHlwZSA9PT0gJ2RhdGUnKSB7XG4gICAgICAgIHJlc29sdmUoW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnZXF1YWwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmVxdWFsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogJ2d0JyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ncmVhdGVyLXRoYW4nKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnZ3RlJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ncmVhdGVyLXRoYW4tZXF1YWwnKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhbHVlOiAnbHQnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmxlc3MtdGhhbicpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdsdGUnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLmxlc3MtdGhhbi1lcXVhbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdub3QtZXF1YWwnLFxuICAgICAgICAgICAgdGV4dDogQVhUcmFuc2xhdG9yLmdldCgncXVlcnlCdWlsZGVyLm5vdC1lcXVhbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsdWU6ICdudWxsJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5udWxsJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogJ25vdC1udWxsJyxcbiAgICAgICAgICAgIHRleHQ6IEFYVHJhbnNsYXRvci5nZXQoJ3F1ZXJ5QnVpbGRlci5ub3QtbnVsbCcpLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0pO1xuICAgICAgfVxuICAgICAgcmVzb2x2ZShbXSk7XG4gICAgfSk7XG4gIH07XG5cbiAgaGFuZGxlRWRpdENsaWNrKCkge1xuICAgIHRoaXMuaXNFZGl0aW5nID0gdHJ1ZTtcbiAgfVxuXG4gIGhhbmRsZUNvbW1pdENsaWNrKCkge1xuICAgIHRoaXMuaXNFZGl0aW5nID0gZmFsc2U7XG4gICAgdGhpcy5ydWxlQ2hhbmdlZC5lbWl0KHsgaXRlbXM6IHRoaXMucnVsZSwgY29tcG9uZW50OiB0aGlzIH0pO1xuICB9XG4gIGhhbmRsZVJlbW92ZUNsaWNrKCkge1xuICAgIHRoaXMub25SdWxlRGVsZXRlLmVtaXQoeyBpdGVtczogdGhpcy5ydWxlLCBjb21wb25lbnQ6IHRoaXMgfSk7XG4gIH1cbiAgY2FwdGlvbkNoYW5nZShlKSB7XG4gICAgaWYgKGUuc2VsZWN0ZWRJdGVtc1swXSkge1xuICAgICAgdGhpcy5ydWxlLmNhcHRpb24gPSBlLnNlbGVjdGVkSXRlbXNbMF0uY2FwdGlvbjtcbiAgICAgIHRoaXMucnVsZS5kYXRhRmllbGQgPSBlLnNlbGVjdGVkSXRlbXNbMF0uZGF0YUZpZWxkO1xuICAgICAgdGhpcy5ydWxlLmRhdGFUeXBlID0gZS5zZWxlY3RlZEl0ZW1zWzBdLmRhdGFUeXBlO1xuICAgICAgdGhpcy5ydWxlLmNvbnRyb2wgPVxuICAgICAgICBlLnNlbGVjdGVkSXRlbXNbMF0uY29udHJvbCB8fCBuZXcgQVhRdWVyeUJ1aWxkZXJDb250cm9sKCk7XG4gICAgICB0aGlzLnJ1bGUuZGF0YUZpZWxkSXRlbVswXSA9IGUuc2VsZWN0ZWRJdGVtc1swXTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zZWxlY3RCb3gpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wudHlwZSA9PT0gJ3NlbGVjdEJveCcgJiZcbiAgICAgICAgdGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucy5tb2RlID09ICdtdWx0aXBsZSdcbiAgICAgICkge1xuICAgICAgICB0aGlzLnJ1bGUub3BlcmF0b3IgPSAnY29udGFpbnMnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ydWxlLm9wZXJhdG9yID0gJ2VxdWFsJztcbiAgICAgIH1cbiAgICAgIHRoaXMuc2VsZWN0Qm94LnJlZnJlc2goKTtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dPcGVyYXRvclNlbGVjdEJveCA9IGZhbHNlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93T3BlcmF0b3JTZWxlY3RCb3ggPSB0cnVlO1xuICAgIH0sIDIwKTtcblxuICAgIHRoaXMucnVsZS52YWx1ZSA9IG51bGw7XG4gICAgdGhpcy5ydWxlLnZhbHVlSXRlbSA9IFtdO1xuICAgIHRoaXMucnVsZS50ZXh0ID0gJyc7XG5cbiAgICBpZiAodGhpcy5ydWxlLmNvbnRyb2wudHlwZSA9PT0gJ3NlbGVjdEJveCcgJiYgdGhpcy5zZWxlY3RCb3hWYWx1ZSkge1xuICAgICAgdGhpcy5zaG93U2VsZWN0Qm94ID0gZmFsc2U7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zaG93U2VsZWN0Qm94ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZWxlY3RCb3hWYWx1ZS5yZWZyZXNoKCk7XG4gICAgICB9LCAyMCk7XG4gICAgfVxuICAgIGlmICh0aGlzLnJ1bGUuY29udHJvbC50eXBlID09ICdib29sZWFuJykge1xuICAgICAgdGhpcy5zZWxlY3RCb3hCb29sZWFuLnJlZnJlc2goKTtcbiAgICB9XG4gICAgdGhpcy5ydWxlQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBpdGVtczogdGhpcy5ydWxlIH0pO1xuICB9XG5cbiAgb3BlcmF0b3JDaGFuZ2UoZSkge1xuICAgIHRoaXMucnVsZS5vcGVyYXRvciA9IGVbMF0udmFsdWU7XG4gICAgdGhpcy5ydWxlQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBpdGVtczogdGhpcy5ydWxlIH0pO1xuXG4gICAgaWYgKGVbMF0udmFsdWUgIT09ICdudWxsJyAmJiBlWzBdLnZhbHVlICE9PSAnbm90LW51bGwnKSB7XG4gICAgICB0aGlzLnNob3dWYWx1ZSA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2hvd1ZhbHVlID0gZmFsc2U7XG4gICAgICB0aGlzLnJ1bGUudmFsdWUgPSAnJztcbiAgICAgIHRoaXMucnVsZS50ZXh0ID0gJyc7XG4gICAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gW107XG4gICAgICB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9ICcnO1xuICAgIH1cbiAgfVxuICB2YWx1ZUNoYW5nZShlKSB7XG4gICAgLy8gdGhpcy5ydWxlLnRleHQgPSBlLnZhbHVlID09IHVuZGVmaW5lZCA/IGVbMF0udmFsdWUgOiAoZS52YWx1ZSA9PSBudWxsID8gJycgOiBlLnZhbHVlKTtcblxuICAgIHRoaXMucnVsZS50ZXh0ID0gZVswXVxuICAgICAgPyBlWzBdLnZhbHVlID09IG51bGxcbiAgICAgICAgPyAnJ1xuICAgICAgICA6IGVbMF0udmFsdWVcbiAgICAgIDogZS52YWx1ZSA9PSBudWxsXG4gICAgICA/ICcnXG4gICAgICA6IGUudmFsdWU7XG4gICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSAnJztcbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGl0ZW1zOiB0aGlzLnJ1bGUgfSk7XG4gIH1cbiAgb25EZW1hbmRMYWJlbENoYW5nZShlKSB7XG4gICAgLy8gdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSBlLnZhbHVlID09IHVuZGVmaW5lZCA/ICc/Pz8/fCcgKyBlWzBdLnZhbHVlIDogJz8/Pz98JyArIGUudmFsdWU7XG4gICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSBlWzBdXG4gICAgICA/ICc/Pz8/fCcgKyAoZVswXS52YWx1ZSA9PSBudWxsID8gJycgOiBlWzBdLnZhbHVlKVxuICAgICAgOiAnPz8/P3wnICsgKGUudmFsdWUgPT0gbnVsbCA/ICcnIDogZS52YWx1ZSk7XG4gICAgdGhpcy5ydWxlLnZhbHVlID0gJyc7XG4gICAgdGhpcy5ydWxlLnRleHQgPSAnJztcbiAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gW107XG5cbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGl0ZW1zOiB0aGlzLnJ1bGUgfSk7XG4gIH1cbiAgdmFsdWVCb29sZWFuQ2hhbmdlKGUpIHtcbiAgICAvLyB0aGlzLnJ1bGUudGV4dCA9IGUudmFsdWUgPT0gdW5kZWZpbmVkID8gZVswXS52YWx1ZSA6IChlLnZhbHVlID09IG51bGwgPyAnJyA6IGUudmFsdWUpO1xuICAgIHRoaXMucnVsZS50ZXh0ID0gZVswXVxuICAgICAgPyBlWzBdLnZhbHVlID09IG51bGxcbiAgICAgICAgPyAnJ1xuICAgICAgICA6IGVbMF0udmFsdWVcbiAgICAgIDogZS52YWx1ZSA9PSBudWxsXG4gICAgICA/ICcnXG4gICAgICA6IGUudmFsdWU7XG4gICAgdGhpcy5ydWxlLnZhbHVlID0gZS52YWx1ZSA9PSB1bmRlZmluZWQgPyBlWzBdLnZhbHVlIDogZS52YWx1ZTtcbiAgICB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9ICcnO1xuICAgIHRoaXMucnVsZUNoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgaXRlbXM6IHRoaXMucnVsZSB9KTtcbiAgfVxuICBnZXRPbkRlbWFuZE5hbWUodikge1xuICAgIHJldHVybiB2ID8gdi5zcGxpdCgnfCcpWzFdIDogJyc7XG4gIH1cbiAgc2VsZWN0ZWRJdGVtc0NoYW5nZShlKSB7XG4gICAgbGV0IG4gPSB0aGlzLmdldE9wdGlvbigndGV4dEZpZWxkJyk7XG5cbiAgICBpZiAodGhpcy5ydWxlLmNvbnRyb2wub3B0aW9ucy5tb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgdGhpcy5ydWxlLnRleHQgPSBlWzBdW25dO1xuICAgICAgaWYgKHRoaXMucnVsZSAmJiB0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zLnZhbHVlRmllbGQpIHtcbiAgICAgICAgdGhpcy5ydWxlLnZhbHVlID0gZVswXVt0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zLnZhbHVlRmllbGRdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ydWxlLnZhbHVlID0gZVswXS52YWx1ZTtcbiAgICAgIH1cbiAgICAgIHRoaXMucnVsZS52YWx1ZUl0ZW1bMF0gPSBlWzBdO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJ1bGUudGV4dCA9IGUubWFwKCh4KSA9PiB4W25dKS5qb2luKCctICcpO1xuICAgICAgY29uc3QgVEhBVCA9IHRoaXM7XG4gICAgICBpZiAoVEhBVC5ydWxlICYmIFRIQVQucnVsZS5jb250cm9sLm9wdGlvbnMudmFsdWVGaWVsZCkge1xuICAgICAgICBUSEFULnJ1bGUudmFsdWUgPSBlLm1hcChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgIHJldHVybiBpdGVtW1RIQVQucnVsZS5jb250cm9sLm9wdGlvbnMudmFsdWVGaWVsZF07XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ydWxlLnZhbHVlID0gZS5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgICByZXR1cm4gaXRlbS52YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLnJ1bGUudmFsdWVJdGVtID0gZTtcbiAgICB9XG5cbiAgICB0aGlzLnJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGl0ZW1zOiB0aGlzLnJ1bGUgfSk7XG4gICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSAnJztcbiAgfVxuICBvbkRlbWFuZExhYmVsKGUpIHtcbiAgICAvLyBpZiAoZS52YWx1ZSAmJiAodGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPT0gJz8/Pz98JyB8fCB0aGlzLnJ1bGUub25EZW1hbmRMYWJlbCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID09PSBudWxsIHx8IHRoaXMucnVsZS5vbkRlbWFuZExhYmVsID09PSAnJykpIHtcbiAgICAvLyAgIHRoaXMudGV4dEJveE5hbWVWYWx1ZS5mb2N1cygpO1xuICAgIC8vIH1cbiAgICBpZiAoZS52YWx1ZSA9PSBmYWxzZSkge1xuICAgICAgdGhpcy5ydWxlLm9uRGVtYW5kTGFiZWwgPSAnJztcbiAgICB9XG4gICAgdGhpcy5pc09uRGVtYW5kTGFiZWwgPSBlLnZhbHVlO1xuICB9XG4gIGdldFByb3ZpZGVEYXRhID0gKGUpID0+IHtcbiAgICBpZiAoXG4gICAgICB0aGlzLnJ1bGUgJiZcbiAgICAgIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgJiZcbiAgICAgIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMuZGF0YVNvdXJjZVxuICAgICkge1xuICAgICAgcmV0dXJuIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMuZGF0YVNvdXJjZSh7XG4gICAgICAgIC4uLmUsXG4gICAgICAgIG9wdGlvbnNEYXRhOiB7IC4uLnRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBnZXRPcHRpb24obmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMucnVsZS5jb250cm9sLm9wdGlvbnMgPyB0aGlzLnJ1bGUuY29udHJvbC5vcHRpb25zW25hbWVdIDogbnVsbDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbmRpdGlvblwiICpuZ0lmPVwicGFyZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQge3twYXJlbnQuY29uZGl0aW9ufX1cIj5cbiAgICAgICAgPHNwYW4+e3twYXJlbnQuY29uZGl0aW9ufX08L3NwYW4+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJoYW5kbGVyXCI+XG4gICAgPGkgY2xhc3M9XCJmYXIgZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbFwiPjwvaT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiY2FwdGlvblwiIFtuZ0NsYXNzXT1cInsnZWRpdGFibGUnOiBpc0VkaXRpbmd9XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWRpdGluZztlbHNlIGZpZWxkc1RlbXBsYXRlXCI+XG4gICAgICAgIDxheC1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggW3JlYWRvbmx5XT1cIm1vZGUgPT0gJ2VkaXQnXCIgKHNlbGVjdGlvbkNoYW5nZWQpPVwiY2FwdGlvbkNoYW5nZSgkZXZlbnQpXCIgYWxsb3dOdWxsPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIFsoc2VsZWN0ZWRJdGVtcyldPVwicnVsZS5kYXRhRmllbGRJdGVtXCIgdGV4dEZpZWxkPVwiY2FwdGlvblwiIHZhbHVlRmllbGQ9XCJkYXRhRmllbGRcIiBbaXRlbXNdPVwiZmllbGRzXCJcbiAgICAgICAgICAgICAgICBtb2RlPVwic2luZ2xlXCI+XG4gICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgICAgIDwvYXgtZm9ybS1ncm91cD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2ZpZWxkc1RlbXBsYXRlPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJoYW5kbGVFZGl0Q2xpY2soKVwiPlxuICAgICAgICAgICAge3tydWxlLmNhcHRpb259fVxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJvcGVyYXRvclwiIFtuZ0NsYXNzXT1cInsnZWRpdGFibGUnOiBpc0VkaXRpbmcsJ3JhZGl1cyc6IXNob3dWYWx1ZX1cIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFZGl0aW5nO2Vsc2Ugb3BlcmF0b3JUZW1wbGF0ZVwiPlxuICAgICAgICA8YXgtZm9ybS1ncm91cD5cbiAgICAgICAgICAgIDxheC1zZWxlY3QtYm94IFtyZWFkb25seV09XCJtb2RlID09ICdlZGl0J1wiICpuZ0lmPVwic2hvd09wZXJhdG9yU2VsZWN0Qm94XCIgWyhzZWxlY3RlZFZhbHVlcyldPVwicnVsZS5vcGVyYXRvclwiXG4gICAgICAgICAgICAgICAgI3NlbGVjdEJveCAoc2VsZWN0ZWRJdGVtc0NoYW5nZSk9XCJvcGVyYXRvckNoYW5nZSgkZXZlbnQpXCIgYWxsb3dOdWxsPVwiZmFsc2VcIiBtb2RlPVwic2luZ2xlXCI+XG4gICAgICAgICAgICAgICAgPGF4LWRhdGEtc291cmNlIFtwcm92aWRlRGF0YV09XCJwcm92aWRlRGF0YU9wZXJhdG9yXCI+XG4gICAgICAgICAgICAgICAgPC9heC1kYXRhLXNvdXJjZT5cbiAgICAgICAgICAgIDwvYXgtc2VsZWN0LWJveD5cbiAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjb3BlcmF0b3JUZW1wbGF0ZT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHRcIiAoY2xpY2spPVwiaGFuZGxlRWRpdENsaWNrKClcIj5cbiAgICAgICAgICAgIHt7KCdxdWVyeUJ1aWxkZXIuJytydWxlLm9wZXJhdG9yKSB8IHRyYW5zfX1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cInNob3dWYWx1ZVwiIGNsYXNzPVwidmFsdWVcIiBbbmdDbGFzc109XCJ7J2VkaXRhYmxlJzogaXNFZGl0aW5nfVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0VkaXRpbmc7ZWxzZSB2YWx1ZVRlbXBsYXRlXCI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cIiBydWxlLmNvbnRyb2wgJiYgIWlzT25EZW1hbmRMYWJlbFwiIFtuZ1N3aXRjaF09XCJydWxlLmNvbnRyb2wudHlwZVwiPlxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ3RleHRCb3gnXCI+XG4gICAgICAgICAgICAgICAgPGF4LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgIDxheC10ZXh0LWJveCAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwi2YXZgtiv2KfYsSDZhdmI2LHYryDZhti42LEg2K7ZiNivINix2Kcg2YjYp9ix2K8g2qnZhtuM2K9cIlxuICAgICAgICAgICAgICAgICAgICAgICAgWyh2YWx1ZSldPVwicnVsZS52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LXRleHQtYm94PlxuICAgICAgICAgICAgICAgIDwvYXgtZm9ybS1ncm91cD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdEJveCdcIj5cbiAgICAgICAgICAgICAgICA8YXgtZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggKm5nSWY9XCJzaG93U2VsZWN0Qm94XCIgW21vZGVdPVwiZ2V0T3B0aW9uKCdtb2RlJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JlbW90ZU9wZXJhdGlvbl09XCJnZXRPcHRpb24oJ3JlbW90ZU9wZXJhdGlvbicpXCIgW3ZhbHVlRmllbGRdPVwiZ2V0T3B0aW9uKCd2YWx1ZUZpZWxkJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLZhdmC2K/Yp9ixINmF2YjYsdivINmG2LjYsSDYrtmI2K8g2LHYpyDZiNin2LHYryDaqdmG24zYr1wiIFt0ZXh0RmllbGRdPVwiZ2V0T3B0aW9uKCd0ZXh0RmllbGQnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKHNlbGVjdGVkSXRlbXMpXT1cInJ1bGUudmFsdWVJdGVtXCIgKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwic2VsZWN0ZWRJdGVtc0NoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICNzZWxlY3RCb3hWYWx1ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1kYXRhLXNvdXJjZSBbcHJvdmlkZURhdGFdPVwiZ2V0UHJvdmlkZURhdGFcIj48L2F4LWRhdGEtc291cmNlPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgICAgICAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidudW1iZXJCb3gnXCI+XG4gICAgICAgICAgICAgICAgPGF4LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgIDxheC1udW1iZXItYm94IFtkZWNpbWFsTnVtYmVyXT1cIjJcIiAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cItmF2YLYr9in2LEg2YXZiNix2K8g2YbYuNixINiu2YjYryDYsdinINmI2KfYsdivINqp2YbbjNivXCIgWyh2YWx1ZSldPVwicnVsZS52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LW51bWJlci1ib3g+XG4gICAgICAgICAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZGF0ZXRpbWUnXCI+XG4gICAgICAgICAgICAgICAgPGF4LWRhdGUtcGlja2VyIGxhYmVsPVwiRnJvbVwiIFsodmFsdWUpXT1cInJ1bGUudmFsdWVcIiAob25WYWx1ZUNoYW5nZWQpPVwidmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDwvYXgtZGF0ZS1waWNrZXI+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2Jvb2xlYW4nXCI+XG5cbiAgICAgICAgICAgICAgICA8YXgtZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3ggI3NlbGVjdEJveEJvb2xlYW4gKHNlbGVjdGVkSXRlbXNDaGFuZ2UpPVwidmFsdWVCb29sZWFuQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dOdWxsPVwiZmFsc2VcIiBbc2VsZWN0ZWRWYWx1ZXNdPVwicnVsZS52YWx1ZVwiIG1vZGU9XCJzaW5nbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1kYXRhLXNvdXJjZSBbcHJvdmlkZURhdGFdPVwicHJvdmlkZURhdGFCb29sZWFuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2F4LWRhdGEtc291cmNlPlxuICAgICAgICAgICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgICAgICAgICAgICAgPC9heC1mb3JtLWdyb3VwPlxuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgICAgICA8YXgtZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICAgICAgPGF4LXRleHQtYm94IChvblZhbHVlQ2hhbmdlZCk9XCJ2YWx1ZUNoYW5nZSgkZXZlbnQpXCIgcGxhY2Vob2xkZXI9XCLZhdmC2K/Yp9ixINmF2YjYsdivINmG2LjYsSDYrtmI2K8g2LHYpyDZiNin2LHYryDaqdmG24zYr1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKHZhbHVlKV09XCJydWxlLnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvYXgtdGV4dC1ib3g+XG5cbiAgICAgICAgICAgICAgICA8L2F4LWZvcm0tZ3JvdXA+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNPbkRlbWFuZExhYmVsXCI+XG5cbiAgICAgICAgICAgIDxheC10ZXh0LWJveCAjdGV4dEJveE5hbWVWYWx1ZSBbdmFsdWVdPVwiZ2V0T25EZW1hbmROYW1lKHJ1bGUub25EZW1hbmRMYWJlbClcIlxuICAgICAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJvbkRlbWFuZExhYmVsQ2hhbmdlKCRldmVudClcIiBwbGFjZWhvbGRlcj1cItmG2KfZhSDZhdiq2LrbjNixINiu2YjYryDYsdinINmI2KfYsdivINqp2YbbjNivXCI+XG4gICAgICAgICAgICAgICAgPCEtLSA8YXgtdmFsaWRhdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSB0eXBlPVwicmVxdWlyZWRcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgICAgICAgICA8L2F4LXZhbGlkYXRpb24+IC0tPlxuICAgICAgICAgICAgPC9heC10ZXh0LWJveD5cblxuXG4gICAgICAgIDwvZGl2PlxuXG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICN2YWx1ZVRlbXBsYXRlPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJoYW5kbGVFZGl0Q2xpY2soKVwiPlxuXG4gICAgICAgICAgICB7e3J1bGUudGV4dH19XG5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiYnV0dG9ucy1saXN0XCI+XG4gICAgPGRpdiAqbmdJZj1cInNob3dWYWx1ZSAmJiBpc0VkaXRpbmcgJiYgbW9kZSA9PSAnbmV3J1wiIGNsYXNzPVwiYnV0dG9uIHZhcmlhYmxlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieydhY3RpdmUtYnV0dG9uJzogaXNPbkRlbWFuZExhYmVsfVwiPlxuICAgICAgICA8aSBjbGFzcz1cImZhciBmYS1kb2xsYXItc2lnblwiPjwvaT5cbiAgICAgICAgPGF4LWNoZWNrLWJveCBbdmFsdWVdPVwiaXNPbkRlbWFuZExhYmVsXCIgKG9uQ2xpY2spPVwib25EZW1hbmRMYWJlbCgkZXZlbnQpXCI+XG4gICAgICAgIDwvYXgtY2hlY2stYm94PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImJ1dHRvbiBjb21taXRcIiAoY2xpY2spPVwiaGFuZGxlQ29tbWl0Q2xpY2soKVwiICpuZ0lmPVwiaXNFZGl0aW5nXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNoZWNrXCI+PC9pPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24gcmVtb3ZlXCIgKGNsaWNrKT1cImhhbmRsZVJlbW92ZUNsaWNrKClcIiAqbmdJZj1cIm1vZGUgPT0gJ25ldydcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtdGltZXNcIj48L2k+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -39,4 +39,4 @@ export class AXQueryBuilderPopup {
39
39
  name;
40
40
  type;
41
41
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFRbkQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxJQUFJLEdBQThCLFNBQVMsQ0FBQztJQUM1QyxPQUFPLEdBQVEsRUFBRSxDQUFDO0NBQ25CO0FBRUQsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixTQUFTLENBQVM7SUFDbEIsT0FBTyxDQUFTO0lBQ2hCLFFBQVEsQ0FBeUI7SUFDakMsT0FBTyxDQUF3QjtJQUMvQixRQUFRLENBQVM7SUFDakIsS0FBSyxDQUFPO0lBQ1osSUFBSSxDQUFVO0lBQ2QsYUFBYSxDQUFNO0lBQ25CLFNBQVMsQ0FBTztJQUNoQixhQUFhLENBQVU7Q0FDeEI7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLEtBQUssQ0FBNEI7SUFDakMsU0FBUyxDQUFTO0lBQ2xCLFdBQVcsQ0FBUztJQUNwQixrQkFBa0IsQ0FBTztDQUMxQjtBQUNELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsT0FBTyxDQUFTO0lBQ2hCLFNBQVMsQ0FBUztJQUNsQixRQUFRLENBQXlCO0lBQ2pDLE9BQU8sQ0FBTztJQUNkLE9BQU8sQ0FBTztDQUNmO0FBRUQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFdBQW9DO0lBQy9FLEtBQUssQ0FBcUI7Q0FDM0I7QUFFRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsV0FBcUM7SUFDakYsS0FBSyxDQUFzQjtJQUMzQixNQUFNLENBQXNCO0NBQzdCO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixJQUFJLENBQVM7SUFDYixJQUFJLENBQVM7Q0FDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGF0YUV2ZW50IH0gZnJvbSAnLi4vYmFzZS9ldmVudHMuY2xhc3MnO1xyXG5pbXBvcnQgeyBBWFRyYW5zbGF0b3IgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xyXG5cclxuZXhwb3J0IHR5cGUgQVhRdWVyeUJ1aWxkZXJEYXRhVHlwZSA9ICdzdHJpbmcnIHwgJ251bWJlcicgfCAnZGF0ZScgfCAndGltZScgfCAnZGF0ZXRpbWUnIHwgJ2Jvb2xlYW4nO1xyXG5leHBvcnQgdHlwZSBBWFF1ZXJ5QnVpbGRlckdyb3VwSXRlbSA9IEFYUXVlcnlCdWlsZGVyR3JvdXAgfCBBWFF1ZXJ5QnVpbGRlclJ1bGU7XHJcbmV4cG9ydCB0eXBlIEFYUXVlcnlCdWlsZGVyQ29udHJvbFR5cGUgPSAndGV4dEJveCcgfCAnc2VsZWN0Qm94JyB8ICdudW1iZXJCb3gnIHwgJ2RhdGFQaWNrZXInIHwgJ2xvdicgfCAnYm9vbGVhbic7XHJcbmV4cG9ydCB0eXBlIEFYUXVlcnlCdWlsZGVyU3RyaW5nVHlwZSA9ICdzaW1wbGUnIHwgJ3NxbCcgfCAnc29kb2NvJyB8ICdlbGFzdGljJztcclxuXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlckNvbnRyb2wge1xyXG4gIHR5cGU6IEFYUXVlcnlCdWlsZGVyQ29udHJvbFR5cGUgPSAndGV4dEJveCc7XHJcbiAgb3B0aW9uczogYW55ID0ge307XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlclJ1bGUge1xyXG4gIGRhdGFGaWVsZDogc3RyaW5nO1xyXG4gIGNhcHRpb246IHN0cmluZztcclxuICBkYXRhVHlwZTogQVhRdWVyeUJ1aWxkZXJEYXRhVHlwZTtcclxuICBjb250cm9sOiBBWFF1ZXJ5QnVpbGRlckNvbnRyb2w7XHJcbiAgb3BlcmF0b3I6IHN0cmluZztcclxuICB2YWx1ZT86IGFueTtcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIGRhdGFGaWVsZEl0ZW06IGFueTtcclxuICB2YWx1ZUl0ZW0/OiBhbnk7XHJcbiAgb25EZW1hbmRMYWJlbD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyR3JvdXAge1xyXG4gIGl0ZW1zOiBBWFF1ZXJ5QnVpbGRlckdyb3VwSXRlbVtdO1xyXG4gIGNvbmRpdGlvbjogc3RyaW5nO1xyXG4gIHF1ZXJ5U3RyaW5nOiBzdHJpbmc7XHJcbiAgcXVlcnlTdHJpbmdFbGFzdGljOnN0cmluZ1xyXG59XHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlckZpZWxkIHtcclxuICBjYXB0aW9uOiBzdHJpbmc7XHJcbiAgZGF0YUZpZWxkOiBzdHJpbmc7XHJcbiAgZGF0YVR5cGU6IEFYUXVlcnlCdWlsZGVyRGF0YVR5cGU7XHJcbiAgZGVmYXVsdD86IGFueTtcclxuICBvcHRpb25zPzogYW55O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJSdWxlRXZlbnQgZXh0ZW5kcyBBWERhdGFFdmVudDxBWFF1ZXJ5QnVpbGRlclJ1bGVFdmVudD4ge1xyXG4gIGl0ZW1zOiBBWFF1ZXJ5QnVpbGRlclJ1bGU7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlckdyb3VwRXZlbnQgZXh0ZW5kcyBBWERhdGFFdmVudDxBWFF1ZXJ5QnVpbGRlckdyb3VwRXZlbnQ+IHtcclxuICBpdGVtcz86IEFYUXVlcnlCdWlsZGVyUnVsZTtcclxuICBncm91cHM6IEFYUXVlcnlCdWlsZGVyR3JvdXA7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlclBvcHVwIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG59XHJcbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFRbkQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxJQUFJLEdBQThCLFNBQVMsQ0FBQztJQUM1QyxPQUFPLEdBQVEsRUFBRSxDQUFDO0NBQ25CO0FBRUQsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixTQUFTLENBQVM7SUFDbEIsT0FBTyxDQUFTO0lBQ2hCLFFBQVEsQ0FBeUI7SUFDakMsT0FBTyxDQUF3QjtJQUMvQixRQUFRLENBQVM7SUFDakIsS0FBSyxDQUFPO0lBQ1osSUFBSSxDQUFVO0lBQ2QsYUFBYSxDQUFNO0lBQ25CLFNBQVMsQ0FBTztJQUNoQixhQUFhLENBQVU7Q0FDeEI7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLEtBQUssQ0FBNEI7SUFDakMsU0FBUyxDQUFTO0lBQ2xCLFdBQVcsQ0FBUztJQUNwQixrQkFBa0IsQ0FBTztDQUMxQjtBQUNELE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsT0FBTyxDQUFTO0lBQ2hCLFNBQVMsQ0FBUztJQUNsQixRQUFRLENBQXlCO0lBQ2pDLE9BQU8sQ0FBTztJQUNkLE9BQU8sQ0FBTztDQUNmO0FBRUQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFdBQW9DO0lBQy9FLEtBQUssQ0FBcUI7Q0FDM0I7QUFFRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsV0FBcUM7SUFDakYsS0FBSyxDQUFzQjtJQUMzQixNQUFNLENBQXNCO0NBQzdCO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixJQUFJLENBQVM7SUFDYixJQUFJLENBQVM7Q0FDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGF0YUV2ZW50IH0gZnJvbSAnLi4vYmFzZS9ldmVudHMuY2xhc3MnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdG9yIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcblxuZXhwb3J0IHR5cGUgQVhRdWVyeUJ1aWxkZXJEYXRhVHlwZSA9ICdzdHJpbmcnIHwgJ251bWJlcicgfCAnZGF0ZScgfCAndGltZScgfCAnZGF0ZXRpbWUnIHwgJ2Jvb2xlYW4nO1xuZXhwb3J0IHR5cGUgQVhRdWVyeUJ1aWxkZXJHcm91cEl0ZW0gPSBBWFF1ZXJ5QnVpbGRlckdyb3VwIHwgQVhRdWVyeUJ1aWxkZXJSdWxlO1xuZXhwb3J0IHR5cGUgQVhRdWVyeUJ1aWxkZXJDb250cm9sVHlwZSA9ICd0ZXh0Qm94JyB8ICdzZWxlY3RCb3gnIHwgJ251bWJlckJveCcgfCAnZGF0YVBpY2tlcicgfCAnbG92JyB8ICdib29sZWFuJztcbmV4cG9ydCB0eXBlIEFYUXVlcnlCdWlsZGVyU3RyaW5nVHlwZSA9ICdzaW1wbGUnIHwgJ3NxbCcgfCAnc29kb2NvJyB8ICdlbGFzdGljJztcblxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyQ29udHJvbCB7XG4gIHR5cGU6IEFYUXVlcnlCdWlsZGVyQ29udHJvbFR5cGUgPSAndGV4dEJveCc7XG4gIG9wdGlvbnM6IGFueSA9IHt9O1xufVxuXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJSdWxlIHtcbiAgZGF0YUZpZWxkOiBzdHJpbmc7XG4gIGNhcHRpb246IHN0cmluZztcbiAgZGF0YVR5cGU6IEFYUXVlcnlCdWlsZGVyRGF0YVR5cGU7XG4gIGNvbnRyb2w6IEFYUXVlcnlCdWlsZGVyQ29udHJvbDtcbiAgb3BlcmF0b3I6IHN0cmluZztcbiAgdmFsdWU/OiBhbnk7XG4gIHRleHQ/OiBzdHJpbmc7XG4gIGRhdGFGaWVsZEl0ZW06IGFueTtcbiAgdmFsdWVJdGVtPzogYW55O1xuICBvbkRlbWFuZExhYmVsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJHcm91cCB7XG4gIGl0ZW1zOiBBWFF1ZXJ5QnVpbGRlckdyb3VwSXRlbVtdO1xuICBjb25kaXRpb246IHN0cmluZztcbiAgcXVlcnlTdHJpbmc6IHN0cmluZztcbiAgcXVlcnlTdHJpbmdFbGFzdGljOnN0cmluZ1xufVxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyRmllbGQge1xuICBjYXB0aW9uOiBzdHJpbmc7XG4gIGRhdGFGaWVsZDogc3RyaW5nO1xuICBkYXRhVHlwZTogQVhRdWVyeUJ1aWxkZXJEYXRhVHlwZTtcbiAgZGVmYXVsdD86IGFueTtcbiAgb3B0aW9ucz86IGFueTtcbn1cblxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyUnVsZUV2ZW50IGV4dGVuZHMgQVhEYXRhRXZlbnQ8QVhRdWVyeUJ1aWxkZXJSdWxlRXZlbnQ+IHtcbiAgaXRlbXM6IEFYUXVlcnlCdWlsZGVyUnVsZTtcbn1cblxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudCBleHRlbmRzIEFYRGF0YUV2ZW50PEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudD4ge1xuICBpdGVtcz86IEFYUXVlcnlCdWlsZGVyUnVsZTtcbiAgZ3JvdXBzOiBBWFF1ZXJ5QnVpbGRlckdyb3VwO1xufVxuXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJQb3B1cCB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufVxuIl19
@@ -71,12 +71,12 @@ export class AXQueryBuilderComponent extends AXBaseComponent {
71
71
  }
72
72
  }
73
73
  }
74
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderComponent, deps: [{ token: i0.ElementRef }, { token: i1.AXToastService }], target: i0.ɵɵFactoryTarget.Component });
75
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: AXQueryBuilderComponent, selector: "ax-query-builder", inputs: { query: "query", mode: "mode", fields: "fields" }, outputs: { onRuleChanged: "onRuleChanged" }, viewQueries: [{ propertyName: "queryGroup", first: true, predicate: ["queryGroup"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\r\n (groupRuleChanged)=\"ruleChanged($event)\">\r\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{margin-inline-start:10px;border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"], dependencies: [{ kind: "component", type: i2.AXQueryBuilderGroupComponent, selector: "ax-query-group", inputs: ["group", "parent", "fields", "mode"], outputs: ["groupRuleChanged"] }], encapsulation: i0.ViewEncapsulation.None });
74
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderComponent, deps: [{ token: i0.ElementRef }, { token: i1.AXToastService }], target: i0.ɵɵFactoryTarget.Component });
75
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AXQueryBuilderComponent, selector: "ax-query-builder", inputs: { query: "query", mode: "mode", fields: "fields" }, outputs: { onRuleChanged: "onRuleChanged" }, viewQueries: [{ propertyName: "queryGroup", first: true, predicate: ["queryGroup"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\n (groupRuleChanged)=\"ruleChanged($event)\">\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{margin-inline-start:10px;border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"], dependencies: [{ kind: "component", type: i2.AXQueryBuilderGroupComponent, selector: "ax-query-group", inputs: ["group", "parent", "fields", "mode"], outputs: ["groupRuleChanged"] }], encapsulation: i0.ViewEncapsulation.None });
76
76
  }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderComponent, decorators: [{
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderComponent, decorators: [{
78
78
  type: Component,
79
- args: [{ selector: 'ax-query-builder', encapsulation: ViewEncapsulation.None, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\r\n (groupRuleChanged)=\"ruleChanged($event)\">\r\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{margin-inline-start:10px;border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"] }]
79
+ args: [{ selector: 'ax-query-builder', encapsulation: ViewEncapsulation.None, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\n (groupRuleChanged)=\"ruleChanged($event)\">\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{margin-inline-start:10px;border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"] }]
80
80
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.AXToastService }]; }, propDecorators: { queryGroup: [{
81
81
  type: ViewChild,
82
82
  args: ['queryGroup']
@@ -89,4 +89,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
89
89
  }], onRuleChanged: [{
90
90
  type: Output
91
91
  }] } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvcXVlcnktYnVpbGRlci9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakgsT0FBTyxFQUFFLG1CQUFtQixFQUFxRCxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVF4RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZUFBZTtJQWdCdEM7SUFBeUI7SUFmcEIsVUFBVSxDQUErQjtJQUdsRSxLQUFLLENBQXNCO0lBRzNCLElBQUksR0FBbUIsS0FBSyxDQUFDO0lBRTdCLFNBQVMsR0FBd0IsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO0lBRTNELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUMvRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FB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QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvZWxlbWVudC5jbGFzcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBFbGVtZW50UmVmLCBWaWV3RW5jYXBzdWxhdGlvbiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVHJhbnNsYXRvciwgQVhIdG1sVXRpbCB9IGZyb20gJ0BhY29yZXgvY29yZSc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXAsIEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudCwgQVhRdWVyeUJ1aWxkZXJHcm91cEl0ZW0gfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXIuY2xhc3MnO1xyXG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLWdyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vdG9hc3QvdG9hc3Quc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4LXF1ZXJ5LWJ1aWxkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ3F1ZXJ5R3JvdXAnKSBxdWVyeUdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwQ29tcG9uZW50O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHF1ZXJ5OiBBWFF1ZXJ5QnVpbGRlckdyb3VwO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIG1vZGU6ICduZXcnIHwgJ2VkaXQnID0gJ25ldyc7XHJcblxyXG4gIHJvb3RHcm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCA9IG5ldyBBWFF1ZXJ5QnVpbGRlckdyb3VwKCk7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yb290R3JvdXAuY29uZGl0aW9uID0gdGhpcy5xdWVyeS5jb25kaXRpb24gPyB0aGlzLnF1ZXJ5LmNvbmRpdGlvbiA6ICdBTkQnO1xyXG4gICAgdGhpcy5yb290R3JvdXAuaXRlbXMgPSB0aGlzLnF1ZXJ5Lml0ZW1zID8gdGhpcy5xdWVyeS5pdGVtcyA6IFtdO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgdG9hc3Q6IEFYVG9hc3RTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZmllbGRzIDogYW55W107XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZ2V0IGZpZWxkcygpIDogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkcztcclxuICB9XHJcbiAgcHVibGljIHNldCBmaWVsZHModiA6IGFueVtdKSB7XHJcbiAgICB0aGlzLl9maWVsZHMgPSB2O1xyXG4gIH1cclxuXHJcbiAgLy8gQElucHV0KClcclxuICAvLyBtb2RlOiAnaW1tZWRpYXRlJyB8ICdjbGljaycgPSAnY2xpY2snO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBvblJ1bGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhRdWVyeUJ1aWxkZXJHcm91cEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhRdWVyeUJ1aWxkZXJHcm91cEV2ZW50PigpO1xyXG5cclxuICBzYXZlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgZ2V0UXVlcnlCdWlsZGVyKCkge1xyXG4gICAgcmV0dXJuIHsgZ3JvdXBzOiB0aGlzLnJvb3RHcm91cCB9O1xyXG4gIH1cclxuXHJcbiAgcnVsZUNoYW5nZWQoZSkge1xyXG4gICAgdGhpcy5vblJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGdyb3VwczogdGhpcy5yb290R3JvdXAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2F2ZVJ1bGUoKSB7XHJcbiAgICAvLy8gcmV0dXJuIHRoaXMucXVlcnlHcm91cC5zYXZlUnVsZSgpO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5zYXZlZCA9IHRydWU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5yb290R3JvdXAuaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAodGhpcy5zYXZlZCA9PSB0cnVlKSB7XHJcbiAgICAgICAgICB0aGlzLmZpbmROdWxsVmFsdWUodGhpcy5yb290R3JvdXAuaXRlbXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5zYXZlZCA9PSB0cnVlKSB7XHJcbiAgICAgICAgcmVzb2x2ZSh0aGlzLnJvb3RHcm91cCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVqZWN0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZmluZE51bGxWYWx1ZShncikge1xyXG4gICAgaWYgKHRoaXMuc2F2ZWQgPT0gdHJ1ZSkge1xyXG4gICAgICBpZiAoZ3IuY29uZGl0aW9uKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnci5pdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgdGhpcy5maW5kTnVsbFZhbHVlKGdyLml0ZW1zW2ldKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKGdyLm9uRGVtYW5kTGFiZWwgPT0gJz8/Pz98Jykge1xyXG4gICAgICAgICAgdGhpcy5zYXZlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy50b2FzdC5lcnJvcign2YTYt9mB2Kcg2YbYp9mFINmF2KrYutuM2LEg2YfYp9uMINmF2YjYsdivINmG24zYp9iyINix2Kcg2qnYp9mF2YQg2qnZhtuM2K8nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHNlbGVjdGlvbkZpZWxkc0NoYW5nZWQoZSwgcnVsZXM6IEFYUXVlcnlCdWlsZGVyUnVsZSkge1xyXG4gIC8vXHJcbiAgLy8gICAgIHJ1bGVzLmRhdGFGaWVsZCA9IGUuc2VsZWN0ZWRJdGVtc1swXS5kYXRhRmllbGQ7XHJcbiAgLy8gICAgIHJ1bGVzLmNhcHRpb24gPSBlLnNlbGVjdGVkSXRlbXNbMF0uY2FwdGlvbjtcclxuICAvLyAgICAgcnVsZXMuZGF0YVR5cGUgPSBlLnNlbGVjdGVkSXRlbXNbMF0uZGF0YVR5cGU7XHJcblxyXG4gIC8vICAgICAvLyBUTyBETyBjaGFjayBkYXRhVHlwZSBGb3IgRGVmIG9wZXJhdG9yIGFuZCBWYWx1ZVxyXG4gIC8vICAgICBpZiAocnVsZXMuZGF0YVR5cGUgPT0gJ3N0cmluZycpIHtcclxuICAvLyAgICAgICAgIHJ1bGVzLm9wZXJhdG9yID0gdGhpcy5vcGVyYXRvclN0cmluZ0l0ZW1bMF0uaWQ7XHJcbiAgLy8gICAgICAgICBydWxlcy52YWx1ZSA9ICdudWxsJztcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBpZiAocnVsZXMuZGF0YVR5cGUgPT0gJ251bWJlcicpIHtcclxuICAvLyAgICAgICAgIHJ1bGVzLm9wZXJhdG9yID0gdGhpcy5vcGVyYXRvck51bWJlckl0ZW1bMF0uaWQ7XHJcbiAgLy8gICAgICAgICBydWxlcy52YWx1ZSA9ICcwJztcclxuICAvLyAgICAgfVxyXG5cclxuICAvLyAgICAgdGhpcy5vblJ1bGVDaGFuZ2VkLmVtaXQoeyBncm91cHM6IHRoaXMucm9vdEdyb3VwLCBxdWVyeVN0cmluZzogdGhpcy5nZXRRdWVyeURpc3BsYXkoKSwgY29tcG9uZW50OiB0aGlzLCBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCB9KVxyXG4gIC8vIH1cclxuXHJcbiAgLy8gc2VsZWN0aW9uT3BhcmF0b3JDaGFuZ2VkKGUsIHJ1bGVzOiBBWFF1ZXJ5QnVpbGRlclJ1bGUpIHtcclxuICAvLyAgICAgcnVsZXMub3BlcmF0b3IgPSBlLnNlbGVjdGVkSXRlbXNbMF0uaWQ7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwcm92aWRlRGF0YUZpZWxkcyA9IChlKSA9PiB7XHJcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gIC8vICAgICAgICAgcmVzb2x2ZSh0aGlzLmZpZWxkcyk7XHJcbiAgLy8gICAgIH0pO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gcHJvdmlkZURhdGFPcGVyYXRvclN0cmluZyA9IChlKSA9PiB7XHJcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gIC8vICAgICAgICAgcmVzb2x2ZSh0aGlzLm9wZXJhdG9yU3RyaW5nSXRlbSk7XHJcbiAgLy8gICAgIH0pO1xyXG4gIC8vIH1cclxuICAvLyBwcm92aWRlRGF0YU9wZXJhdG9yTnVtYmVyID0gKGUpID0+IHtcclxuICAvLyAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgLy8gICAgICAgICByZXNvbHZlKHRoaXMub3BlcmF0b3JOdW1iZXJJdGVtKTtcclxuICAvLyAgICAgfSk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwcml2YXRlIGdldFF1ZXJ5RGlzcGxheShnciA9IHRoaXMubGlzdCwgX2NvbmRpdGlvbiA9IHRoaXMubGlzdFswXS5jb25kaXRpb24pIHtcclxuICAvLyAgICAgdmFyIGNhcDogc3RyaW5nID0gJygnO1xyXG5cclxuICAvLyAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBnci5sZW5ndGg7IGorKykge1xyXG4gIC8vICAgICAgICAgaWYgKGogPiAwKSB7XHJcbiAgLy8gICAgICAgICAgICAgY2FwID0gY2FwICsgX2NvbmRpdGlvbjtcclxuICAvLyAgICAgICAgIH1cclxuICAvLyAgICAgICAgIGNhcCA9IGNhcCArIFwiICggXCI7XHJcbiAgLy8gICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyW2pdLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgLy8gICAgICAgICAgICAgaWYgKGdyW2pdLml0ZW1zW2ldLnZhbHVlICYmIGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yICYmIGdyW2pdLml0ZW1zW2ldLmNhcHRpb24gfHwgKChncltqXS5pdGVtc1tpXS5vcGVyYXRvciA9PSBcImlzLWVtcHR5XCIgfHwgZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IgPT0gXCJpcy1ub3QtZW1wdHlcIikgJiYgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbikpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgdmFyIG9wcjogc3RyaW5nO1xyXG4gIC8vICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gXCJudW1iZXJcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVUaW1lXCIpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIGxldCBkID0gdGhpcy5vcGVyYXRvck51bWJlckl0ZW0uZmlsdGVyKGMgPT4gYy5pZCA9PSBncltqXS5pdGVtc1tpXS5vcGVyYXRvcik7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBvcHIgPSBkWzBdLnRleHQ7XHJcbiAgLy8gICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBsZXQgZCA9IHRoaXMub3BlcmF0b3JTdHJpbmdJdGVtLmZpbHRlcihjID0+IGMuaWQgPT0gZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IpO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgb3ByID0gZFswXS50ZXh0O1xyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgLy8gICAgICAgICAgICAgICAgIGlmICgoZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IgPT0gXCJpcy1lbXB0eVwiIHx8IGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yID09IFwiaXMtbm90LWVtcHR5XCIpKSB7XHJcblxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIGdyW2pdLmNvbmRpdGlvbjtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIH1cclxuICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIHZhciB2YWw6IHN0cmluZztcclxuXHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gJ2RhdGUnKSB7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFsID0gbW9tZW50KGl0ZW0udmFsdWUpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ1lZWVkvTU0vREQnKTtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gJ2RhdGVUaW1lJykge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZhbCA9IG1vbWVudChpdGVtLnZhbHVlKS5sb2NhbGUoJ2ZhJykuZm9ybWF0KCdISDptbSBZWVlZL01NL0REJyk7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHZhbCA9IGdyW2pdLml0ZW1zW2ldLnZhbHVlO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIHZhbFxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIHZhbCArIFwiIFwiICsgZ3Jbal0uY29uZGl0aW9uXHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgLy8gICAgICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgfVxyXG5cclxuICAvLyAgICAgICAgIGlmIChncltqXS5ncm91cHMgJiYgZ3Jbal0uZ3JvdXBzLmxlbmd0aCA+IDApIHtcclxuICAvLyAgICAgICAgICAgICBsZXQgYyA9IHRoaXMuZ2V0UXVlcnlEaXNwbGF5KGdyW2pdLmdyb3VwcywgZ3Jbal0uY29uZGl0aW9uKTtcclxuICAvLyAgICAgICAgICAgICBpZiAoYyAhPSBcIiggKSBcIikge1xyXG4gIC8vICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXMubGVuZ3RoID4gMCB8fCBqID4gMCkge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgY2FwID0gY2FwICsgXCIgXCIgKyBncltqXS5jb25kaXRpb24gKyBcIiBcIiArIGMgKyBcIiBcIjtcclxuICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIGNhcCA9IGNhcCArIFwiIFwiICsgYyArIFwiIFwiO1xyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcblxyXG4gIC8vICAgICAgICAgICAgIH1cclxuICAvLyAgICAgICAgIH1cclxuXHJcbiAgLy8gICAgICAgICBjYXAgPSBjYXAgKyBcIiApIFwiO1xyXG4gIC8vICAgICB9O1xyXG5cclxuICAvLyAgICAgY2FwID0gY2FwICsgXCIgKSBcIjtcclxuICAvLyAgICAgcmV0dXJuIGNhcDtcclxuICAvLyB9XHJcblxyXG4gIC8vIGRlbGV0ZUdyb3VwKGdyb3VwT3V0OiBBWFF1ZXJ5QnVpbGRlckdyb3VwLCBncm91cEluOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XHJcbiAgLy8gICAgIGdyb3VwT3V0Lml0ZW1zID0gZ3JvdXBPdXQuaXRlbXMuZmlsdGVyKGMgPT4gYy5pZCAhPSBncm91cEluLmlkKTtcclxuICAvLyB9XHJcblxyXG4gIC8vIGRlbGV0ZVJ1bGUxKGdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwLCBydWxlOiBBWFF1ZXJ5QnVpbGRlclJ1bGUpIHtcclxuICAvLyAgICAgZ3JvdXAuaXRlbXMgPSBncm91cC5pdGVtcy5maWx0ZXIoYyA9PiBjLmlkICE9IHJ1bGUuaWQpO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gYWRkUnVsZShncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xyXG4gIC8vICAgICBjb25zdCBpdGVtOiBBWFF1ZXJ5QnVpbGRlclJ1bGUgPSBuZXcgQVhRdWVyeUJ1aWxkZXJSdWxlKCk7XHJcbiAgLy8gICAgIGdyb3VwLml0ZW1zLnB1c2goaXRlbSk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBhZGRHcm91cEFORChncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xyXG4gIC8vICAgICB0aGlzLmFkZEdyb3VwT25DbGljayhncm91cCk7XHJcbiAgLy8gICAgIGdyb3VwLmNvbmRpdGlvbiA9IFwiQU5EXCI7XHJcbiAgLy8gfVxyXG4gIC8vIGFkZEdyb3VwT1IoZ3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcclxuICAvLyAgICAgdGhpcy5hZGRHcm91cE9uQ2xpY2soZ3JvdXApO1xyXG4gIC8vICAgICBncm91cC5jb25kaXRpb24gPSBcIk9SXCI7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBhZGRHcm91cE9uQ2xpY2soZ3JvdXBzOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XHJcbiAgLy8gICAgIGxldCByOiBBWFF1ZXJ5QnVpbGRlckdyb3VwID0gbmV3IEFYUXVlcnlCdWlsZGVyR3JvdXAoKTtcclxuICAvLyAgICAgci5jb25kaXRpb24gPSBcIlwiO1xyXG4gIC8vICAgICByLml0ZW1zID0gW107XHJcbiAgLy8gICAgIGlmIChncm91cHMuaXRlbXMgPT0gdW5kZWZpbmVkKSB7XHJcbiAgLy8gICAgICAgICBncm91cHMuaXRlbXMgPSBbXTtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBncm91cHMuaXRlbXMucHVzaChyKTtcclxuICAvLyB9XHJcbn1cclxuIiwiPGF4LXF1ZXJ5LWdyb3VwICNxdWVyeUdyb3VwIFttb2RlXT1cIm1vZGVcIiBbZ3JvdXBdPVwicm9vdEdyb3VwXCIgW2ZpZWxkc109XCJmaWVsZHNcIlxyXG4gICAgKGdyb3VwUnVsZUNoYW5nZWQpPVwicnVsZUNoYW5nZWQoJGV2ZW50KVwiPlxyXG48L2F4LXF1ZXJ5LWdyb3VwPiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvcXVlcnktYnVpbGRlci9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakgsT0FBTyxFQUFFLG1CQUFtQixFQUFxRCxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQVF4RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZUFBZTtJQWdCdEM7SUFBeUI7SUFmcEIsVUFBVSxDQUErQjtJQUdsRSxLQUFLLENBQXNCO0lBRzNCLElBQUksR0FBbUIsS0FBSyxDQUFDO0lBRTdCLFNBQVMsR0FBd0IsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO0lBRTNELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUMvRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FB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QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvZWxlbWVudC5jbGFzcyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgRWxlbWVudFJlZiwgVmlld0VuY2Fwc3VsYXRpb24sIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdG9yLCBBWEh0bWxVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXAsIEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudCwgQVhRdWVyeUJ1aWxkZXJHcm91cEl0ZW0gfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXIuY2xhc3MnO1xuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJHcm91cENvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi90b2FzdC90b2FzdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtcXVlcnktYnVpbGRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcXVlcnktYnVpbGRlci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZCgncXVlcnlHcm91cCcpIHF1ZXJ5R3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQ7XG5cbiAgQElucHV0KClcbiAgcXVlcnk6IEFYUXVlcnlCdWlsZGVyR3JvdXA7XG5cbiAgQElucHV0KClcbiAgbW9kZTogJ25ldycgfCAnZWRpdCcgPSAnbmV3JztcblxuICByb290R3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXAgPSBuZXcgQVhRdWVyeUJ1aWxkZXJHcm91cCgpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucm9vdEdyb3VwLmNvbmRpdGlvbiA9IHRoaXMucXVlcnkuY29uZGl0aW9uID8gdGhpcy5xdWVyeS5jb25kaXRpb24gOiAnQU5EJztcbiAgICB0aGlzLnJvb3RHcm91cC5pdGVtcyA9IHRoaXMucXVlcnkuaXRlbXMgPyB0aGlzLnF1ZXJ5Lml0ZW1zIDogW107XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSB0b2FzdDogQVhUb2FzdFNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmllbGRzIDogYW55W107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgZmllbGRzKCkgOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkcztcbiAgfVxuICBwdWJsaWMgc2V0IGZpZWxkcyh2IDogYW55W10pIHtcbiAgICB0aGlzLl9maWVsZHMgPSB2O1xuICB9XG5cbiAgLy8gQElucHV0KClcbiAgLy8gbW9kZTogJ2ltbWVkaWF0ZScgfCAnY2xpY2snID0gJ2NsaWNrJztcblxuICBAT3V0cHV0KClcbiAgb25SdWxlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYUXVlcnlCdWlsZGVyR3JvdXBFdmVudD4oKTtcblxuICBzYXZlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBnZXRRdWVyeUJ1aWxkZXIoKSB7XG4gICAgcmV0dXJuIHsgZ3JvdXBzOiB0aGlzLnJvb3RHcm91cCB9O1xuICB9XG5cbiAgcnVsZUNoYW5nZWQoZSkge1xuICAgIHRoaXMub25SdWxlQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBncm91cHM6IHRoaXMucm9vdEdyb3VwIH0pO1xuICB9XG5cbiAgcHVibGljIHNhdmVSdWxlKCkge1xuICAgIC8vLyByZXR1cm4gdGhpcy5xdWVyeUdyb3VwLnNhdmVSdWxlKCk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuc2F2ZWQgPSB0cnVlO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnJvb3RHcm91cC5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAodGhpcy5zYXZlZCA9PSB0cnVlKSB7XG4gICAgICAgICAgdGhpcy5maW5kTnVsbFZhbHVlKHRoaXMucm9vdEdyb3VwLml0ZW1zW2ldKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc2F2ZWQgPT0gdHJ1ZSkge1xuICAgICAgICByZXNvbHZlKHRoaXMucm9vdEdyb3VwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlamVjdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZmluZE51bGxWYWx1ZShncikge1xuICAgIGlmICh0aGlzLnNhdmVkID09IHRydWUpIHtcbiAgICAgIGlmIChnci5jb25kaXRpb24pIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnci5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIHRoaXMuZmluZE51bGxWYWx1ZShnci5pdGVtc1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChnci5vbkRlbWFuZExhYmVsID09ICc/Pz8/fCcpIHtcbiAgICAgICAgICB0aGlzLnNhdmVkID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy50b2FzdC5lcnJvcign2YTYt9mB2Kcg2YbYp9mFINmF2KrYutuM2LEg2YfYp9uMINmF2YjYsdivINmG24zYp9iyINix2Kcg2qnYp9mF2YQg2qnZhtuM2K8nKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHNlbGVjdGlvbkZpZWxkc0NoYW5nZWQoZSwgcnVsZXM6IEFYUXVlcnlCdWlsZGVyUnVsZSkge1xuICAvL1xuICAvLyAgICAgcnVsZXMuZGF0YUZpZWxkID0gZS5zZWxlY3RlZEl0ZW1zWzBdLmRhdGFGaWVsZDtcbiAgLy8gICAgIHJ1bGVzLmNhcHRpb24gPSBlLnNlbGVjdGVkSXRlbXNbMF0uY2FwdGlvbjtcbiAgLy8gICAgIHJ1bGVzLmRhdGFUeXBlID0gZS5zZWxlY3RlZEl0ZW1zWzBdLmRhdGFUeXBlO1xuXG4gIC8vICAgICAvLyBUTyBETyBjaGFjayBkYXRhVHlwZSBGb3IgRGVmIG9wZXJhdG9yIGFuZCBWYWx1ZVxuICAvLyAgICAgaWYgKHJ1bGVzLmRhdGFUeXBlID09ICdzdHJpbmcnKSB7XG4gIC8vICAgICAgICAgcnVsZXMub3BlcmF0b3IgPSB0aGlzLm9wZXJhdG9yU3RyaW5nSXRlbVswXS5pZDtcbiAgLy8gICAgICAgICBydWxlcy52YWx1ZSA9ICdudWxsJztcbiAgLy8gICAgIH1cbiAgLy8gICAgIGlmIChydWxlcy5kYXRhVHlwZSA9PSAnbnVtYmVyJykge1xuICAvLyAgICAgICAgIHJ1bGVzLm9wZXJhdG9yID0gdGhpcy5vcGVyYXRvck51bWJlckl0ZW1bMF0uaWQ7XG4gIC8vICAgICAgICAgcnVsZXMudmFsdWUgPSAnMCc7XG4gIC8vICAgICB9XG5cbiAgLy8gICAgIHRoaXMub25SdWxlQ2hhbmdlZC5lbWl0KHsgZ3JvdXBzOiB0aGlzLnJvb3RHcm91cCwgcXVlcnlTdHJpbmc6IHRoaXMuZ2V0UXVlcnlEaXNwbGF5KCksIGNvbXBvbmVudDogdGhpcywgaHRtbEVsZW1lbnQ6IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQgfSlcbiAgLy8gfVxuXG4gIC8vIHNlbGVjdGlvbk9wYXJhdG9yQ2hhbmdlZChlLCBydWxlczogQVhRdWVyeUJ1aWxkZXJSdWxlKSB7XG4gIC8vICAgICBydWxlcy5vcGVyYXRvciA9IGUuc2VsZWN0ZWRJdGVtc1swXS5pZDtcbiAgLy8gfVxuXG4gIC8vIHByb3ZpZGVEYXRhRmllbGRzID0gKGUpID0+IHtcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAvLyAgICAgICAgIHJlc29sdmUodGhpcy5maWVsZHMpO1xuICAvLyAgICAgfSk7XG4gIC8vIH1cblxuICAvLyBwcm92aWRlRGF0YU9wZXJhdG9yU3RyaW5nID0gKGUpID0+IHtcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAvLyAgICAgICAgIHJlc29sdmUodGhpcy5vcGVyYXRvclN0cmluZ0l0ZW0pO1xuICAvLyAgICAgfSk7XG4gIC8vIH1cbiAgLy8gcHJvdmlkZURhdGFPcGVyYXRvck51bWJlciA9IChlKSA9PiB7XG4gIC8vICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgLy8gICAgICAgICByZXNvbHZlKHRoaXMub3BlcmF0b3JOdW1iZXJJdGVtKTtcbiAgLy8gICAgIH0pO1xuICAvLyB9XG5cbiAgLy8gcHJpdmF0ZSBnZXRRdWVyeURpc3BsYXkoZ3IgPSB0aGlzLmxpc3QsIF9jb25kaXRpb24gPSB0aGlzLmxpc3RbMF0uY29uZGl0aW9uKSB7XG4gIC8vICAgICB2YXIgY2FwOiBzdHJpbmcgPSAnKCc7XG5cbiAgLy8gICAgIGZvciAobGV0IGogPSAwOyBqIDwgZ3IubGVuZ3RoOyBqKyspIHtcbiAgLy8gICAgICAgICBpZiAoaiA+IDApIHtcbiAgLy8gICAgICAgICAgICAgY2FwID0gY2FwICsgX2NvbmRpdGlvbjtcbiAgLy8gICAgICAgICB9XG4gIC8vICAgICAgICAgY2FwID0gY2FwICsgXCIgKCBcIjtcbiAgLy8gICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyW2pdLml0ZW1zLmxlbmd0aDsgaSsrKSB7XG4gIC8vICAgICAgICAgICAgIGlmIChncltqXS5pdGVtc1tpXS52YWx1ZSAmJiBncltqXS5pdGVtc1tpXS5vcGVyYXRvciAmJiBncltqXS5pdGVtc1tpXS5jYXB0aW9uIHx8ICgoZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IgPT0gXCJpcy1lbXB0eVwiIHx8IGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yID09IFwiaXMtbm90LWVtcHR5XCIpICYmIGdyW2pdLml0ZW1zW2ldLmNhcHRpb24pKSB7XG4gIC8vICAgICAgICAgICAgICAgICB2YXIgb3ByOiBzdHJpbmc7XG4gIC8vICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gXCJudW1iZXJcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVUaW1lXCIpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICBsZXQgZCA9IHRoaXMub3BlcmF0b3JOdW1iZXJJdGVtLmZpbHRlcihjID0+IGMuaWQgPT0gZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IpO1xuICAvLyAgICAgICAgICAgICAgICAgICAgIG9wciA9IGRbMF0udGV4dDtcbiAgLy8gICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gIC8vICAgICAgICAgICAgICAgICAgICAgbGV0IGQgPSB0aGlzLm9wZXJhdG9yU3RyaW5nSXRlbS5maWx0ZXIoYyA9PiBjLmlkID09IGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yKTtcbiAgLy8gICAgICAgICAgICAgICAgICAgICBvcHIgPSBkWzBdLnRleHQ7XG4gIC8vICAgICAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgICAgICBpZiAoKGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yID09IFwiaXMtZW1wdHlcIiB8fCBncltqXS5pdGVtc1tpXS5vcGVyYXRvciA9PSBcImlzLW5vdC1lbXB0eVwiKSkge1xuXG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgY2FwID0gY2FwICsgXCIgXCIgKyBcIltcIiArIGdyW2pdLml0ZW1zW2ldLmNhcHRpb24gKyBcIl1cIjtcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIGdyW2pdLmNvbmRpdGlvbjtcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAvLyAgICAgICAgICAgICAgICAgICAgIHZhciB2YWw6IHN0cmluZztcblxuICAvLyAgICAgICAgICAgICAgICAgICAgIGlmIChncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSAnZGF0ZScpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFsID0gbW9tZW50KGl0ZW0udmFsdWUpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ1lZWVkvTU0vREQnKTtcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGdyW2pdLml0ZW1zW2ldLmRhdGFUeXBlID09ICdkYXRlVGltZScpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFsID0gbW9tZW50KGl0ZW0udmFsdWUpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ0hIOm1tIFlZWVkvTU0vREQnKTtcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICB2YWwgPSBncltqXS5pdGVtc1tpXS52YWx1ZTtcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgY2FwID0gY2FwICsgXCIgXCIgKyBcIltcIiArIGdyW2pdLml0ZW1zW2ldLmNhcHRpb24gKyBcIl1cIiArIFwiIFwiICsgb3ByICsgXCIgXCIgKyB2YWxcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIHZhbCArIFwiIFwiICsgZ3Jbal0uY29uZGl0aW9uXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfVxuXG4gIC8vICAgICAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgICAgIH1cbiAgLy8gICAgICAgICB9XG5cbiAgLy8gICAgICAgICBpZiAoZ3Jbal0uZ3JvdXBzICYmIGdyW2pdLmdyb3Vwcy5sZW5ndGggPiAwKSB7XG4gIC8vICAgICAgICAgICAgIGxldCBjID0gdGhpcy5nZXRRdWVyeURpc3BsYXkoZ3Jbal0uZ3JvdXBzLCBncltqXS5jb25kaXRpb24pO1xuICAvLyAgICAgICAgICAgICBpZiAoYyAhPSBcIiggKSBcIikge1xuICAvLyAgICAgICAgICAgICAgICAgaWYgKGdyW2pdLml0ZW1zLmxlbmd0aCA+IDAgfHwgaiA+IDApIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIGdyW2pdLmNvbmRpdGlvbiArIFwiIFwiICsgYyArIFwiIFwiO1xuICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIGMgKyBcIiBcIjtcbiAgLy8gICAgICAgICAgICAgICAgIH1cblxuICAvLyAgICAgICAgICAgICB9XG4gIC8vICAgICAgICAgfVxuXG4gIC8vICAgICAgICAgY2FwID0gY2FwICsgXCIgKSBcIjtcbiAgLy8gICAgIH07XG5cbiAgLy8gICAgIGNhcCA9IGNhcCArIFwiICkgXCI7XG4gIC8vICAgICByZXR1cm4gY2FwO1xuICAvLyB9XG5cbiAgLy8gZGVsZXRlR3JvdXAoZ3JvdXBPdXQ6IEFYUXVlcnlCdWlsZGVyR3JvdXAsIGdyb3VwSW46IEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcbiAgLy8gICAgIGdyb3VwT3V0Lml0ZW1zID0gZ3JvdXBPdXQuaXRlbXMuZmlsdGVyKGMgPT4gYy5pZCAhPSBncm91cEluLmlkKTtcbiAgLy8gfVxuXG4gIC8vIGRlbGV0ZVJ1bGUxKGdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwLCBydWxlOiBBWFF1ZXJ5QnVpbGRlclJ1bGUpIHtcbiAgLy8gICAgIGdyb3VwLml0ZW1zID0gZ3JvdXAuaXRlbXMuZmlsdGVyKGMgPT4gYy5pZCAhPSBydWxlLmlkKTtcbiAgLy8gfVxuXG4gIC8vIGFkZFJ1bGUoZ3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcbiAgLy8gICAgIGNvbnN0IGl0ZW06IEFYUXVlcnlCdWlsZGVyUnVsZSA9IG5ldyBBWFF1ZXJ5QnVpbGRlclJ1bGUoKTtcbiAgLy8gICAgIGdyb3VwLml0ZW1zLnB1c2goaXRlbSk7XG4gIC8vIH1cblxuICAvLyBhZGRHcm91cEFORChncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xuICAvLyAgICAgdGhpcy5hZGRHcm91cE9uQ2xpY2soZ3JvdXApO1xuICAvLyAgICAgZ3JvdXAuY29uZGl0aW9uID0gXCJBTkRcIjtcbiAgLy8gfVxuICAvLyBhZGRHcm91cE9SKGdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XG4gIC8vICAgICB0aGlzLmFkZEdyb3VwT25DbGljayhncm91cCk7XG4gIC8vICAgICBncm91cC5jb25kaXRpb24gPSBcIk9SXCI7XG4gIC8vIH1cblxuICAvLyBhZGRHcm91cE9uQ2xpY2soZ3JvdXBzOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XG4gIC8vICAgICBsZXQgcjogQVhRdWVyeUJ1aWxkZXJHcm91cCA9IG5ldyBBWFF1ZXJ5QnVpbGRlckdyb3VwKCk7XG4gIC8vICAgICByLmNvbmRpdGlvbiA9IFwiXCI7XG4gIC8vICAgICByLml0ZW1zID0gW107XG4gIC8vICAgICBpZiAoZ3JvdXBzLml0ZW1zID09IHVuZGVmaW5lZCkge1xuICAvLyAgICAgICAgIGdyb3Vwcy5pdGVtcyA9IFtdO1xuICAvLyAgICAgfVxuICAvLyAgICAgZ3JvdXBzLml0ZW1zLnB1c2gocik7XG4gIC8vIH1cbn1cbiIsIjxheC1xdWVyeS1ncm91cCAjcXVlcnlHcm91cCBbbW9kZV09XCJtb2RlXCIgW2dyb3VwXT1cInJvb3RHcm91cFwiIFtmaWVsZHNdPVwiZmllbGRzXCJcbiAgICAoZ3JvdXBSdWxlQ2hhbmdlZCk9XCJydWxlQ2hhbmdlZCgkZXZlbnQpXCI+XG48L2F4LXF1ZXJ5LWdyb3VwPiJdfQ==
@@ -34,8 +34,8 @@ const MODUELS = [
34
34
  AXDatePickerModule
35
35
  ];
36
36
  export class AXQueryBuilderModule {
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
38
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderModule, declarations: [AXQueryBuilderComponent, AXQueryBuilderGroupComponent, AXQueryBuilderRuleComponent, AXQueryBuilderPopupComponent], imports: [CommonModule,
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
38
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderModule, declarations: [AXQueryBuilderComponent, AXQueryBuilderGroupComponent, AXQueryBuilderRuleComponent, AXQueryBuilderPopupComponent], imports: [CommonModule,
39
39
  AXButtonModule,
40
40
  AXPanelBoxModule,
41
41
  AXSelectBoxModule,
@@ -48,9 +48,9 @@ export class AXQueryBuilderModule {
48
48
  AXCheckBoxModule,
49
49
  AXValidationModule,
50
50
  AXDatePickerModule], exports: [AXQueryBuilderComponent] });
51
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderModule, providers: [AXQueryBuilderService], imports: [MODUELS] });
51
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderModule, providers: [AXQueryBuilderService], imports: [MODUELS] });
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AXQueryBuilderModule, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXQueryBuilderModule, decorators: [{
54
54
  type: NgModule,
55
55
  args: [{
56
56
  declarations: [AXQueryBuilderComponent, AXQueryBuilderGroupComponent, AXQueryBuilderRuleComponent, AXQueryBuilderPopupComponent],
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
59
59
  providers: [AXQueryBuilderService]
60
60
  }]
61
61
  }] });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFFdkUsTUFBTSxPQUFPLEdBQUc7SUFDWixZQUFZO0lBQ1osY0FBYztJQUNkLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixrQkFBa0I7Q0FDckIsQ0FBQTtBQVNELE1BQU0sT0FBTyxvQkFBb0I7dUdBQXBCLG9CQUFvQjt3R0FBcEIsb0JBQW9CLGlCQU5kLHVCQUF1QixFQUFFLDRCQUE0QixFQUFFLDJCQUEyQixFQUFFLDRCQUE0QixhQWhCL0gsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsa0JBQWtCLGFBTVIsdUJBQXVCO3dHQUl4QixvQkFBb0IsYUFIbEIsQ0FBQyxxQkFBcUIsQ0FBQyxZQUZ4QixPQUFPOzsyRkFLUixvQkFBb0I7a0JBUGhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQUUsMkJBQTJCLEVBQUUsNEJBQTRCLENBQUM7b0JBQ2hJLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ2xDLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNyQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBWFBhbmVsQm94TW9kdWxlIH0gZnJvbSAnLi4vcGFuZWwtYm94L3BhbmVsLWJveC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJy4uL3NlbGVjdGJveC9zZWxlY3Rib3gubW9kdWxlJztcclxuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnLi4vdGV4dGJveC90ZXh0Ym94Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyUnVsZUNvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhUcmFuc2xhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHsgQVhOdW1iZXJCb3hNb2R1bGUgfSBmcm9tICcuLi9udW1iZXItYm94L251bWJlci1ib3gubW9kdWxlJztcclxuaW1wb3J0IHsgQVhEYXRhU291cmNlTW9kdWxlIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UvZGF0YXNvdXJjZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWEZvcm1Hcm91cE1vZHVsZSB9IGZyb20gJy4uL2Zvcm0tZ3JvdXAvZm9ybS1ncm91cC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlclBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLXBvcHVwL3F1ZXJ5LWJ1aWxkZXItcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJy4uL2xhYmVsL2xhYmVsLm1vZHVsZSc7XHJcbmltcG9ydCB7IEFYQ2hlY2tCb3hNb2R1bGUgfSBmcm9tICcuLi9jaGVja2JveC9jaGVja2JveC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Nb2R1bGUgfSBmcm9tICcuLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24ubW9kdWxlJztcclxuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBWERhdGVQaWNrZXJNb2R1bGUgfSBmcm9tICcuLi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5tb2R1bGUnO1xyXG5cclxuY29uc3QgTU9EVUVMUyA9IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEFYQnV0dG9uTW9kdWxlLFxyXG4gICAgQVhQYW5lbEJveE1vZHVsZSxcclxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxyXG4gICAgQVhEYXRhU291cmNlTW9kdWxlLFxyXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxyXG4gICAgQVhOdW1iZXJCb3hNb2R1bGUsXHJcbiAgICBBWEZvcm1Hcm91cE1vZHVsZSxcclxuICAgIEFYVHJhbnNsYXRvck1vZHVsZSxcclxuICAgIEFYTGFiZWxNb2R1bGUsXHJcbiAgICBBWENoZWNrQm94TW9kdWxlLFxyXG4gICAgQVhWYWxpZGF0aW9uTW9kdWxlLFxyXG4gICAgQVhEYXRlUGlja2VyTW9kdWxlXHJcbl1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudCwgQVhRdWVyeUJ1aWxkZXJHcm91cENvbXBvbmVudCwgQVhRdWVyeUJ1aWxkZXJSdWxlQ29tcG9uZW50LCBBWFF1ZXJ5QnVpbGRlclBvcHVwQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFtNT0RVRUxTXSxcclxuICAgIGV4cG9ydHM6IFtBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudF0sXHJcbiAgICBwcm92aWRlcnM6IFtBWFF1ZXJ5QnVpbGRlclNlcnZpY2VdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJNb2R1bGUgeyB9Il19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFFdkUsTUFBTSxPQUFPLEdBQUc7SUFDWixZQUFZO0lBQ1osY0FBYztJQUNkLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixrQkFBa0I7Q0FDckIsQ0FBQTtBQVNELE1BQU0sT0FBTyxvQkFBb0I7d0dBQXBCLG9CQUFvQjt5R0FBcEIsb0JBQW9CLGlCQU5kLHVCQUF1QixFQUFFLDRCQUE0QixFQUFFLDJCQUEyQixFQUFFLDRCQUE0QixhQWhCL0gsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsa0JBQWtCLGFBTVIsdUJBQXVCO3lHQUl4QixvQkFBb0IsYUFIbEIsQ0FBQyxxQkFBcUIsQ0FBQyxZQUZ4QixPQUFPOzs0RkFLUixvQkFBb0I7a0JBUGhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQUUsMkJBQTJCLEVBQUUsNEJBQTRCLENBQUM7b0JBQ2hJLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ2xDLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNyQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQVhQYW5lbEJveE1vZHVsZSB9IGZyb20gJy4uL3BhbmVsLWJveC9wYW5lbC1ib3gubW9kdWxlJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnLi4vc2VsZWN0Ym94L3NlbGVjdGJveC5tb2R1bGUnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnLi4vdGV4dGJveC90ZXh0Ym94Lm1vZHVsZSc7XG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlclJ1bGVDb21wb25lbnQgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItcnVsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJHcm91cENvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7IEFYTnVtYmVyQm94TW9kdWxlIH0gZnJvbSAnLi4vbnVtYmVyLWJveC9udW1iZXItYm94Lm1vZHVsZSc7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2VNb2R1bGUgfSBmcm9tICcuLi9kYXRhLXNvdXJjZS9kYXRhc291cmNlLm1vZHVsZSc7XG5pbXBvcnQgeyBBWEZvcm1Hcm91cE1vZHVsZSB9IGZyb20gJy4uL2Zvcm0tZ3JvdXAvZm9ybS1ncm91cC5tb2R1bGUnO1xuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1wb3B1cC9xdWVyeS1idWlsZGVyLXBvcHVwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnLi4vbGFiZWwvbGFiZWwubW9kdWxlJztcbmltcG9ydCB7IEFYQ2hlY2tCb3hNb2R1bGUgfSBmcm9tICcuLi9jaGVja2JveC9jaGVja2JveC5tb2R1bGUnO1xuaW1wb3J0IHsgQVhWYWxpZGF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlclNlcnZpY2UgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWERhdGVQaWNrZXJNb2R1bGUgfSBmcm9tICcuLi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5tb2R1bGUnO1xuXG5jb25zdCBNT0RVRUxTID0gW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWFBhbmVsQm94TW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYRGF0YVNvdXJjZU1vZHVsZSxcbiAgICBBWFRleHRCb3hNb2R1bGUsXG4gICAgQVhOdW1iZXJCb3hNb2R1bGUsXG4gICAgQVhGb3JtR3JvdXBNb2R1bGUsXG4gICAgQVhUcmFuc2xhdG9yTW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhDaGVja0JveE1vZHVsZSxcbiAgICBBWFZhbGlkYXRpb25Nb2R1bGUsXG4gICAgQVhEYXRlUGlja2VyTW9kdWxlXG5dXG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbQVhRdWVyeUJ1aWxkZXJDb21wb25lbnQsIEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQsIEFYUXVlcnlCdWlsZGVyUnVsZUNvbXBvbmVudCwgQVhRdWVyeUJ1aWxkZXJQb3B1cENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW01PRFVFTFNdLFxuICAgIGV4cG9ydHM6IFtBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbQVhRdWVyeUJ1aWxkZXJTZXJ2aWNlXVxufSlcblxuZXhwb3J0IGNsYXNzIEFYUXVlcnlCdWlsZGVyTW9kdWxlIHsgfSJdfQ==