@taiga-ui/kit 3.25.0 → 3.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/bundles/taiga-ui-kit-components-avatar.umd.js +27 -9
  2. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-badge.umd.js +2 -6
  4. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-badged-content.umd.js +0 -8
  6. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +3 -3
  8. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-combo-box.umd.js +3 -6
  10. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +0 -7
  12. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-files.umd.js +2 -7
  14. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-filter.umd.js +0 -3
  16. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-copy.umd.js +0 -4
  18. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +140 -51
  20. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-date.umd.js +62 -65
  22. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-files.umd.js +2 -10
  24. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-number.umd.js +1 -1
  26. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-range.umd.js +0 -8
  28. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-slider.umd.js +0 -4
  30. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
  32. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input.umd.js +0 -1
  34. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +0 -4
  36. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-multi-select.umd.js +7 -4
  38. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-pagination.umd.js +0 -7
  40. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-radio-block.umd.js +6 -5
  42. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-radio-list.umd.js +0 -3
  44. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-range.umd.js +1 -1
  46. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-select.umd.js +0 -1
  48. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-tabs.umd.js +0 -8
  50. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -6
  52. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-pipes-field-error.umd.js +20 -8
  54. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  55. package/components/avatar/avatar.component.d.ts +5 -2
  56. package/components/files/files.component.d.ts +1 -1
  57. package/components/input-date/input-date.module.d.ts +1 -1
  58. package/components/input-date/native-date/native-date.component.d.ts +3 -3
  59. package/components/input-date-time/input-date-time.component.d.ts +6 -2
  60. package/components/input-date-time/input-date-time.directive.d.ts +3 -0
  61. package/components/input-date-time/input-date-time.module.d.ts +7 -6
  62. package/components/input-date-time/native-date-time/native-date-time.directive.d.ts +10 -0
  63. package/components/pagination/pagination.component.d.ts +1 -1
  64. package/components/range/range-change.directive.d.ts +1 -1
  65. package/components/tag/tag.component.d.ts +1 -1
  66. package/esm2015/components/avatar/avatar.component.js +25 -11
  67. package/esm2015/components/badge/badge.component.js +4 -8
  68. package/esm2015/components/badged-content/badged-content.component.js +1 -9
  69. package/esm2015/components/checkbox-block/checkbox-block.component.js +4 -4
  70. package/esm2015/components/combo-box/combo-box.component.js +4 -7
  71. package/esm2015/components/data-list-wrapper/data-list-wrapper.js +1 -8
  72. package/esm2015/components/files/file/file.component.js +1 -5
  73. package/esm2015/components/files/files.component.js +4 -5
  74. package/esm2015/components/filter/filter.component.js +1 -4
  75. package/esm2015/components/input/input.component.js +1 -2
  76. package/esm2015/components/input-copy/input-copy.component.js +1 -5
  77. package/esm2015/components/input-date/input-date.component.js +8 -8
  78. package/esm2015/components/input-date/input-date.module.js +4 -4
  79. package/esm2015/components/input-date/native-date/native-date.component.js +7 -10
  80. package/esm2015/components/input-date-time/input-date-time.component.js +30 -14
  81. package/esm2015/components/input-date-time/input-date-time.directive.js +7 -1
  82. package/esm2015/components/input-date-time/input-date-time.module.js +10 -3
  83. package/esm2015/components/input-date-time/native-date-time/native-date-time.directive.js +47 -0
  84. package/esm2015/components/input-files/input-files.component.js +3 -11
  85. package/esm2015/components/input-number/input-number.component.js +2 -2
  86. package/esm2015/components/input-range/input-range.component.js +1 -9
  87. package/esm2015/components/input-slider/input-slider.component.js +1 -5
  88. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  89. package/esm2015/components/line-clamp/line-clamp.component.js +1 -5
  90. package/esm2015/components/multi-select/multi-select.component.js +8 -5
  91. package/esm2015/components/pagination/pagination.component.js +1 -8
  92. package/esm2015/components/radio-block/radio-block.component.js +7 -6
  93. package/esm2015/components/radio-list/radio-list.component.js +1 -4
  94. package/esm2015/components/range/range-change.directive.js +2 -2
  95. package/esm2015/components/select/select.component.js +1 -2
  96. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +1 -9
  97. package/esm2015/components/tag/tag.component.js +3 -7
  98. package/esm2015/pipes/field-error/field-error-pipe.js +21 -9
  99. package/fesm2015/taiga-ui-kit-components-avatar.js +24 -10
  100. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  101. package/fesm2015/taiga-ui-kit-components-badge.js +3 -7
  102. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  103. package/fesm2015/taiga-ui-kit-components-badged-content.js +0 -8
  104. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  105. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +3 -3
  106. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  107. package/fesm2015/taiga-ui-kit-components-combo-box.js +3 -6
  108. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  109. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +0 -7
  110. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  111. package/fesm2015/taiga-ui-kit-components-files.js +3 -8
  112. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  113. package/fesm2015/taiga-ui-kit-components-filter.js +0 -3
  114. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  115. package/fesm2015/taiga-ui-kit-components-input-copy.js +0 -4
  116. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  117. package/fesm2015/taiga-ui-kit-components-input-date-time.js +87 -17
  118. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  119. package/fesm2015/taiga-ui-kit-components-input-date.js +14 -17
  120. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  121. package/fesm2015/taiga-ui-kit-components-input-files.js +2 -10
  122. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  123. package/fesm2015/taiga-ui-kit-components-input-number.js +1 -1
  124. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  125. package/fesm2015/taiga-ui-kit-components-input-range.js +0 -8
  126. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  127. package/fesm2015/taiga-ui-kit-components-input-slider.js +0 -4
  128. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  129. package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
  130. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  131. package/fesm2015/taiga-ui-kit-components-input.js +0 -1
  132. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  133. package/fesm2015/taiga-ui-kit-components-line-clamp.js +0 -4
  134. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  135. package/fesm2015/taiga-ui-kit-components-multi-select.js +7 -4
  136. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  137. package/fesm2015/taiga-ui-kit-components-pagination.js +0 -7
  138. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  139. package/fesm2015/taiga-ui-kit-components-radio-block.js +6 -5
  140. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  141. package/fesm2015/taiga-ui-kit-components-radio-list.js +0 -3
  142. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  143. package/fesm2015/taiga-ui-kit-components-range.js +1 -1
  144. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  145. package/fesm2015/taiga-ui-kit-components-select.js +0 -1
  146. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  147. package/fesm2015/taiga-ui-kit-components-tabs.js +0 -8
  148. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  149. package/fesm2015/taiga-ui-kit-components-tag.js +2 -6
  150. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  151. package/fesm2015/taiga-ui-kit-pipes-field-error.js +20 -8
  152. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  153. package/package.json +4 -4
@@ -6,12 +6,12 @@ import { TextMaskModule, TuiValueAccessorModule } from '@taiga-ui/kit/directives
6
6
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
7
7
  import { TuiInputDateComponent } from './input-date.component';
8
8
  import { TuiInputDateDirective } from './input-date.directive';
9
- import { TuiNativeDateComponent } from './native-date/native-date.component';
9
+ import { TuiNativeDateDirective } from './native-date/native-date.component';
10
10
  import * as i0 from "@angular/core";
11
11
  export class TuiInputDateModule {
12
12
  }
13
13
  TuiInputDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- TuiInputDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateModule, declarations: [TuiInputDateComponent, TuiInputDateDirective, TuiNativeDateComponent], imports: [CommonModule,
14
+ TuiInputDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateModule, declarations: [TuiInputDateComponent, TuiInputDateDirective, TuiNativeDateDirective], imports: [CommonModule,
15
15
  TextMaskModule,
16
16
  PolymorpheusModule,
17
17
  TuiWrapperModule,
@@ -57,8 +57,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
57
57
  TuiLetModule,
58
58
  TuiTextfieldControllerModule,
59
59
  ],
60
- declarations: [TuiInputDateComponent, TuiInputDateDirective, TuiNativeDateComponent],
60
+ declarations: [TuiInputDateComponent, TuiInputDateDirective, TuiNativeDateDirective],
61
61
  exports: [TuiInputDateComponent, TuiInputDateDirective, TuiTextfieldComponent],
62
62
  }]
63
63
  }] });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1kYXRlL2lucHV0LWRhdGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUNILGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsYUFBYSxFQUNiLDJCQUEyQixFQUMzQixZQUFZLEVBQ1oscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUM1QixnQkFBZ0IsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsY0FBYyxFQUFFLHNCQUFzQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDaEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUNBQXFDLENBQUM7O0FBcUIzRSxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0IsaUJBSFoscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLGFBZC9FLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsWUFBWTtRQUNaLDRCQUE0QixhQUd0QixxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUI7aUhBRXBFLGtCQUFrQixZQWxCbEI7WUFDTCxZQUFZO1lBQ1osY0FBYztZQUNkLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsdUJBQXVCO1lBQ3ZCLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osYUFBYTtZQUNiLHVCQUF1QjtZQUN2QiwyQkFBMkI7WUFDM0Isc0JBQXNCO1lBQ3RCLFlBQVk7WUFDWiw0QkFBNEI7U0FDL0I7NEZBSVEsa0JBQWtCO2tCQW5COUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLFlBQVk7d0JBQ1osNEJBQTRCO3FCQUMvQjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsQ0FBQztvQkFDcEYsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLENBQUM7aUJBQ2pGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpTGV0TW9kdWxlLCBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aUNhbGVuZGFyTW9kdWxlLFxuICAgIFR1aUhvc3RlZERyb3Bkb3duTW9kdWxlLFxuICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkTW9kdWxlLFxuICAgIFR1aVN2Z01vZHVsZSxcbiAgICBUdWlUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICBUdWlXcmFwcGVyTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1RleHRNYXNrTW9kdWxlLCBUdWlWYWx1ZUFjY2Vzc29yTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSW5wdXREYXRlQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7VHVpSW5wdXREYXRlRGlyZWN0aXZlfSBmcm9tICcuL2lucHV0LWRhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpTmF0aXZlRGF0ZUNvbXBvbmVudH0gZnJvbSAnLi9uYXRpdmUtZGF0ZS9uYXRpdmUtZGF0ZS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBUZXh0TWFza01vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlXcmFwcGVyTW9kdWxlLFxuICAgICAgICBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZSxcbiAgICAgICAgVHVpQ2FsZW5kYXJNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpTGlua01vZHVsZSxcbiAgICAgICAgVHVpSG9zdGVkRHJvcGRvd25Nb2R1bGUsXG4gICAgICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICAgICAgVHVpVmFsdWVBY2Nlc3Nvck1vZHVsZSxcbiAgICAgICAgVHVpTGV0TW9kdWxlLFxuICAgICAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpSW5wdXREYXRlQ29tcG9uZW50LCBUdWlJbnB1dERhdGVEaXJlY3RpdmUsIFR1aU5hdGl2ZURhdGVDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtUdWlJbnB1dERhdGVDb21wb25lbnQsIFR1aUlucHV0RGF0ZURpcmVjdGl2ZSwgVHVpVGV4dGZpZWxkQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXREYXRlTW9kdWxlIHt9XG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1kYXRlL2lucHV0LWRhdGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUNILGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsYUFBYSxFQUNiLDJCQUEyQixFQUMzQixZQUFZLEVBQ1oscUJBQXFCLEVBQ3JCLDRCQUE0QixFQUM1QixnQkFBZ0IsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsY0FBYyxFQUFFLHNCQUFzQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDaEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFNUQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUNBQXFDLENBQUM7O0FBcUIzRSxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0IsaUJBSFoscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLGFBZC9FLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsWUFBWTtRQUNaLDRCQUE0QixhQUd0QixxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUI7aUhBRXBFLGtCQUFrQixZQWxCbEI7WUFDTCxZQUFZO1lBQ1osY0FBYztZQUNkLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsdUJBQXVCO1lBQ3ZCLGlCQUFpQjtZQUNqQixZQUFZO1lBQ1osYUFBYTtZQUNiLHVCQUF1QjtZQUN2QiwyQkFBMkI7WUFDM0Isc0JBQXNCO1lBQ3RCLFlBQVk7WUFDWiw0QkFBNEI7U0FDL0I7NEZBSVEsa0JBQWtCO2tCQW5COUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLFlBQVk7d0JBQ1osNEJBQTRCO3FCQUMvQjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsQ0FBQztvQkFDcEYsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLENBQUM7aUJBQ2pGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpTGV0TW9kdWxlLCBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aUNhbGVuZGFyTW9kdWxlLFxuICAgIFR1aUhvc3RlZERyb3Bkb3duTW9kdWxlLFxuICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkTW9kdWxlLFxuICAgIFR1aVN2Z01vZHVsZSxcbiAgICBUdWlUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICBUdWlXcmFwcGVyTW9kdWxlLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1RleHRNYXNrTW9kdWxlLCBUdWlWYWx1ZUFjY2Vzc29yTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSW5wdXREYXRlQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7VHVpSW5wdXREYXRlRGlyZWN0aXZlfSBmcm9tICcuL2lucHV0LWRhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7VHVpTmF0aXZlRGF0ZURpcmVjdGl2ZX0gZnJvbSAnLi9uYXRpdmUtZGF0ZS9uYXRpdmUtZGF0ZS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBUZXh0TWFza01vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlXcmFwcGVyTW9kdWxlLFxuICAgICAgICBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZSxcbiAgICAgICAgVHVpQ2FsZW5kYXJNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpTGlua01vZHVsZSxcbiAgICAgICAgVHVpSG9zdGVkRHJvcGRvd25Nb2R1bGUsXG4gICAgICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICAgICAgVHVpVmFsdWVBY2Nlc3Nvck1vZHVsZSxcbiAgICAgICAgVHVpTGV0TW9kdWxlLFxuICAgICAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpSW5wdXREYXRlQ29tcG9uZW50LCBUdWlJbnB1dERhdGVEaXJlY3RpdmUsIFR1aU5hdGl2ZURhdGVEaXJlY3RpdmVdLFxuICAgIGV4cG9ydHM6IFtUdWlJbnB1dERhdGVDb21wb25lbnQsIFR1aUlucHV0RGF0ZURpcmVjdGl2ZSwgVHVpVGV4dGZpZWxkQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXREYXRlTW9kdWxlIHt9XG4iXX0=
@@ -1,8 +1,8 @@
1
- import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
1
+ import { Directive, Inject } from '@angular/core';
2
2
  import { DATE_FILLER_LENGTH, TUI_DATE_FORMAT, TuiDay } from '@taiga-ui/cdk';
3
3
  import { TUI_TEXTFIELD_HOST } from '@taiga-ui/core';
4
4
  import * as i0 from "@angular/core";
5
- export class TuiNativeDateComponent {
5
+ export class TuiNativeDateDirective {
6
6
  constructor(host, dateFormat) {
7
7
  this.host = host;
8
8
  this.dateFormat = dateFormat;
@@ -16,13 +16,12 @@ export class TuiNativeDateComponent {
16
16
  this.host.onValueChange(value ? TuiDay.normalizeParse(value, 'YMD').toString(this.dateFormat) : '');
17
17
  }
18
18
  }
19
- TuiNativeDateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateComponent, deps: [{ token: TUI_TEXTFIELD_HOST }, { token: TUI_DATE_FORMAT }], target: i0.ɵɵFactoryTarget.Component });
20
- TuiNativeDateComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiNativeDateComponent, selector: "input[tuiDate]", host: { attributes: { "type": "date" }, listeners: { "change": "onChange($event.target.value)", "click.stop.silent": "0", "input.stop.silent": "0", "mousedown.stop.silent": "0" }, properties: { "tabIndex": "-1", "value": "value" } }, ngImport: i0, template: '', isInline: true, styles: [":host{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:auto;font-size:2rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateComponent, decorators: [{
22
- type: Component,
19
+ TuiNativeDateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateDirective, deps: [{ token: TUI_TEXTFIELD_HOST }, { token: TUI_DATE_FORMAT }], target: i0.ɵɵFactoryTarget.Directive });
20
+ TuiNativeDateDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiNativeDateDirective, selector: "input[tuiDate]", host: { attributes: { "type": "date" }, listeners: { "change": "onChange($event.target.value)", "click.stop.silent": "0", "input.stop.silent": "0", "mousedown.stop.silent": "0" }, properties: { "tabIndex": "-1", "value": "value" } }, ngImport: i0 });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateDirective, decorators: [{
22
+ type: Directive,
23
23
  args: [{
24
24
  selector: 'input[tuiDate]',
25
- template: '',
26
25
  host: {
27
26
  type: 'date',
28
27
  '[tabIndex]': '-1',
@@ -32,8 +31,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
32
31
  '(input.stop.silent)': '0',
33
32
  '(mousedown.stop.silent)': '0',
34
33
  },
35
- styleUrls: ['./native-date.style.less'],
36
- changeDetection: ChangeDetectionStrategy.OnPush,
37
34
  }]
38
35
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
39
36
  type: Inject,
@@ -42,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
42
39
  type: Inject,
43
40
  args: [TUI_DATE_FORMAT]
44
41
  }] }]; } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZGF0ZS9uYXRpdmUtZGF0ZS9uYXRpdmUtZGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLGtCQUFrQixFQUFFLGVBQWUsRUFBZSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFtQixNQUFNLGdCQUFnQixDQUFDOztBQWlCcEUsTUFBTSxPQUFPLHNCQUFzQjtJQUMvQixZQUN5QyxJQUFzQixFQUNqQixVQUF1QjtRQUQ1QixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUFhO0lBQ2xFLENBQUM7SUFFSixJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxrQkFBa0I7WUFDaEQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDO1lBQzlFLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDYixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQ25CLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUM3RSxDQUFDO0lBQ04sQ0FBQzs7b0hBaEJRLHNCQUFzQixrQkFFbkIsa0JBQWtCLGFBQ2xCLGVBQWU7d0dBSGxCLHNCQUFzQixnU0FickIsRUFBRTs0RkFhSCxzQkFBc0I7a0JBZmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxNQUFNO3dCQUNaLFlBQVksRUFBRSxJQUFJO3dCQUNsQixTQUFTLEVBQUUsT0FBTzt3QkFDbEIsVUFBVSxFQUFFLCtCQUErQjt3QkFDM0MscUJBQXFCLEVBQUUsR0FBRzt3QkFDMUIscUJBQXFCLEVBQUUsR0FBRzt3QkFDMUIseUJBQXlCLEVBQUUsR0FBRztxQkFDakM7b0JBQ0QsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3ZDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs7MEJBR1EsTUFBTTsyQkFBQyxrQkFBa0I7OzBCQUN6QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RBVEVfRklMTEVSX0xFTkdUSCwgVFVJX0RBVEVfRk9STUFULCBUdWlEYXRlTW9kZSwgVHVpRGF5fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX1RFWFRGSUVMRF9IT1NULCBUdWlUZXh0ZmllbGRIb3N0fSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpRGF0ZV0nLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBob3N0OiB7XG4gICAgICAgIHR5cGU6ICdkYXRlJyxcbiAgICAgICAgJ1t0YWJJbmRleF0nOiAnLTEnLFxuICAgICAgICAnW3ZhbHVlXSc6ICd2YWx1ZScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdvbkNoYW5nZSgkZXZlbnQudGFyZ2V0LnZhbHVlKScsXG4gICAgICAgICcoY2xpY2suc3RvcC5zaWxlbnQpJzogJzAnLFxuICAgICAgICAnKGlucHV0LnN0b3Auc2lsZW50KSc6ICcwJyxcbiAgICAgICAgJyhtb3VzZWRvd24uc3RvcC5zaWxlbnQpJzogJzAnLFxuICAgIH0sXG4gICAgc3R5bGVVcmxzOiBbJy4vbmF0aXZlLWRhdGUuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlOYXRpdmVEYXRlQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0hPU1QpIHJlYWRvbmx5IGhvc3Q6IFR1aVRleHRmaWVsZEhvc3QsXG4gICAgICAgIEBJbmplY3QoVFVJX0RBVEVfRk9STUFUKSBwcml2YXRlIHJlYWRvbmx5IGRhdGVGb3JtYXQ6IFR1aURhdGVNb2RlLFxuICAgICkge31cblxuICAgIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5ob3N0LnZhbHVlLmxlbmd0aCA9PT0gREFURV9GSUxMRVJfTEVOR1RIXG4gICAgICAgICAgICA/IFR1aURheS5ub3JtYWxpemVQYXJzZSh0aGlzLmhvc3QudmFsdWUsIHRoaXMuZGF0ZUZvcm1hdCkudG9TdHJpbmcoJ1lNRCcsICctJylcbiAgICAgICAgICAgIDogJyc7XG4gICAgfVxuXG4gICAgb25DaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3Qub25WYWx1ZUNoYW5nZShcbiAgICAgICAgICAgIHZhbHVlID8gVHVpRGF5Lm5vcm1hbGl6ZVBhcnNlKHZhbHVlLCAnWU1EJykudG9TdHJpbmcodGhpcy5kYXRlRm9ybWF0KSA6ICcnLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZGF0ZS9uYXRpdmUtZGF0ZS9uYXRpdmUtZGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLGVBQWUsRUFBZSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFtQixNQUFNLGdCQUFnQixDQUFDOztBQWNwRSxNQUFNLE9BQU8sc0JBQXNCO0lBQy9CLFlBQ3lDLElBQXNCLEVBQ2pCLFVBQXVCO1FBRDVCLFNBQUksR0FBSixJQUFJLENBQWtCO1FBQ2pCLGVBQVUsR0FBVixVQUFVLENBQWE7SUFDbEUsQ0FBQztJQUVKLElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLGtCQUFrQjtZQUNoRCxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUM7WUFDOUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FDbkIsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQzdFLENBQUM7SUFDTixDQUFDOztvSEFoQlEsc0JBQXNCLGtCQUVuQixrQkFBa0IsYUFDbEIsZUFBZTt3R0FIbEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBWmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxNQUFNO3dCQUNaLFlBQVksRUFBRSxJQUFJO3dCQUNsQixTQUFTLEVBQUUsT0FBTzt3QkFDbEIsVUFBVSxFQUFFLCtCQUErQjt3QkFDM0MscUJBQXFCLEVBQUUsR0FBRzt3QkFDMUIscUJBQXFCLEVBQUUsR0FBRzt3QkFDMUIseUJBQXlCLEVBQUUsR0FBRztxQkFDakM7aUJBQ0o7OzBCQUdRLE1BQU07MkJBQUMsa0JBQWtCOzswQkFDekIsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RBVEVfRklMTEVSX0xFTkdUSCwgVFVJX0RBVEVfRk9STUFULCBUdWlEYXRlTW9kZSwgVHVpRGF5fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX1RFWFRGSUVMRF9IT1NULCBUdWlUZXh0ZmllbGRIb3N0fSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpRGF0ZV0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICAnW3RhYkluZGV4XSc6ICctMScsXG4gICAgICAgICdbdmFsdWVdJzogJ3ZhbHVlJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ29uQ2hhbmdlKCRldmVudC50YXJnZXQudmFsdWUpJyxcbiAgICAgICAgJyhjbGljay5zdG9wLnNpbGVudCknOiAnMCcsXG4gICAgICAgICcoaW5wdXQuc3RvcC5zaWxlbnQpJzogJzAnLFxuICAgICAgICAnKG1vdXNlZG93bi5zdG9wLnNpbGVudCknOiAnMCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTmF0aXZlRGF0ZURpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9IT1NUKSByZWFkb25seSBob3N0OiBUdWlUZXh0ZmllbGRIb3N0LFxuICAgICAgICBASW5qZWN0KFRVSV9EQVRFX0ZPUk1BVCkgcHJpdmF0ZSByZWFkb25seSBkYXRlRm9ybWF0OiBUdWlEYXRlTW9kZSxcbiAgICApIHt9XG5cbiAgICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaG9zdC52YWx1ZS5sZW5ndGggPT09IERBVEVfRklMTEVSX0xFTkdUSFxuICAgICAgICAgICAgPyBUdWlEYXkubm9ybWFsaXplUGFyc2UodGhpcy5ob3N0LnZhbHVlLCB0aGlzLmRhdGVGb3JtYXQpLnRvU3RyaW5nKCdZTUQnLCAnLScpXG4gICAgICAgICAgICA6ICcnO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3N0Lm9uVmFsdWVDaGFuZ2UoXG4gICAgICAgICAgICB2YWx1ZSA/IFR1aURheS5ub3JtYWxpemVQYXJzZSh2YWx1ZSwgJ1lNRCcpLnRvU3RyaW5nKHRoaXMuZGF0ZUZvcm1hdCkgOiAnJyxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, Input, Optional, Self, ViewChild, } from '@angular/core';
3
3
  import { NgControl } from '@angular/forms';
4
- import { AbstractTuiControl, ALWAYS_FALSE_HANDLER, changeDateSeparator, DATE_FILLER_LENGTH, TUI_DATE_FORMAT, TUI_DATE_SEPARATOR, tuiAsControl, tuiAsFocusableItemAccessor, tuiClamp, tuiDateClamp, TuiDay, tuiDefaultProp, TuiMonth, tuiNullableSame, tuiPure, TuiTime, } from '@taiga-ui/cdk';
4
+ import { AbstractTuiControl, ALWAYS_FALSE_HANDLER, changeDateSeparator, DATE_FILLER_LENGTH, TUI_DATE_FORMAT, TUI_DATE_SEPARATOR, TUI_IS_IOS, TUI_IS_MOBILE, tuiAsControl, tuiAsFocusableItemAccessor, tuiClamp, tuiDateClamp, TuiDay, tuiDefaultProp, TuiMonth, tuiNullableSame, tuiPure, TuiTime, } from '@taiga-ui/cdk';
5
5
  import { TUI_TEXTFIELD_SIZE, TuiPrimitiveTextfieldComponent, } from '@taiga-ui/core';
6
6
  import { DATE_TIME_SEPARATOR } from '@taiga-ui/kit/constants';
7
7
  import { TUI_DATE_TEXTS, TUI_DATE_TIME_VALUE_TRANSFORMER, TUI_INPUT_DATE_OPTIONS, TUI_TIME_TEXTS, tuiDateStreamWithTransformer, } from '@taiga-ui/kit/tokens';
@@ -12,12 +12,13 @@ import * as i0 from "@angular/core";
12
12
  import * as i1 from "@taiga-ui/core";
13
13
  import * as i2 from "@taiga-ui/kit/directives";
14
14
  import * as i3 from "@tinkoff/ng-polymorpheus";
15
- import * as i4 from "@taiga-ui/cdk";
16
- import * as i5 from "@angular/common";
17
- import * as i6 from "@angular/forms";
18
- import * as i7 from "rxjs";
15
+ import * as i4 from "@angular/common";
16
+ import * as i5 from "./native-date-time/native-date-time.directive";
17
+ import * as i6 from "@taiga-ui/cdk";
18
+ import * as i7 from "@angular/forms";
19
+ import * as i8 from "rxjs";
19
20
  export class TuiInputDateTimeComponent extends AbstractTuiControl {
20
- constructor(control, cdr, textfieldSize, dateFormat, dateSeparator, timeTexts$, dateTexts$, valueTransformer, options) {
21
+ constructor(control, cdr, textfieldSize, dateFormat, dateSeparator, timeTexts$, dateTexts$, valueTransformer, options, isMobile, isIos) {
21
22
  super(control, cdr, valueTransformer);
22
23
  this.textfieldSize = textfieldSize;
23
24
  this.dateFormat = dateFormat;
@@ -26,6 +27,8 @@ export class TuiInputDateTimeComponent extends AbstractTuiControl {
26
27
  this.dateTexts$ = dateTexts$;
27
28
  this.valueTransformer = valueTransformer;
28
29
  this.options = options;
30
+ this.isMobile = isMobile;
31
+ this.isIos = isIos;
29
32
  this.month = null;
30
33
  this.min = this.options.min;
31
34
  this.max = this.options.max;
@@ -53,6 +56,12 @@ export class TuiInputDateTimeComponent extends AbstractTuiControl {
53
56
  get calendarIcon() {
54
57
  return this.options.icon;
55
58
  }
59
+ get nativePicker() {
60
+ return !!this.options.nativePicker && this.isMobile;
61
+ }
62
+ get showNativePicker() {
63
+ return this.nativePicker && this.timeMode === 'HH:MM';
64
+ }
56
65
  get computedValue() {
57
66
  const { value, nativeValue, timeMode } = this;
58
67
  const [date, time] = value;
@@ -146,7 +155,8 @@ export class TuiInputDateTimeComponent extends AbstractTuiControl {
146
155
  }
147
156
  writeValue(value) {
148
157
  super.writeValue(value);
149
- this.nativeValue = value && (value[0] || value[1]) ? this.computedValue : '';
158
+ this.nativeValue =
159
+ this.value && (this.value[0] || this.value[1]) ? this.computedValue : '';
150
160
  }
151
161
  getFallbackValue() {
152
162
  return [null, null];
@@ -196,12 +206,12 @@ export class TuiInputDateTimeComponent extends AbstractTuiControl {
196
206
  return TuiTime.fromAbsoluteMilliseconds(tuiClamp(ms, min, max));
197
207
  }
198
208
  }
199
- TuiInputDateTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateTimeComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_TEXTFIELD_SIZE }, { token: TUI_DATE_FORMAT }, { token: TUI_DATE_SEPARATOR }, { token: TUI_TIME_TEXTS }, { token: TUI_DATE_TEXTS }, { token: TUI_DATE_TIME_VALUE_TRANSFORMER, optional: true }, { token: TUI_INPUT_DATE_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
209
+ TuiInputDateTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateTimeComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TUI_TEXTFIELD_SIZE }, { token: TUI_DATE_FORMAT }, { token: TUI_DATE_SEPARATOR }, { token: TUI_TIME_TEXTS }, { token: TUI_DATE_TEXTS }, { token: TUI_DATE_TIME_VALUE_TRANSFORMER, optional: true }, { token: TUI_INPUT_DATE_OPTIONS }, { token: TUI_IS_MOBILE }, { token: TUI_IS_IOS }], target: i0.ɵɵFactoryTarget.Component });
200
210
  TuiInputDateTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TuiInputDateTimeComponent, selector: "tui-input-date-time", inputs: { min: "min", max: "max", disabledItemHandler: "disabledItemHandler", defaultActiveYearMonth: "defaultActiveYearMonth", timeMode: "timeMode" }, host: { listeners: { "click": "onClick()" } }, providers: [
201
211
  tuiAsFocusableItemAccessor(TuiInputDateTimeComponent),
202
212
  tuiAsControl(TuiInputDateTimeComponent),
203
213
  tuiDateStreamWithTransformer(TUI_DATE_TIME_VALUE_TRANSFORMER),
204
- ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-input-date-time__textfield\"\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiWrapper\n appearance=\"icon\"\n [class.t-icon]=\"!computedDisabled\"\n [src]=\"src\"\n ></tui-svg>\n </ng-template>\n\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"type\"\n >\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date-time__calendar\"\n [min]=\"calendarMinDay\"\n [max]=\"calendarMaxDay\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"calendarValue\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}.t-icon{pointer-events:auto}.t-button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i1.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { type: i2.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i3.PolymorpheusTemplate, selector: "ng-template[polymorpheus]", inputs: ["polymorpheus"], exportAs: ["polymorpheus"] }, { type: i4.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
214
+ ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive && !showNativePicker\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-input-date-time__textfield\"\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldIcon]=\"calendarIcon && iconContent\"\n [tuiTextfieldFiller]=\"(filler$ | async) || ''\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n *polymorpheusOutlet=\"calendarIcon as src; context: {$implicit: size}\"\n tuiWrapper\n appearance=\"icon\"\n [class.t-icon]=\"!computedDisabled\"\n [src]=\"src\"\n ></tui-svg>\n <input\n *ngIf=\"showNativePicker\"\n tuiDateTime\n class=\"t-native-input\"\n />\n </ng-template>\n\n <ng-template\n #dropdown=\"polymorpheus\"\n [polymorpheus]=\"type\"\n >\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date-time__calendar\"\n [min]=\"calendarMinDay\"\n [max]=\"calendarMaxDay\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"calendarValue\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}.t-icon{pointer-events:auto}.t-button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}.t-native-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:auto;font-size:2rem}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler", "value"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i1.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { type: i2.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i3.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.TuiNativeDateTimeDirective, selector: "input[tuiDateTime]" }, { type: i3.PolymorpheusTemplate, selector: "ng-template[polymorpheus]", inputs: ["polymorpheus"], exportAs: ["polymorpheus"] }, { type: i6.TuiPreventDefaultDirective, selector: "[tuiPreventDefault]", inputs: ["tuiPreventDefault"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
205
215
  __decorate([
206
216
  tuiDefaultProp()
207
217
  ], TuiInputDateTimeComponent.prototype, "min", void 0);
@@ -236,7 +246,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
236
246
  tuiDateStreamWithTransformer(TUI_DATE_TIME_VALUE_TRANSFORMER),
237
247
  ],
238
248
  }]
239
- }], ctorParameters: function () { return [{ type: i6.NgControl, decorators: [{
249
+ }], ctorParameters: function () { return [{ type: i7.NgControl, decorators: [{
240
250
  type: Optional
241
251
  }, {
242
252
  type: Self
@@ -255,13 +265,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
255
265
  }] }, { type: undefined, decorators: [{
256
266
  type: Inject,
257
267
  args: [TUI_DATE_SEPARATOR]
258
- }] }, { type: i7.Observable, decorators: [{
268
+ }] }, { type: i8.Observable, decorators: [{
259
269
  type: Inject,
260
270
  args: [TUI_TIME_TEXTS]
261
- }] }, { type: i7.Observable, decorators: [{
271
+ }] }, { type: i8.Observable, decorators: [{
262
272
  type: Inject,
263
273
  args: [TUI_DATE_TEXTS]
264
- }] }, { type: i4.AbstractTuiValueTransformer, decorators: [{
274
+ }] }, { type: i6.AbstractTuiValueTransformer, decorators: [{
265
275
  type: Optional
266
276
  }, {
267
277
  type: Inject,
@@ -269,6 +279,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
269
279
  }] }, { type: undefined, decorators: [{
270
280
  type: Inject,
271
281
  args: [TUI_INPUT_DATE_OPTIONS]
282
+ }] }, { type: undefined, decorators: [{
283
+ type: Inject,
284
+ args: [TUI_IS_MOBILE]
285
+ }] }, { type: undefined, decorators: [{
286
+ type: Inject,
287
+ args: [TUI_IS_IOS]
272
288
  }] }]; }, propDecorators: { textfield: [{
273
289
  type: ViewChild,
274
290
  args: [TuiPrimitiveTextfieldComponent]
@@ -286,4 +302,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
286
302
  type: HostListener,
287
303
  args: ['click']
288
304
  }], calculateMask: [], getDateTimeString: [] } });
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZGF0ZS10aW1lL2lucHV0LWRhdGUtdGltZS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGtCQUFrQixFQUVsQixZQUFZLEVBQ1osMEJBQTBCLEVBRTFCLFFBQVEsRUFFUixZQUFZLEVBRVosTUFBTSxFQUNOLGNBQWMsRUFFZCxRQUFRLEVBQ1IsZUFBZSxFQUNmLE9BQU8sRUFDUCxPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILGtCQUFrQixFQUNsQiw4QkFBOEIsR0FNakMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsY0FBYyxFQUNkLCtCQUErQixFQUMvQixzQkFBc0IsRUFDdEIsY0FBYyxFQUNkLDRCQUE0QixHQUUvQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDSCxrQ0FBa0MsRUFDbEMsaUJBQWlCLEVBQ2pCLGlCQUFpQixH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QU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQyxrQkFBa0I7OzBCQUV6QixNQUFNOzJCQUFDLGVBQWU7OzBCQUN0QixNQUFNOzJCQUFDLGtCQUFrQjs7MEJBQ3pCLE1BQU07MkJBQUMsY0FBYzs7MEJBRXJCLE1BQU07MkJBQUMsY0FBYzs7MEJBRXJCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsK0JBQStCOzswQkFJdEMsTUFBTTsyQkFBQyxzQkFBc0I7NENBeERqQixTQUFTO3NCQUR6QixTQUFTO3VCQUFDLDhCQUE4QjtnQkFPekMsR0FBRztzQkFGRixLQUFLO2dCQU1OLEdBQUc7c0JBRkYsS0FBSztnQkFNTixtQkFBbUI7c0JBRmxCLEtBQUs7Z0JBTU4sc0JBQXNCO3NCQUZyQixLQUFLO2dCQU1OLFFBQVE7c0JBRlAsS0FBSztnQkEwSE4sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU87Z0JBb0diLGFBQWEsTUE0QmIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgQWJzdHJhY3RUdWlWYWx1ZVRyYW5zZm9ybWVyLFxuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIGNoYW5nZURhdGVTZXBhcmF0b3IsXG4gICAgREFURV9GSUxMRVJfTEVOR1RILFxuICAgIFRVSV9EQVRFX0ZPUk1BVCxcbiAgICBUVUlfREFURV9TRVBBUkFUT1IsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlBc0NvbnRyb2wsXG4gICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgdHVpQ2xhbXAsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEYXRlQ2xhbXAsXG4gICAgVHVpRGF0ZU1vZGUsXG4gICAgVHVpRGF5LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlNb250aCxcbiAgICB0dWlOdWxsYWJsZVNhbWUsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlUaW1lLFxuICAgIFR1aVRpbWVNb2RlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVFVJX1RFWFRGSUVMRF9TSVpFLFxuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlTaXplTCxcbiAgICBUdWlTaXplUyxcbiAgICBUdWlUZXh0ZmllbGRTaXplRGlyZWN0aXZlLFxuICAgIFR1aVRleHRNYXNrT3B0aW9ucyxcbiAgICBUdWlXaXRoT3B0aW9uYWxNaW5NYXgsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7REFURV9USU1FX1NFUEFSQVRPUn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgICBUVUlfREFURV9URVhUUyxcbiAgICBUVUlfREFURV9USU1FX1ZBTFVFX1RSQU5TRk9STUVSLFxuICAgIFRVSV9JTlBVVF9EQVRFX09QVElPTlMsXG4gICAgVFVJX1RJTUVfVEVYVFMsXG4gICAgdHVpRGF0ZVN0cmVhbVdpdGhUcmFuc2Zvcm1lcixcbiAgICBUdWlJbnB1dERhdGVPcHRpb25zLFxufSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1xuICAgIHR1aUNyZWF0ZUF1dG9Db3JyZWN0ZWREYXRlVGltZVBpcGUsXG4gICAgdHVpQ3JlYXRlRGF0ZU1hc2ssXG4gICAgdHVpQ3JlYXRlVGltZU1hc2ssXG59IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMvbWFzayc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtZGF0ZS10aW1lJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZGF0ZS10aW1lLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LWRhdGUtdGltZS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yKFR1aUlucHV0RGF0ZVRpbWVDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpSW5wdXREYXRlVGltZUNvbXBvbmVudCksXG4gICAgICAgIHR1aURhdGVTdHJlYW1XaXRoVHJhbnNmb3JtZXIoVFVJX0RBVEVfVElNRV9WQUxVRV9UUkFOU0ZPUk1FUiksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXREYXRlVGltZUNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlDb250cm9sPFtUdWlEYXkgfCBudWxsLCBUdWlUaW1lIHwgbnVsbF0+XG4gICAgaW1wbGVtZW50c1xuICAgICAgICBUdWlXaXRoT3B0aW9uYWxNaW5NYXg8VHVpRGF5IHwgW1R1aURheSwgVHVpVGltZV0+LFxuICAgICAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIHByaXZhdGUgbW9udGg6IFR1aU1vbnRoIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWluOiBUdWlEYXkgfCBbVHVpRGF5LCBUdWlUaW1lXSA9IHRoaXMub3B0aW9ucy5taW47XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4OiBUdWlEYXkgfCBbVHVpRGF5LCBUdWlUaW1lXSA9IHRoaXMub3B0aW9ucy5tYXg7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VHVpRGF5PiA9IEFMV0FZU19GQUxTRV9IQU5ETEVSO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRlZmF1bHRBY3RpdmVZZWFyTW9udGggPSBUdWlNb250aC5jdXJyZW50TG9jYWwoKTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB0aW1lTW9kZTogVHVpVGltZU1vZGUgPSAnSEg6TU0nO1xuXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgcmVhZG9ubHkgdHlwZSE6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT47XG5cbiAgICByZWFkb25seSBmaWxsZXIkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5kYXRlVGV4dHMkLnBpcGUoXG4gICAgICAgICAgICBtYXAoZGF0ZVRleHRzID0+XG4gICAgICAgICAgICAgICAgY2hhbmdlRGF0ZVNlcGFyYXRvcihkYXRlVGV4dHNbdGhpcy5kYXRlRm9ybWF0XSwgdGhpcy5kYXRlU2VwYXJhdG9yKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICAgIHRoaXMudGltZVRleHRzJC5waXBlKG1hcCh0ZXh0cyA9PiB0ZXh0c1t0aGlzLnRpbWVNb2RlXSkpLFxuICAgIF0pLnBpcGUobWFwKGZpbGxlcnMgPT4gdGhpcy5nZXREYXRlVGltZVN0cmluZyguLi5maWxsZXJzKSkpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9TSVpFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZFNpemU6IFR1aVRleHRmaWVsZFNpemVEaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoVFVJX0RBVEVfRk9STUFUKSByZWFkb25seSBkYXRlRm9ybWF0OiBUdWlEYXRlTW9kZSxcbiAgICAgICAgQEluamVjdChUVUlfREFURV9TRVBBUkFUT1IpIHJlYWRvbmx5IGRhdGVTZXBhcmF0b3I6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChUVUlfVElNRV9URVhUUylcbiAgICAgICAgcmVhZG9ubHkgdGltZVRleHRzJDogT2JzZXJ2YWJsZTxSZWNvcmQ8VHVpVGltZU1vZGUsIHN0cmluZz4+LFxuICAgICAgICBASW5qZWN0KFRVSV9EQVRFX1RFWFRTKVxuICAgICAgICByZWFkb25seSBkYXRlVGV4dHMkOiBPYnNlcnZhYmxlPFJlY29yZDxUdWlEYXRlTW9kZSwgc3RyaW5nPj4sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVFVJX0RBVEVfVElNRV9WQUxVRV9UUkFOU0ZPUk1FUilcbiAgICAgICAgb3ZlcnJpZGUgcmVhZG9ubHkgdmFsdWVUcmFuc2Zvcm1lcjogQWJzdHJhY3RUdWlWYWx1ZVRyYW5zZm9ybWVyPFxuICAgICAgICAgICAgW1R1aURheSB8IG51bGwsIFR1aVRpbWUgfCBudWxsXVxuICAgICAgICA+IHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfREFURV9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aUlucHV0RGF0ZU9wdGlvbnMsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNkciwgdmFsdWVUcmFuc2Zvcm1lcik7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGxlckxlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gREFURV9GSUxMRVJfTEVOR1RIICsgREFURV9USU1FX1NFUEFSQVRPUi5sZW5ndGggKyB0aGlzLnRpbWVNb2RlLmxlbmd0aDtcbiAgICB9XG5cbiAgICBnZXQgdGV4dE1hc2tPcHRpb25zKCk6IFR1aVRleHRNYXNrT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbGN1bGF0ZU1hc2soXG4gICAgICAgICAgICB0aGlzLnZhbHVlWzBdLFxuICAgICAgICAgICAgdGhpcy5jYWxlbmRhck1pbkRheSxcbiAgICAgICAgICAgIHRoaXMuY2FsZW5kYXJNYXhEYXksXG4gICAgICAgICAgICB0aGlzLnRpbWVNb2RlLFxuICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0LFxuICAgICAgICAgICAgdGhpcy5kYXRlU2VwYXJhdG9yLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkID8gdGhpcy50ZXh0ZmllbGQubmF0aXZlRm9jdXNhYmxlRWxlbWVudCA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudGV4dGZpZWxkICYmIHRoaXMudGV4dGZpZWxkLmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGNhbGVuZGFySWNvbigpOiBUdWlJbnB1dERhdGVPcHRpb25zWydpY29uJ10ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmljb247XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBuYXRpdmVWYWx1ZSwgdGltZU1vZGV9ID0gdGhpcztcbiAgICAgICAgY29uc3QgW2RhdGUsIHRpbWVdID0gdmFsdWU7XG4gICAgICAgIGNvbnN0IGhhc1RpbWVJbnB1dENoYXJzID0gbmF0aXZlVmFsdWUubGVuZ3RoID4gREFURV9GSUxMRVJfTEVOR1RIO1xuXG4gICAgICAgIGlmICghZGF0ZSB8fCAoIXRpbWUgJiYgaGFzVGltZUlucHV0Q2hhcnMpKSB7XG4gICAgICAgICAgICByZXR1cm4gbmF0aXZlVmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRlVGltZVN0cmluZyhkYXRlLCB0aW1lLCB0aW1lTW9kZSk7XG4gICAgfVxuXG4gICAgZ2V0IGNhbGVuZGFyVmFsdWUoKTogVHVpRGF5IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlWzBdO1xuICAgIH1cblxuICAgIGdldCBjYWxlbmRhck1pbkRheSgpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh0aGlzLm1pbikgPyB0aGlzLm1pblswXSA6IHRoaXMubWluO1xuICAgIH1cblxuICAgIGdldCBjYWxlbmRhck1heERheSgpOiBUdWlEYXkge1xuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh0aGlzLm1heCkgPyB0aGlzLm1heFswXSA6IHRoaXMubWF4O1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZEFjdGl2ZVllYXJNb250aCgpOiBUdWlNb250aCB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLm1vbnRoIHx8XG4gICAgICAgICAgICB0aGlzLnZhbHVlWzBdIHx8XG4gICAgICAgICAgICB0dWlEYXRlQ2xhbXAoXG4gICAgICAgICAgICAgICAgdGhpcy5kZWZhdWx0QWN0aXZlWWVhck1vbnRoLFxuICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkodGhpcy5taW4pID8gdGhpcy5taW5bMF0gOiB0aGlzLm1pbixcbiAgICAgICAgICAgICAgICBBcnJheS5pc0FycmF5KHRoaXMubWF4KSA/IHRoaXMubWF4WzBdIDogdGhpcy5tYXgsXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZVZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgPyB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBzZXQgbmF0aXZlVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICBpZiAoIXRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZFNpemUuc2l6ZTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5vbk9wZW5DaGFuZ2UodHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoIDwgREFURV9GSUxMRVJfTEVOR1RIKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gW251bGwsIG51bGxdO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbZGF0ZSwgdGltZV0gPSB2YWx1ZS5zcGxpdChEQVRFX1RJTUVfU0VQQVJBVE9SKTtcblxuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gVHVpRGF5Lm5vcm1hbGl6ZVBhcnNlKGRhdGUsIHRoaXMuZGF0ZUZvcm1hdCk7XG4gICAgICAgIGNvbnN0IHBhcnNlZFRpbWUgPVxuICAgICAgICAgICAgdGltZSAmJiB0aW1lLmxlbmd0aCA9PT0gdGhpcy50aW1lTW9kZS5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IHRoaXMuY2xhbXBUaW1lKFR1aVRpbWUuZnJvbVN0cmluZyh0aW1lKSwgcGFyc2VkRGF0ZSlcbiAgICAgICAgICAgICAgICA6IG51bGw7XG5cbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbcGFyc2VkRGF0ZSwgcGFyc2VkVGltZV07XG4gICAgfVxuXG4gICAgb25EYXlDbGljayhkYXk6IFR1aURheSk6IHZvaWQge1xuICAgICAgICBjb25zdCBtb2RpZmllZFRpbWUgPSB0aGlzLnZhbHVlWzFdICYmIHRoaXMuY2xhbXBUaW1lKHRoaXMudmFsdWVbMV0sIGRheSk7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IFtkYXksIG1vZGlmaWVkVGltZV07XG4gICAgICAgIHRoaXMudXBkYXRlTmF0aXZlVmFsdWUoZGF5KTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgb25Nb250aENoYW5nZShtb250aDogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb250aCA9IG1vbnRoO1xuICAgIH1cblxuICAgIG9uT3BlbkNoYW5nZShvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgfVxuXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGZvY3VzZWQgfHxcbiAgICAgICAgICAgIHRoaXMudmFsdWVbMF0gPT09IG51bGwgfHxcbiAgICAgICAgICAgIHRoaXMudmFsdWVbMV0gIT09IG51bGwgfHxcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUubGVuZ3RoIDw9IHRoaXMuZmlsbGVyTGVuZ3RoICsgREFURV9USU1FX1NFUEFSQVRPUi5sZW5ndGggfHxcbiAgICAgICAgICAgIHRoaXMudGltZU1vZGUgPT09ICdISDpNTSdcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbLCB0aW1lXSA9IHRoaXMubmF0aXZlVmFsdWUuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7XG5cbiAgICAgICAgaWYgKCF0aW1lKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJzZWRUaW1lID0gVHVpVGltZS5mcm9tU3RyaW5nKHRpbWUpO1xuXG4gICAgICAgIHRoaXMudmFsdWUgPSBbdGhpcy52YWx1ZVswXSwgcGFyc2VkVGltZV07XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5uYXRpdmVWYWx1ZS5lbmRzV2l0aCgnLicpIHx8IHRoaXMubmF0aXZlVmFsdWUuZW5kc1dpdGgoJzonKSkge1xuICAgICAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUgPSB0aGlzLm5hdGl2ZVZhbHVlLnNsaWNlKDAsIC0xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgc2V0RGlzYWJsZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBbVHVpRGF5IHwgbnVsbCwgVHVpVGltZSB8IG51bGxdIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcblxuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdmFsdWUgJiYgKHZhbHVlWzBdIHx8IHZhbHVlWzFdKSA/IHRoaXMuY29tcHV0ZWRWYWx1ZSA6ICcnO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRGYWxsYmFja1ZhbHVlKCk6IFtUdWlEYXkgfCBudWxsLCBUdWlUaW1lIHwgbnVsbF0ge1xuICAgICAgICByZXR1cm4gW251bGwsIG51bGxdO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB2YWx1ZUlkZW50aWNhbENvbXBhcmF0b3IoXG4gICAgICAgIG9sZFZhbHVlOiBbVHVpRGF5IHwgbnVsbCwgVHVpVGltZSB8IG51bGxdLFxuICAgICAgICBuZXdWYWx1ZTogW1R1aURheSB8IG51bGwsIFR1aVRpbWUgfCBudWxsXSxcbiAgICApOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHR1aU51bGxhYmxlU2FtZShvbGRWYWx1ZVswXSwgbmV3VmFsdWVbMF0sIChhLCBiKSA9PiBhLmRheVNhbWUoYikpICYmXG4gICAgICAgICAgICB0dWlOdWxsYWJsZVNhbWUob2xkVmFsdWVbMV0sIG5ld1ZhbHVlWzFdLCAoYSwgYikgPT4gU3RyaW5nKGEpID09PSBTdHJpbmcoYikpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNhbGN1bGF0ZU1hc2soXG4gICAgICAgIGRheTogVHVpRGF5IHwgbnVsbCxcbiAgICAgICAgbWluOiBUdWlEYXksXG4gICAgICAgIG1heDogVHVpRGF5LFxuICAgICAgICB0aW1lTW9kZTogVHVpVGltZU1vZGUsXG4gICAgICAgIGRhdGVGb3JtYXQ6IFR1aURhdGVNb2RlLFxuICAgICAgICBkYXRlU2VwYXJhdG9yOiBzdHJpbmcsXG4gICAgKTogVHVpVGV4dE1hc2tPcHRpb25zIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG1hc2s6IFtcbiAgICAgICAgICAgICAgICAuLi50dWlDcmVhdGVEYXRlTWFzayhkYXRlRm9ybWF0LCBkYXRlU2VwYXJhdG9yKSxcbiAgICAgICAgICAgICAgICAnLCcsXG4gICAgICAgICAgICAgICAgJyAnLFxuICAgICAgICAgICAgICAgIC4uLnR1aUNyZWF0ZVRpbWVNYXNrKHRpbWVNb2RlKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBwaXBlOiB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVRpbWVQaXBlKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogZGF5LFxuICAgICAgICAgICAgICAgIG1pbixcbiAgICAgICAgICAgICAgICBtYXgsXG4gICAgICAgICAgICAgICAgZGF0ZUZvcm1hdCxcbiAgICAgICAgICAgICAgICBkYXRlU2VwYXJhdG9yLFxuICAgICAgICAgICAgICAgIHRpbWVNb2RlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBndWlkZTogZmFsc2UsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldERhdGVUaW1lU3RyaW5nKFxuICAgICAgICBkYXRlOiBUdWlEYXkgfCBzdHJpbmcsXG4gICAgICAgIHRpbWU6IFR1aVRpbWUgfCBzdHJpbmcgfCBudWxsLFxuICAgICAgICB0aW1lTW9kZTogVHVpVGltZU1vZGUgPSAnSEg6TU0nLFxuICAgICk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGRhdGVTdHJpbmcgPVxuICAgICAgICAgICAgZGF0ZSBpbnN0YW5jZW9mIFR1aURheVxuICAgICAgICAgICAgICAgID8gZGF0ZS50b1N0cmluZyh0aGlzLmRhdGVGb3JtYXQsIHRoaXMuZGF0ZVNlcGFyYXRvcilcbiAgICAgICAgICAgICAgICA6IGRhdGU7XG4gICAgICAgIGNvbnN0IHRpbWVTdHJpbmcgPSB0aW1lIGluc3RhbmNlb2YgVHVpVGltZSA/IHRpbWUudG9TdHJpbmcodGltZU1vZGUpIDogdGltZSB8fCAnJztcblxuICAgICAgICByZXR1cm4gYCR7ZGF0ZVN0cmluZ30ke0RBVEVfVElNRV9TRVBBUkFUT1J9JHt0aW1lU3RyaW5nfWA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVOYXRpdmVWYWx1ZShkYXk6IFR1aURheSk6IHZvaWQge1xuICAgICAgICBjb25zdCB0aW1lID0gdGhpcy5uYXRpdmVWYWx1ZS5zcGxpdChEQVRFX1RJTUVfU0VQQVJBVE9SKVsxXSB8fCAnJztcblxuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdGhpcy5nZXREYXRlVGltZVN0cmluZyhkYXksIHRpbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xhbXBUaW1lKHRpbWU6IFR1aVRpbWUsIGRheTogVHVpRGF5KTogVHVpVGltZSB7XG4gICAgICAgIGNvbnN0IG1zID0gdGltZS50b0Fic29sdXRlTWlsbGlzZWNvbmRzKCk7XG4gICAgICAgIGNvbnN0IG1pbiA9XG4gICAgICAgICAgICBBcnJheS5pc0FycmF5KHRoaXMubWluKSAmJiBkYXkuZGF5U2FtZSh0aGlzLmNhbGVuZGFyTWluRGF5KVxuICAgICAgICAgICAgICAgID8gdGhpcy5taW5bMV0udG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpXG4gICAgICAgICAgICAgICAgOiAtSW5maW5pdHk7XG4gICAgICAgIGNvbnN0IG1heCA9XG4gICAgICAgICAgICBBcnJheS5pc0FycmF5KHRoaXMubWF4KSAmJiBkYXkuZGF5U2FtZSh0aGlzLmNhbGVuZGFyTWF4RGF5KVxuICAgICAgICAgICAgICAgID8gdGhpcy5tYXhbMV0udG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpXG4gICAgICAgICAgICAgICAgOiBJbmZpbml0eTtcblxuICAgICAgICByZXR1cm4gVHVpVGltZS5mcm9tQWJzb2x1dGVNaWxsaXNlY29uZHModHVpQ2xhbXAobXMsIG1pbiwgbWF4KSk7XG4gICAgfVxufVxuIiwiPHR1aS1ob3N0ZWQtZHJvcGRvd25cbiAgICBjbGFzcz1cInQtaG9zdGVkXCJcbiAgICBbY2FuT3Blbl09XCJpbnRlcmFjdGl2ZVwiXG4gICAgW2NvbnRlbnRdPVwiZHJvcGRvd25cIlxuICAgIFtvcGVuXT1cIm9wZW4gJiYgaW50ZXJhY3RpdmVcIlxuICAgIChvcGVuQ2hhbmdlKT1cIm9uT3BlbkNoYW5nZSgkZXZlbnQpXCJcbj5cbiAgICA8dHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC1kYXRlLXRpbWVfX3RleHRmaWVsZFwiXG4gICAgICAgIHR1aVZhbHVlQWNjZXNzb3JcbiAgICAgICAgY2xhc3M9XCJ0LXRleHRmaWVsZFwiXG4gICAgICAgIFt0dWlUZXh0ZmllbGRJY29uXT1cImNhbGVuZGFySWNvbiAmJiBpY29uQ29udGVudFwiXG4gICAgICAgIFt0dWlUZXh0ZmllbGRGaWxsZXJdPVwiKGZpbGxlciQgfCBhc3luYykgfHwgJydcIlxuICAgICAgICBbcHNldWRvRm9jdXNdPVwicHNldWRvRm9jdXNcIlxuICAgICAgICBbcHNldWRvSG92ZXJdPVwicHNldWRvSG92ZXJcIlxuICAgICAgICBbaW52YWxpZF09XCJjb21wdXRlZEludmFsaWRcIlxuICAgICAgICBbbmF0aXZlSWRdPVwibmF0aXZlSWRcIlxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgICAgIFt0ZXh0TWFza109XCJ0ZXh0TWFza09wdGlvbnNcIlxuICAgICAgICBbdmFsdWVdPVwiY29tcHV0ZWRWYWx1ZVwiXG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAoZm9jdXNlZENoYW5nZSk9XCJvbkZvY3VzZWQoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50XG4gICAgICAgICAgICBzZWxlY3Q9XCJpbnB1dFwiXG4gICAgICAgICAgICBuZ1Byb2plY3RBcz1cImlucHV0XCJcbiAgICAgICAgPjwvbmctY29udGVudD5cbiAgICA8L3R1aS1wcmltaXRpdmUtdGV4dGZpZWxkPlxuXG4gICAgPG5nLXRlbXBsYXRlICNpY29uQ29udGVudD5cbiAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjYWxlbmRhckljb24gYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICB0dWlXcmFwcGVyXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgICBbY2xhc3MudC1pY29uXT1cIiFjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICNkcm9wZG93bj1cInBvbHltb3JwaGV1c1wiXG4gICAgICAgIFtwb2x5bW9ycGhldXNdPVwidHlwZVwiXG4gICAgPlxuICAgICAgICA8dHVpLWNhbGVuZGFyXG4gICAgICAgICAgICB0dWlQcmV2ZW50RGVmYXVsdD1cIm1vdXNlZG93blwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWRhdGUtdGltZV9fY2FsZW5kYXJcIlxuICAgICAgICAgICAgW21pbl09XCJjYWxlbmRhck1pbkRheVwiXG4gICAgICAgICAgICBbbWF4XT1cImNhbGVuZGFyTWF4RGF5XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZEl0ZW1IYW5kbGVyXT1cImRpc2FibGVkSXRlbUhhbmRsZXJcIlxuICAgICAgICAgICAgW21vbnRoXT1cImNvbXB1dGVkQWN0aXZlWWVhck1vbnRoXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJjYWxlbmRhclZhbHVlXCJcbiAgICAgICAgICAgIChkYXlDbGljayk9XCJvbkRheUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgKG1vbnRoQ2hhbmdlKT1cIm9uTW9udGhDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgID48L3R1aS1jYWxlbmRhcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC90dWktaG9zdGVkLWRyb3Bkb3duPlxuIl19
305
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZGF0ZS10aW1lL2lucHV0LWRhdGUtdGltZS50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixVQUFVLEVBQ1YsYUFBYSxFQUViLFlBQVksRUFDWiwwQkFBMEIsRUFFMUIsUUFBUSxFQUVSLFlBQVksRUFFWixNQUFNLEVBQ04sY0FBYyxFQUVkLFFBQVEsRUFDUixlQUFlLEVBQ2YsT0FBTyxFQUNQLE9BQU8sR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLDhCQUE4QixHQU1qQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFDSCxjQUFjLEVBQ2QsK0JBQStCLEVBQy9CLHNCQUFzQixFQUN0QixjQUFjLEVBQ2QsNEJBQTRCLEdBRS9CLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNILGtDQUFrQyxFQUNsQyxp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QTBCUDtBQUdEO0lBREMsT0FBTztrRUFhUDs0RkExU1EseUJBQXlCO2tCQVhyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNQLDBCQUEwQiwyQkFBMkI7d0JBQ3JELFlBQVksMkJBQTJCO3dCQUN2Qyw0QkFBNEIsQ0FBQywrQkFBK0IsQ0FBQztxQkFDaEU7aUJBQ0o7OzBCQThDUSxRQUFROzswQkFDUixJQUFJOzswQkFDSixNQUFNOzJCQUFDLFNBQVM7OzBCQUVoQixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsa0JBQWtCOzswQkFFekIsTUFBTTsyQkFBQyxlQUFlOzswQkFDdEIsTUFBTTsyQkFBQyxrQkFBa0I7OzBCQUN6QixNQUFNOzJCQUFDLGNBQWM7OzBCQUVyQixNQUFNOzJCQUFDLGNBQWM7OzBCQUVyQixRQUFROzswQkFDUixNQUFNOzJCQUFDLCtCQUErQjs7MEJBSXRDLE1BQU07MkJBQUMsc0JBQXNCOzswQkFFN0IsTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyxVQUFVOzRDQTNETCxTQUFTO3NCQUR6QixTQUFTO3VCQUFDLDhCQUE4QjtnQkFPekMsR0FBRztzQkFGRixLQUFLO2dCQU1OLEdBQUc7c0JBRkYsS0FBSztnQkFNTixtQkFBbUI7c0JBRmxCLEtBQUs7Z0JBTU4sc0JBQXNCO3NCQUZyQixLQUFLO2dCQU1OLFFBQVE7c0JBRlAsS0FBSztnQkFvSU4sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU87Z0JBb0diLGFBQWEsTUE0QmIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgQWJzdHJhY3RUdWlWYWx1ZVRyYW5zZm9ybWVyLFxuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIGNoYW5nZURhdGVTZXBhcmF0b3IsXG4gICAgREFURV9GSUxMRVJfTEVOR1RILFxuICAgIFRVSV9EQVRFX0ZPUk1BVCxcbiAgICBUVUlfREFURV9TRVBBUkFUT1IsXG4gICAgVFVJX0lTX0lPUyxcbiAgICBUVUlfSVNfTU9CSUxFLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIHR1aUNsYW1wLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGF0ZUNsYW1wLFxuICAgIFR1aURhdGVNb2RlLFxuICAgIFR1aURheSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTW9udGgsXG4gICAgdHVpTnVsbGFibGVTYW1lLFxuICAgIHR1aVB1cmUsXG4gICAgVHVpVGltZSxcbiAgICBUdWlUaW1lTW9kZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFRVSV9URVhURklFTERfU0laRSxcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpU2l6ZUwsXG4gICAgVHVpU2l6ZVMsXG4gICAgVHVpVGV4dGZpZWxkU2l6ZURpcmVjdGl2ZSxcbiAgICBUdWlUZXh0TWFza09wdGlvbnMsXG4gICAgVHVpV2l0aE9wdGlvbmFsTWluTWF4LFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge0RBVEVfVElNRV9TRVBBUkFUT1J9IGZyb20gJ0B0YWlnYS11aS9raXQvY29uc3RhbnRzJztcbmltcG9ydCB7XG4gICAgVFVJX0RBVEVfVEVYVFMsXG4gICAgVFVJX0RBVEVfVElNRV9WQUxVRV9UUkFOU0ZPUk1FUixcbiAgICBUVUlfSU5QVVRfREFURV9PUFRJT05TLFxuICAgIFRVSV9USU1FX1RFWFRTLFxuICAgIHR1aURhdGVTdHJlYW1XaXRoVHJhbnNmb3JtZXIsXG4gICAgVHVpSW5wdXREYXRlT3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtcbiAgICB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVRpbWVQaXBlLFxuICAgIHR1aUNyZWF0ZURhdGVNYXNrLFxuICAgIHR1aUNyZWF0ZVRpbWVNYXNrLFxufSBmcm9tICdAdGFpZ2EtdWkva2l0L3V0aWxzL21hc2snO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LWRhdGUtdGltZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LWRhdGUtdGltZS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1kYXRlLXRpbWUuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlJbnB1dERhdGVUaW1lQ29tcG9uZW50KSxcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aUlucHV0RGF0ZVRpbWVDb21wb25lbnQpLFxuICAgICAgICB0dWlEYXRlU3RyZWFtV2l0aFRyYW5zZm9ybWVyKFRVSV9EQVRFX1RJTUVfVkFMVUVfVFJBTlNGT1JNRVIpLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RGF0ZVRpbWVDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxbVHVpRGF5IHwgbnVsbCwgVHVpVGltZSB8IG51bGxdPlxuICAgIGltcGxlbWVudHNcbiAgICAgICAgVHVpV2l0aE9wdGlvbmFsTWluTWF4PFR1aURheSB8IFtUdWlEYXksIFR1aVRpbWVdPixcbiAgICAgICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ/OiBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQ7XG5cbiAgICBwcml2YXRlIG1vbnRoOiBUdWlNb250aCB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbjogVHVpRGF5IHwgW1R1aURheSwgVHVpVGltZV0gPSB0aGlzLm9wdGlvbnMubWluO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heDogVHVpRGF5IHwgW1R1aURheSwgVHVpVGltZV0gPSB0aGlzLm9wdGlvbnMubWF4O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFR1aURheT4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkZWZhdWx0QWN0aXZlWWVhck1vbnRoID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGltZU1vZGU6IFR1aVRpbWVNb2RlID0gJ0hIOk1NJztcblxuICAgIG9wZW4gPSBmYWxzZTtcblxuICAgIHJlYWRvbmx5IHR5cGUhOiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmU+O1xuXG4gICAgcmVhZG9ubHkgZmlsbGVyJDogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuZGF0ZVRleHRzJC5waXBlKFxuICAgICAgICAgICAgbWFwKGRhdGVUZXh0cyA9PlxuICAgICAgICAgICAgICAgIGNoYW5nZURhdGVTZXBhcmF0b3IoZGF0ZVRleHRzW3RoaXMuZGF0ZUZvcm1hdF0sIHRoaXMuZGF0ZVNlcGFyYXRvciksXG4gICAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgICB0aGlzLnRpbWVUZXh0cyQucGlwZShtYXAodGV4dHMgPT4gdGV4dHNbdGhpcy50aW1lTW9kZV0pKSxcbiAgICBdKS5waXBlKG1hcChmaWxsZXJzID0+IHRoaXMuZ2V0RGF0ZVRpbWVTdHJpbmcoLi4uZmlsbGVycykpKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfU0laRSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGRTaXplOiBUdWlUZXh0ZmllbGRTaXplRGlyZWN0aXZlLFxuICAgICAgICBASW5qZWN0KFRVSV9EQVRFX0ZPUk1BVCkgcmVhZG9ubHkgZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUsXG4gICAgICAgIEBJbmplY3QoVFVJX0RBVEVfU0VQQVJBVE9SKSByZWFkb25seSBkYXRlU2VwYXJhdG9yOiBzdHJpbmcsXG4gICAgICAgIEBJbmplY3QoVFVJX1RJTUVfVEVYVFMpXG4gICAgICAgIHJlYWRvbmx5IHRpbWVUZXh0cyQ6IE9ic2VydmFibGU8UmVjb3JkPFR1aVRpbWVNb2RlLCBzdHJpbmc+PixcbiAgICAgICAgQEluamVjdChUVUlfREFURV9URVhUUylcbiAgICAgICAgcmVhZG9ubHkgZGF0ZVRleHRzJDogT2JzZXJ2YWJsZTxSZWNvcmQ8VHVpRGF0ZU1vZGUsIHN0cmluZz4+LFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9EQVRFX1RJTUVfVkFMVUVfVFJBTlNGT1JNRVIpXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IHZhbHVlVHJhbnNmb3JtZXI6IEFic3RyYWN0VHVpVmFsdWVUcmFuc2Zvcm1lcjxcbiAgICAgICAgICAgIFtUdWlEYXkgfCBudWxsLCBUdWlUaW1lIHwgbnVsbF1cbiAgICAgICAgPiB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVFVJX0lOUFVUX0RBVEVfT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBUdWlJbnB1dERhdGVPcHRpb25zLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19NT0JJTEUpIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHJlYWRvbmx5IGlzSW9zOiBib29sZWFuLFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjZHIsIHZhbHVlVHJhbnNmb3JtZXIpO1xuICAgIH1cblxuICAgIGdldCBmaWxsZXJMZW5ndGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIERBVEVfRklMTEVSX0xFTkdUSCArIERBVEVfVElNRV9TRVBBUkFUT1IubGVuZ3RoICsgdGhpcy50aW1lTW9kZS5sZW5ndGg7XG4gICAgfVxuXG4gICAgZ2V0IHRleHRNYXNrT3B0aW9ucygpOiBUdWlUZXh0TWFza09wdGlvbnMge1xuICAgICAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGVNYXNrKFxuICAgICAgICAgICAgdGhpcy52YWx1ZVswXSxcbiAgICAgICAgICAgIHRoaXMuY2FsZW5kYXJNaW5EYXksXG4gICAgICAgICAgICB0aGlzLmNhbGVuZGFyTWF4RGF5LFxuICAgICAgICAgICAgdGhpcy50aW1lTW9kZSxcbiAgICAgICAgICAgIHRoaXMuZGF0ZUZvcm1hdCxcbiAgICAgICAgICAgIHRoaXMuZGF0ZVNlcGFyYXRvcixcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZCA/IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgOiBudWxsO1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRleHRmaWVsZCAmJiB0aGlzLnRleHRmaWVsZC5mb2N1c2VkO1xuICAgIH1cblxuICAgIGdldCBjYWxlbmRhckljb24oKTogVHVpSW5wdXREYXRlT3B0aW9uc1snaWNvbiddIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pY29uO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IG5hdGl2ZVBpY2tlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5vcHRpb25zLm5hdGl2ZVBpY2tlciAmJiB0aGlzLmlzTW9iaWxlO1xuICAgIH1cblxuICAgIGdldCBzaG93TmF0aXZlUGlja2VyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVQaWNrZXIgJiYgdGhpcy50aW1lTW9kZSA9PT0gJ0hIOk1NJztcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB7dmFsdWUsIG5hdGl2ZVZhbHVlLCB0aW1lTW9kZX0gPSB0aGlzO1xuICAgICAgICBjb25zdCBbZGF0ZSwgdGltZV0gPSB2YWx1ZTtcbiAgICAgICAgY29uc3QgaGFzVGltZUlucHV0Q2hhcnMgPSBuYXRpdmVWYWx1ZS5sZW5ndGggPiBEQVRFX0ZJTExFUl9MRU5HVEg7XG5cbiAgICAgICAgaWYgKCFkYXRlIHx8ICghdGltZSAmJiBoYXNUaW1lSW5wdXRDaGFycykpIHtcbiAgICAgICAgICAgIHJldHVybiBuYXRpdmVWYWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmdldERhdGVUaW1lU3RyaW5nKGRhdGUsIHRpbWUsIHRpbWVNb2RlKTtcbiAgICB9XG5cbiAgICBnZXQgY2FsZW5kYXJWYWx1ZSgpOiBUdWlEYXkgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVbMF07XG4gICAgfVxuXG4gICAgZ2V0IGNhbGVuZGFyTWluRGF5KCk6IFR1aURheSB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMubWluKSA/IHRoaXMubWluWzBdIDogdGhpcy5taW47XG4gICAgfVxuXG4gICAgZ2V0IGNhbGVuZGFyTWF4RGF5KCk6IFR1aURheSB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMubWF4KSA/IHRoaXMubWF4WzBdIDogdGhpcy5tYXg7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkQWN0aXZlWWVhck1vbnRoKCk6IFR1aU1vbnRoIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGggfHxcbiAgICAgICAgICAgIHRoaXMudmFsdWVbMF0gfHxcbiAgICAgICAgICAgIHR1aURhdGVDbGFtcChcbiAgICAgICAgICAgICAgICB0aGlzLmRlZmF1bHRBY3RpdmVZZWFyTW9udGgsXG4gICAgICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLm1pbikgPyB0aGlzLm1pblswXSA6IHRoaXMubWluLFxuICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkodGhpcy5tYXgpID8gdGhpcy5tYXhbMF0gOiB0aGlzLm1heCxcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCA/IHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA6ICcnO1xuICAgIH1cblxuICAgIHNldCBuYXRpdmVWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkU2l6ZS5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xuICAgIH1cblxuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm9uT3BlbkNoYW5nZSh0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPCBEQVRFX0ZJTExFUl9MRU5HVEgpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbbnVsbCwgbnVsbF07XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IFtkYXRlLCB0aW1lXSA9IHZhbHVlLnNwbGl0KERBVEVfVElNRV9TRVBBUkFUT1IpO1xuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gVHVpRGF5Lm5vcm1hbGl6ZVBhcnNlKGRhdGUsIHRoaXMuZGF0ZUZvcm1hdCk7XG4gICAgICAgIGNvbnN0IHBhcnNlZFRpbWUgPVxuICAgICAgICAgICAgdGltZSAmJiB0aW1lLmxlbmd0aCA9PT0gdGhpcy50aW1lTW9kZS5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IHRoaXMuY2xhbXBUaW1lKFR1aVRpbWUuZnJvbVN0cmluZyh0aW1lKSwgcGFyc2VkRGF0ZSlcbiAgICAgICAgICAgICAgICA6IG51bGw7XG5cbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbcGFyc2VkRGF0ZSwgcGFyc2VkVGltZV07XG4gICAgfVxuXG4gICAgb25EYXlDbGljayhkYXk6IFR1aURheSk6IHZvaWQge1xuICAgICAgICBjb25zdCBtb2RpZmllZFRpbWUgPSB0aGlzLnZhbHVlWzFdICYmIHRoaXMuY2xhbXBUaW1lKHRoaXMudmFsdWVbMV0sIGRheSk7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IFtkYXksIG1vZGlmaWVkVGltZV07XG4gICAgICAgIHRoaXMudXBkYXRlTmF0aXZlVmFsdWUoZGF5KTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgb25Nb250aENoYW5nZShtb250aDogVHVpTW9udGgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb250aCA9IG1vbnRoO1xuICAgIH1cblxuICAgIG9uT3BlbkNoYW5nZShvcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiA9IG9wZW47XG4gICAgfVxuXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGZvY3VzZWQgfHxcbiAgICAgICAgICAgIHRoaXMudmFsdWVbMF0gPT09IG51bGwgfHxcbiAgICAgICAgICAgIHRoaXMudmFsdWVbMV0gIT09IG51bGwgfHxcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUubGVuZ3RoIDw9IHRoaXMuZmlsbGVyTGVuZ3RoICsgREFURV9USU1FX1NFUEFSQVRPUi5sZW5ndGggfHxcbiAgICAgICAgICAgIHRoaXMudGltZU1vZGUgPT09ICdISDpNTSdcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbLCB0aW1lXSA9IHRoaXMubmF0aXZlVmFsdWUuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUik7XG5cbiAgICAgICAgaWYgKCF0aW1lKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJzZWRUaW1lID0gVHVpVGltZS5mcm9tU3RyaW5nKHRpbWUpO1xuXG4gICAgICAgIHRoaXMudmFsdWUgPSBbdGhpcy52YWx1ZVswXSwgcGFyc2VkVGltZV07XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5uYXRpdmVWYWx1ZS5lbmRzV2l0aCgnLicpIHx8IHRoaXMubmF0aXZlVmFsdWUuZW5kc1dpdGgoJzonKSkge1xuICAgICAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUgPSB0aGlzLm5hdGl2ZVZhbHVlLnNsaWNlKDAsIC0xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgc2V0RGlzYWJsZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBbVHVpRGF5IHwgbnVsbCwgVHVpVGltZSB8IG51bGxdIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcblxuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID1cbiAgICAgICAgICAgIHRoaXMudmFsdWUgJiYgKHRoaXMudmFsdWVbMF0gfHwgdGhpcy52YWx1ZVsxXSkgPyB0aGlzLmNvbXB1dGVkVmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmFsbGJhY2tWYWx1ZSgpOiBbVHVpRGF5IHwgbnVsbCwgVHVpVGltZSB8IG51bGxdIHtcbiAgICAgICAgcmV0dXJuIFtudWxsLCBudWxsXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdmFsdWVJZGVudGljYWxDb21wYXJhdG9yKFxuICAgICAgICBvbGRWYWx1ZTogW1R1aURheSB8IG51bGwsIFR1aVRpbWUgfCBudWxsXSxcbiAgICAgICAgbmV3VmFsdWU6IFtUdWlEYXkgfCBudWxsLCBUdWlUaW1lIHwgbnVsbF0sXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0dWlOdWxsYWJsZVNhbWUob2xkVmFsdWVbMF0sIG5ld1ZhbHVlWzBdLCAoYSwgYikgPT4gYS5kYXlTYW1lKGIpKSAmJlxuICAgICAgICAgICAgdHVpTnVsbGFibGVTYW1lKG9sZFZhbHVlWzFdLCBuZXdWYWx1ZVsxXSwgKGEsIGIpID0+IFN0cmluZyhhKSA9PT0gU3RyaW5nKGIpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNYXNrKFxuICAgICAgICBkYXk6IFR1aURheSB8IG51bGwsXG4gICAgICAgIG1pbjogVHVpRGF5LFxuICAgICAgICBtYXg6IFR1aURheSxcbiAgICAgICAgdGltZU1vZGU6IFR1aVRpbWVNb2RlLFxuICAgICAgICBkYXRlRm9ybWF0OiBUdWlEYXRlTW9kZSxcbiAgICAgICAgZGF0ZVNlcGFyYXRvcjogc3RyaW5nLFxuICAgICk6IFR1aVRleHRNYXNrT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBtYXNrOiBbXG4gICAgICAgICAgICAgICAgLi4udHVpQ3JlYXRlRGF0ZU1hc2soZGF0ZUZvcm1hdCwgZGF0ZVNlcGFyYXRvciksXG4gICAgICAgICAgICAgICAgJywnLFxuICAgICAgICAgICAgICAgICcgJyxcbiAgICAgICAgICAgICAgICAuLi50dWlDcmVhdGVUaW1lTWFzayh0aW1lTW9kZSksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcGlwZTogdHVpQ3JlYXRlQXV0b0NvcnJlY3RlZERhdGVUaW1lUGlwZSh7XG4gICAgICAgICAgICAgICAgdmFsdWU6IGRheSxcbiAgICAgICAgICAgICAgICBtaW4sXG4gICAgICAgICAgICAgICAgbWF4LFxuICAgICAgICAgICAgICAgIGRhdGVGb3JtYXQsXG4gICAgICAgICAgICAgICAgZGF0ZVNlcGFyYXRvcixcbiAgICAgICAgICAgICAgICB0aW1lTW9kZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgZ3VpZGU6IGZhbHNlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXREYXRlVGltZVN0cmluZyhcbiAgICAgICAgZGF0ZTogVHVpRGF5IHwgc3RyaW5nLFxuICAgICAgICB0aW1lOiBUdWlUaW1lIHwgc3RyaW5nIHwgbnVsbCxcbiAgICAgICAgdGltZU1vZGU6IFR1aVRpbWVNb2RlID0gJ0hIOk1NJyxcbiAgICApOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBkYXRlU3RyaW5nID1cbiAgICAgICAgICAgIGRhdGUgaW5zdGFuY2VvZiBUdWlEYXlcbiAgICAgICAgICAgICAgICA/IGRhdGUudG9TdHJpbmcodGhpcy5kYXRlRm9ybWF0LCB0aGlzLmRhdGVTZXBhcmF0b3IpXG4gICAgICAgICAgICAgICAgOiBkYXRlO1xuICAgICAgICBjb25zdCB0aW1lU3RyaW5nID0gdGltZSBpbnN0YW5jZW9mIFR1aVRpbWUgPyB0aW1lLnRvU3RyaW5nKHRpbWVNb2RlKSA6IHRpbWUgfHwgJyc7XG5cbiAgICAgICAgcmV0dXJuIGAke2RhdGVTdHJpbmd9JHtEQVRFX1RJTUVfU0VQQVJBVE9SfSR7dGltZVN0cmluZ31gO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlTmF0aXZlVmFsdWUoZGF5OiBUdWlEYXkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGltZSA9IHRoaXMubmF0aXZlVmFsdWUuc3BsaXQoREFURV9USU1FX1NFUEFSQVRPUilbMV0gfHwgJyc7XG5cbiAgICAgICAgdGhpcy5uYXRpdmVWYWx1ZSA9IHRoaXMuZ2V0RGF0ZVRpbWVTdHJpbmcoZGF5LCB0aW1lKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsYW1wVGltZSh0aW1lOiBUdWlUaW1lLCBkYXk6IFR1aURheSk6IFR1aVRpbWUge1xuICAgICAgICBjb25zdCBtcyA9IHRpbWUudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpO1xuICAgICAgICBjb25zdCBtaW4gPVxuICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLm1pbikgJiYgZGF5LmRheVNhbWUodGhpcy5jYWxlbmRhck1pbkRheSlcbiAgICAgICAgICAgICAgICA/IHRoaXMubWluWzFdLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKVxuICAgICAgICAgICAgICAgIDogLUluZmluaXR5O1xuICAgICAgICBjb25zdCBtYXggPVxuICAgICAgICAgICAgQXJyYXkuaXNBcnJheSh0aGlzLm1heCkgJiYgZGF5LmRheVNhbWUodGhpcy5jYWxlbmRhck1heERheSlcbiAgICAgICAgICAgICAgICA/IHRoaXMubWF4WzFdLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKVxuICAgICAgICAgICAgICAgIDogSW5maW5pdHk7XG5cbiAgICAgICAgcmV0dXJuIFR1aVRpbWUuZnJvbUFic29sdXRlTWlsbGlzZWNvbmRzKHR1aUNsYW1wKG1zLCBtaW4sIG1heCkpO1xuICAgIH1cbn1cbiIsIjx0dWktaG9zdGVkLWRyb3Bkb3duXG4gICAgY2xhc3M9XCJ0LWhvc3RlZFwiXG4gICAgW2Nhbk9wZW5dPVwiaW50ZXJhY3RpdmUgJiYgIXNob3dOYXRpdmVQaWNrZXJcIlxuICAgIFtjb250ZW50XT1cImRyb3Bkb3duXCJcbiAgICBbb3Blbl09XCJvcGVuICYmIGludGVyYWN0aXZlXCJcbiAgICAob3BlbkNoYW5nZSk9XCJvbk9wZW5DaGFuZ2UoJGV2ZW50KVwiXG4+XG4gICAgPHR1aS1wcmltaXRpdmUtdGV4dGZpZWxkXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktaW5wdXQtZGF0ZS10aW1lX190ZXh0ZmllbGRcIlxuICAgICAgICB0dWlWYWx1ZUFjY2Vzc29yXG4gICAgICAgIGNsYXNzPVwidC10ZXh0ZmllbGRcIlxuICAgICAgICBbdHVpVGV4dGZpZWxkSWNvbl09XCJjYWxlbmRhckljb24gJiYgaWNvbkNvbnRlbnRcIlxuICAgICAgICBbdHVpVGV4dGZpZWxkRmlsbGVyXT1cIihmaWxsZXIkIHwgYXN5bmMpIHx8ICcnXCJcbiAgICAgICAgW3BzZXVkb0ZvY3VzXT1cInBzZXVkb0ZvY3VzXCJcbiAgICAgICAgW3BzZXVkb0hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICAgICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICAgICAgW25hdGl2ZUlkXT1cIm5hdGl2ZUlkXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICBbdGV4dE1hc2tdPVwidGV4dE1hc2tPcHRpb25zXCJcbiAgICAgICAgW3ZhbHVlXT1cImNvbXB1dGVkVmFsdWVcIlxuICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzZWRDaGFuZ2UpPVwib25Gb2N1c2VkKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8bmctY29udGVudFxuICAgICAgICAgICAgc2VsZWN0PVwiaW5wdXRcIlxuICAgICAgICAgICAgbmdQcm9qZWN0QXM9XCJpbnB1dFwiXG4gICAgICAgID48L25nLWNvbnRlbnQ+XG4gICAgPC90dWktcHJpbWl0aXZlLXRleHRmaWVsZD5cblxuICAgIDxuZy10ZW1wbGF0ZSAjaWNvbkNvbnRlbnQ+XG4gICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY2FsZW5kYXJJY29uIGFzIHNyYzsgY29udGV4dDogeyRpbXBsaWNpdDogc2l6ZX1cIlxuICAgICAgICAgICAgdHVpV3JhcHBlclxuICAgICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgICAgW2NsYXNzLnQtaWNvbl09XCIhY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgKm5nSWY9XCJzaG93TmF0aXZlUGlja2VyXCJcbiAgICAgICAgICAgIHR1aURhdGVUaW1lXG4gICAgICAgICAgICBjbGFzcz1cInQtbmF0aXZlLWlucHV0XCJcbiAgICAgICAgLz5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICNkcm9wZG93bj1cInBvbHltb3JwaGV1c1wiXG4gICAgICAgIFtwb2x5bW9ycGhldXNdPVwidHlwZVwiXG4gICAgPlxuICAgICAgICA8dHVpLWNhbGVuZGFyXG4gICAgICAgICAgICB0dWlQcmV2ZW50RGVmYXVsdD1cIm1vdXNlZG93blwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWlucHV0LWRhdGUtdGltZV9fY2FsZW5kYXJcIlxuICAgICAgICAgICAgW21pbl09XCJjYWxlbmRhck1pbkRheVwiXG4gICAgICAgICAgICBbbWF4XT1cImNhbGVuZGFyTWF4RGF5XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZEl0ZW1IYW5kbGVyXT1cImRpc2FibGVkSXRlbUhhbmRsZXJcIlxuICAgICAgICAgICAgW21vbnRoXT1cImNvbXB1dGVkQWN0aXZlWWVhck1vbnRoXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJjYWxlbmRhclZhbHVlXCJcbiAgICAgICAgICAgIChkYXlDbGljayk9XCJvbkRheUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgKG1vbnRoQ2hhbmdlKT1cIm9uTW9udGhDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgID48L3R1aS1jYWxlbmRhcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC90dWktaG9zdGVkLWRyb3Bkb3duPlxuIl19
@@ -5,9 +5,15 @@ export class TuiInputDateTimeDirective extends AbstractTuiTextfieldHost {
5
5
  get value() {
6
6
  return this.host.computedValue;
7
7
  }
8
+ get rawValue() {
9
+ return this.host.value;
10
+ }
8
11
  onValueChange(value) {
9
12
  this.host.onValueChange(value);
10
13
  }
14
+ writeValue(value) {
15
+ this.host.writeValue(value);
16
+ }
11
17
  process(input) {
12
18
  input.inputMode = 'numeric';
13
19
  }
@@ -21,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
21
27
  providers: [tuiAsTextfieldHost(TuiInputDateTimeDirective)],
22
28
  }]
23
29
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx3QkFBbUQ7SUFDOUYsSUFBYSxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVRLE9BQU8sQ0FBQyxLQUF1QjtRQUNwQyxLQUFLLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUNoQyxDQUFDOzt1SEFYUSx5QkFBeUI7MkdBQXpCLHlCQUF5Qiw4Q0FGdkIsQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDOzRGQUVqRCx5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsU0FBUyxFQUFFLENBQUMsa0JBQWtCLDJCQUEyQixDQUFDO2lCQUM3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWJzdHJhY3RUdWlUZXh0ZmllbGRIb3N0LCB0dWlBc1RleHRmaWVsZEhvc3R9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1kYXRlLXRpbWUnLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlKV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RGF0ZVRpbWVEaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3Q8VHVpSW5wdXREYXRlVGltZUNvbXBvbmVudD4ge1xuICAgIG92ZXJyaWRlIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5ob3N0LmNvbXB1dGVkVmFsdWU7XG4gICAgfVxuXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaG9zdC5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBwcm9jZXNzKGlucHV0OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlucHV0LmlucHV0TW9kZSA9ICdudW1lcmljJztcbiAgICB9XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEMsT0FBTyxFQUFDLHdCQUF3QixFQUFFLGtCQUFrQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTVFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx3QkFBbUQ7SUFDOUYsSUFBYSxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFzQztRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRVEsT0FBTyxDQUFDLEtBQXVCO1FBQ3BDLEtBQUssQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ2hDLENBQUM7O3VIQW5CUSx5QkFBeUI7MkdBQXpCLHlCQUF5Qiw4Q0FGdkIsQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDOzRGQUVqRCx5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsU0FBUyxFQUFFLENBQUMsa0JBQWtCLDJCQUEyQixDQUFDO2lCQUM3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRGF5LCBUdWlUaW1lfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7QWJzdHJhY3RUdWlUZXh0ZmllbGRIb3N0LCB0dWlBc1RleHRmaWVsZEhvc3R9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1kYXRlLXRpbWUnLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlKV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RGF0ZVRpbWVEaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3Q8VHVpSW5wdXREYXRlVGltZUNvbXBvbmVudD4ge1xuICAgIG92ZXJyaWRlIGdldCB2YWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5ob3N0LmNvbXB1dGVkVmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IHJhd1ZhbHVlKCk6IFtUdWlEYXkgfCBudWxsLCBUdWlUaW1lIHwgbnVsbF0ge1xuICAgICAgICByZXR1cm4gdGhpcy5ob3N0LnZhbHVlO1xuICAgIH1cblxuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3Qub25WYWx1ZUNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogW1R1aURheSB8IG51bGwsIFR1aVRpbWUgfCBudWxsXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3Qud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgcHJvY2VzcyhpbnB1dDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpbnB1dC5pbnB1dE1vZGUgPSAnbnVtZXJpYyc7XG4gICAgfVxufVxuIl19
@@ -6,11 +6,14 @@ import { TextMaskModule, TuiValueAccessorModule } from '@taiga-ui/kit/directives
6
6
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
7
7
  import { TuiInputDateTimeComponent } from './input-date-time.component';
8
8
  import { TuiInputDateTimeDirective } from './input-date-time.directive';
9
+ import { TuiNativeDateTimeDirective } from './native-date-time/native-date-time.directive';
9
10
  import * as i0 from "@angular/core";
10
11
  export class TuiInputDateTimeModule {
11
12
  }
12
13
  TuiInputDateTimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- TuiInputDateTimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateTimeModule, declarations: [TuiInputDateTimeComponent, TuiInputDateTimeDirective], imports: [CommonModule,
14
+ TuiInputDateTimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiInputDateTimeModule, declarations: [TuiInputDateTimeComponent,
15
+ TuiInputDateTimeDirective,
16
+ TuiNativeDateTimeDirective], imports: [CommonModule,
14
17
  TextMaskModule,
15
18
  PolymorpheusModule,
16
19
  TuiWrapperModule,
@@ -55,7 +58,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
55
58
  TuiValueAccessorModule,
56
59
  TuiTextfieldControllerModule,
57
60
  ],
58
- declarations: [TuiInputDateTimeComponent, TuiInputDateTimeDirective],
61
+ declarations: [
62
+ TuiInputDateTimeComponent,
63
+ TuiInputDateTimeDirective,
64
+ TuiNativeDateTimeDirective,
65
+ ],
59
66
  exports: [
60
67
  TuiInputDateTimeComponent,
61
68
  TuiInputDateTimeDirective,
@@ -63,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
63
70
  ],
64
71
  }]
65
72
  }] });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixhQUFhLEVBQ2IsMkJBQTJCLEVBQzNCLFlBQVksRUFDWixxQkFBcUIsRUFDckIsNEJBQTRCLEVBQzVCLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxjQUFjLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQzs7QUF3QnRFLE1BQU0sT0FBTyxzQkFBc0I7O29IQUF0QixzQkFBc0I7cUhBQXRCLHNCQUFzQixpQkFQaEIseUJBQXlCLEVBQUUseUJBQXlCLGFBYi9ELFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsNEJBQTRCLGFBSTVCLHlCQUF5QjtRQUN6Qix5QkFBeUI7UUFDekIscUJBQXFCO3FIQUdoQixzQkFBc0IsWUFyQnRCO1lBQ0wsWUFBWTtZQUNaLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixpQkFBaUI7WUFDakIsWUFBWTtZQUNaLGFBQWE7WUFDYix1QkFBdUI7WUFDdkIsMkJBQTJCO1lBQzNCLHNCQUFzQjtZQUN0Qiw0QkFBNEI7U0FDL0I7NEZBUVEsc0JBQXNCO2tCQXRCbEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLDRCQUE0QjtxQkFDL0I7b0JBQ0QsWUFBWSxFQUFFLENBQUMseUJBQXlCLEVBQUUseUJBQXlCLENBQUM7b0JBQ3BFLE9BQU8sRUFBRTt3QkFDTCx5QkFBeUI7d0JBQ3pCLHlCQUF5Qjt3QkFDekIscUJBQXFCO3FCQUN4QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVByZXZlbnREZWZhdWx0TW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVHVpQ2FsZW5kYXJNb2R1bGUsXG4gICAgVHVpSG9zdGVkRHJvcGRvd25Nb2R1bGUsXG4gICAgVHVpTGlua01vZHVsZSxcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxuICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgIFR1aVdyYXBwZXJNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VGV4dE1hc2tNb2R1bGUsIFR1aVZhbHVlQWNjZXNzb3JNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9raXQvZGlyZWN0aXZlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlfSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBUZXh0TWFza01vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlXcmFwcGVyTW9kdWxlLFxuICAgICAgICBUdWlQcmV2ZW50RGVmYXVsdE1vZHVsZSxcbiAgICAgICAgVHVpQ2FsZW5kYXJNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpTGlua01vZHVsZSxcbiAgICAgICAgVHVpSG9zdGVkRHJvcGRvd25Nb2R1bGUsXG4gICAgICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICAgICAgVHVpVmFsdWVBY2Nlc3Nvck1vZHVsZSxcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUlucHV0RGF0ZVRpbWVDb21wb25lbnQsIFR1aUlucHV0RGF0ZVRpbWVEaXJlY3RpdmVdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgVHVpSW5wdXREYXRlVGltZUNvbXBvbmVudCxcbiAgICAgICAgVHVpSW5wdXREYXRlVGltZURpcmVjdGl2ZSxcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RGF0ZVRpbWVNb2R1bGUge31cbiJdfQ==
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS10aW1lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LWRhdGUtdGltZS9pbnB1dC1kYXRlLXRpbWUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixhQUFhLEVBQ2IsMkJBQTJCLEVBQzNCLFlBQVksRUFDWixxQkFBcUIsRUFDckIsNEJBQTRCLEVBQzVCLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxjQUFjLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQzs7QUE0QnpGLE1BQU0sT0FBTyxzQkFBc0I7O29IQUF0QixzQkFBc0I7cUhBQXRCLHNCQUFzQixpQkFWM0IseUJBQXlCO1FBQ3pCLHlCQUF5QjtRQUN6QiwwQkFBMEIsYUFoQjFCLFlBQVk7UUFDWixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsNEJBQTRCLGFBUTVCLHlCQUF5QjtRQUN6Qix5QkFBeUI7UUFDekIscUJBQXFCO3FIQUdoQixzQkFBc0IsWUF6QnRCO1lBQ0wsWUFBWTtZQUNaLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixpQkFBaUI7WUFDakIsWUFBWTtZQUNaLGFBQWE7WUFDYix1QkFBdUI7WUFDdkIsMkJBQTJCO1lBQzNCLHNCQUFzQjtZQUN0Qiw0QkFBNEI7U0FDL0I7NEZBWVEsc0JBQXNCO2tCQTFCbEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLDRCQUE0QjtxQkFDL0I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLHlCQUF5Qjt3QkFDekIseUJBQXlCO3dCQUN6QiwwQkFBMEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRTt3QkFDTCx5QkFBeUI7d0JBQ3pCLHlCQUF5Qjt3QkFDekIscUJBQXFCO3FCQUN4QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVByZXZlbnREZWZhdWx0TW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgVHVpQ2FsZW5kYXJNb2R1bGUsXG4gICAgVHVpSG9zdGVkRHJvcGRvd25Nb2R1bGUsXG4gICAgVHVpTGlua01vZHVsZSxcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxuICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgIFR1aVdyYXBwZXJNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VGV4dE1hc2tNb2R1bGUsIFR1aVZhbHVlQWNjZXNzb3JNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9raXQvZGlyZWN0aXZlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c01vZHVsZX0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlfSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUdWlOYXRpdmVEYXRlVGltZURpcmVjdGl2ZX0gZnJvbSAnLi9uYXRpdmUtZGF0ZS10aW1lL25hdGl2ZS1kYXRlLXRpbWUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVGV4dE1hc2tNb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpV3JhcHBlck1vZHVsZSxcbiAgICAgICAgVHVpUHJldmVudERlZmF1bHRNb2R1bGUsXG4gICAgICAgIFR1aUNhbGVuZGFyTW9kdWxlLFxuICAgICAgICBUdWlTdmdNb2R1bGUsXG4gICAgICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgICAgIFR1aUhvc3RlZERyb3Bkb3duTW9kdWxlLFxuICAgICAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRNb2R1bGUsXG4gICAgICAgIFR1aVZhbHVlQWNjZXNzb3JNb2R1bGUsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgVHVpSW5wdXREYXRlVGltZUNvbXBvbmVudCxcbiAgICAgICAgVHVpSW5wdXREYXRlVGltZURpcmVjdGl2ZSxcbiAgICAgICAgVHVpTmF0aXZlRGF0ZVRpbWVEaXJlY3RpdmUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFR1aUlucHV0RGF0ZVRpbWVDb21wb25lbnQsXG4gICAgICAgIFR1aUlucHV0RGF0ZVRpbWVEaXJlY3RpdmUsXG4gICAgICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dERhdGVUaW1lTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { Directive, Inject } from '@angular/core';
2
+ import { TuiDay, TuiTime } from '@taiga-ui/cdk';
3
+ import { TUI_TEXTFIELD_HOST } from '@taiga-ui/core';
4
+ import * as i0 from "@angular/core";
5
+ export class TuiNativeDateTimeDirective {
6
+ constructor(host) {
7
+ this.host = host;
8
+ }
9
+ get value() {
10
+ var _a, _b;
11
+ if (!this.host.rawValue[0] || !this.host.rawValue[1]) {
12
+ return '';
13
+ }
14
+ return `${(_a = this.host.rawValue[0]) === null || _a === void 0 ? void 0 : _a.toString('YMD', '-')}T${(_b = this.host.rawValue[1]) === null || _b === void 0 ? void 0 : _b.toString('HH:MM')}`;
15
+ }
16
+ onChange(value) {
17
+ if (!value) {
18
+ this.host.writeValue([null, null]);
19
+ return;
20
+ }
21
+ const date = new Date(value);
22
+ const day = TuiDay.fromLocalNativeDate(date);
23
+ const time = TuiTime.fromLocalNativeDate(date);
24
+ this.host.writeValue([day, time]);
25
+ }
26
+ }
27
+ TuiNativeDateTimeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateTimeDirective, deps: [{ token: TUI_TEXTFIELD_HOST }], target: i0.ɵɵFactoryTarget.Directive });
28
+ TuiNativeDateTimeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TuiNativeDateTimeDirective, selector: "input[tuiDateTime]", host: { attributes: { "type": "datetime-local" }, listeners: { "change.stop": "onChange($event.target.value)", "input.stop": "onChange($event.target.value)", "click.stop.silent": "0", "mousedown.stop.silent": "0" }, properties: { "tabIndex": "-1", "value": "value" } }, ngImport: i0 });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiNativeDateTimeDirective, decorators: [{
30
+ type: Directive,
31
+ args: [{
32
+ selector: 'input[tuiDateTime]',
33
+ host: {
34
+ type: 'datetime-local',
35
+ '[tabIndex]': '-1',
36
+ '[value]': 'value',
37
+ '(change.stop)': 'onChange($event.target.value)',
38
+ '(input.stop)': 'onChange($event.target.value)',
39
+ '(click.stop.silent)': '0',
40
+ '(mousedown.stop.silent)': '0',
41
+ },
42
+ }]
43
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
44
+ type: Inject,
45
+ args: [TUI_TEXTFIELD_HOST]
46
+ }] }]; } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUtdGltZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1kYXRlLXRpbWUvbmF0aXZlLWRhdGUtdGltZS9uYXRpdmUtZGF0ZS10aW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsTUFBTSxFQUFFLE9BQU8sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFnQmxELE1BQU0sT0FBTywwQkFBMEI7SUFDbkMsWUFBaUQsSUFBK0I7UUFBL0IsU0FBSSxHQUFKLElBQUksQ0FBMkI7SUFBRyxDQUFDO0lBRXBGLElBQUksS0FBSzs7UUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsRCxPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxHQUFHLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDBDQUFFLFFBQVEsQ0FDckMsS0FBSyxFQUNMLEdBQUcsQ0FDTixJQUFJLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDBDQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUVuQyxPQUFPO1NBQ1Y7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0MsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRS9DLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7d0hBMUJRLDBCQUEwQixrQkFDZixrQkFBa0I7NEdBRDdCLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQVp0QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLElBQUksRUFBRTt3QkFDRixJQUFJLEVBQUUsZ0JBQWdCO3dCQUN0QixZQUFZLEVBQUUsSUFBSTt3QkFDbEIsU0FBUyxFQUFFLE9BQU87d0JBQ2xCLGVBQWUsRUFBRSwrQkFBK0I7d0JBQ2hELGNBQWMsRUFBRSwrQkFBK0I7d0JBQy9DLHFCQUFxQixFQUFFLEdBQUc7d0JBQzFCLHlCQUF5QixFQUFFLEdBQUc7cUJBQ2pDO2lCQUNKOzswQkFFZ0IsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRGF5LCBUdWlUaW1lfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX1RFWFRGSUVMRF9IT1NUfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB0eXBlIHtUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlfSBmcm9tICcuLi9pbnB1dC1kYXRlLXRpbWUuZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdpbnB1dFt0dWlEYXRlVGltZV0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ2RhdGV0aW1lLWxvY2FsJyxcbiAgICAgICAgJ1t0YWJJbmRleF0nOiAnLTEnLFxuICAgICAgICAnW3ZhbHVlXSc6ICd2YWx1ZScsXG4gICAgICAgICcoY2hhbmdlLnN0b3ApJzogJ29uQ2hhbmdlKCRldmVudC50YXJnZXQudmFsdWUpJyxcbiAgICAgICAgJyhpbnB1dC5zdG9wKSc6ICdvbkNoYW5nZSgkZXZlbnQudGFyZ2V0LnZhbHVlKScsXG4gICAgICAgICcoY2xpY2suc3RvcC5zaWxlbnQpJzogJzAnLFxuICAgICAgICAnKG1vdXNlZG93bi5zdG9wLnNpbGVudCknOiAnMCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTmF0aXZlRGF0ZVRpbWVEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoVFVJX1RFWFRGSUVMRF9IT1NUKSByZWFkb25seSBob3N0OiBUdWlJbnB1dERhdGVUaW1lRGlyZWN0aXZlKSB7fVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICghdGhpcy5ob3N0LnJhd1ZhbHVlWzBdIHx8ICF0aGlzLmhvc3QucmF3VmFsdWVbMV0pIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHt0aGlzLmhvc3QucmF3VmFsdWVbMF0/LnRvU3RyaW5nKFxuICAgICAgICAgICAgJ1lNRCcsXG4gICAgICAgICAgICAnLScsXG4gICAgICAgICl9VCR7dGhpcy5ob3N0LnJhd1ZhbHVlWzFdPy50b1N0cmluZygnSEg6TU0nKX1gO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5ob3N0LndyaXRlVmFsdWUoW251bGwsIG51bGxdKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgY29uc3QgZGF5ID0gVHVpRGF5LmZyb21Mb2NhbE5hdGl2ZURhdGUoZGF0ZSk7XG4gICAgICAgIGNvbnN0IHRpbWUgPSBUdWlUaW1lLmZyb21Mb2NhbE5hdGl2ZURhdGUoZGF0ZSk7XG5cbiAgICAgICAgdGhpcy5ob3N0LndyaXRlVmFsdWUoW2RheSwgdGltZV0pO1xuICAgIH1cbn1cbiJdfQ==