@ecodev/natural 42.4.2 → 44.0.1

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 (156) hide show
  1. package/esm2020/lib/classes/abstract-controller.mjs +3 -3
  2. package/esm2020/lib/classes/abstract-detail.mjs +6 -6
  3. package/esm2020/lib/classes/abstract-editable-list.mjs +7 -7
  4. package/esm2020/lib/classes/abstract-list.mjs +3 -3
  5. package/esm2020/lib/classes/abstract-navigable-list.mjs +3 -3
  6. package/esm2020/lib/classes/query-variable-manager.mjs +2 -2
  7. package/esm2020/lib/classes/validators.mjs +1 -1
  8. package/esm2020/lib/directives/http-prefix.directive.mjs +3 -3
  9. package/esm2020/lib/modules/alert/alert.module.mjs +5 -5
  10. package/esm2020/lib/modules/alert/alert.service.mjs +3 -3
  11. package/esm2020/lib/modules/alert/confirm.component.mjs +5 -5
  12. package/esm2020/lib/modules/avatar/avatar.module.mjs +5 -5
  13. package/esm2020/lib/modules/avatar/component/avatar.component.mjs +7 -17
  14. package/esm2020/lib/modules/avatar/service/avatar.service.mjs +3 -3
  15. package/esm2020/lib/modules/columns-picker/columns-picker-column.directive.mjs +9 -5
  16. package/esm2020/lib/modules/columns-picker/columns-picker.component.mjs +9 -9
  17. package/esm2020/lib/modules/columns-picker/columns-picker.module.mjs +11 -13
  18. package/esm2020/lib/modules/common/common-module.mjs +5 -5
  19. package/esm2020/lib/modules/common/directives/linkable-tab.directive.mjs +5 -5
  20. package/esm2020/lib/modules/common/directives/src-density.directive.mjs +3 -3
  21. package/esm2020/lib/modules/common/pipes/capitalize.pipe.mjs +3 -3
  22. package/esm2020/lib/modules/common/pipes/ellipsis.pipe.mjs +3 -3
  23. package/esm2020/lib/modules/common/pipes/enum.pipe.mjs +3 -3
  24. package/esm2020/lib/modules/common/pipes/swiss-date.pipe.mjs +3 -3
  25. package/esm2020/lib/modules/common/services/memory-storage.mjs +3 -3
  26. package/esm2020/lib/modules/common/services/seo.service.mjs +3 -3
  27. package/esm2020/lib/modules/detail-header/detail-header.component.mjs +9 -9
  28. package/esm2020/lib/modules/detail-header/detail-header.module.mjs +5 -5
  29. package/esm2020/lib/modules/dialog-trigger/dialog-trigger.component.mjs +3 -3
  30. package/esm2020/lib/modules/dialog-trigger/dialog-trigger.module.mjs +5 -5
  31. package/esm2020/lib/modules/dropdown-components/abstract-association-select-component.directive.mjs +6 -6
  32. package/esm2020/lib/modules/dropdown-components/natural-dropdown-components.module.mjs +16 -18
  33. package/esm2020/lib/modules/dropdown-components/type-date/type-date.component.mjs +16 -16
  34. package/esm2020/lib/modules/dropdown-components/type-date-range/type-date-range.component.mjs +14 -14
  35. package/esm2020/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.mjs +9 -9
  36. package/esm2020/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.mjs +9 -9
  37. package/esm2020/lib/modules/dropdown-components/type-number/type-number.component.mjs +13 -13
  38. package/esm2020/lib/modules/dropdown-components/type-select/type-select.component.mjs +11 -11
  39. package/esm2020/lib/modules/dropdown-components/type-text/type-text.component.mjs +13 -10
  40. package/esm2020/lib/modules/dropdown-components/types.mjs +1 -1
  41. package/esm2020/lib/modules/file/abstract-file.mjs +3 -3
  42. package/esm2020/lib/modules/file/component/file.component.mjs +6 -6
  43. package/esm2020/lib/modules/file/file-drop.directive.mjs +3 -3
  44. package/esm2020/lib/modules/file/file-select.directive.mjs +3 -3
  45. package/esm2020/lib/modules/file/file.module.mjs +5 -5
  46. package/esm2020/lib/modules/file/file.service.mjs +3 -3
  47. package/esm2020/lib/modules/fixed-button/fixed-button.component.mjs +6 -6
  48. package/esm2020/lib/modules/fixed-button/fixed-button.module.mjs +5 -5
  49. package/esm2020/lib/modules/fixed-button-detail/fixed-button-detail.component.mjs +6 -6
  50. package/esm2020/lib/modules/fixed-button-detail/fixed-button-detail.module.mjs +5 -5
  51. package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.mjs +10 -10
  52. package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.service.mjs +3 -3
  53. package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.mjs +5 -5
  54. package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.service.mjs +3 -3
  55. package/esm2020/lib/modules/hierarchic-selector/hierarchic-selector.module.mjs +19 -21
  56. package/esm2020/lib/modules/icon/icon.component.mjs +5 -5
  57. package/esm2020/lib/modules/icon/icon.module.mjs +5 -5
  58. package/esm2020/lib/modules/logger/error-handler.mjs +3 -3
  59. package/esm2020/lib/modules/logger/error.module.mjs +5 -5
  60. package/esm2020/lib/modules/matomo/matomo-module.module.mjs +4 -4
  61. package/esm2020/lib/modules/matomo/matomo.service.mjs +3 -3
  62. package/esm2020/lib/modules/panels/abstract-panel.mjs +3 -3
  63. package/esm2020/lib/modules/panels/panels.component.mjs +3 -3
  64. package/esm2020/lib/modules/panels/panels.module.mjs +5 -5
  65. package/esm2020/lib/modules/panels/panels.service.mjs +3 -3
  66. package/esm2020/lib/modules/relations/relations.component.mjs +16 -11
  67. package/esm2020/lib/modules/relations/relations.module.mjs +14 -16
  68. package/esm2020/lib/modules/search/dropdown-container/dropdown-container.component.mjs +7 -7
  69. package/esm2020/lib/modules/search/dropdown-container/dropdown.service.mjs +4 -4
  70. package/esm2020/lib/modules/search/facet-selector/facet-selector.component.mjs +5 -5
  71. package/esm2020/lib/modules/search/group/group.component.mjs +5 -5
  72. package/esm2020/lib/modules/search/input/input.component.mjs +20 -20
  73. package/esm2020/lib/modules/search/search/search.component.mjs +5 -5
  74. package/esm2020/lib/modules/search/search.module.mjs +15 -17
  75. package/esm2020/lib/modules/select/abstract-select.component.mjs +6 -6
  76. package/esm2020/lib/modules/select/select/select.component.mjs +16 -16
  77. package/esm2020/lib/modules/select/select-enum/select-enum.component.mjs +8 -8
  78. package/esm2020/lib/modules/select/select-hierarchic/select-hierarchic.component.mjs +10 -10
  79. package/esm2020/lib/modules/select/select.module.mjs +16 -18
  80. package/esm2020/lib/modules/sidenav/sidenav/sidenav.component.mjs +3 -3
  81. package/esm2020/lib/modules/sidenav/sidenav-container/sidenav-container.component.mjs +8 -9
  82. package/esm2020/lib/modules/sidenav/sidenav-content/sidenav-content.component.mjs +3 -3
  83. package/esm2020/lib/modules/sidenav/sidenav-stack.service.mjs +3 -3
  84. package/esm2020/lib/modules/sidenav/sidenav.module.mjs +5 -5
  85. package/esm2020/lib/modules/sidenav/sidenav.service.mjs +3 -3
  86. package/esm2020/lib/modules/stamp/stamp-module.module.mjs +5 -5
  87. package/esm2020/lib/modules/stamp/stamp.component.mjs +5 -5
  88. package/esm2020/lib/modules/table-button/table-button.component.mjs +7 -7
  89. package/esm2020/lib/modules/table-button/table-button.module.mjs +5 -5
  90. package/esm2020/lib/services/abstract-model.service.mjs +51 -45
  91. package/esm2020/lib/services/enum.service.mjs +3 -3
  92. package/esm2020/lib/services/link-mutation.service.mjs +3 -3
  93. package/esm2020/lib/services/persistence.service.mjs +3 -3
  94. package/esm2020/lib/services/swiss-parsing-date-adapter.service.mjs +3 -3
  95. package/fesm2015/ecodev-natural.mjs +513 -517
  96. package/fesm2015/ecodev-natural.mjs.map +1 -1
  97. package/fesm2020/ecodev-natural.mjs +512 -517
  98. package/fesm2020/ecodev-natural.mjs.map +1 -1
  99. package/{ecodev-natural.d.ts → index.d.ts} +0 -0
  100. package/lib/classes/abstract-controller.d.ts +1 -1
  101. package/lib/classes/abstract-detail.d.ts +3 -3
  102. package/lib/classes/abstract-editable-list.d.ts +5 -5
  103. package/lib/classes/abstract-list.d.ts +1 -1
  104. package/lib/classes/abstract-navigable-list.d.ts +1 -1
  105. package/lib/classes/validators.d.ts +2 -2
  106. package/lib/directives/http-prefix.directive.d.ts +1 -1
  107. package/lib/modules/alert/confirm.component.d.ts +1 -1
  108. package/lib/modules/avatar/component/avatar.component.d.ts +1 -1
  109. package/lib/modules/columns-picker/columns-picker-column.directive.d.ts +2 -2
  110. package/lib/modules/columns-picker/columns-picker.component.d.ts +1 -1
  111. package/lib/modules/common/directives/linkable-tab.directive.d.ts +1 -1
  112. package/lib/modules/common/directives/src-density.directive.d.ts +1 -1
  113. package/lib/modules/common/pipes/capitalize.pipe.d.ts +1 -1
  114. package/lib/modules/common/pipes/ellipsis.pipe.d.ts +1 -1
  115. package/lib/modules/common/pipes/enum.pipe.d.ts +1 -1
  116. package/lib/modules/common/pipes/swiss-date.pipe.d.ts +1 -1
  117. package/lib/modules/detail-header/detail-header.component.d.ts +1 -1
  118. package/lib/modules/dialog-trigger/dialog-trigger.component.d.ts +1 -1
  119. package/lib/modules/dropdown-components/abstract-association-select-component.directive.d.ts +11 -8
  120. package/lib/modules/dropdown-components/type-date/type-date.component.d.ts +9 -6
  121. package/lib/modules/dropdown-components/type-date-range/type-date-range.component.d.ts +11 -8
  122. package/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.d.ts +1 -1
  123. package/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.d.ts +1 -1
  124. package/lib/modules/dropdown-components/type-number/type-number.component.d.ts +10 -7
  125. package/lib/modules/dropdown-components/type-select/type-select.component.d.ts +8 -5
  126. package/lib/modules/dropdown-components/type-text/type-text.component.d.ts +4 -4
  127. package/lib/modules/dropdown-components/types.d.ts +4 -2
  128. package/lib/modules/file/abstract-file.d.ts +1 -1
  129. package/lib/modules/file/component/file.component.d.ts +1 -1
  130. package/lib/modules/file/file-drop.directive.d.ts +1 -1
  131. package/lib/modules/file/file-select.directive.d.ts +1 -1
  132. package/lib/modules/fixed-button/fixed-button.component.d.ts +1 -1
  133. package/lib/modules/fixed-button-detail/fixed-button-detail.component.d.ts +1 -1
  134. package/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.d.ts +1 -1
  135. package/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.d.ts +1 -1
  136. package/lib/modules/icon/icon.component.d.ts +1 -1
  137. package/lib/modules/panels/abstract-panel.d.ts +1 -1
  138. package/lib/modules/panels/panels.component.d.ts +1 -1
  139. package/lib/modules/relations/relations.component.d.ts +2 -1
  140. package/lib/modules/search/dropdown-container/dropdown-container.component.d.ts +2 -2
  141. package/lib/modules/search/dropdown-container/dropdown.service.d.ts +1 -1
  142. package/lib/modules/search/facet-selector/facet-selector.component.d.ts +1 -1
  143. package/lib/modules/search/group/group.component.d.ts +1 -1
  144. package/lib/modules/search/input/input.component.d.ts +7 -8
  145. package/lib/modules/search/search/search.component.d.ts +1 -1
  146. package/lib/modules/select/abstract-select.component.d.ts +9 -9
  147. package/lib/modules/select/select/select.component.d.ts +7 -5
  148. package/lib/modules/select/select-enum/select-enum.component.d.ts +5 -3
  149. package/lib/modules/select/select-hierarchic/select-hierarchic.component.d.ts +3 -3
  150. package/lib/modules/sidenav/sidenav/sidenav.component.d.ts +1 -1
  151. package/lib/modules/sidenav/sidenav-container/sidenav-container.component.d.ts +3 -4
  152. package/lib/modules/sidenav/sidenav-content/sidenav-content.component.d.ts +1 -1
  153. package/lib/modules/stamp/stamp.component.d.ts +1 -1
  154. package/lib/modules/table-button/table-button.component.d.ts +1 -1
  155. package/lib/services/abstract-model.service.d.ts +4 -4
  156. package/package.json +8 -8
@@ -7,10 +7,10 @@ import { NaturalIconModule } from '../icon/icon.module';
7
7
  import * as i0 from "@angular/core";
8
8
  export class NaturalDetailHeaderModule {
9
9
  }
10
- NaturalDetailHeaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDetailHeaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- NaturalDetailHeaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDetailHeaderModule, declarations: [NaturalDetailHeaderComponent], imports: [CommonModule, RouterModule, MatButtonModule, NaturalIconModule], exports: [NaturalDetailHeaderComponent] });
12
- NaturalDetailHeaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDetailHeaderModule, imports: [[CommonModule, RouterModule, MatButtonModule, NaturalIconModule]] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDetailHeaderModule, decorators: [{
10
+ NaturalDetailHeaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDetailHeaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ NaturalDetailHeaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.1", ngImport: i0, type: NaturalDetailHeaderModule, declarations: [NaturalDetailHeaderComponent], imports: [CommonModule, RouterModule, MatButtonModule, NaturalIconModule], exports: [NaturalDetailHeaderComponent] });
12
+ NaturalDetailHeaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDetailHeaderModule, imports: [CommonModule, RouterModule, MatButtonModule, NaturalIconModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDetailHeaderModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [NaturalDetailHeaderComponent],
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
18
18
  exports: [NaturalDetailHeaderComponent],
19
19
  }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsLWhlYWRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kZXRhaWwtaGVhZGVyL2RldGFpbC1oZWFkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDdkUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUJBQXFCLENBQUM7O0FBT3RELE1BQU0sT0FBTyx5QkFBeUI7O3NIQUF6Qix5QkFBeUI7dUhBQXpCLHlCQUF5QixpQkFKbkIsNEJBQTRCLGFBQ2pDLFlBQVksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixhQUM5RCw0QkFBNEI7dUhBRTdCLHlCQUF5QixZQUh6QixDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixDQUFDOzJGQUdoRSx5QkFBeUI7a0JBTHJDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsNEJBQTRCLENBQUM7b0JBQzVDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixDQUFDO29CQUN6RSxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztpQkFDMUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1JvdXRlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TmF0dXJhbERldGFpbEhlYWRlckNvbXBvbmVudH0gZnJvbSAnLi9kZXRhaWwtaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQge05hdHVyYWxJY29uTW9kdWxlfSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtOYXR1cmFsRGV0YWlsSGVhZGVyQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSwgTmF0dXJhbEljb25Nb2R1bGVdLFxuICAgIGV4cG9ydHM6IFtOYXR1cmFsRGV0YWlsSGVhZGVyQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbERldGFpbEhlYWRlck1vZHVsZSB7fVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsLWhlYWRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kZXRhaWwtaGVhZGVyL2RldGFpbC1oZWFkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDdkUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUJBQXFCLENBQUM7O0FBT3RELE1BQU0sT0FBTyx5QkFBeUI7O3NIQUF6Qix5QkFBeUI7dUhBQXpCLHlCQUF5QixpQkFKbkIsNEJBQTRCLGFBQ2pDLFlBQVksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixhQUM5RCw0QkFBNEI7dUhBRTdCLHlCQUF5QixZQUh4QixZQUFZLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxpQkFBaUI7MkZBRy9ELHlCQUF5QjtrQkFMckMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDNUMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsaUJBQWlCLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUMxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7Um91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtOYXR1cmFsRGV0YWlsSGVhZGVyQ29tcG9uZW50fSBmcm9tICcuL2RldGFpbC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7TmF0dXJhbEljb25Nb2R1bGV9IGZyb20gJy4uL2ljb24vaWNvbi5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW05hdHVyYWxEZXRhaWxIZWFkZXJDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJvdXRlck1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBOYXR1cmFsSWNvbk1vZHVsZV0sXG4gICAgZXhwb3J0czogW05hdHVyYWxEZXRhaWxIZWFkZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRGV0YWlsSGVhZGVyTW9kdWxlIHt9XG4iXX0=
@@ -58,9 +58,9 @@ export class NaturalDialogTriggerComponent {
58
58
  }
59
59
  }
60
60
  }
61
- NaturalDialogTriggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerComponent, deps: [{ token: i1.MatDialog }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
62
- NaturalDialogTriggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: NaturalDialogTriggerComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerComponent, decorators: [{
61
+ NaturalDialogTriggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerComponent, deps: [{ token: i1.MatDialog }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
62
+ NaturalDialogTriggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: NaturalDialogTriggerComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerComponent, decorators: [{
64
64
  type: Component,
65
65
  args: [{
66
66
  template: '',
@@ -5,10 +5,10 @@ import { NaturalDialogTriggerComponent } from './dialog-trigger.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class NaturalDialogTriggerModule {
7
7
  }
8
- NaturalDialogTriggerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- NaturalDialogTriggerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerModule, declarations: [NaturalDialogTriggerComponent], imports: [CommonModule, MatDialogModule], exports: [NaturalDialogTriggerComponent] });
10
- NaturalDialogTriggerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerModule, imports: [[CommonModule, MatDialogModule]] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDialogTriggerModule, decorators: [{
8
+ NaturalDialogTriggerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ NaturalDialogTriggerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerModule, declarations: [NaturalDialogTriggerComponent], imports: [CommonModule, MatDialogModule], exports: [NaturalDialogTriggerComponent] });
10
+ NaturalDialogTriggerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerModule, imports: [CommonModule, MatDialogModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDialogTriggerModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [NaturalDialogTriggerComponent],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
16
16
  exports: [NaturalDialogTriggerComponent],
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyaWdnZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZGlhbG9nLXRyaWdnZXIvZGlhbG9nLXRyaWdnZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPekUsTUFBTSxPQUFPLDBCQUEwQjs7dUhBQTFCLDBCQUEwQjt3SEFBMUIsMEJBQTBCLGlCQUpwQiw2QkFBNkIsYUFDbEMsWUFBWSxFQUFFLGVBQWUsYUFDN0IsNkJBQTZCO3dIQUU5QiwwQkFBMEIsWUFIMUIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDOzJGQUcvQiwwQkFBMEI7a0JBTHRDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsNkJBQTZCLENBQUM7b0JBQzdDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLDZCQUE2QixDQUFDO2lCQUMzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7TmF0dXJhbERpYWxvZ1RyaWdnZXJDb21wb25lbnR9IGZyb20gJy4vZGlhbG9nLXRyaWdnZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0RGlhbG9nTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbTmF0dXJhbERpYWxvZ1RyaWdnZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRGlhbG9nVHJpZ2dlck1vZHVsZSB7fVxuIl19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRyaWdnZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZGlhbG9nLXRyaWdnZXIvZGlhbG9nLXRyaWdnZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPekUsTUFBTSxPQUFPLDBCQUEwQjs7dUhBQTFCLDBCQUEwQjt3SEFBMUIsMEJBQTBCLGlCQUpwQiw2QkFBNkIsYUFDbEMsWUFBWSxFQUFFLGVBQWUsYUFDN0IsNkJBQTZCO3dIQUU5QiwwQkFBMEIsWUFIekIsWUFBWSxFQUFFLGVBQWU7MkZBRzlCLDBCQUEwQjtrQkFMdEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDN0MsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsNkJBQTZCLENBQUM7aUJBQzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0RGlhbG9nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudH0gZnJvbSAnLi9kaWFsb2ctdHJpZ2dlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW05hdHVyYWxEaWFsb2dUcmlnZ2VyQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXREaWFsb2dNb2R1bGVdLFxuICAgIGV4cG9ydHM6IFtOYXR1cmFsRGlhbG9nVHJpZ2dlckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxEaWFsb2dUcmlnZ2VyTW9kdWxlIHt9XG4iXX0=
@@ -10,7 +10,7 @@ export class AbstractAssociationSelectComponent {
10
10
  this.renderedValue = new BehaviorSubject('');
11
11
  this.requireValueCtrl = false;
12
12
  this.operators = possibleDiscreteOperators;
13
- this.operatorCtrl = new FormControl('is');
13
+ this.operatorCtrl = new FormControl('is', { nonNullable: true });
14
14
  this.valueCtrl = new FormControl();
15
15
  this.form = new FormGroup({
16
16
  operator: this.operatorCtrl,
@@ -70,7 +70,7 @@ export class AbstractAssociationSelectComponent {
70
70
  else if (condition.empty && !condition.empty.not) {
71
71
  return 'none';
72
72
  }
73
- return null;
73
+ return 'is';
74
74
  }
75
75
  operatorKeyToCondition(key, values) {
76
76
  switch (key) {
@@ -87,12 +87,12 @@ export class AbstractAssociationSelectComponent {
87
87
  }
88
88
  }
89
89
  }
90
- AbstractAssociationSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: AbstractAssociationSelectComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }], target: i0.ɵɵFactoryTarget.Directive });
91
- AbstractAssociationSelectComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: AbstractAssociationSelectComponent, ngImport: i0 });
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: AbstractAssociationSelectComponent, decorators: [{
90
+ AbstractAssociationSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: AbstractAssociationSelectComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }], target: i0.ɵɵFactoryTarget.Directive });
91
+ AbstractAssociationSelectComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.1", type: AbstractAssociationSelectComponent, ngImport: i0 });
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: AbstractAssociationSelectComponent, decorators: [{
93
93
  type: Directive
94
94
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
95
95
  type: Inject,
96
96
  args: [NATURAL_DROPDOWN_DATA]
97
97
  }] }]; } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtYXNzb2NpYXRpb24tc2VsZWN0LWNvbXBvbmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL2Fic3RyYWN0LWFzc29jaWF0aW9uLXNlbGVjdC1jb21wb25lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSwrQ0FBK0MsQ0FBQztBQUV6RyxPQUFPLEVBQUMsV0FBVyxFQUFFLFNBQVMsRUFBZSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRSxPQUFPLEVBQTJCLHlCQUF5QixFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixrQ0FBa0M7SUFhcEQsWUFBa0QsSUFBNEI7UUFYOUQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUV6RCxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDaEIsY0FBUyxHQUFHLHlCQUF5QixDQUFDO1FBQ3RDLGlCQUFZLEdBQWdCLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELGNBQVMsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUMzQyxTQUFJLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzNCLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUztTQUN4QixDQUFDLENBQUM7UUFHQyxJQUFJLENBQUMs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OlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWVyZ2UsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkfSBmcm9tICcuLi9zZWFyY2gvY2xhc3Nlcy9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7TkFUVVJBTF9EUk9QRE9XTl9EQVRBLCBOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi4vc2VhcmNoL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1Bvc3NpYmxlRGlzY3JldGVPcGVyYXRvciwgcG9zc2libGVEaXNjcmV0ZU9wZXJhdG9yc30gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQge3N0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEFzc29jaWF0aW9uU2VsZWN0Q29tcG9uZW50PEM+IGltcGxlbWVudHMgRHJvcGRvd25Db21wb25lbnQge1xuICAgIHB1YmxpYyByZWFkb25seSBjb25maWd1cmF0aW9uOiBDO1xuICAgIHB1YmxpYyByZWFkb25seSByZW5kZXJlZFZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICAgIHB1YmxpYyByZXF1aXJlVmFsdWVDdHJsID0gZmFsc2U7XG4gICAgcHVibGljIHJlYWRvbmx5IG9wZXJhdG9ycyA9IHBvc3NpYmxlRGlzY3JldGVPcGVyYXRvcnM7XG4gICAgcHVibGljIHJlYWRvbmx5IG9wZXJhdG9yQ3RybDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJ2lzJyk7XG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlQ3RybDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICBvcGVyYXRvcjogdGhpcy5vcGVyYXRvckN0cmwsXG4gICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlQ3RybCxcbiAgICB9KTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihASW5qZWN0KE5BVFVSQUxfRFJPUERPV05fREFUQSkgZGF0YTogTmF0dXJhbERyb3Bkb3duRGF0YTxDPikge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBkYXRhLmNvbmZpZ3VyYXRpb247XG5cbiAgICAgICAgLy8gSW1tZWRpYXRlbHkgaW5pdFZhbGlkYXRvcnMgYW5kIGV2ZXJ5dGltZSB0aGUgb3BlcmF0b3IgY2hhbmdlIGxhdGVyXG4gICAgICAgIHRoaXMub3BlcmF0b3JDdHJsLnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aChudWxsKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuaW5pdFZhbGlkYXRvcnMoKSk7XG5cbiAgICAgICAgbWVyZ2UodGhpcy5vcGVyYXRvckN0cmwudmFsdWVDaGFuZ2VzLCB0aGlzLnZhbHVlQ3RybC52YWx1ZUNoYW5nZXMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZW5kZXJlZCA9IHRoaXMuZ2V0UmVuZGVyZWRWYWx1ZSgpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlZFZhbHVlLm5leHQocmVuZGVyZWQpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJlbG9hZENvbmRpdGlvbihkYXRhLmNvbmRpdGlvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVsb2FkIHRoZSB2YWx1ZSBmcm9tIEFQSSAoYG9wZXJhdG9yQ3RybGAgc2hvdWxkIG5vdCBiZSB0b3VjaGVkKVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCByZWxvYWRWYWx1ZShjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQpOiBPYnNlcnZhYmxlPHVua25vd24+O1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclZhbHVlV2l0aG91dE9wZXJhdG9yKCk6IHN0cmluZztcblxuICAgIHB1YmxpYyBhYnN0cmFjdCBnZXRDb25kaXRpb24oKTogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZDtcblxuICAgIHB1YmxpYyBpc1ZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtLnZhbGlkO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0RpcnR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtLmRpcnR5O1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFZhbGlkYXRvcnMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHdoaXRlbGlzdDogUG9zc2libGVEaXNjcmV0ZU9wZXJhdG9yWydrZXknXVtdID0gWydpcycsICdpc25vdCddO1xuICAgICAgICB0aGlzLnJlcXVpcmVWYWx1ZUN0cmwgPSB3aGl0ZWxpc3QuaW5jbHVkZXModGhpcy5vcGVyYXRvckN0cmwudmFsdWUpO1xuICAgICAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gdGhpcy5yZXF1aXJlVmFsdWVDdHJsID8gW1ZhbGlkYXRvcnMucmVxdWlyZWRdIDogW107XG5cbiAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzKTtcbiAgICAgICAgdGhpcy52YWx1ZUN0cmwudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVsb2FkQ29uZGl0aW9uKGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjb25kaXRpb24pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG9wZXJhdG9yS2V5ID0gdGhpcy5jb25kaXRpb25Ub09wZXJhdG9yS2V5KGNvbmRpdGlvbik7XG4gICAgICAgIHRoaXMub3BlcmF0b3JDdHJsLnNldFZhbHVlKG9wZXJhdG9yS2V5KTtcblxuICAgICAgICB0aGlzLnJlbG9hZFZhbHVlKGNvbmRpdGlvbikuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDdHJsLnNldFZhbHVlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZWRWYWx1ZS5uZXh0KHRoaXMuZ2V0UmVuZGVyZWRWYWx1ZSgpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldFJlbmRlcmVkVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgb3BlcmF0b3IgPSB0aGlzLm9wZXJhdG9ycy5maW5kKHYgPT4gdi5rZXkgPT09IHRoaXMub3BlcmF0b3JDdHJsLnZhbHVlKTtcbiAgICAgICAgaWYgKCFvcGVyYXRvciB8fCAhdGhpcy5pc1ZhbGlkKCkpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHRoaXMucmVuZGVyVmFsdWVXaXRob3V0T3BlcmF0b3IoKTtcblxuICAgICAgICByZXR1cm4gW29wZXJhdG9yLmxhYmVsLCBzZWxlY3Rpb25dLmZpbHRlcih2ID0+IHYpLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY29uZGl0aW9uVG9PcGVyYXRvcktleShjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQpOiBQb3NzaWJsZURpc2NyZXRlT3BlcmF0b3JbJ2tleSddIHwgbnVsbCB7XG4gICAgICAgIGlmIChjb25kaXRpb24uaGF2ZSAmJiAhY29uZGl0aW9uLmhhdmUubm90KSB7XG4gICAgICAgICAgICByZXR1cm4gJ2lzJztcbiAgICAgICAgfSBlbHNlIGlmIChjb25kaXRpb24uaGF2ZSAmJiBjb25kaXRpb24uaGF2ZS5ub3QpIHtcbiAgICAgICAgICAgIHJldHVybiAnaXNub3QnO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbmRpdGlvbi5lbXB0eSAmJiBjb25kaXRpb24uZW1wdHkubm90KSB7XG4gICAgICAgICAgICByZXR1cm4gJ2FueSc7XG4gICAgICAgIH0gZWxzZSBpZiAoY29uZGl0aW9uLmVtcHR5ICYmICFjb25kaXRpb24uZW1wdHkubm90KSB7XG4gICAgICAgICAgICByZXR1cm4gJ25vbmUnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9wZXJhdG9yS2V5VG9Db25kaXRpb24oXG4gICAgICAgIGtleTogUG9zc2libGVEaXNjcmV0ZU9wZXJhdG9yWydrZXknXSxcbiAgICAgICAgdmFsdWVzOiBzdHJpbmdbXSxcbiAgICApOiBGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkIHtcbiAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICAgIGNhc2UgJ2lzJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge2hhdmU6IHt2YWx1ZXM6IHZhbHVlc319O1xuICAgICAgICAgICAgY2FzZSAnaXNub3QnOlxuICAgICAgICAgICAgICAgIHJldHVybiB7aGF2ZToge3ZhbHVlczogdmFsdWVzLCBub3Q6IHRydWV9fTtcbiAgICAgICAgICAgIGNhc2UgJ2FueSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtlbXB0eToge25vdDogdHJ1ZX19O1xuICAgICAgICAgICAgY2FzZSAnbm9uZSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtlbXB0eToge25vdDogZmFsc2V9fTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBvcGVyYXRvciBrZXk6ICcgKyBrZXkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtYXNzb2NpYXRpb24tc2VsZWN0LWNvbXBvbmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL2Fic3RyYWN0LWFzc29jaWF0aW9uLXNlbGVjdC1jb21wb25lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSwrQ0FBK0MsQ0FBQztBQUV6RyxPQUFPLEVBQUMsV0FBVyxFQUFFLFNBQVMsRUFBZSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRSxPQUFPLEVBQStCLHlCQUF5QixFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHekMsTUFBTSxPQUFnQixrQ0FBa0M7SUFhcEQsWUFBa0QsSUFBNEI7UUFYOUQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUV6RCxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDaEIsY0FBUyxHQUFHLHlCQUF5QixDQUFDO1FBQ3RDLGlCQUFZLEdBQUcsSUFBSSxXQUFXLENBQStCLElBQUksRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQ3hGLGNBQVMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQzlCLFNBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUNqQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTO1NB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QUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWVyZ2UsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkfSBmcm9tICcuLi9zZWFyY2gvY2xhc3Nlcy9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7TkFUVVJBTF9EUk9QRE9XTl9EQVRBLCBOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi4vc2VhcmNoL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1Bvc3NpYmxlRGlzY3JldGVPcGVyYXRvcktleXMsIHBvc3NpYmxlRGlzY3JldGVPcGVyYXRvcnN9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHtzdGFydFdpdGh9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RBc3NvY2lhdGlvblNlbGVjdENvbXBvbmVudDxDPiBpbXBsZW1lbnRzIERyb3Bkb3duQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29uZmlndXJhdGlvbjogQztcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVuZGVyZWRWYWx1ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG5cbiAgICBwdWJsaWMgcmVxdWlyZVZhbHVlQ3RybCA9IGZhbHNlO1xuICAgIHB1YmxpYyByZWFkb25seSBvcGVyYXRvcnMgPSBwb3NzaWJsZURpc2NyZXRlT3BlcmF0b3JzO1xuICAgIHB1YmxpYyByZWFkb25seSBvcGVyYXRvckN0cmwgPSBuZXcgRm9ybUNvbnRyb2w8UG9zc2libGVEaXNjcmV0ZU9wZXJhdG9yS2V5cz4oJ2lzJywge25vbk51bGxhYmxlOiB0cnVlfSk7XG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlQ3RybCA9IG5ldyBGb3JtQ29udHJvbCgpO1xuICAgIHB1YmxpYyByZWFkb25seSBmb3JtID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgIG9wZXJhdG9yOiB0aGlzLm9wZXJhdG9yQ3RybCxcbiAgICAgICAgdmFsdWU6IHRoaXMudmFsdWVDdHJsLFxuICAgIH0pO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKEBJbmplY3QoTkFUVVJBTF9EUk9QRE9XTl9EQVRBKSBkYXRhOiBOYXR1cmFsRHJvcGRvd25EYXRhPEM+KSB7XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvbiA9IGRhdGEuY29uZmlndXJhdGlvbjtcblxuICAgICAgICAvLyBJbW1lZGlhdGVseSBpbml0VmFsaWRhdG9ycyBhbmQgZXZlcnl0aW1lIHRoZSBvcGVyYXRvciBjaGFuZ2UgbGF0ZXJcbiAgICAgICAgdGhpcy5vcGVyYXRvckN0cmwudmFsdWVDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKG51bGwpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5pbml0VmFsaWRhdG9ycygpKTtcblxuICAgICAgICBtZXJnZSh0aGlzLm9wZXJhdG9yQ3RybC52YWx1ZUNoYW5nZXMsIHRoaXMudmFsdWVDdHJsLnZhbHVlQ2hhbmdlcykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlbmRlcmVkID0gdGhpcy5nZXRSZW5kZXJlZFZhbHVlKCk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVkVmFsdWUubmV4dChyZW5kZXJlZCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMucmVsb2FkQ29uZGl0aW9uKGRhdGEuY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWxvYWQgdGhlIHZhbHVlIGZyb20gQVBJIChgb3BlcmF0b3JDdHJsYCBzaG91bGQgbm90IGJlIHRvdWNoZWQpXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbG9hZFZhbHVlKGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCk6IE9ic2VydmFibGU8dW5rbm93bj47XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVuZGVyVmFsdWVXaXRob3V0T3BlcmF0b3IoKTogc3RyaW5nO1xuXG4gICAgcHVibGljIGFic3RyYWN0IGdldENvbmRpdGlvbigpOiBGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkO1xuXG4gICAgcHVibGljIGlzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0udmFsaWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRGlydHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uZGlydHk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmFsaWRhdG9ycygpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgd2hpdGVsaXN0OiBQb3NzaWJsZURpc2NyZXRlT3BlcmF0b3JLZXlzW10gPSBbJ2lzJywgJ2lzbm90J107XG4gICAgICAgIHRoaXMucmVxdWlyZVZhbHVlQ3RybCA9IHdoaXRlbGlzdC5pbmNsdWRlcyh0aGlzLm9wZXJhdG9yQ3RybC52YWx1ZSk7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSB0aGlzLnJlcXVpcmVWYWx1ZUN0cmwgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gOiBbXTtcblxuICAgICAgICB0aGlzLnZhbHVlQ3RybC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuICAgICAgICB0aGlzLnZhbHVlQ3RybC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWxvYWRDb25kaXRpb24oY29uZGl0aW9uOiBGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBpZiAoIWNvbmRpdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3BlcmF0b3JLZXkgPSB0aGlzLmNvbmRpdGlvblRvT3BlcmF0b3JLZXkoY29uZGl0aW9uKTtcbiAgICAgICAgdGhpcy5vcGVyYXRvckN0cmwuc2V0VmFsdWUob3BlcmF0b3JLZXkpO1xuXG4gICAgICAgIHRoaXMucmVsb2FkVmFsdWUoY29uZGl0aW9uKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlZFZhbHVlLm5leHQodGhpcy5nZXRSZW5kZXJlZFZhbHVlKCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0UmVuZGVyZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBvcGVyYXRvciA9IHRoaXMub3BlcmF0b3JzLmZpbmQodiA9PiB2LmtleSA9PT0gdGhpcy5vcGVyYXRvckN0cmwudmFsdWUpO1xuICAgICAgICBpZiAoIW9wZXJhdG9yIHx8ICF0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gdGhpcy5yZW5kZXJWYWx1ZVdpdGhvdXRPcGVyYXRvcigpO1xuXG4gICAgICAgIHJldHVybiBbb3BlcmF0b3IubGFiZWwsIHNlbGVjdGlvbl0uZmlsdGVyKHYgPT4gdikuam9pbignICcpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb25kaXRpb25Ub09wZXJhdG9yS2V5KGNvbmRpdGlvbjogRmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZCk6IFBvc3NpYmxlRGlzY3JldGVPcGVyYXRvcktleXMge1xuICAgICAgICBpZiAoY29uZGl0aW9uLmhhdmUgJiYgIWNvbmRpdGlvbi5oYXZlLm5vdCkge1xuICAgICAgICAgICAgcmV0dXJuICdpcyc7XG4gICAgICAgIH0gZWxzZSBpZiAoY29uZGl0aW9uLmhhdmUgJiYgY29uZGl0aW9uLmhhdmUubm90KSB7XG4gICAgICAgICAgICByZXR1cm4gJ2lzbm90JztcbiAgICAgICAgfSBlbHNlIGlmIChjb25kaXRpb24uZW1wdHkgJiYgY29uZGl0aW9uLmVtcHR5Lm5vdCkge1xuICAgICAgICAgICAgcmV0dXJuICdhbnknO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbmRpdGlvbi5lbXB0eSAmJiAhY29uZGl0aW9uLmVtcHR5Lm5vdCkge1xuICAgICAgICAgICAgcmV0dXJuICdub25lJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAnaXMnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvcGVyYXRvcktleVRvQ29uZGl0aW9uKGtleTogUG9zc2libGVEaXNjcmV0ZU9wZXJhdG9yS2V5cywgdmFsdWVzOiBzdHJpbmdbXSk6IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQge1xuICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgICAgY2FzZSAnaXMnOlxuICAgICAgICAgICAgICAgIHJldHVybiB7aGF2ZToge3ZhbHVlczogdmFsdWVzfX07XG4gICAgICAgICAgICBjYXNlICdpc25vdCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtoYXZlOiB7dmFsdWVzOiB2YWx1ZXMsIG5vdDogdHJ1ZX19O1xuICAgICAgICAgICAgY2FzZSAnYW55JzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge2VtcHR5OiB7bm90OiB0cnVlfX07XG4gICAgICAgICAgICBjYXNlICdub25lJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge2VtcHR5OiB7bm90OiBmYWxzZX19O1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIG9wZXJhdG9yIGtleTogJyArIGtleSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -29,8 +29,8 @@ const components = [
29
29
  ];
30
30
  export class NaturalDropdownComponentsModule {
31
31
  }
32
- NaturalDropdownComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDropdownComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
33
- NaturalDropdownComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDropdownComponentsModule, declarations: [TypeNumberComponent,
32
+ NaturalDropdownComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDropdownComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
33
+ NaturalDropdownComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.1", ngImport: i0, type: NaturalDropdownComponentsModule, declarations: [TypeNumberComponent,
34
34
  TypeSelectComponent,
35
35
  TypeDateComponent,
36
36
  TypeDateRangeComponent,
@@ -54,21 +54,19 @@ NaturalDropdownComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "
54
54
  TypeNaturalSelectComponent,
55
55
  TypeTextComponent,
56
56
  TypeHierarchicSelectorComponent] });
57
- NaturalDropdownComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDropdownComponentsModule, imports: [[
58
- CommonModule,
59
- FormsModule,
60
- MatFormFieldModule,
61
- ReactiveFormsModule,
62
- MatButtonModule,
63
- MatInputModule,
64
- MatListModule,
65
- MatCheckboxModule,
66
- MatDatepickerModule,
67
- MatSelectModule,
68
- NaturalSelectModule,
69
- NaturalHierarchicSelectorModule,
70
- ]] });
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: NaturalDropdownComponentsModule, decorators: [{
57
+ NaturalDropdownComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDropdownComponentsModule, imports: [CommonModule,
58
+ FormsModule,
59
+ MatFormFieldModule,
60
+ ReactiveFormsModule,
61
+ MatButtonModule,
62
+ MatInputModule,
63
+ MatListModule,
64
+ MatCheckboxModule,
65
+ MatDatepickerModule,
66
+ MatSelectModule,
67
+ NaturalSelectModule,
68
+ NaturalHierarchicSelectorModule] });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalDropdownComponentsModule, decorators: [{
72
70
  type: NgModule,
73
71
  args: [{
74
72
  declarations: [...components],
@@ -89,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
89
87
  ],
90
88
  }]
91
89
  }] });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0dXJhbC1kcm9wZG93bi1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvbmF0dXJhbC1kcm9wZG93bi1jb21wb25lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQzlHLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDOztBQUVuRixNQUFNLFVBQVUsR0FBRztJQUNmLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsaUJBQWlCO0lBQ2pCLCtCQUErQjtDQUNsQyxDQUFDO0FBb0JGLE1BQU0sT0FBTywrQkFBK0I7OzRIQUEvQiwrQkFBK0I7NkhBQS9CLCtCQUErQixpQkEzQnhDLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLHNCQUFzQjtRQUN0QiwwQkFBMEI7UUFDMUIsaUJBQWlCO1FBQ2pCLCtCQUErQixhQU8zQixZQUFZO1FBQ1osV0FBVztRQUNYLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLGNBQWM7UUFDZCxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLCtCQUErQixhQXhCbkMsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLDBCQUEwQjtRQUMxQixpQkFBaUI7UUFDakIsK0JBQStCOzZIQXFCdEIsK0JBQStCLFlBZi9CO1lBQ0wsWUFBWTtZQUNaLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixjQUFjO1lBQ2QsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQiwrQkFBK0I7U0FDbEM7MkZBRVEsK0JBQStCO2tCQWxCM0MsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztvQkFDN0IsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsK0JBQStCO3FCQUNsQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7TWF0Q2hlY2tib3hNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7TWF0RGF0ZXBpY2tlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdExpc3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHtNYXRTZWxlY3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQge05hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JNb2R1bGV9IGZyb20gJy4uL2hpZXJhcmNoaWMtc2VsZWN0b3IvaGllcmFyY2hpYy1zZWxlY3Rvci5tb2R1bGUnO1xuaW1wb3J0IHtOYXR1cmFsU2VsZWN0TW9kdWxlfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0Lm1vZHVsZSc7XG5pbXBvcnQge1R5cGVEYXRlQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtZGF0ZS90eXBlLWRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7VHlwZUhpZXJhcmNoaWNTZWxlY3RvckNvbXBvbmVudH0gZnJvbSAnLi90eXBlLWhpZXJhcmNoaWMtc2VsZWN0b3IvdHlwZS1oaWVyYXJjaGljLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVOYXR1cmFsU2VsZWN0Q29tcG9uZW50fSBmcm9tICcuL3R5cGUtbmF0dXJhbC1zZWxlY3QvdHlwZS1uYXR1cmFsLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtUeXBlTnVtYmVyQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtbnVtYmVyL3R5cGUtbnVtYmVyLmNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vdHlwZS1zZWxlY3QvdHlwZS1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7VHlwZVRleHRDb21wb25lbnR9IGZyb20gJy4vdHlwZS10ZXh0L3R5cGUtdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHtUeXBlRGF0ZVJhbmdlQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtZGF0ZS1yYW5nZS90eXBlLWRhdGUtcmFuZ2UuY29tcG9uZW50JztcblxuY29uc3QgY29tcG9uZW50cyA9IFtcbiAgICBUeXBlTnVtYmVyQ29tcG9uZW50LFxuICAgIFR5cGVTZWxlY3RDb21wb25lbnQsXG4gICAgVHlwZURhdGVDb21wb25lbnQsXG4gICAgVHlwZURhdGVSYW5nZUNvbXBvbmVudCxcbiAgICBUeXBlTmF0dXJhbFNlbGVjdENvbXBvbmVudCxcbiAgICBUeXBlVGV4dENvbXBvbmVudCxcbiAgICBUeXBlSGllcmFyY2hpY1NlbGVjdG9yQ29tcG9uZW50LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFsuLi5jb21wb25lbnRzXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50c10sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgICAgIE1hdExpc3RNb2R1bGUsXG4gICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgICAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgICAgIE5hdHVyYWxTZWxlY3RNb2R1bGUsXG4gICAgICAgIE5hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JNb2R1bGUsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbERyb3Bkb3duQ29tcG9uZW50c01vZHVsZSB7fVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0dXJhbC1kcm9wZG93bi1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvbmF0dXJhbC1kcm9wZG93bi1jb21wb25lbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQzlHLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDOztBQUVuRixNQUFNLFVBQVUsR0FBRztJQUNmLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsaUJBQWlCO0lBQ2pCLCtCQUErQjtDQUNsQyxDQUFDO0FBb0JGLE1BQU0sT0FBTywrQkFBK0I7OzRIQUEvQiwrQkFBK0I7NkhBQS9CLCtCQUErQixpQkEzQnhDLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLHNCQUFzQjtRQUN0QiwwQkFBMEI7UUFDMUIsaUJBQWlCO1FBQ2pCLCtCQUErQixhQU8zQixZQUFZO1FBQ1osV0FBVztRQUNYLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLGNBQWM7UUFDZCxhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLCtCQUErQixhQXhCbkMsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLDBCQUEwQjtRQUMxQixpQkFBaUI7UUFDakIsK0JBQStCOzZIQXFCdEIsK0JBQStCLFlBZHBDLFlBQVk7UUFDWixXQUFXO1FBQ1gsa0JBQWtCO1FBQ2xCLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsY0FBYztRQUNkLGFBQWE7UUFDYixpQkFBaUI7UUFDakIsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsK0JBQStCOzJGQUcxQiwrQkFBK0I7a0JBbEIzQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQiwrQkFBK0I7cUJBQ2xDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWF0QnV0dG9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtNYXRDaGVja2JveE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHtNYXREYXRlcGlja2VyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7TWF0SW5wdXRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7TWF0TGlzdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQge01hdFNlbGVjdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7TmF0dXJhbEhpZXJhcmNoaWNTZWxlY3Rvck1vZHVsZX0gZnJvbSAnLi4vaGllcmFyY2hpYy1zZWxlY3Rvci9oaWVyYXJjaGljLXNlbGVjdG9yLm1vZHVsZSc7XG5pbXBvcnQge05hdHVyYWxTZWxlY3RNb2R1bGV9IGZyb20gJy4uL3NlbGVjdC9zZWxlY3QubW9kdWxlJztcbmltcG9ydCB7VHlwZURhdGVDb21wb25lbnR9IGZyb20gJy4vdHlwZS1kYXRlL3R5cGUtZGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUeXBlSGllcmFyY2hpY1NlbGVjdG9yQ29tcG9uZW50fSBmcm9tICcuL3R5cGUtaGllcmFyY2hpYy1zZWxlY3Rvci90eXBlLWhpZXJhcmNoaWMtc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7VHlwZU5hdHVyYWxTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vdHlwZS1uYXR1cmFsLXNlbGVjdC90eXBlLW5hdHVyYWwtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVOdW1iZXJDb21wb25lbnR9IGZyb20gJy4vdHlwZS1udW1iZXIvdHlwZS1udW1iZXIuY29tcG9uZW50JztcbmltcG9ydCB7VHlwZVNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi90eXBlLXNlbGVjdC90eXBlLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtUeXBlVGV4dENvbXBvbmVudH0gZnJvbSAnLi90eXBlLXRleHQvdHlwZS10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVEYXRlUmFuZ2VDb21wb25lbnR9IGZyb20gJy4vdHlwZS1kYXRlLXJhbmdlL3R5cGUtZGF0ZS1yYW5nZS5jb21wb25lbnQnO1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIFR5cGVOdW1iZXJDb21wb25lbnQsXG4gICAgVHlwZVNlbGVjdENvbXBvbmVudCxcbiAgICBUeXBlRGF0ZUNvbXBvbmVudCxcbiAgICBUeXBlRGF0ZVJhbmdlQ29tcG9uZW50LFxuICAgIFR5cGVOYXR1cmFsU2VsZWN0Q29tcG9uZW50LFxuICAgIFR5cGVUZXh0Q29tcG9uZW50LFxuICAgIFR5cGVIaWVyYXJjaGljU2VsZWN0b3JDb21wb25lbnQsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHNdLFxuICAgIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0TGlzdE1vZHVsZSxcbiAgICAgICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gICAgICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICAgICAgTmF0dXJhbFNlbGVjdE1vZHVsZSxcbiAgICAgICAgTmF0dXJhbEhpZXJhcmNoaWNTZWxlY3Rvck1vZHVsZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRHJvcGRvd25Db21wb25lbnRzTW9kdWxlIHt9XG4iXX0=
@@ -7,29 +7,29 @@ import { possibleComparableOperators } from '../types';
7
7
  import { dateMax, dateMin, serialize } from '../utils';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/material/core";
10
- import * as i2 from "@angular/material/form-field";
11
- import * as i3 from "@angular/material/select";
12
- import * as i4 from "@angular/material/datepicker";
13
- import * as i5 from "@angular/forms";
14
- import * as i6 from "@angular/common";
15
- import * as i7 from "@angular/material/input";
10
+ import * as i2 from "@angular/common";
11
+ import * as i3 from "@angular/forms";
12
+ import * as i4 from "@angular/material/form-field";
13
+ import * as i5 from "@angular/material/input";
14
+ import * as i6 from "@angular/material/datepicker";
15
+ import * as i7 from "@angular/material/select";
16
16
  export class TypeDateComponent {
17
17
  constructor(data, dateAdapter, dateFormats) {
18
18
  this.dateAdapter = dateAdapter;
19
19
  this.dateFormats = dateFormats;
20
20
  this.renderedValue = new BehaviorSubject('');
21
- this.operatorCtrl = new FormControl('equal');
22
- this.valueCtrl = new FormControl();
21
+ this.operatorCtrl = new FormControl('equal', { nonNullable: true });
22
+ this.valueCtrl = new FormControl(null);
23
23
  this.operators = possibleComparableOperators;
24
+ this.form = new FormGroup({
25
+ operator: this.operatorCtrl,
26
+ value: this.valueCtrl,
27
+ });
24
28
  this.defaults = {
25
29
  min: null,
26
30
  max: null,
27
31
  };
28
32
  this.configuration = { ...this.defaults, ...data.configuration };
29
- this.form = new FormGroup({
30
- operator: this.operatorCtrl,
31
- value: this.valueCtrl,
32
- });
33
33
  merge(this.operatorCtrl.valueChanges, this.valueCtrl.valueChanges).subscribe(() => {
34
34
  this.renderedValue.next(this.getRenderedValue());
35
35
  });
@@ -118,9 +118,9 @@ export class TypeDateComponent {
118
118
  }
119
119
  }
120
120
  }
121
- TypeDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: TypeDateComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }, { token: i1.DateAdapter }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component });
122
- TypeDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: TypeDateComponent, selector: "ng-component", ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field style=\"max-width: 4em; margin-right: 1em\">\n <mat-label i18n=\"Mathematical operator < > =\">Op\u00E9rateur</mat-label>\n <mat-select [formControl]=\"operatorCtrl\" [required]=\"true\">\n <mat-option *ngFor=\"let item of operators\" [value]=\"item.key\">\n {{ item.label }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label i18n>Date</mat-label>\n <input\n [formControl]=\"valueCtrl\"\n [matDatepicker]=\"value\"\n [max]=\"configuration.max\"\n [min]=\"configuration.min\"\n [required]=\"true\"\n matInput\n />\n <mat-datepicker-toggle [for]=\"value\" matSuffix></mat-datepicker-toggle>\n <mat-datepicker #value></mat-datepicker>\n <mat-error>\n <span *ngIf=\"valueCtrl.hasError('min')\">< {{ configuration.min }}</span>\n <span *ngIf=\"valueCtrl.hasError('max')\">> {{ configuration.max }}</span>\n <span *ngIf=\"valueCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { type: i4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }], directives: [{ type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.MatLabel, selector: "mat-label" }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i2.MatSuffix, selector: "[matSuffix]" }, { type: i2.MatError, selector: "mat-error", inputs: ["id"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: TypeDateComponent, decorators: [{
121
+ TypeDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TypeDateComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }, { token: i1.DateAdapter }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component });
122
+ TypeDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: TypeDateComponent, selector: "ng-component", ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field style=\"max-width: 4em; margin-right: 1em\">\n <mat-label i18n=\"Mathematical operator < > =\">Op\u00E9rateur</mat-label>\n <mat-select [formControl]=\"operatorCtrl\" [required]=\"true\">\n <mat-option *ngFor=\"let item of operators\" [value]=\"item.key\">\n {{ item.label }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label i18n>Date</mat-label>\n <input\n [formControl]=\"valueCtrl\"\n [matDatepicker]=\"value\"\n [max]=\"configuration.max\"\n [min]=\"configuration.min\"\n [required]=\"true\"\n matInput\n />\n <mat-datepicker-toggle [for]=\"value\" matSuffix></mat-datepicker-toggle>\n <mat-datepicker #value></mat-datepicker>\n <mat-error>\n <span *ngIf=\"valueCtrl.hasError('min')\">< {{ configuration.min }}</span>\n <span *ngIf=\"valueCtrl.hasError('max')\">> {{ configuration.max }}</span>\n <span *ngIf=\"valueCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i1.MatOption, selector: "mat-option", exportAs: ["matOption"] }] });
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TypeDateComponent, decorators: [{
124
124
  type: Component,
125
125
  args: [{ template: "<form [formGroup]=\"form\">\n <mat-form-field style=\"max-width: 4em; margin-right: 1em\">\n <mat-label i18n=\"Mathematical operator < > =\">Op\u00E9rateur</mat-label>\n <mat-select [formControl]=\"operatorCtrl\" [required]=\"true\">\n <mat-option *ngFor=\"let item of operators\" [value]=\"item.key\">\n {{ item.label }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field>\n <mat-label i18n>Date</mat-label>\n <input\n [formControl]=\"valueCtrl\"\n [matDatepicker]=\"value\"\n [max]=\"configuration.max\"\n [min]=\"configuration.min\"\n [required]=\"true\"\n matInput\n />\n <mat-datepicker-toggle [for]=\"value\" matSuffix></mat-datepicker-toggle>\n <mat-datepicker #value></mat-datepicker>\n <mat-error>\n <span *ngIf=\"valueCtrl.hasError('min')\">< {{ configuration.min }}</span>\n <span *ngIf=\"valueCtrl.hasError('max')\">> {{ configuration.max }}</span>\n <span *ngIf=\"valueCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n" }]
126
126
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -130,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
130
130
  type: Inject,
131
131
  args: [MAT_DATE_FORMATS]
132
132
  }] }]; } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1kYXRlL3R5cGUtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtZGF0ZS90eXBlLWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxTQUFTLEVBQWUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFjLGdCQUFnQixFQUFpQixNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSxrREFBa0QsQ0FBQztBQUU1RyxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDckQsT0FBTyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDOzs7Ozs7Ozs7QUFVckQsTUFBTSxPQUFPLGlCQUFpQjtJQWMxQixZQUNtQyxJQUFtRCxFQUMxRSxXQUEyQixFQUNELFdBQTJCO1FBRHJELGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUNELGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQWhCMUQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUVoRCxpQkFBWSxHQUFnQixJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRCxjQUFTLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7UUFDbEMsY0FBUyxHQUFHLDJCQUEyQixDQUFDO1FBSXZDLGFBQVEsR0FBNkI7WUFDbEQsR0FBRyxFQUFFLElBQUk7WUFDVCxHQUFHLEVBQUUsSUFBSTtTQUNaLENBQUM7UUFPRSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDdEIsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQzNCLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUztTQUN4QixDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzlFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFDdkIsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUVELE1BQU0sU0FBUyxHQUE4QixFQUFFLENBQUM7UUFDaEQsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFDdkMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFDaEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxJQUFJLFFBQVEsS0FBSyxPQUFPLEVBQUU7WUFDdEIsU0FBUyxDQUFDLGNBQWMsR0FBRztnQkFDdkIsS0FBSyxFQUFFLFNBQVMsQ0FBSSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQzthQUM5QyxDQUFDO1lBQ0YsU0FBUyxDQUFDLElBQUksR0FBRztnQkFDYixLQUFLLEVBQUUsU0FBUyxDQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDO2FBQ2xELENBQUM7U0FDTDthQUFNO1lBQ0gsaURBQWlEO1lBQ2pELElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtnQkFDeEIsUUFBUSxHQUFHLGdCQUFnQixDQUFDO2dCQUM1QixJQUFJLEdBQUcsUUFBUSxDQUFDO2FBQ25CO2lCQUFNLElBQUksUUFBUSxLQUFLLGFBQWEsRUFBRTtnQkFDbkMsUUFBUSxHQUFHLE1BQU0sQ0FBQztnQkFDbEIsSUFBSSxHQUFHLFFBQVEsQ0FBQzthQUNuQjtZQUVELFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRztnQkFDbEIsS0FBSyxFQUFFLFNBQVMsQ0FBSSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQzthQUM5QyxDQUFDO1NBQ0w7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBRU0sT0FBTztRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVNLE9BQU87UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFTyxlQUFlLENBQUMsU0FBMkM7UUFDL0QsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNaLE9BQU87U0FDVjtRQUVELHVCQUF1QjtRQUN2QixJQUFJLFNBQVMsQ0FBQyxjQUFjLElBQUksU0FBUyxDQUFDLElBQUksRUFBRTtZQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRS9CLE9BQU87U0FDVjtRQUVELEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQyxNQUFNLGdCQUFnQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDakQsSUFBSSxnQkFBZ0IsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUV6QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEM7U0FDSjtJQUNMLENBQUM7SUFFTyxjQUFjO1FBQ2xCLE1BQU0sVUFBVSxHQUFrQixDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4RCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFO1lBQ3hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRTtZQUN4QixVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBSSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN6RTtRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTyxXQUFXLENBQUMsSUFBTztRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0UsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDNUMsT0FBTyxFQUFFLENBQUM7U0FDYjthQUFNO1lBQ0gsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFaEcsT0FBTyxRQUFRLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7U0FDdkM7SUFDTCxDQUFDOzs4R0E5SFEsaUJBQWlCLGtCQWVkLHFCQUFxQix3Q0FFckIsZ0JBQWdCO2tHQWpCbkIsaUJBQWlCLG9EQ2xCOUIscXJDQTZCQTsyRkRYYSxpQkFBaUI7a0JBSDdCLFNBQVM7OzswQkFrQkQsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUU1QixNQUFNOzJCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtEYXRlQWRhcHRlciwgTUFUX0RBVEVfRk9STUFUUywgTWF0RGF0ZUZvcm1hdHN9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIG1lcmdlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7RmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZH0gZnJvbSAnLi4vLi4vc2VhcmNoL2NsYXNzZXMvZ3JhcGhxbC1kb2N0cmluZS50eXBlcyc7XG5pbXBvcnQge05BVFVSQUxfRFJPUERPV05fREFUQSwgTmF0dXJhbERyb3Bkb3duRGF0YX0gZnJvbSAnLi4vLi4vc2VhcmNoL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7RHJvcGRvd25Db21wb25lbnR9IGZyb20gJy4uLy4uL3NlYXJjaC90eXBlcy9kcm9wZG93bi1jb21wb25lbnQnO1xuaW1wb3J0IHtwb3NzaWJsZUNvbXBhcmFibGVPcGVyYXRvcnN9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7ZGF0ZU1heCwgZGF0ZU1pbiwgc2VyaWFsaXplfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURhdGVDb25maWd1cmF0aW9uPEQgPSBhbnk+IHtcbiAgICBtaW4/OiBEIHwgbnVsbDtcbiAgICBtYXg/OiBEIHwgbnVsbDtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL3R5cGUtZGF0ZS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVEYXRlQ29tcG9uZW50PEQgPSBhbnk+IGltcGxlbWVudHMgRHJvcGRvd25Db21wb25lbnQge1xuICAgIHB1YmxpYyByZW5kZXJlZFZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgICBwdWJsaWMgY29uZmlndXJhdGlvbjogVHlwZURhdGVDb25maWd1cmF0aW9uPEQ+O1xuICAgIHB1YmxpYyBvcGVyYXRvckN0cmw6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCdlcXVhbCcpO1xuICAgIHB1YmxpYyB2YWx1ZUN0cmw6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG4gICAgcHVibGljIHJlYWRvbmx5IG9wZXJhdG9ycyA9IHBvc3NpYmxlQ29tcGFyYWJsZU9wZXJhdG9ycztcblxuICAgIHB1YmxpYyBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRzOiBUeXBlRGF0ZUNvbmZpZ3VyYXRpb248RD4gPSB7XG4gICAgICAgIG1pbjogbnVsbCxcbiAgICAgICAgbWF4OiBudWxsLFxuICAgIH07XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTkFUVVJBTF9EUk9QRE9XTl9EQVRBKSBkYXRhOiBOYXR1cmFsRHJvcGRvd25EYXRhPFR5cGVEYXRlQ29uZmlndXJhdGlvbjxEPj4sXG4gICAgICAgIHByaXZhdGUgZGF0ZUFkYXB0ZXI6IERhdGVBZGFwdGVyPEQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9EQVRFX0ZPUk1BVFMpIHByaXZhdGUgZGF0ZUZvcm1hdHM6IE1hdERhdGVGb3JtYXRzLFxuICAgICkge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSB7Li4udGhpcy5kZWZhdWx0cywgLi4uZGF0YS5jb25maWd1cmF0aW9ufTtcbiAgICAgICAgdGhpcy5mb3JtID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogdGhpcy5vcGVyYXRvckN0cmwsXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZUN0cmwsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIG1lcmdlKHRoaXMub3BlcmF0b3JDdHJsLnZhbHVlQ2hhbmdlcywgdGhpcy52YWx1ZUN0cmwudmFsdWVDaGFuZ2VzKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlZFZhbHVlLm5leHQodGhpcy5nZXRSZW5kZXJlZFZhbHVlKCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluaXRWYWxpZGF0b3JzKCk7XG4gICAgICAgIHRoaXMucmVsb2FkQ29uZGl0aW9uKGRhdGEuY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZGl0aW9uKCk6IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQge1xuICAgICAgICBpZiAoIXRoaXMudmFsdWVDdHJsLnZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQgPSB7fTtcbiAgICAgICAgbGV0IG9wZXJhdG9yID0gdGhpcy5vcGVyYXRvckN0cmwudmFsdWU7XG4gICAgICAgIGxldCBkYXRlID0gdGhpcy52YWx1ZUN0cmwudmFsdWU7XG4gICAgICAgIGNvbnN0IGRheUFmdGVyID0gdGhpcy5nZXREYXlBZnRlcihkYXRlKTtcbiAgICAgICAgaWYgKG9wZXJhdG9yID09PSAnZXF1YWwnKSB7XG4gICAgICAgICAgICBjb25kaXRpb24uZ3JlYXRlck9yRXF1YWwgPSB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHNlcmlhbGl6ZTxEPih0aGlzLmRhdGVBZGFwdGVyLCBkYXRlKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25kaXRpb24ubGVzcyA9IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogc2VyaWFsaXplPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIGRheUFmdGVyKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBUcmFuc3BhcmVudGx5IGFkYXB0IGV4Y2x1c2l2ZS9pbmNsdXNpdmUgcmFuZ2VzXG4gICAgICAgICAgICBpZiAob3BlcmF0b3IgPT09ICdncmVhdGVyJykge1xuICAgICAgICAgICAgICAgIG9wZXJhdG9yID0gJ2dyZWF0ZXJPckVxdWFsJztcbiAgICAgICAgICAgICAgICBkYXRlID0gZGF5QWZ0ZXI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG9wZXJhdG9yID09PSAnbGVzc09yRXF1YWwnKSB7XG4gICAgICAgICAgICAgICAgb3BlcmF0b3IgPSAnbGVzcyc7XG4gICAgICAgICAgICAgICAgZGF0ZSA9IGRheUFmdGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25kaXRpb25bb3BlcmF0b3JdID0ge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBzZXJpYWxpemU8RD4odGhpcy5kYXRlQWRhcHRlciwgZGF0ZSksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNWYWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNEaXJ0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5kaXJ0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbG9hZENvbmRpdGlvbihjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghY29uZGl0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTcGVjaWFsIGNhc2UgZm9yICc9J1xuICAgICAgICBpZiAoY29uZGl0aW9uLmdyZWF0ZXJPckVxdWFsICYmIGNvbmRpdGlvbi5sZXNzKSB7XG4gICAgICAgICAgICB0aGlzLm9wZXJhdG9yQ3RybC5zZXRWYWx1ZSgnZXF1YWwnKTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZShjb25kaXRpb24uZ3JlYXRlck9yRXF1YWwudmFsdWUpO1xuICAgICAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsdWUodmFsdWUpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IG9wZXJhdG9yIG9mIHRoaXMub3BlcmF0b3JzKSB7XG4gICAgICAgICAgICBjb25zdCByZWxvYWRlZE9wZXJhdG9yID0gY29uZGl0aW9uW29wZXJhdG9yLmtleV07XG4gICAgICAgICAgICBpZiAocmVsb2FkZWRPcGVyYXRvcikge1xuICAgICAgICAgICAgICAgIHRoaXMub3BlcmF0b3JDdHJsLnNldFZhbHVlKG9wZXJhdG9yLmtleSk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUocmVsb2FkZWRPcGVyYXRvci52YWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmFsaWRhdG9ycygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtWYWxpZGF0b3JzLnJlcXVpcmVkXTtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5taW4pIHtcbiAgICAgICAgICAgIHZhbGlkYXRvcnMucHVzaChkYXRlTWluPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIHRoaXMuY29uZmlndXJhdGlvbi5taW4pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSB7XG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goZGF0ZU1heDxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlQ3RybC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGF5QWZ0ZXIoZGF0ZTogRCk6IEQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlQWRhcHRlci5hZGRDYWxlbmRhckRheXModGhpcy5kYXRlQWRhcHRlci5jbG9uZShkYXRlKSwgMSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZW5kZXJlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG9wZXJhdG9yID0gdGhpcy5vcGVyYXRvcnMuZmluZCh2ID0+IHYua2V5ID09PSB0aGlzLm9wZXJhdG9yQ3RybC52YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlQ3RybC52YWx1ZSA9PT0gbnVsbCB8fCAhb3BlcmF0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5kYXRlQWRhcHRlci5mb3JtYXQodGhpcy52YWx1ZUN0cmwudmFsdWUsIHRoaXMuZGF0ZUZvcm1hdHMuZGlzcGxheS5kYXRlSW5wdXQpO1xuXG4gICAgICAgICAgICByZXR1cm4gb3BlcmF0b3IubGFiZWwgKyAnICcgKyB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIm1heC13aWR0aDogNGVtOyBtYXJnaW4tcmlnaHQ6IDFlbVwiPlxuICAgICAgICA8bWF0LWxhYmVsIGkxOG49XCJNYXRoZW1hdGljYWwgb3BlcmF0b3IgPCA+ID1cIj5PcMOpcmF0ZXVyPC9tYXQtbGFiZWw+XG4gICAgICAgIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbF09XCJvcGVyYXRvckN0cmxcIiBbcmVxdWlyZWRdPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2Ygb3BlcmF0b3JzXCIgW3ZhbHVlXT1cIml0ZW0ua2V5XCI+XG4gICAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1sYWJlbCBpMThuPkRhdGU8L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwidmFsdWVDdHJsXCJcbiAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInZhbHVlXCJcbiAgICAgICAgICAgIFttYXhdPVwiY29uZmlndXJhdGlvbi5tYXhcIlxuICAgICAgICAgICAgW21pbl09XCJjb25maWd1cmF0aW9uLm1pblwiXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAvPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIFtmb3JdPVwidmFsdWVcIiBtYXRTdWZmaXg+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjdmFsdWU+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidmFsdWVDdHJsLmhhc0Vycm9yKCdtaW4nKVwiPjwge3sgY29uZmlndXJhdGlvbi5taW4gfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInZhbHVlQ3RybC5oYXNFcnJvcignbWF4JylcIj4+IHt7IGNvbmZpZ3VyYXRpb24ubWF4IH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ2YWx1ZUN0cmwuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4qPC9zcGFuPlxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuPC9mb3JtPlxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1kYXRlL3R5cGUtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtZGF0ZS90eXBlLWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxTQUFTLEVBQWUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFjLGdCQUFnQixFQUFpQixNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBQyxxQkFBcUIsRUFBc0IsTUFBTSxrREFBa0QsQ0FBQztBQUU1RyxPQUFPLEVBQUMsMkJBQTJCLEVBQWdDLE1BQU0sVUFBVSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBQyxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7O0FBVXJELE1BQU0sT0FBTyxpQkFBaUI7SUFpQjFCLFlBQ21DLElBQW1ELEVBQzFFLFdBQTJCLEVBQ0QsV0FBMkI7UUFEckQsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQ0QsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBbkJqRCxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRWhELGlCQUFZLEdBQUcsSUFBSSxXQUFXLENBQWdDLE9BQU8sRUFBRSxFQUFD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T0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdFLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzVDLE9BQU8sRUFBRSxDQUFDO1NBQ2I7YUFBTTtZQUNILE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRWhHLE9BQU8sUUFBUSxDQUFDLEtBQUssR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQzs7OEdBN0hRLGlCQUFpQixrQkFrQmQscUJBQXFCLHdDQUVyQixnQkFBZ0I7a0dBcEJuQixpQkFBaUIsb0RDbEI5QixxckNBNkJBOzJGRFhhLGlCQUFpQjtrQkFIN0IsU0FBUzs7OzBCQXFCRCxNQUFNOzJCQUFDLHFCQUFxQjs7MEJBRTVCLE1BQU07MkJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0RhdGVBZGFwdGVyLCBNQVRfREFURV9GT1JNQVRTLCBNYXREYXRlRm9ybWF0c30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWVyZ2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkfSBmcm9tICcuLi8uLi9zZWFyY2gvY2xhc3Nlcy9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7TkFUVVJBTF9EUk9QRE9XTl9EQVRBLCBOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuLi8uLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi4vLi4vc2VhcmNoL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5pbXBvcnQge3Bvc3NpYmxlQ29tcGFyYWJsZU9wZXJhdG9ycywgUG9zc2libGVDb21wYXJhYmxlT3BlcnRvcktleXN9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7ZGF0ZU1heCwgZGF0ZU1pbiwgc2VyaWFsaXplfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURhdGVDb25maWd1cmF0aW9uPEQgPSBhbnk+IHtcbiAgICBtaW4/OiBEIHwgbnVsbDtcbiAgICBtYXg/OiBEIHwgbnVsbDtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL3R5cGUtZGF0ZS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVEYXRlQ29tcG9uZW50PEQgPSBhbnk+IGltcGxlbWVudHMgRHJvcGRvd25Db21wb25lbnQge1xuICAgIHB1YmxpYyByZWFkb25seSByZW5kZXJlZFZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29uZmlndXJhdGlvbjogVHlwZURhdGVDb25maWd1cmF0aW9uPEQ+O1xuICAgIHB1YmxpYyByZWFkb25seSBvcGVyYXRvckN0cmwgPSBuZXcgRm9ybUNvbnRyb2w8UG9zc2libGVDb21wYXJhYmxlT3BlcnRvcktleXM+KCdlcXVhbCcsIHtub25OdWxsYWJsZTogdHJ1ZX0pO1xuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZUN0cmwgPSBuZXcgRm9ybUNvbnRyb2w8RCB8IG51bGw+KG51bGwpO1xuICAgIHB1YmxpYyByZWFkb25seSBvcGVyYXRvcnMgPSBwb3NzaWJsZUNvbXBhcmFibGVPcGVyYXRvcnM7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICBvcGVyYXRvcjogdGhpcy5vcGVyYXRvckN0cmwsXG4gICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlQ3RybCxcbiAgICB9KTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdHM6IFR5cGVEYXRlQ29uZmlndXJhdGlvbjxEPiA9IHtcbiAgICAgICAgbWluOiBudWxsLFxuICAgICAgICBtYXg6IG51bGwsXG4gICAgfTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChOQVRVUkFMX0RST1BET1dOX0RBVEEpIGRhdGE6IE5hdHVyYWxEcm9wZG93bkRhdGE8VHlwZURhdGVDb25maWd1cmF0aW9uPEQ+PixcbiAgICAgICAgcHJpdmF0ZSBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RBVEVfRk9STUFUUykgcHJpdmF0ZSBkYXRlRm9ybWF0czogTWF0RGF0ZUZvcm1hdHMsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvbiA9IHsuLi50aGlzLmRlZmF1bHRzLCAuLi5kYXRhLmNvbmZpZ3VyYXRpb259O1xuXG4gICAgICAgIG1lcmdlKHRoaXMub3BlcmF0b3JDdHJsLnZhbHVlQ2hhbmdlcywgdGhpcy52YWx1ZUN0cmwudmFsdWVDaGFuZ2VzKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlZFZhbHVlLm5leHQodGhpcy5nZXRSZW5kZXJlZFZhbHVlKCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluaXRWYWxpZGF0b3JzKCk7XG4gICAgICAgIHRoaXMucmVsb2FkQ29uZGl0aW9uKGRhdGEuY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZGl0aW9uKCk6IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQge1xuICAgICAgICBpZiAoIXRoaXMudmFsdWVDdHJsLnZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQgPSB7fTtcbiAgICAgICAgbGV0IG9wZXJhdG9yID0gdGhpcy5vcGVyYXRvckN0cmwudmFsdWU7XG4gICAgICAgIGxldCBkYXRlID0gdGhpcy52YWx1ZUN0cmwudmFsdWU7XG4gICAgICAgIGNvbnN0IGRheUFmdGVyID0gdGhpcy5nZXREYXlBZnRlcihkYXRlKTtcbiAgICAgICAgaWYgKG9wZXJhdG9yID09PSAnZXF1YWwnKSB7XG4gICAgICAgICAgICBjb25kaXRpb24uZ3JlYXRlck9yRXF1YWwgPSB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHNlcmlhbGl6ZTxEPih0aGlzLmRhdGVBZGFwdGVyLCBkYXRlKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25kaXRpb24ubGVzcyA9IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogc2VyaWFsaXplPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIGRheUFmdGVyKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBUcmFuc3BhcmVudGx5IGFkYXB0IGV4Y2x1c2l2ZS9pbmNsdXNpdmUgcmFuZ2VzXG4gICAgICAgICAgICBpZiAob3BlcmF0b3IgPT09ICdncmVhdGVyJykge1xuICAgICAgICAgICAgICAgIG9wZXJhdG9yID0gJ2dyZWF0ZXJPckVxdWFsJztcbiAgICAgICAgICAgICAgICBkYXRlID0gZGF5QWZ0ZXI7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG9wZXJhdG9yID09PSAnbGVzc09yRXF1YWwnKSB7XG4gICAgICAgICAgICAgICAgb3BlcmF0b3IgPSAnbGVzcyc7XG4gICAgICAgICAgICAgICAgZGF0ZSA9IGRheUFmdGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25kaXRpb25bb3BlcmF0b3JdID0ge1xuICAgICAgICAgICAgICAgIHZhbHVlOiBzZXJpYWxpemU8RD4odGhpcy5kYXRlQWRhcHRlciwgZGF0ZSksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNWYWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNEaXJ0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5kaXJ0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbG9hZENvbmRpdGlvbihjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghY29uZGl0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTcGVjaWFsIGNhc2UgZm9yICc9J1xuICAgICAgICBpZiAoY29uZGl0aW9uLmdyZWF0ZXJPckVxdWFsICYmIGNvbmRpdGlvbi5sZXNzKSB7XG4gICAgICAgICAgICB0aGlzLm9wZXJhdG9yQ3RybC5zZXRWYWx1ZSgnZXF1YWwnKTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZShjb25kaXRpb24uZ3JlYXRlck9yRXF1YWwudmFsdWUpO1xuICAgICAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsdWUodmFsdWUpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IG9wZXJhdG9yIG9mIHRoaXMub3BlcmF0b3JzKSB7XG4gICAgICAgICAgICBjb25zdCByZWxvYWRlZE9wZXJhdG9yID0gY29uZGl0aW9uW29wZXJhdG9yLmtleV07XG4gICAgICAgICAgICBpZiAocmVsb2FkZWRPcGVyYXRvcikge1xuICAgICAgICAgICAgICAgIHRoaXMub3BlcmF0b3JDdHJsLnNldFZhbHVlKG9wZXJhdG9yLmtleSk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUocmVsb2FkZWRPcGVyYXRvci52YWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZUN0cmwuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmFsaWRhdG9ycygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtWYWxpZGF0b3JzLnJlcXVpcmVkXTtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5taW4pIHtcbiAgICAgICAgICAgIHZhbGlkYXRvcnMucHVzaChkYXRlTWluPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIHRoaXMuY29uZmlndXJhdGlvbi5taW4pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSB7XG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goZGF0ZU1heDxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlQ3RybC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGF5QWZ0ZXIoZGF0ZTogRCk6IEQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlQWRhcHRlci5hZGRDYWxlbmRhckRheXModGhpcy5kYXRlQWRhcHRlci5jbG9uZShkYXRlKSwgMSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZW5kZXJlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG9wZXJhdG9yID0gdGhpcy5vcGVyYXRvcnMuZmluZCh2ID0+IHYua2V5ID09PSB0aGlzLm9wZXJhdG9yQ3RybC52YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlQ3RybC52YWx1ZSA9PT0gbnVsbCB8fCAhb3BlcmF0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5kYXRlQWRhcHRlci5mb3JtYXQodGhpcy52YWx1ZUN0cmwudmFsdWUsIHRoaXMuZGF0ZUZvcm1hdHMuZGlzcGxheS5kYXRlSW5wdXQpO1xuXG4gICAgICAgICAgICByZXR1cm4gb3BlcmF0b3IubGFiZWwgKyAnICcgKyB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBzdHlsZT1cIm1heC13aWR0aDogNGVtOyBtYXJnaW4tcmlnaHQ6IDFlbVwiPlxuICAgICAgICA8bWF0LWxhYmVsIGkxOG49XCJNYXRoZW1hdGljYWwgb3BlcmF0b3IgPCA+ID1cIj5PcMOpcmF0ZXVyPC9tYXQtbGFiZWw+XG4gICAgICAgIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbF09XCJvcGVyYXRvckN0cmxcIiBbcmVxdWlyZWRdPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2Ygb3BlcmF0b3JzXCIgW3ZhbHVlXT1cIml0ZW0ua2V5XCI+XG4gICAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1sYWJlbCBpMThuPkRhdGU8L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwidmFsdWVDdHJsXCJcbiAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInZhbHVlXCJcbiAgICAgICAgICAgIFttYXhdPVwiY29uZmlndXJhdGlvbi5tYXhcIlxuICAgICAgICAgICAgW21pbl09XCJjb25maWd1cmF0aW9uLm1pblwiXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAvPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIFtmb3JdPVwidmFsdWVcIiBtYXRTdWZmaXg+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjdmFsdWU+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidmFsdWVDdHJsLmhhc0Vycm9yKCdtaW4nKVwiPjwge3sgY29uZmlndXJhdGlvbi5taW4gfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInZhbHVlQ3RybC5oYXNFcnJvcignbWF4JylcIj4+IHt7IGNvbmZpZ3VyYXRpb24ubWF4IH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ2YWx1ZUN0cmwuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4qPC9zcGFuPlxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuPC9mb3JtPlxuIl19
@@ -6,11 +6,11 @@ import { NATURAL_DROPDOWN_DATA } from '../../search/dropdown-container/dropdown.
6
6
  import { dateMax, dateMin, serialize } from '../utils';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/material/core";
9
- import * as i2 from "@angular/material/form-field";
10
- import * as i3 from "@angular/material/datepicker";
11
- import * as i4 from "@angular/forms";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "@angular/forms";
11
+ import * as i4 from "@angular/material/form-field";
12
12
  import * as i5 from "@angular/material/input";
13
- import * as i6 from "@angular/common";
13
+ import * as i6 from "@angular/material/datepicker";
14
14
  class InvalidWithValueStateMatcher {
15
15
  isErrorState(control, form) {
16
16
  return (form && form.invalid && (form.value.to || form.value.from)) || (control && control.invalid);
@@ -47,17 +47,17 @@ export class TypeDateRangeComponent {
47
47
  this.dateFormats = dateFormats;
48
48
  this.renderedValue = new BehaviorSubject('');
49
49
  this.matcher = new InvalidWithValueStateMatcher();
50
- this.fromCtrl = new FormControl();
51
- this.toCtrl = new FormControl();
50
+ this.fromCtrl = new FormControl(null);
51
+ this.toCtrl = new FormControl(null);
52
+ this.form = new FormGroup({
53
+ from: this.fromCtrl,
54
+ to: this.toCtrl,
55
+ });
52
56
  this.defaults = {
53
57
  min: null,
54
58
  max: null,
55
59
  };
56
60
  this.configuration = { ...this.defaults, ...data.configuration };
57
- this.form = new FormGroup({
58
- from: this.fromCtrl,
59
- to: this.toCtrl,
60
- });
61
61
  merge(this.fromCtrl.valueChanges, this.toCtrl.valueChanges).subscribe(() => {
62
62
  this.renderedValue.next(this.getRenderedValue());
63
63
  });
@@ -122,9 +122,9 @@ export class TypeDateRangeComponent {
122
122
  }
123
123
  }
124
124
  }
125
- TypeDateRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: TypeDateRangeComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }, { token: i1.DateAdapter }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component });
126
- TypeDateRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: TypeDateRangeComponent, selector: "ng-component", ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"from\"\n placeholder=\"De\"\n [formControl]=\"fromCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"from\"></mat-datepicker-toggle>\n <mat-datepicker #from></mat-datepicker>\n <mat-error>\n <span *ngIf=\"form.hasError('toGreaterThanFrom')\"\n >{{ render(fromCtrl.value) }} > {{ render(toCtrl.value) }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\"\n >< {{ configuration.min }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\"\n >> {{ configuration.max }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"to\"\n placeholder=\"\u00E0\"\n [formControl]=\"toCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"to\"></mat-datepicker-toggle>\n <mat-datepicker #to></mat-datepicker>\n <mat-error>\n <span *ngIf=\"toCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\">< {{ configuration.min }}</span>\n <span *ngIf=\"toCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\">> {{ configuration.max }}</span>\n <span *ngIf=\"toCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { type: i3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }], directives: [{ type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i2.MatSuffix, selector: "[matSuffix]" }, { type: i2.MatError, selector: "mat-error", inputs: ["id"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: TypeDateRangeComponent, decorators: [{
125
+ TypeDateRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TypeDateRangeComponent, deps: [{ token: NATURAL_DROPDOWN_DATA }, { token: i1.DateAdapter }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component });
126
+ TypeDateRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: TypeDateRangeComponent, selector: "ng-component", ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"from\"\n placeholder=\"De\"\n [formControl]=\"fromCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"from\"></mat-datepicker-toggle>\n <mat-datepicker #from></mat-datepicker>\n <mat-error>\n <span *ngIf=\"form.hasError('toGreaterThanFrom')\"\n >{{ render(fromCtrl.value) }} > {{ render(toCtrl.value) }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\"\n >< {{ configuration.min }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\"\n >> {{ configuration.max }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"to\"\n placeholder=\"\u00E0\"\n [formControl]=\"toCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"to\"></mat-datepicker-toggle>\n <mat-datepicker #to></mat-datepicker>\n <mat-error>\n <span *ngIf=\"toCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\">< {{ configuration.min }}</span>\n <span *ngIf=\"toCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\">> {{ configuration.max }}</span>\n <span *ngIf=\"toCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }] });
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TypeDateRangeComponent, decorators: [{
128
128
  type: Component,
129
129
  args: [{ template: "<form [formGroup]=\"form\">\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"from\"\n placeholder=\"De\"\n [formControl]=\"fromCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"from\"></mat-datepicker-toggle>\n <mat-datepicker #from></mat-datepicker>\n <mat-error>\n <span *ngIf=\"form.hasError('toGreaterThanFrom')\"\n >{{ render(fromCtrl.value) }} > {{ render(toCtrl.value) }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\"\n >< {{ configuration.min }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\"\n >> {{ configuration.max }}</span\n >\n <span *ngIf=\"fromCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n\n <mat-form-field>\n <input\n matInput\n [matDatepicker]=\"to\"\n placeholder=\"\u00E0\"\n [formControl]=\"toCtrl\"\n [errorStateMatcher]=\"matcher\"\n [min]=\"configuration.min\"\n [max]=\"configuration.max\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"to\"></mat-datepicker-toggle>\n <mat-datepicker #to></mat-datepicker>\n <mat-error>\n <span *ngIf=\"toCtrl.hasError('min') && !form.hasError('toGreaterThanFrom')\">< {{ configuration.min }}</span>\n <span *ngIf=\"toCtrl.hasError('max') && !form.hasError('toGreaterThanFrom')\">> {{ configuration.max }}</span>\n <span *ngIf=\"toCtrl.hasError('required')\">*</span>\n </mat-error>\n </mat-form-field>\n</form>\n" }]
130
130
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
134
134
  type: Inject,
135
135
  args: [MAT_DATE_FORMATS]
136
136
  }] }]; } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kYXRlLXJhbmdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1kYXRlLXJhbmdlL3R5cGUtZGF0ZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtZGF0ZS1yYW5nZS90eXBlLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUVILFdBQVcsRUFDWCxTQUFTLEVBS1QsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFpQyxnQkFBZ0IsRUFBaUIsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RyxPQUFPLEVBQUMsZUFBZSxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUMscUJBQXFCLEVBQXNCLE1BQU0sa0RBQWtELENBQUM7QUFFNUcsT0FBTyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDOzs7Ozs7OztBQU9yRCxNQUFNLDRCQUE0QjtJQUN2QixZQUFZLENBQUMsT0FBMkIsRUFBRSxJQUF3QztRQUNyRixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hHLENBQUM7Q0FDSjtB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QUMsVUFBVSxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDcEIsaUJBQWlCLENBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFlBQVk7U0FDdkQsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFlO1FBQ3pCLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUMsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFO1lBQ1osT0FBTyxJQUFJLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUM1QjthQUFNO1lBQ0gsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNMLENBQUM7O21IQXBHUSxzQkFBc0Isa0JBY25CLHFCQUFxQix3Q0FFckIsZ0JBQWdCO3VHQWhCbkIsc0JBQXNCLG9EQzlEbkMscTNEQThDQTsyRkRnQmEsc0JBQXNCO2tCQUhsQyxTQUFTOzs7MEJBaUJELE1BQU07MkJBQUMscUJBQXFCOzswQkFFNUIsTUFBTTsyQkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIEZvcm1Db250cm9sLFxuICAgIEZvcm1Hcm91cCxcbiAgICBGb3JtR3JvdXBEaXJlY3RpdmUsXG4gICAgTmdGb3JtLFxuICAgIFZhbGlkYXRpb25FcnJvcnMsXG4gICAgVmFsaWRhdG9yRm4sXG4gICAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtEYXRlQWRhcHRlciwgRXJyb3JTdGF0ZU1hdGNoZXIsIE1BVF9EQVRFX0ZPUk1BVFMsIE1hdERhdGVGb3JtYXRzfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBtZXJnZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0Ryb3Bkb3duQ29tcG9uZW50fSBmcm9tICcuLi8uLi9zZWFyY2gvdHlwZXMvZHJvcGRvd24tY29tcG9uZW50JztcbmltcG9ydCB7TkFUVVJBTF9EUk9QRE9XTl9EQVRBLCBOYXR1cmFsRHJvcGRvd25EYXRhfSBmcm9tICcuLi8uLi9zZWFyY2gvZHJvcGRvd24tY29udGFpbmVyL2Ryb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHtGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkfSBmcm9tICcuLi8uLi9zZWFyY2gvY2xhc3Nlcy9ncmFwaHFsLWRvY3RyaW5lLnR5cGVzJztcbmltcG9ydCB7ZGF0ZU1heCwgZGF0ZU1pbiwgc2VyaWFsaXplfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURhdGVSYW5nZUNvbmZpZ3VyYXRpb248RCA9IGFueT4ge1xuICAgIG1pbj86IEQgfCBudWxsO1xuICAgIG1heD86IEQgfCBudWxsO1xufVxuXG5jbGFzcyBJbnZhbGlkV2l0aFZhbHVlU3RhdGVNYXRjaGVyIGltcGxlbWVudHMgRXJyb3JTdGF0ZU1hdGNoZXIge1xuICAgIHB1YmxpYyBpc0Vycm9yU3RhdGUoY29udHJvbDogRm9ybUNvbnRyb2wgfCBudWxsLCBmb3JtOiBGb3JtR3JvdXBEaXJlY3RpdmUgfCBOZ0Zvcm0gfCBudWxsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoZm9ybSAmJiBmb3JtLmludmFsaWQgJiYgKGZvcm0udmFsdWUudG8gfHwgZm9ybS52YWx1ZS5mcm9tKSkgfHwgKGNvbnRyb2wgJiYgY29udHJvbC5pbnZhbGlkKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIHBhcnNlRnJvbUNvbnRyb2w8RD4oY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBrZXk6IHN0cmluZyk6IEQgfCBudWxsIHtcbiAgICBjb25zdCBjID0gY29udHJvbC5nZXQoa2V5KTtcbiAgICBpZiAoIWMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGMudmFsdWU7XG59XG5cbi8qKlxuICogRnJvbSA+PSBUb1xuICovXG5mdW5jdGlvbiB0b0dyZWF0ZXJUaGFuRnJvbTxEPihkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RD4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGNvbnN0IGZyb20gPSBwYXJzZUZyb21Db250cm9sPEQ+KGNvbnRyb2wsICdmcm9tJyk7XG4gICAgICAgIGNvbnN0IHRvID0gcGFyc2VGcm9tQ29udHJvbDxEPihjb250cm9sLCAndG8nKTtcblxuICAgICAgICBpZiAoZnJvbSAmJiB0byAmJiBkYXRlQWRhcHRlci5jb21wYXJlRGF0ZShmcm9tLCB0bykgPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4ge3RvR3JlYXRlclRoYW5Gcm9tOiB0cnVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG59XG5cbi8qKlxuICogRGF0ZSByYW5nZSB3aXRoIG1hbmRhdG9yeSBib3VuZGluZyBkYXRlcy5cbiAqXG4gKiBJZiB5b3UgbmVlZCBvb3B0aW9uYWwgYm91bmRpbmcgZGF0ZSwgdGhlbiB1c2UgYFR5cGVEYXRlQ29tcG9uZW50YCBpbnN0ZWFkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vdHlwZS1kYXRlLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVHlwZURhdGVSYW5nZUNvbXBvbmVudDxEID0gYW55PiBpbXBsZW1lbnRzIERyb3Bkb3duQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgcmVuZGVyZWRWYWx1ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gICAgcHVibGljIGNvbmZpZ3VyYXRpb246IFR5cGVEYXRlUmFuZ2VDb25maWd1cmF0aW9uPEQ+O1xuICAgIHB1YmxpYyBtYXRjaGVyID0gbmV3IEludmFsaWRXaXRoVmFsdWVTdGF0ZU1hdGNoZXIoKTtcbiAgICBwdWJsaWMgZnJvbUN0cmwgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgICBwdWJsaWMgdG9DdHJsID0gbmV3IEZvcm1Db250cm9sKCk7XG4gICAgcHVibGljIGZvcm06IEZvcm1Hcm91cDtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdHM6IFR5cGVEYXRlUmFuZ2VDb25maWd1cmF0aW9uPEQ+ID0ge1xuICAgICAgICBtaW46IG51bGwsXG4gICAgICAgIG1heDogbnVsbCxcbiAgICB9O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KE5BVFVSQUxfRFJPUERPV05fREFUQSkgZGF0YTogTmF0dXJhbERyb3Bkb3duRGF0YTxUeXBlRGF0ZVJhbmdlQ29uZmlndXJhdGlvbjxEPj4sXG4gICAgICAgIHByaXZhdGUgZGF0ZUFkYXB0ZXI6IERhdGVBZGFwdGVyPEQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9EQVRFX0ZPUk1BVFMpIHByaXZhdGUgZGF0ZUZvcm1hdHM6IE1hdERhdGVGb3JtYXRzLFxuICAgICkge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSB7Li4udGhpcy5kZWZhdWx0cywgLi4uZGF0YS5jb25maWd1cmF0aW9ufTtcbiAgICAgICAgdGhpcy5mb3JtID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBmcm9tOiB0aGlzLmZyb21DdHJsLFxuICAgICAgICAgICAgdG86IHRoaXMudG9DdHJsLFxuICAgICAgICB9KTtcblxuICAgICAgICBtZXJnZSh0aGlzLmZyb21DdHJsLnZhbHVlQ2hhbmdlcywgdGhpcy50b0N0cmwudmFsdWVDaGFuZ2VzKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlZFZhbHVlLm5leHQodGhpcy5nZXRSZW5kZXJlZFZhbHVlKCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluaXRWYWxpZGF0b3JzKCk7XG4gICAgICAgIHRoaXMucmVsb2FkQ29uZGl0aW9uKGRhdGEuY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZGl0aW9uKCk6IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQge1xuICAgICAgICBjb25zdCBmcm9tID0gc2VyaWFsaXplPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIHRoaXMuZnJvbUN0cmwudmFsdWUpO1xuICAgICAgICBjb25zdCB0byA9IHNlcmlhbGl6ZTxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLnRvQ3RybC52YWx1ZSk7XG5cbiAgICAgICAgaWYgKGZyb20gJiYgdG8pIHtcbiAgICAgICAgICAgIHJldHVybiB7YmV0d2Vlbjoge2Zyb20sIHRvfX07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaXNWYWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNEaXJ0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5kaXJ0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbG9hZENvbmRpdGlvbihjb25kaXRpb246IEZpbHRlckdyb3VwQ29uZGl0aW9uRmllbGQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghY29uZGl0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB2YWx1ZSA9IHtcbiAgICAgICAgICAgIGZyb206IG51bGwgYXMgRCB8IG51bGwsXG4gICAgICAgICAgICB0bzogbnVsbCBhcyBEIHwgbnVsbCxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoY29uZGl0aW9uLmJldHdlZW4pIHtcbiAgICAgICAgICAgIHZhbHVlLmZyb20gPSB0aGlzLmRhdGVBZGFwdGVyLnBhcnNlKGNvbmRpdGlvbi5iZXR3ZWVuLmZyb20sIG51bGwpO1xuICAgICAgICAgICAgdmFsdWUudG8gPSB0aGlzLmRhdGVBZGFwdGVyLnBhcnNlKGNvbmRpdGlvbi5iZXR3ZWVuLnRvLCBudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VmFsaWRhdG9ycygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtWYWxpZGF0b3JzLnJlcXVpcmVkXTtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlndXJhdGlvbi5taW4pIHtcbiAgICAgICAgICAgIHZhbGlkYXRvcnMucHVzaChkYXRlTWluPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIsIHRoaXMuY29uZmlndXJhdGlvbi5taW4pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSB7XG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goZGF0ZU1heDxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLmNvbmZpZ3VyYXRpb24ubWF4KSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZyb21DdHJsLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XG4gICAgICAgIHRoaXMudG9DdHJsLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XG5cbiAgICAgICAgdGhpcy5mb3JtLnNldFZhbGlkYXRvcnMoW1xuICAgICAgICAgICAgdG9HcmVhdGVyVGhhbkZyb208RD4odGhpcy5kYXRlQWRhcHRlciksIC8vIEZyb20gPCBUb1xuICAgICAgICBdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVuZGVyKHZhbHVlOiBEIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA/IHRoaXMuZGF0ZUFkYXB0ZXIuZm9ybWF0KHZhbHVlLCB0aGlzLmRhdGVGb3JtYXRzLmRpc3BsYXkuZGF0ZUlucHV0KSA6ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UmVuZGVyZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBmcm9tID0gdGhpcy5yZW5kZXIodGhpcy5mcm9tQ3RybC52YWx1ZSk7XG4gICAgICAgIGNvbnN0IHRvID0gdGhpcy5yZW5kZXIodGhpcy50b0N0cmwudmFsdWUpO1xuXG4gICAgICAgIGlmIChmcm9tICYmIHRvKSB7XG4gICAgICAgICAgICByZXR1cm4gZnJvbSArICcgLSAnICsgdG87XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cImZyb21cIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJEZVwiXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZnJvbUN0cmxcIlxuICAgICAgICAgICAgW2Vycm9yU3RhdGVNYXRjaGVyXT1cIm1hdGNoZXJcIlxuICAgICAgICAgICAgW21pbl09XCJjb25maWd1cmF0aW9uLm1pblwiXG4gICAgICAgICAgICBbbWF4XT1cImNvbmZpZ3VyYXRpb24ubWF4XCJcbiAgICAgICAgLz5cbiAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJmcm9tXCI+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjZnJvbT48L21hdC1kYXRlcGlja2VyPlxuICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmb3JtLmhhc0Vycm9yKCd0b0dyZWF0ZXJUaGFuRnJvbScpXCJcbiAgICAgICAgICAgICAgICA+e3sgcmVuZGVyKGZyb21DdHJsLnZhbHVlKSB9fSA+IHt7IHJlbmRlcih0b0N0cmwudmFsdWUpIH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZyb21DdHJsLmhhc0Vycm9yKCdtaW4nKSAmJiAhZm9ybS5oYXNFcnJvcigndG9HcmVhdGVyVGhhbkZyb20nKVwiXG4gICAgICAgICAgICAgICAgPjwge3sgY29uZmlndXJhdGlvbi5taW4gfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZnJvbUN0cmwuaGFzRXJyb3IoJ21heCcpICYmICFmb3JtLmhhc0Vycm9yKCd0b0dyZWF0ZXJUaGFuRnJvbScpXCJcbiAgICAgICAgICAgICAgICA+PiB7eyBjb25maWd1cmF0aW9uLm1heCB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmcm9tQ3RybC5oYXNFcnJvcigncmVxdWlyZWQnKVwiPio8L3NwYW4+XG4gICAgICAgIDwvbWF0LWVycm9yPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInRvXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiw6BcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInRvQ3RybFwiXG4gICAgICAgICAgICBbZXJyb3JTdGF0ZU1hdGNoZXJdPVwibWF0Y2hlclwiXG4gICAgICAgICAgICBbbWluXT1cImNvbmZpZ3VyYXRpb24ubWluXCJcbiAgICAgICAgICAgIFttYXhdPVwiY29uZmlndXJhdGlvbi5tYXhcIlxuICAgICAgICAvPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cInRvXCI+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjdG8+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidG9DdHJsLmhhc0Vycm9yKCdtaW4nKSAmJiAhZm9ybS5oYXNFcnJvcigndG9HcmVhdGVyVGhhbkZyb20nKVwiPjwge3sgY29uZmlndXJhdGlvbi5taW4gfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInRvQ3RybC5oYXNFcnJvcignbWF4JykgJiYgIWZvcm0uaGFzRXJyb3IoJ3RvR3JlYXRlclRoYW5Gcm9tJylcIj4+IHt7IGNvbmZpZ3VyYXRpb24ubWF4IH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0b0N0cmwuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4qPC9zcGFuPlxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuPC9mb3JtPlxuIl19
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kYXRlLXJhbmdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duLWNvbXBvbmVudHMvdHlwZS1kYXRlLXJhbmdlL3R5cGUtZGF0ZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi1jb21wb25lbnRzL3R5cGUtZGF0ZS1yYW5nZS90eXBlLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUVILFdBQVcsRUFDWCxTQUFTLEVBS1QsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFpQyxnQkFBZ0IsRUFBaUIsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RyxPQUFPLEVBQUMsZUFBZSxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUMscUJBQXFCLEVBQXNCLE1BQU0sa0RBQWtELENBQUM7QUFFNUcsT0FBTyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFDOzs7Ozs7OztBQU9yRCxNQUFNLDRCQUE0QjtJQUN2QixZQUFZLENBQUMsT0FBb0MsRUFBRSxJQUF3QztRQUM5RixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hHLENBQUM7Q0FDSjtB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Q0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDcEIsaUJBQWlCLENBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFlBQVk7U0FDdkQsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFlO1FBQ3pCLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUMsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFO1lBQ1osT0FBTyxJQUFJLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUM1QjthQUFNO1lBQ0gsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNMLENBQUM7O21IQW5HUSxzQkFBc0Isa0JBaUJuQixxQkFBcUIsd0NBRXJCLGdCQUFnQjt1R0FuQm5CLHNCQUFzQixvREM5RG5DLHEzREE4Q0E7MkZEZ0JhLHNCQUFzQjtrQkFIbEMsU0FBUzs7OzBCQW9CRCxNQUFNOzJCQUFDLHFCQUFxQjs7MEJBRTVCLE1BQU07MkJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0Q29udHJvbCxcbiAgICBGb3JtQ29udHJvbCxcbiAgICBGb3JtR3JvdXAsXG4gICAgRm9ybUdyb3VwRGlyZWN0aXZlLFxuICAgIE5nRm9ybSxcbiAgICBWYWxpZGF0aW9uRXJyb3JzLFxuICAgIFZhbGlkYXRvckZuLFxuICAgIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RGF0ZUFkYXB0ZXIsIEVycm9yU3RhdGVNYXRjaGVyLCBNQVRfREFURV9GT1JNQVRTLCBNYXREYXRlRm9ybWF0c30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWVyZ2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnLi4vLi4vc2VhcmNoL3R5cGVzL2Ryb3Bkb3duLWNvbXBvbmVudCc7XG5pbXBvcnQge05BVFVSQUxfRFJPUERPV05fREFUQSwgTmF0dXJhbERyb3Bkb3duRGF0YX0gZnJvbSAnLi4vLi4vc2VhcmNoL2Ryb3Bkb3duLWNvbnRhaW5lci9kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7RmlsdGVyR3JvdXBDb25kaXRpb25GaWVsZH0gZnJvbSAnLi4vLi4vc2VhcmNoL2NsYXNzZXMvZ3JhcGhxbC1kb2N0cmluZS50eXBlcyc7XG5pbXBvcnQge2RhdGVNYXgsIGRhdGVNaW4sIHNlcmlhbGl6ZX0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVEYXRlUmFuZ2VDb25maWd1cmF0aW9uPEQgPSBhbnk+IHtcbiAgICBtaW4/OiBEIHwgbnVsbDtcbiAgICBtYXg/OiBEIHwgbnVsbDtcbn1cblxuY2xhc3MgSW52YWxpZFdpdGhWYWx1ZVN0YXRlTWF0Y2hlciBpbXBsZW1lbnRzIEVycm9yU3RhdGVNYXRjaGVyIHtcbiAgICBwdWJsaWMgaXNFcnJvclN0YXRlKGNvbnRyb2w6IEZvcm1Db250cm9sPHVua25vd24+IHwgbnVsbCwgZm9ybTogRm9ybUdyb3VwRGlyZWN0aXZlIHwgTmdGb3JtIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKGZvcm0gJiYgZm9ybS5pbnZhbGlkICYmIChmb3JtLnZhbHVlLnRvIHx8IGZvcm0udmFsdWUuZnJvbSkpIHx8IChjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCk7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBwYXJzZUZyb21Db250cm9sPEQ+KGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwga2V5OiBzdHJpbmcpOiBEIHwgbnVsbCB7XG4gICAgY29uc3QgYyA9IGNvbnRyb2wuZ2V0KGtleSk7XG4gICAgaWYgKCFjKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBjLnZhbHVlO1xufVxuXG4vKipcbiAqIEZyb20gPj0gVG9cbiAqL1xuZnVuY3Rpb24gdG9HcmVhdGVyVGhhbkZyb208RD4oZGF0ZUFkYXB0ZXI6IERhdGVBZGFwdGVyPEQ+KTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCBmcm9tID0gcGFyc2VGcm9tQ29udHJvbDxEPihjb250cm9sLCAnZnJvbScpO1xuICAgICAgICBjb25zdCB0byA9IHBhcnNlRnJvbUNvbnRyb2w8RD4oY29udHJvbCwgJ3RvJyk7XG5cbiAgICAgICAgaWYgKGZyb20gJiYgdG8gJiYgZGF0ZUFkYXB0ZXIuY29tcGFyZURhdGUoZnJvbSwgdG8pID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHt0b0dyZWF0ZXJUaGFuRnJvbTogdHJ1ZX07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xufVxuXG4vKipcbiAqIERhdGUgcmFuZ2Ugd2l0aCBtYW5kYXRvcnkgYm91bmRpbmcgZGF0ZXMuXG4gKlxuICogSWYgeW91IG5lZWQgb29wdGlvbmFsIGJvdW5kaW5nIGRhdGUsIHRoZW4gdXNlIGBUeXBlRGF0ZUNvbXBvbmVudGAgaW5zdGVhZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL3R5cGUtZGF0ZS1yYW5nZS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVEYXRlUmFuZ2VDb21wb25lbnQ8RCA9IGFueT4gaW1wbGVtZW50cyBEcm9wZG93bkNvbXBvbmVudCB7XG4gICAgcHVibGljIHJlYWRvbmx5IHJlbmRlcmVkVmFsdWUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICAgIHB1YmxpYyByZWFkb25seSBjb25maWd1cmF0aW9uOiBUeXBlRGF0ZVJhbmdlQ29uZmlndXJhdGlvbjxEPjtcbiAgICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2hlciA9IG5ldyBJbnZhbGlkV2l0aFZhbHVlU3RhdGVNYXRjaGVyKCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGZyb21DdHJsID0gbmV3IEZvcm1Db250cm9sPEQgfCBudWxsPihudWxsKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9DdHJsID0gbmV3IEZvcm1Db250cm9sPEQgfCBudWxsPihudWxsKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICBmcm9tOiB0aGlzLmZyb21DdHJsLFxuICAgICAgICB0bzogdGhpcy50b0N0cmwsXG4gICAgfSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRzOiBUeXBlRGF0ZVJhbmdlQ29uZmlndXJhdGlvbjxEPiA9IHtcbiAgICAgICAgbWluOiBudWxsLFxuICAgICAgICBtYXg6IG51bGwsXG4gICAgfTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChOQVRVUkFMX0RST1BET1dOX0RBVEEpIGRhdGE6IE5hdHVyYWxEcm9wZG93bkRhdGE8VHlwZURhdGVSYW5nZUNvbmZpZ3VyYXRpb248RD4+LFxuICAgICAgICBwcml2YXRlIGRhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxEPixcbiAgICAgICAgQEluamVjdChNQVRfREFURV9GT1JNQVRTKSBwcml2YXRlIGRhdGVGb3JtYXRzOiBNYXREYXRlRm9ybWF0cyxcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uID0gey4uLnRoaXMuZGVmYXVsdHMsIC4uLmRhdGEuY29uZmlndXJhdGlvbn07XG5cbiAgICAgICAgbWVyZ2UodGhpcy5mcm9tQ3RybC52YWx1ZUNoYW5nZXMsIHRoaXMudG9DdHJsLnZhbHVlQ2hhbmdlcykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZWRWYWx1ZS5uZXh0KHRoaXMuZ2V0UmVuZGVyZWRWYWx1ZSgpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbml0VmFsaWRhdG9ycygpO1xuICAgICAgICB0aGlzLnJlbG9hZENvbmRpdGlvbihkYXRhLmNvbmRpdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbmRpdGlvbigpOiBGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkIHtcbiAgICAgICAgY29uc3QgZnJvbSA9IHNlcmlhbGl6ZTxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLmZyb21DdHJsLnZhbHVlKTtcbiAgICAgICAgY29uc3QgdG8gPSBzZXJpYWxpemU8RD4odGhpcy5kYXRlQWRhcHRlciwgdGhpcy50b0N0cmwudmFsdWUpO1xuXG4gICAgICAgIGlmIChmcm9tICYmIHRvKSB7XG4gICAgICAgICAgICByZXR1cm4ge2JldHdlZW46IHtmcm9tLCB0b319O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0udmFsaWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRGlydHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uZGlydHk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWxvYWRDb25kaXRpb24oY29uZGl0aW9uOiBGaWx0ZXJHcm91cENvbmRpdGlvbkZpZWxkIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBpZiAoIWNvbmRpdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdmFsdWUgPSB7XG4gICAgICAgICAgICBmcm9tOiBudWxsIGFzIEQgfCBudWxsLFxuICAgICAgICAgICAgdG86IG51bGwgYXMgRCB8IG51bGwsXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGNvbmRpdGlvbi5iZXR3ZWVuKSB7XG4gICAgICAgICAgICB2YWx1ZS5mcm9tID0gdGhpcy5kYXRlQWRhcHRlci5wYXJzZShjb25kaXRpb24uYmV0d2Vlbi5mcm9tLCBudWxsKTtcbiAgICAgICAgICAgIHZhbHVlLnRvID0gdGhpcy5kYXRlQWRhcHRlci5wYXJzZShjb25kaXRpb24uYmV0d2Vlbi50bywgbnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZvcm0uc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFZhbGlkYXRvcnMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBbVmFsaWRhdG9ycy5yZXF1aXJlZF07XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24ubWluKSB7XG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goZGF0ZU1pbjxEPih0aGlzLmRhdGVBZGFwdGVyLCB0aGlzLmNvbmZpZ3VyYXRpb24ubWluKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWd1cmF0aW9uLm1heCkge1xuICAgICAgICAgICAgdmFsaWRhdG9ycy5wdXNoKGRhdGVNYXg8RD4odGhpcy5kYXRlQWRhcHRlciwgdGhpcy5jb25maWd1cmF0aW9uLm1heCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mcm9tQ3RybC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuICAgICAgICB0aGlzLnRvQ3RybC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xuXG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWxpZGF0b3JzKFtcbiAgICAgICAgICAgIHRvR3JlYXRlclRoYW5Gcm9tPEQ+KHRoaXMuZGF0ZUFkYXB0ZXIpLCAvLyBGcm9tIDwgVG9cbiAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbmRlcih2YWx1ZTogRCB8IG51bGwpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUgPyB0aGlzLmRhdGVBZGFwdGVyLmZvcm1hdCh2YWx1ZSwgdGhpcy5kYXRlRm9ybWF0cy5kaXNwbGF5LmRhdGVJbnB1dCkgOiAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJlbmRlcmVkVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgZnJvbSA9IHRoaXMucmVuZGVyKHRoaXMuZnJvbUN0cmwudmFsdWUpO1xuICAgICAgICBjb25zdCB0byA9IHRoaXMucmVuZGVyKHRoaXMudG9DdHJsLnZhbHVlKTtcblxuICAgICAgICBpZiAoZnJvbSAmJiB0bykge1xuICAgICAgICAgICAgcmV0dXJuIGZyb20gKyAnIC0gJyArIHRvO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJmcm9tXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiRGVcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZyb21DdHJsXCJcbiAgICAgICAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJtYXRjaGVyXCJcbiAgICAgICAgICAgIFttaW5dPVwiY29uZmlndXJhdGlvbi5taW5cIlxuICAgICAgICAgICAgW21heF09XCJjb25maWd1cmF0aW9uLm1heFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwiZnJvbVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI2Zyb20+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZm9ybS5oYXNFcnJvcigndG9HcmVhdGVyVGhhbkZyb20nKVwiXG4gICAgICAgICAgICAgICAgPnt7IHJlbmRlcihmcm9tQ3RybC52YWx1ZSkgfX0gPiB7eyByZW5kZXIodG9DdHJsLnZhbHVlKSB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmcm9tQ3RybC5oYXNFcnJvcignbWluJykgJiYgIWZvcm0uaGFzRXJyb3IoJ3RvR3JlYXRlclRoYW5Gcm9tJylcIlxuICAgICAgICAgICAgICAgID48IHt7IGNvbmZpZ3VyYXRpb24ubWluIH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZyb21DdHJsLmhhc0Vycm9yKCdtYXgnKSAmJiAhZm9ybS5oYXNFcnJvcigndG9HcmVhdGVyVGhhbkZyb20nKVwiXG4gICAgICAgICAgICAgICAgPj4ge3sgY29uZmlndXJhdGlvbi5tYXggfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZnJvbUN0cmwuaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj4qPC9zcGFuPlxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJ0b1wiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIsOgXCJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJ0b0N0cmxcIlxuICAgICAgICAgICAgW2Vycm9yU3RhdGVNYXRjaGVyXT1cIm1hdGNoZXJcIlxuICAgICAgICAgICAgW21pbl09XCJjb25maWd1cmF0aW9uLm1pblwiXG4gICAgICAgICAgICBbbWF4XT1cImNvbmZpZ3VyYXRpb24ubWF4XCJcbiAgICAgICAgLz5cbiAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJ0b1wiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI3RvPjwvbWF0LWRhdGVwaWNrZXI+XG4gICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInRvQ3RybC5oYXNFcnJvcignbWluJykgJiYgIWZvcm0uaGFzRXJyb3IoJ3RvR3JlYXRlclRoYW5Gcm9tJylcIj48IHt7IGNvbmZpZ3VyYXRpb24ubWluIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0b0N0cmwuaGFzRXJyb3IoJ21heCcpICYmICFmb3JtLmhhc0Vycm9yKCd0b0dyZWF0ZXJUaGFuRnJvbScpXCI+PiB7eyBjb25maWd1cmF0aW9uLm1heCB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidG9DdHJsLmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+Kjwvc3Bhbj5cbiAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbjwvZm9ybT5cbiJdfQ==