ng-tailwind 2.24.310 → 2.24.314

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 (193) hide show
  1. package/README.md +24 -24
  2. package/animations/ngt-angular-animations.d.ts +5 -5
  3. package/base/ngt-base-ng-model.d.ts +32 -32
  4. package/bundles/ng-tailwind.umd.js +7318 -7271
  5. package/bundles/ng-tailwind.umd.js.map +1 -1
  6. package/components/ngt-action/ngt-action.component.d.ts +13 -13
  7. package/components/ngt-action/ngt-action.module.d.ts +2 -2
  8. package/components/ngt-button/ngt-button.component.d.ts +22 -22
  9. package/components/ngt-button/ngt-button.module.d.ts +2 -2
  10. package/components/ngt-checkbox/ngt-checkbox.component.d.ts +41 -41
  11. package/components/ngt-checkbox/ngt-checkbox.module.d.ts +2 -2
  12. package/components/ngt-content/ngt-content.component.d.ts +9 -9
  13. package/components/ngt-content/ngt-content.module.d.ts +2 -2
  14. package/components/ngt-datatable/ngt-datatable.component.d.ts +112 -112
  15. package/components/ngt-datatable/ngt-datatable.module.d.ts +2 -2
  16. package/components/ngt-datatable/ngt-tbody/ngt-tbody.component.d.ts +11 -11
  17. package/components/ngt-datatable/ngt-td/ngt-td.component.d.ts +11 -11
  18. package/components/ngt-datatable/ngt-td-check/ngt-td-check.component.d.ts +24 -24
  19. package/components/ngt-datatable/ngt-th/ngt-th.component.d.ts +47 -47
  20. package/components/ngt-datatable/ngt-th-check/ngt-th-check.component.d.ts +19 -19
  21. package/components/ngt-datatable/ngt-thead/ngt-thead.component.d.ts +10 -10
  22. package/components/ngt-datatable/ngt-tr/ngt-tr.component.d.ts +17 -17
  23. package/components/ngt-date/ngt-date.component.d.ts +71 -71
  24. package/components/ngt-date/ngt-date.module.d.ts +2 -2
  25. package/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.d.ts +5 -5
  26. package/components/ngt-dropdown/ngt-dropdown.component.d.ts +42 -42
  27. package/components/ngt-dropdown/ngt-dropdown.module.d.ts +2 -2
  28. package/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.d.ts +11 -11
  29. package/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.d.ts +12 -12
  30. package/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.d.ts +21 -21
  31. package/components/ngt-dropzone/ngt-dropzone.component.d.ts +103 -103
  32. package/components/ngt-dropzone/ngt-dropzone.module.d.ts +2 -2
  33. package/components/ngt-floating-button/ngt-floating-button.component.d.ts +32 -32
  34. package/components/ngt-floating-button/ngt-floating-button.module.d.ts +2 -2
  35. package/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.d.ts +7 -7
  36. package/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.module.d.ts +2 -2
  37. package/components/ngt-form/ngt-form.component.d.ts +52 -52
  38. package/components/ngt-form/ngt-form.module.d.ts +2 -2
  39. package/components/ngt-header-nav/ngt-header-nav.component.d.ts +11 -11
  40. package/components/ngt-header-nav/ngt-header-nav.module.d.ts +2 -2
  41. package/components/ngt-helper/ngt-helper.component.d.ts +15 -10
  42. package/components/ngt-helper/ngt-helper.module.d.ts +2 -2
  43. package/components/ngt-input/ngt-input.component.d.ts +92 -92
  44. package/components/ngt-input/ngt-input.module.d.ts +2 -2
  45. package/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.d.ts +2 -2
  46. package/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.d.ts +2 -2
  47. package/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.d.ts +12 -12
  48. package/components/ngt-modal/ngt-modal.component.d.ts +19 -19
  49. package/components/ngt-modal/ngt-modal.module.d.ts +2 -2
  50. package/components/ngt-multi-select/ngt-multi-select.component.d.ts +97 -97
  51. package/components/ngt-multi-select/ngt-multi-select.module.d.ts +2 -2
  52. package/components/ngt-pagination/ngt-pagination.component.d.ts +40 -40
  53. package/components/ngt-pagination/ngt-pagination.module.d.ts +2 -2
  54. package/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.d.ts +9 -9
  55. package/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.d.ts +9 -9
  56. package/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.d.ts +14 -14
  57. package/components/ngt-portlet/ngt-portlet.component.d.ts +17 -17
  58. package/components/ngt-portlet/ngt-portlet.module.d.ts +2 -2
  59. package/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.d.ts +6 -6
  60. package/components/ngt-radio-button/ngt-radio-button.component.d.ts +27 -27
  61. package/components/ngt-radio-button/ngt-radio-button.module.d.ts +2 -2
  62. package/components/ngt-section/ngt-section.component.d.ts +23 -23
  63. package/components/ngt-section/ngt-section.module.d.ts +2 -2
  64. package/components/ngt-select/ngt-select.component.d.ts +122 -122
  65. package/components/ngt-select/ngt-select.directive.d.ts +13 -13
  66. package/components/ngt-select/ngt-select.module.d.ts +2 -2
  67. package/components/ngt-shining/ngt-shining.component.d.ts +16 -16
  68. package/components/ngt-shining/ngt-shining.module.d.ts +2 -2
  69. package/components/ngt-sidenav/ngt-sidenav.component.d.ts +29 -29
  70. package/components/ngt-sidenav/ngt-sidenav.module.d.ts +2 -2
  71. package/components/ngt-slider/ngt-slider.component.d.ts +31 -31
  72. package/components/ngt-slider/ngt-slider.module.d.ts +2 -2
  73. package/components/ngt-svg/ngt-svg.component.d.ts +10 -10
  74. package/components/ngt-svg/ngt-svg.module.d.ts +2 -2
  75. package/components/ngt-tag/ngt-tag.component.d.ts +10 -10
  76. package/components/ngt-tag/ngt-tag.module.d.ts +2 -2
  77. package/components/ngt-textarea/ngt-textarea.component.d.ts +46 -46
  78. package/components/ngt-textarea/ngt-textarea.module.d.ts +2 -2
  79. package/components/ngt-validation/ngt-validation.component.d.ts +10 -10
  80. package/components/ngt-validation/ngt-validation.module.d.ts +2 -2
  81. package/directives/ngt-stylizable/ngt-stylizable.directive.d.ts +65 -63
  82. package/directives/ngt-stylizable/ngt-stylizable.module.d.ts +2 -2
  83. package/enums/size.enum.d.ts +8 -8
  84. package/esm2015/animations/ngt-angular-animations.js +34 -34
  85. package/esm2015/base/ngt-base-ng-model.js +90 -90
  86. package/esm2015/components/ngt-action/ngt-action.component.js +49 -49
  87. package/esm2015/components/ngt-action/ngt-action.module.js +19 -19
  88. package/esm2015/components/ngt-button/ngt-button.component.js +106 -106
  89. package/esm2015/components/ngt-button/ngt-button.module.js +19 -19
  90. package/esm2015/components/ngt-checkbox/ngt-checkbox.component.js +137 -137
  91. package/esm2015/components/ngt-checkbox/ngt-checkbox.module.js +19 -19
  92. package/esm2015/components/ngt-content/ngt-content.component.js +33 -33
  93. package/esm2015/components/ngt-content/ngt-content.module.js +15 -15
  94. package/esm2015/components/ngt-datatable/ngt-datatable.component.js +400 -400
  95. package/esm2015/components/ngt-datatable/ngt-datatable.module.js +58 -58
  96. package/esm2015/components/ngt-datatable/ngt-tbody/ngt-tbody.component.js +58 -60
  97. package/esm2015/components/ngt-datatable/ngt-td/ngt-td.component.js +63 -63
  98. package/esm2015/components/ngt-datatable/ngt-td-check/ngt-td-check.component.js +102 -102
  99. package/esm2015/components/ngt-datatable/ngt-th/ngt-th.component.js +192 -192
  100. package/esm2015/components/ngt-datatable/ngt-th-check/ngt-th-check.component.js +87 -87
  101. package/esm2015/components/ngt-datatable/ngt-thead/ngt-thead.component.js +56 -58
  102. package/esm2015/components/ngt-datatable/ngt-tr/ngt-tr.component.js +76 -76
  103. package/esm2015/components/ngt-date/ngt-date.component.js +354 -352
  104. package/esm2015/components/ngt-date/ngt-date.module.js +25 -25
  105. package/esm2015/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.js +20 -20
  106. package/esm2015/components/ngt-dropdown/ngt-dropdown.component.js +165 -165
  107. package/esm2015/components/ngt-dropdown/ngt-dropdown.module.js +16 -16
  108. package/esm2015/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.js +47 -47
  109. package/esm2015/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.js +46 -45
  110. package/esm2015/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.js +67 -67
  111. package/esm2015/components/ngt-dropzone/ngt-dropzone.component.js +411 -411
  112. package/esm2015/components/ngt-dropzone/ngt-dropzone.module.js +37 -37
  113. package/esm2015/components/ngt-floating-button/ngt-floating-button.component.js +94 -94
  114. package/esm2015/components/ngt-floating-button/ngt-floating-button.module.js +19 -19
  115. package/esm2015/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.js +23 -23
  116. package/esm2015/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.module.js +15 -15
  117. package/esm2015/components/ngt-form/ngt-form.component.js +181 -181
  118. package/esm2015/components/ngt-form/ngt-form.module.js +17 -17
  119. package/esm2015/components/ngt-header-nav/ngt-header-nav.component.js +38 -38
  120. package/esm2015/components/ngt-header-nav/ngt-header-nav.module.js +15 -15
  121. package/esm2015/components/ngt-helper/ngt-helper.component.js +44 -24
  122. package/esm2015/components/ngt-helper/ngt-helper.module.js +19 -19
  123. package/esm2015/components/ngt-input/ngt-input.component.js +610 -608
  124. package/esm2015/components/ngt-input/ngt-input.module.js +28 -28
  125. package/esm2015/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.js +11 -11
  126. package/esm2015/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.js +11 -11
  127. package/esm2015/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.js +40 -40
  128. package/esm2015/components/ngt-modal/ngt-modal.component.js +79 -79
  129. package/esm2015/components/ngt-modal/ngt-modal.module.js +28 -28
  130. package/esm2015/components/ngt-multi-select/ngt-multi-select.component.js +392 -392
  131. package/esm2015/components/ngt-multi-select/ngt-multi-select.module.js +33 -33
  132. package/esm2015/components/ngt-pagination/ngt-pagination.component.js +172 -172
  133. package/esm2015/components/ngt-pagination/ngt-pagination.module.js +23 -23
  134. package/esm2015/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.js +32 -32
  135. package/esm2015/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.js +33 -33
  136. package/esm2015/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.js +47 -45
  137. package/esm2015/components/ngt-portlet/ngt-portlet.component.js +58 -58
  138. package/esm2015/components/ngt-portlet/ngt-portlet.module.js +32 -32
  139. package/esm2015/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.js +19 -19
  140. package/esm2015/components/ngt-radio-button/ngt-radio-button.component.js +97 -97
  141. package/esm2015/components/ngt-radio-button/ngt-radio-button.module.js +18 -18
  142. package/esm2015/components/ngt-section/ngt-section.component.js +98 -98
  143. package/esm2015/components/ngt-section/ngt-section.module.js +21 -21
  144. package/esm2015/components/ngt-select/ngt-select.component.js +467 -465
  145. package/esm2015/components/ngt-select/ngt-select.directive.js +35 -35
  146. package/esm2015/components/ngt-select/ngt-select.module.js +40 -40
  147. package/esm2015/components/ngt-shining/ngt-shining.component.js +41 -41
  148. package/esm2015/components/ngt-shining/ngt-shining.module.js +15 -15
  149. package/esm2015/components/ngt-sidenav/ngt-sidenav.component.js +123 -123
  150. package/esm2015/components/ngt-sidenav/ngt-sidenav.module.js +15 -15
  151. package/esm2015/components/ngt-slider/ngt-slider.component.js +82 -82
  152. package/esm2015/components/ngt-slider/ngt-slider.module.js +17 -17
  153. package/esm2015/components/ngt-svg/ngt-svg.component.js +52 -52
  154. package/esm2015/components/ngt-svg/ngt-svg.module.js +19 -19
  155. package/esm2015/components/ngt-tag/ngt-tag.component.js +36 -36
  156. package/esm2015/components/ngt-tag/ngt-tag.module.js +17 -17
  157. package/esm2015/components/ngt-textarea/ngt-textarea.component.js +211 -209
  158. package/esm2015/components/ngt-textarea/ngt-textarea.module.js +24 -24
  159. package/esm2015/components/ngt-validation/ngt-validation.component.js +24 -24
  160. package/esm2015/components/ngt-validation/ngt-validation.module.js +15 -15
  161. package/esm2015/directives/ngt-stylizable/ngt-stylizable.directive.js +227 -220
  162. package/esm2015/directives/ngt-stylizable/ngt-stylizable.module.js +15 -15
  163. package/esm2015/enums/size.enum.js +11 -11
  164. package/esm2015/helpers/enum/enum.js +7 -7
  165. package/esm2015/helpers/form/form.js +14 -14
  166. package/esm2015/helpers/routing/route.js +11 -11
  167. package/esm2015/helpers/uuid.js +10 -10
  168. package/esm2015/ng-tailwind.js +10 -10
  169. package/esm2015/public-api.js +117 -117
  170. package/esm2015/services/http/ngt-attachment-http.service.js +3 -3
  171. package/esm2015/services/http/ngt-http-form.service.js +3 -3
  172. package/esm2015/services/http/ngt-http-resource.service.js +3 -3
  173. package/esm2015/services/http/ngt-http-validation.service.js +4 -4
  174. package/esm2015/services/http/ngt-http.service.js +3 -3
  175. package/esm2015/services/http/ngt-translate.service.js +3 -3
  176. package/esm2015/services/ngt-stylizable/ngt-stylizable.service.js +273 -266
  177. package/fesm2015/ng-tailwind.js +6404 -6365
  178. package/fesm2015/ng-tailwind.js.map +1 -1
  179. package/helpers/enum/enum.d.ts +1 -1
  180. package/helpers/form/form.d.ts +4 -4
  181. package/helpers/routing/route.d.ts +2 -2
  182. package/helpers/uuid.d.ts +1 -1
  183. package/ng-tailwind.d.ts +10 -10
  184. package/ng-tailwind.metadata.json +1 -1
  185. package/package.json +1 -1
  186. package/public-api.d.ts +80 -80
  187. package/services/http/ngt-attachment-http.service.d.ts +10 -10
  188. package/services/http/ngt-http-form.service.d.ts +5 -5
  189. package/services/http/ngt-http-resource.service.d.ts +12 -12
  190. package/services/http/ngt-http-validation.service.d.ts +10 -10
  191. package/services/http/ngt-http.service.d.ts +27 -27
  192. package/services/http/ngt-translate.service.d.ts +27 -27
  193. package/services/ngt-stylizable/ngt-stylizable.service.d.ts +96 -93
@@ -1,102 +1,102 @@
1
- import { Component, ElementRef, Injector, Input, Optional, Output, Self, SkipSelf, ViewChild, EventEmitter } from '@angular/core';
2
- import { NgtStylizableDirective } from '../../../directives/ngt-stylizable/ngt-stylizable.directive';
3
- import { uuid } from '../../../helpers/uuid';
4
- import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
5
- import { NgtCheckboxComponent } from '../../ngt-checkbox/ngt-checkbox.component';
6
- import { NgtDatatableComponent } from '../ngt-datatable.component';
7
- export class NgtTdCheckComponent {
8
- constructor(injector, hostElement, ngtStylizableDirective, ngtDataTable) {
9
- this.injector = injector;
10
- this.hostElement = hostElement;
11
- this.ngtStylizableDirective = ngtStylizableDirective;
12
- this.ngtDataTable = ngtDataTable;
13
- this.checked = false;
14
- this.onCheckboxInit = new EventEmitter();
15
- this.id = uuid();
16
- this.subscriptions = [];
17
- this.bindNgtStyle();
18
- }
19
- ngAfterContentInit() {
20
- if (this.ngtDataTable) {
21
- this.subscriptions.push(this.ngtDataTable.onToogleAllCheckboxes.subscribe((checked) => {
22
- this.checked = checked;
23
- }));
24
- this.subscriptions.push(this.ngtDataTable.onClearSelectedElements.subscribe(() => {
25
- this.checked = false;
26
- }));
27
- this.onCheckboxInit.emit({
28
- id: this.id,
29
- checked: this.checked,
30
- reference: this.reference
31
- });
32
- }
33
- }
34
- ngOnDestroy() {
35
- this.destroySubscriptions();
36
- }
37
- onCheckboxChange(checked) {
38
- if (this.ngtDataTable) {
39
- this.ngtDataTable.onToogleCheckbox.emit({
40
- id: this.id,
41
- checked: checked,
42
- reference: this.reference
43
- });
44
- }
45
- }
46
- bindNgtStyle() {
47
- if (this.ngtStylizableDirective) {
48
- this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
49
- }
50
- else {
51
- this.ngtStyle = new NgtStylizableService();
52
- }
53
- this.ngtStyle.load(this.injector, 'NgtTdCheck', {
54
- py: 'py-4',
55
- px: 'px-6',
56
- text: 'text-center',
57
- border: 'border-b',
58
- color: {
59
- border: ''
60
- }
61
- });
62
- this.hostElement.nativeElement.classList += this.ngtStyle.compile([
63
- 'h',
64
- 'px',
65
- 'py',
66
- 'pb',
67
- 'pl',
68
- 'pr',
69
- 'pt',
70
- 'mb',
71
- 'ml',
72
- 'mr',
73
- 'mt',
74
- 'border',
75
- 'color.border',
76
- ]);
77
- }
78
- destroySubscriptions() {
79
- this.subscriptions.forEach(subscription => subscription.unsubscribe());
80
- this.subscriptions = [];
81
- }
82
- }
83
- NgtTdCheckComponent.decorators = [
84
- { type: Component, args: [{
85
- selector: '[ngt-td-check]',
86
- template: "<ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'></ngt-checkbox>\n<ng-content></ng-content>",
87
- styles: [""]
88
- },] }
89
- ];
90
- NgtTdCheckComponent.ctorParameters = () => [
91
- { type: Injector },
92
- { type: ElementRef },
93
- { type: NgtStylizableDirective, decorators: [{ type: Self }, { type: Optional }] },
94
- { type: NgtDatatableComponent, decorators: [{ type: Optional }, { type: SkipSelf }] }
95
- ];
96
- NgtTdCheckComponent.propDecorators = {
97
- checkbox: [{ type: ViewChild, args: [NgtCheckboxComponent, { static: true },] }],
98
- reference: [{ type: Input }],
99
- checked: [{ type: Input }],
100
- onCheckboxInit: [{ type: Output }]
101
- };
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRkLWNoZWNrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRkLWNoZWNrL25ndC10ZC1jaGVjay5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBYSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc3SSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDL0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFPbkUsTUFBTSxPQUFPLG1CQUFtQjtJQVc1QixZQUNZLFFBQWtCLEVBQ2xCLFdBQXVCLEVBQ0gsc0JBQThDLEVBRWxFLFlBQW1DO1FBSm5DLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDSCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBRWxFLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQWIvQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3hCLG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFJaEUsT0FBRSxHQUFHLElBQUksRUFBRSxDQUFDO1FBQ1osa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBUzVDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3JCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDbkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFnQixFQUFFLEVBQUU7Z0JBQ25FLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQzNCLENBQUMsQ0FBQyxDQUNMLENBQUM7WUFFRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDbkIsSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNyRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FDTCxDQUFDO1lBRUYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3JCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDWCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87Z0JBQ3JCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUM1QixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLGdCQUFnQixDQUFDLE9BQWdCO1FBQ3BDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztnQkFDcEMsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUNYLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7YUFDNUIsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sWUFBWTtRQUNoQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1NBQ3pFO2FBQU07WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztTQUM5QztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFO1lBQzVDLEVBQUUsRUFBRSxNQUFNO1lBQ1YsRUFBRSxFQUFFLE1BQU07WUFDVixJQUFJLEVBQUUsYUFBYTtZQUNuQixNQUFNLEVBQUUsVUFBVTtZQUNsQixLQUFLLEVBQUU7Z0JBQ0gsTUFBTSxFQUFFLEVBQUU7YUFDYjtTQUNKLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUM5RCxHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFFBQVE7WUFDUixjQUFjO1NBQ2pCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDOzs7WUFuR0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLHFJQUE0Qzs7YUFFL0M7OztZQWIrQixRQUFRO1lBQXBCLFVBQVU7WUFHckIsc0JBQXNCLHVCQXlCdEIsSUFBSSxZQUFJLFFBQVE7WUFyQmhCLHFCQUFxQix1QkFzQnJCLFFBQVEsWUFBSSxRQUFROzs7dUJBZHhCLFNBQVMsU0FBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7d0JBQ2hELEtBQUs7c0JBQ0wsS0FBSzs2QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIE91dHB1dCwgU2VsZiwgU2tpcFNlbGYsIFZpZXdDaGlsZCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IHV1aWQgfSBmcm9tICcuLi8uLi8uLi9oZWxwZXJzL3V1aWQnO1xuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5ndENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbmd0LWNoZWNrYm94L25ndC1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd0RGF0YXRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vbmd0LWRhdGF0YWJsZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1tuZ3QtdGQtY2hlY2tdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmd0LXRkLWNoZWNrLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9uZ3QtdGQtY2hlY2suY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RUZENoZWNrQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKE5ndENoZWNrYm94Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgY2hlY2tib3g6IE5ndENoZWNrYm94Q29tcG9uZW50O1xuICAgIEBJbnB1dCgpIHB1YmxpYyByZWZlcmVuY2U6IGFueTtcbiAgICBASW5wdXQoKSBwdWJsaWMgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgb25DaGVja2JveEluaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIG5ndFN0eWxlOiBOZ3RTdHlsaXphYmxlU2VydmljZTtcblxuICAgIHByaXZhdGUgaWQgPSB1dWlkKCk7XG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBBcnJheTxTdWJzY3JpcHRpb24+ID0gW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxuICAgICAgICBAU2VsZigpIEBPcHRpb25hbCgpIHByaXZhdGUgbmd0U3R5bGl6YWJsZURpcmVjdGl2ZTogTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKClcbiAgICAgICAgcHJpdmF0ZSBuZ3REYXRhVGFibGU6IE5ndERhdGF0YWJsZUNvbXBvbmVudFxuICAgICkge1xuICAgICAgICB0aGlzLmJpbmROZ3RTdHlsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25Ub29nbGVBbGxDaGVja2JveGVzLnN1YnNjcmliZSgoY2hlY2tlZDogYm9vbGVhbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgICAgICAgICAgICB0aGlzLm5ndERhdGFUYWJsZS5vbkNsZWFyU2VsZWN0ZWRFbGVtZW50cy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgdGhpcy5vbkNoZWNrYm94SW5pdC5lbWl0KHtcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgICAgICAgICBjaGVja2VkOiB0aGlzLmNoZWNrZWQsXG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlOiB0aGlzLnJlZmVyZW5jZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveVN1YnNjcmlwdGlvbnMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DaGVja2JveENoYW5nZShjaGVja2VkOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xuICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25Ub29nbGVDaGVja2JveC5lbWl0KHtcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgICAgICAgICBjaGVja2VkOiBjaGVja2VkLFxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2VcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBiaW5kTmd0U3R5bGUoKSB7XG4gICAgICAgIGlmICh0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSB0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUuZ2V0Tmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSBuZXcgTmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubmd0U3R5bGUubG9hZCh0aGlzLmluamVjdG9yLCAnTmd0VGRDaGVjaycsIHtcbiAgICAgICAgICAgIHB5OiAncHktNCcsXG4gICAgICAgICAgICBweDogJ3B4LTYnLFxuICAgICAgICAgICAgdGV4dDogJ3RleHQtY2VudGVyJyxcbiAgICAgICAgICAgIGJvcmRlcjogJ2JvcmRlci1iJyxcbiAgICAgICAgICAgIGNvbG9yOiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0ICs9IHRoaXMubmd0U3R5bGUuY29tcGlsZShbXG4gICAgICAgICAgICAnaCcsXG4gICAgICAgICAgICAncHgnLFxuICAgICAgICAgICAgJ3B5JyxcbiAgICAgICAgICAgICdwYicsXG4gICAgICAgICAgICAncGwnLFxuICAgICAgICAgICAgJ3ByJyxcbiAgICAgICAgICAgICdwdCcsXG4gICAgICAgICAgICAnbWInLFxuICAgICAgICAgICAgJ21sJyxcbiAgICAgICAgICAgICdtcicsXG4gICAgICAgICAgICAnbXQnLFxuICAgICAgICAgICAgJ2JvcmRlcicsXG4gICAgICAgICAgICAnY29sb3IuYm9yZGVyJyxcbiAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXN0cm95U3Vic2NyaXB0aW9ucygpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW107XG4gICAgfVxufVxuIl19
1
+ import { Component, ElementRef, Injector, Input, Optional, Output, Self, SkipSelf, ViewChild, EventEmitter } from '@angular/core';
2
+ import { NgtStylizableDirective } from '../../../directives/ngt-stylizable/ngt-stylizable.directive';
3
+ import { uuid } from '../../../helpers/uuid';
4
+ import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
5
+ import { NgtCheckboxComponent } from '../../ngt-checkbox/ngt-checkbox.component';
6
+ import { NgtDatatableComponent } from '../ngt-datatable.component';
7
+ export class NgtTdCheckComponent {
8
+ constructor(injector, hostElement, ngtStylizableDirective, ngtDataTable) {
9
+ this.injector = injector;
10
+ this.hostElement = hostElement;
11
+ this.ngtStylizableDirective = ngtStylizableDirective;
12
+ this.ngtDataTable = ngtDataTable;
13
+ this.checked = false;
14
+ this.onCheckboxInit = new EventEmitter();
15
+ this.id = uuid();
16
+ this.subscriptions = [];
17
+ this.bindNgtStyle();
18
+ }
19
+ ngAfterContentInit() {
20
+ if (this.ngtDataTable) {
21
+ this.subscriptions.push(this.ngtDataTable.onToogleAllCheckboxes.subscribe((checked) => {
22
+ this.checked = checked;
23
+ }));
24
+ this.subscriptions.push(this.ngtDataTable.onClearSelectedElements.subscribe(() => {
25
+ this.checked = false;
26
+ }));
27
+ this.onCheckboxInit.emit({
28
+ id: this.id,
29
+ checked: this.checked,
30
+ reference: this.reference
31
+ });
32
+ }
33
+ }
34
+ ngOnDestroy() {
35
+ this.destroySubscriptions();
36
+ }
37
+ onCheckboxChange(checked) {
38
+ if (this.ngtDataTable) {
39
+ this.ngtDataTable.onToogleCheckbox.emit({
40
+ id: this.id,
41
+ checked: checked,
42
+ reference: this.reference
43
+ });
44
+ }
45
+ }
46
+ bindNgtStyle() {
47
+ if (this.ngtStylizableDirective) {
48
+ this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
49
+ }
50
+ else {
51
+ this.ngtStyle = new NgtStylizableService();
52
+ }
53
+ this.ngtStyle.load(this.injector, 'NgtTdCheck', {
54
+ py: 'py-4',
55
+ px: 'px-6',
56
+ text: 'text-center',
57
+ border: 'border-b',
58
+ color: {
59
+ border: ''
60
+ }
61
+ });
62
+ this.hostElement.nativeElement.classList += this.ngtStyle.compile([
63
+ 'h',
64
+ 'px',
65
+ 'py',
66
+ 'pb',
67
+ 'pl',
68
+ 'pr',
69
+ 'pt',
70
+ 'mb',
71
+ 'ml',
72
+ 'mr',
73
+ 'mt',
74
+ 'border',
75
+ 'color.border',
76
+ ]);
77
+ }
78
+ destroySubscriptions() {
79
+ this.subscriptions.forEach(subscription => subscription.unsubscribe());
80
+ this.subscriptions = [];
81
+ }
82
+ }
83
+ NgtTdCheckComponent.decorators = [
84
+ { type: Component, args: [{
85
+ selector: '[ngt-td-check]',
86
+ template: "<ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'></ngt-checkbox>\r\n<ng-content></ng-content>",
87
+ styles: [""]
88
+ },] }
89
+ ];
90
+ NgtTdCheckComponent.ctorParameters = () => [
91
+ { type: Injector },
92
+ { type: ElementRef },
93
+ { type: NgtStylizableDirective, decorators: [{ type: Self }, { type: Optional }] },
94
+ { type: NgtDatatableComponent, decorators: [{ type: Optional }, { type: SkipSelf }] }
95
+ ];
96
+ NgtTdCheckComponent.propDecorators = {
97
+ checkbox: [{ type: ViewChild, args: [NgtCheckboxComponent, { static: true },] }],
98
+ reference: [{ type: Input }],
99
+ checked: [{ type: Input }],
100
+ onCheckboxInit: [{ type: Output }]
101
+ };
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRkLWNoZWNrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRkLWNoZWNrL25ndC10ZC1jaGVjay5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBYSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc3SSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDL0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFPbkUsTUFBTSxPQUFPLG1CQUFtQjtJQVc1QixZQUNZLFFBQWtCLEVBQ2xCLFdBQXVCLEVBQ0gsc0JBQThDLEVBRWxFLFlBQW1DO1FBSm5DLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDSCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBRWxFLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQWIvQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3hCLG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFJaEUsT0FBRSxHQUFHLElBQUksRUFBRSxDQUFDO1FBQ1osa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBUzVDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FB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QUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIE91dHB1dCwgU2VsZiwgU2tpcFNlbGYsIFZpZXdDaGlsZCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgdXVpZCB9IGZyb20gJy4uLy4uLy4uL2hlbHBlcnMvdXVpZCc7XHJcbmltcG9ydCB7IE5ndFN0eWxpemFibGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuc2VydmljZSc7XHJcbmltcG9ydCB7IE5ndENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbmd0LWNoZWNrYm94L25ndC1jaGVja2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ3REYXRhdGFibGVDb21wb25lbnQgfSBmcm9tICcuLi9uZ3QtZGF0YXRhYmxlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnW25ndC10ZC1jaGVja10nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL25ndC10ZC1jaGVjay5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9uZ3QtdGQtY2hlY2suY29tcG9uZW50LmNzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd0VGRDaGVja0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBAVmlld0NoaWxkKE5ndENoZWNrYm94Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgY2hlY2tib3g6IE5ndENoZWNrYm94Q29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgcHVibGljIHJlZmVyZW5jZTogYW55O1xyXG4gICAgQElucHV0KCkgcHVibGljIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgb25DaGVja2JveEluaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHB1YmxpYyBuZ3RTdHlsZTogTmd0U3R5bGl6YWJsZVNlcnZpY2U7XHJcblxyXG4gICAgcHJpdmF0ZSBpZCA9IHV1aWQoKTtcclxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uczogQXJyYXk8U3Vic2NyaXB0aW9uPiA9IFtdO1xyXG5cclxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgICAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBuZ3RTdHlsaXphYmxlRGlyZWN0aXZlOiBOZ3RTdHlsaXphYmxlRGlyZWN0aXZlLFxyXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpXHJcbiAgICAgICAgcHJpdmF0ZSBuZ3REYXRhVGFibGU6IE5ndERhdGF0YWJsZUNvbXBvbmVudFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5iaW5kTmd0U3R5bGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCkge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICAgICAgICAgIHRoaXMubmd0RGF0YVRhYmxlLm9uVG9vZ2xlQWxsQ2hlY2tib3hlcy5zdWJzY3JpYmUoKGNoZWNrZWQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25DbGVhclNlbGVjdGVkRWxlbWVudHMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLm9uQ2hlY2tib3hJbml0LmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMuaWQsXHJcbiAgICAgICAgICAgICAgICBjaGVja2VkOiB0aGlzLmNoZWNrZWQsXHJcbiAgICAgICAgICAgICAgICByZWZlcmVuY2U6IHRoaXMucmVmZXJlbmNlXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95U3Vic2NyaXB0aW9ucygpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvbkNoZWNrYm94Q2hhbmdlKGNoZWNrZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICBpZiAodGhpcy5uZ3REYXRhVGFibGUpIHtcclxuICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25Ub29nbGVDaGVja2JveC5lbWl0KHtcclxuICAgICAgICAgICAgICAgIGlkOiB0aGlzLmlkLFxyXG4gICAgICAgICAgICAgICAgY2hlY2tlZDogY2hlY2tlZCxcclxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZTogdGhpcy5yZWZlcmVuY2VcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYmluZE5ndFN0eWxlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUpIHtcclxuICAgICAgICAgICAgdGhpcy5uZ3RTdHlsZSA9IHRoaXMubmd0U3R5bGl6YWJsZURpcmVjdGl2ZS5nZXROZ3RTdHlsaXphYmxlU2VydmljZSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSBuZXcgTmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubmd0U3R5bGUubG9hZCh0aGlzLmluamVjdG9yLCAnTmd0VGRDaGVjaycsIHtcclxuICAgICAgICAgICAgcHk6ICdweS00JyxcclxuICAgICAgICAgICAgcHg6ICdweC02JyxcclxuICAgICAgICAgICAgdGV4dDogJ3RleHQtY2VudGVyJyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnYm9yZGVyLWInLFxyXG4gICAgICAgICAgICBjb2xvcjoge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QgKz0gdGhpcy5uZ3RTdHlsZS5jb21waWxlKFtcclxuICAgICAgICAgICAgJ2gnLFxyXG4gICAgICAgICAgICAncHgnLFxyXG4gICAgICAgICAgICAncHknLFxyXG4gICAgICAgICAgICAncGInLFxyXG4gICAgICAgICAgICAncGwnLFxyXG4gICAgICAgICAgICAncHInLFxyXG4gICAgICAgICAgICAncHQnLFxyXG4gICAgICAgICAgICAnbWInLFxyXG4gICAgICAgICAgICAnbWwnLFxyXG4gICAgICAgICAgICAnbXInLFxyXG4gICAgICAgICAgICAnbXQnLFxyXG4gICAgICAgICAgICAnYm9yZGVyJyxcclxuICAgICAgICAgICAgJ2NvbG9yLmJvcmRlcicsXHJcbiAgICAgICAgXSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBkZXN0cm95U3Vic2NyaXB0aW9ucygpIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IFtdO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==