ng-tailwind 5.2.0 → 5.2.2

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 (212) 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/components/ngt-action/ngt-action.component.d.ts +30 -30
  5. package/components/ngt-action/ngt-action.module.d.ts +10 -10
  6. package/components/ngt-button/ngt-button.component.d.ts +35 -35
  7. package/components/ngt-button/ngt-button.module.d.ts +10 -10
  8. package/components/ngt-checkbox/ngt-checkbox.component.d.ts +53 -53
  9. package/components/ngt-checkbox/ngt-checkbox.module.d.ts +10 -10
  10. package/components/ngt-content/ngt-content.component.d.ts +12 -12
  11. package/components/ngt-content/ngt-content.module.d.ts +8 -8
  12. package/components/ngt-context-menu/ngt-context-menu.component.d.ts +19 -19
  13. package/components/ngt-context-menu/ngt-context-menu.directive.d.ts +25 -25
  14. package/components/ngt-context-menu/ngt-context-menu.module.d.ts +10 -10
  15. package/components/ngt-datatable/ngt-datatable.component.d.ts +125 -125
  16. package/components/ngt-datatable/ngt-datatable.module.d.ts +25 -25
  17. package/components/ngt-datatable/ngt-tbody/ngt-tbody.component.d.ts +14 -14
  18. package/components/ngt-datatable/ngt-td/ngt-td.component.d.ts +14 -14
  19. package/components/ngt-datatable/ngt-td-check/ngt-td-check.component.d.ts +29 -29
  20. package/components/ngt-datatable/ngt-th/ngt-th.component.d.ts +55 -55
  21. package/components/ngt-datatable/ngt-th-check/ngt-th-check.component.d.ts +32 -32
  22. package/components/ngt-datatable/ngt-thead/ngt-thead.component.d.ts +13 -13
  23. package/components/ngt-datatable/ngt-tr/ngt-tr.component.d.ts +20 -20
  24. package/components/ngt-date/ngt-date.component.d.ts +85 -85
  25. package/components/ngt-date/ngt-date.module.d.ts +13 -13
  26. package/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.d.ts +8 -8
  27. package/components/ngt-dropdown/ngt-dropdown.component.d.ts +53 -53
  28. package/components/ngt-dropdown/ngt-dropdown.module.d.ts +9 -9
  29. package/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.d.ts +14 -14
  30. package/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.d.ts +25 -25
  31. package/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.d.ts +35 -35
  32. package/components/ngt-dropzone/ngt-dropzone.component.d.ts +95 -95
  33. package/components/ngt-dropzone/ngt-dropzone.meta.d.ts +27 -27
  34. package/components/ngt-dropzone/ngt-dropzone.module.d.ts +17 -17
  35. package/components/ngt-floating-button/ngt-floating-button.component.d.ts +35 -35
  36. package/components/ngt-floating-button/ngt-floating-button.module.d.ts +10 -10
  37. package/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.d.ts +10 -10
  38. package/components/ngt-form/ngt-form.component.d.ts +60 -60
  39. package/components/ngt-form/ngt-form.module.d.ts +9 -9
  40. package/components/ngt-header-nav/ngt-header-nav.component.d.ts +14 -14
  41. package/components/ngt-header-nav/ngt-header-nav.module.d.ts +8 -8
  42. package/components/ngt-helper/ngt-helper.component.d.ts +25 -25
  43. package/components/ngt-helper/ngt-helper.module.d.ts +10 -10
  44. package/components/ngt-input/ngt-input.component.d.ts +129 -129
  45. package/components/ngt-input/ngt-input.module.d.ts +14 -14
  46. package/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.d.ts +17 -17
  47. package/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.d.ts +12 -5
  48. package/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.d.ts +15 -15
  49. package/components/ngt-modal/ngt-modal.component.d.ts +31 -31
  50. package/components/ngt-modal/ngt-modal.module.d.ts +11 -11
  51. package/components/ngt-multi-select/ngt-multi-select.component.d.ts +116 -116
  52. package/components/ngt-multi-select/ngt-multi-select.module.d.ts +15 -15
  53. package/components/ngt-pagination/ngt-pagination.component.d.ts +43 -43
  54. package/components/ngt-pagination/ngt-pagination.module.d.ts +12 -12
  55. package/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.d.ts +21 -21
  56. package/components/ngt-popover/ngt-popover.component.d.ts +31 -31
  57. package/components/ngt-popover/ngt-popover.directive.d.ts +31 -31
  58. package/components/ngt-popover/ngt-popover.module.d.ts +11 -11
  59. package/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.d.ts +12 -12
  60. package/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.d.ts +12 -12
  61. package/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.d.ts +18 -18
  62. package/components/ngt-portlet/ngt-portlet.component.d.ts +20 -20
  63. package/components/ngt-portlet/ngt-portlet.module.d.ts +13 -13
  64. package/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.d.ts +9 -9
  65. package/components/ngt-radio-button/ngt-radio-button.component.d.ts +45 -45
  66. package/components/ngt-radio-button/ngt-radio-button.module.d.ts +11 -11
  67. package/components/ngt-section/ngt-section.component.d.ts +38 -38
  68. package/components/ngt-section/ngt-section.module.d.ts +11 -11
  69. package/components/ngt-select/ngt-select.component.d.ts +154 -154
  70. package/components/ngt-select/ngt-select.directive.d.ts +20 -20
  71. package/components/ngt-select/ngt-select.module.d.ts +16 -16
  72. package/components/ngt-shining/ngt-shining.component.d.ts +19 -19
  73. package/components/ngt-shining/ngt-shining.module.d.ts +8 -8
  74. package/components/ngt-sidenav/ngt-sidenav.component.d.ts +32 -32
  75. package/components/ngt-sidenav/ngt-sidenav.module.d.ts +8 -8
  76. package/components/ngt-slider/ngt-slider.component.d.ts +36 -36
  77. package/components/ngt-slider/ngt-slider.module.d.ts +9 -9
  78. package/components/ngt-svg/ngt-svg.component.d.ts +13 -13
  79. package/components/ngt-svg/ngt-svg.module.d.ts +10 -10
  80. package/components/ngt-tag/ngt-tag.component.d.ts +13 -13
  81. package/components/ngt-tag/ngt-tag.module.d.ts +9 -9
  82. package/components/ngt-textarea/ngt-textarea.component.d.ts +49 -49
  83. package/components/ngt-textarea/ngt-textarea.module.d.ts +13 -13
  84. package/components/ngt-validation/ngt-validation.component.d.ts +13 -13
  85. package/components/ngt-validation/ngt-validation.module.d.ts +8 -8
  86. package/directives/ngt-stylizable/ngt-stylizable.directive.d.ts +68 -68
  87. package/directives/ngt-stylizable/ngt-stylizable.module.d.ts +8 -8
  88. package/enums/size.enum.d.ts +8 -8
  89. package/esm2020/animations/ngt-angular-animations.mjs +34 -34
  90. package/esm2020/base/ngt-base-ng-model.mjs +90 -90
  91. package/esm2020/components/ngt-action/ngt-action.component.mjs +96 -96
  92. package/esm2020/components/ngt-action/ngt-action.module.mjs +28 -28
  93. package/esm2020/components/ngt-button/ngt-button.component.mjs +142 -142
  94. package/esm2020/components/ngt-button/ngt-button.module.mjs +28 -28
  95. package/esm2020/components/ngt-checkbox/ngt-checkbox.component.mjs +192 -192
  96. package/esm2020/components/ngt-checkbox/ngt-checkbox.module.mjs +28 -28
  97. package/esm2020/components/ngt-content/ngt-content.component.mjs +32 -32
  98. package/esm2020/components/ngt-content/ngt-content.module.mjs +20 -20
  99. package/esm2020/components/ngt-context-menu/ngt-context-menu.component.mjs +25 -25
  100. package/esm2020/components/ngt-context-menu/ngt-context-menu.directive.mjs +89 -89
  101. package/esm2020/components/ngt-context-menu/ngt-context-menu.module.mjs +33 -33
  102. package/esm2020/components/ngt-datatable/ngt-datatable.component.mjs +470 -470
  103. package/esm2020/components/ngt-datatable/ngt-datatable.module.mjs +99 -99
  104. package/esm2020/components/ngt-datatable/ngt-tbody/ngt-tbody.component.mjs +57 -57
  105. package/esm2020/components/ngt-datatable/ngt-td/ngt-td.component.mjs +62 -62
  106. package/esm2020/components/ngt-datatable/ngt-td-check/ngt-td-check.component.mjs +113 -113
  107. package/esm2020/components/ngt-datatable/ngt-th/ngt-th.component.mjs +228 -228
  108. package/esm2020/components/ngt-datatable/ngt-th-check/ngt-th-check.component.mjs +127 -127
  109. package/esm2020/components/ngt-datatable/ngt-thead/ngt-thead.component.mjs +55 -55
  110. package/esm2020/components/ngt-datatable/ngt-tr/ngt-tr.component.mjs +86 -86
  111. package/esm2020/components/ngt-date/ngt-date.component.mjs +435 -435
  112. package/esm2020/components/ngt-date/ngt-date.module.mjs +40 -40
  113. package/esm2020/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.mjs +19 -19
  114. package/esm2020/components/ngt-dropdown/ngt-dropdown.component.mjs +204 -204
  115. package/esm2020/components/ngt-dropdown/ngt-dropdown.module.mjs +21 -21
  116. package/esm2020/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.mjs +54 -54
  117. package/esm2020/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.mjs +69 -66
  118. package/esm2020/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.mjs +94 -94
  119. package/esm2020/components/ngt-dropzone/ngt-dropzone.component.mjs +496 -496
  120. package/esm2020/components/ngt-dropzone/ngt-dropzone.meta.mjs +24 -24
  121. package/esm2020/components/ngt-dropzone/ngt-dropzone.module.mjs +55 -55
  122. package/esm2020/components/ngt-floating-button/ngt-floating-button.component.mjs +119 -119
  123. package/esm2020/components/ngt-floating-button/ngt-floating-button.module.mjs +28 -28
  124. package/esm2020/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.mjs +22 -22
  125. package/esm2020/components/ngt-form/ngt-form.component.mjs +207 -207
  126. package/esm2020/components/ngt-form/ngt-form.module.mjs +29 -29
  127. package/esm2020/components/ngt-header-nav/ngt-header-nav.component.mjs +39 -39
  128. package/esm2020/components/ngt-header-nav/ngt-header-nav.module.mjs +20 -20
  129. package/esm2020/components/ngt-helper/ngt-helper.component.mjs +68 -68
  130. package/esm2020/components/ngt-helper/ngt-helper.module.mjs +28 -28
  131. package/esm2020/components/ngt-input/ngt-input.component.mjs +844 -844
  132. package/esm2020/components/ngt-input/ngt-input.module.mjs +47 -47
  133. package/esm2020/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.mjs +46 -46
  134. package/esm2020/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.mjs +33 -11
  135. package/esm2020/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.mjs +40 -40
  136. package/esm2020/components/ngt-modal/ngt-modal.component.mjs +122 -122
  137. package/esm2020/components/ngt-modal/ngt-modal.module.mjs +39 -39
  138. package/esm2020/components/ngt-multi-select/ngt-multi-select.component.mjs +503 -503
  139. package/esm2020/components/ngt-multi-select/ngt-multi-select.module.mjs +52 -52
  140. package/esm2020/components/ngt-pagination/ngt-pagination.component.mjs +162 -162
  141. package/esm2020/components/ngt-pagination/ngt-pagination.module.mjs +36 -36
  142. package/esm2020/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.mjs +58 -58
  143. package/esm2020/components/ngt-popover/ngt-popover.component.mjs +85 -85
  144. package/esm2020/components/ngt-popover/ngt-popover.directive.mjs +126 -126
  145. package/esm2020/components/ngt-popover/ngt-popover.module.mjs +36 -36
  146. package/esm2020/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.mjs +34 -34
  147. package/esm2020/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.mjs +35 -35
  148. package/esm2020/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.mjs +57 -57
  149. package/esm2020/components/ngt-portlet/ngt-portlet.component.mjs +74 -74
  150. package/esm2020/components/ngt-portlet/ngt-portlet.module.mjs +47 -47
  151. package/esm2020/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.mjs +19 -19
  152. package/esm2020/components/ngt-radio-button/ngt-radio-button.component.mjs +153 -153
  153. package/esm2020/components/ngt-radio-button/ngt-radio-button.module.mjs +29 -29
  154. package/esm2020/components/ngt-section/ngt-section.component.mjs +151 -151
  155. package/esm2020/components/ngt-section/ngt-section.module.mjs +32 -32
  156. package/esm2020/components/ngt-select/ngt-select.component.mjs +670 -670
  157. package/esm2020/components/ngt-select/ngt-select.directive.mjs +36 -36
  158. package/esm2020/components/ngt-select/ngt-select.module.mjs +65 -65
  159. package/esm2020/components/ngt-shining/ngt-shining.component.mjs +40 -40
  160. package/esm2020/components/ngt-shining/ngt-shining.module.mjs +20 -20
  161. package/esm2020/components/ngt-sidenav/ngt-sidenav.component.mjs +132 -132
  162. package/esm2020/components/ngt-sidenav/ngt-sidenav.module.mjs +20 -20
  163. package/esm2020/components/ngt-slider/ngt-slider.component.mjs +100 -100
  164. package/esm2020/components/ngt-slider/ngt-slider.module.mjs +24 -24
  165. package/esm2020/components/ngt-svg/ngt-svg.component.mjs +53 -53
  166. package/esm2020/components/ngt-svg/ngt-svg.module.mjs +28 -28
  167. package/esm2020/components/ngt-tag/ngt-tag.component.mjs +37 -37
  168. package/esm2020/components/ngt-tag/ngt-tag.module.mjs +24 -24
  169. package/esm2020/components/ngt-textarea/ngt-textarea.component.mjs +238 -238
  170. package/esm2020/components/ngt-textarea/ngt-textarea.module.mjs +43 -43
  171. package/esm2020/components/ngt-validation/ngt-validation.component.mjs +26 -26
  172. package/esm2020/components/ngt-validation/ngt-validation.module.mjs +20 -20
  173. package/esm2020/directives/ngt-stylizable/ngt-stylizable.directive.mjs +290 -290
  174. package/esm2020/directives/ngt-stylizable/ngt-stylizable.module.mjs +20 -20
  175. package/esm2020/enums/size.enum.mjs +11 -11
  176. package/esm2020/helpers/enum/enum.mjs +7 -7
  177. package/esm2020/helpers/form/form.mjs +14 -14
  178. package/esm2020/helpers/input-mask/input-mask.helper.mjs +26 -26
  179. package/esm2020/helpers/promise/promise-helper.mjs +4 -4
  180. package/esm2020/helpers/routing/route.mjs +11 -11
  181. package/esm2020/helpers/uuid.mjs +10 -10
  182. package/esm2020/ng-tailwind.mjs +4 -4
  183. package/esm2020/public-api.mjs +127 -127
  184. package/esm2020/services/http/ngt-attachment-http.service.mjs +3 -3
  185. package/esm2020/services/http/ngt-http-form.service.mjs +3 -3
  186. package/esm2020/services/http/ngt-http-resource.service.mjs +3 -3
  187. package/esm2020/services/http/ngt-http-validation.service.mjs +3 -3
  188. package/esm2020/services/http/ngt-http.service.mjs +3 -3
  189. package/esm2020/services/http/ngt-translate.service.mjs +3 -3
  190. package/esm2020/services/ngt-stylizable/ngt-stylizable.service.mjs +273 -273
  191. package/esm2020/services/validation/ngt-ability-validation.service.mjs +3 -3
  192. package/fesm2015/ng-tailwind.mjs +8657 -8632
  193. package/fesm2015/ng-tailwind.mjs.map +1 -1
  194. package/fesm2020/ng-tailwind.mjs +8482 -8459
  195. package/fesm2020/ng-tailwind.mjs.map +1 -1
  196. package/helpers/enum/enum.d.ts +1 -1
  197. package/helpers/form/form.d.ts +4 -4
  198. package/helpers/input-mask/input-mask.helper.d.ts +20 -20
  199. package/helpers/promise/promise-helper.d.ts +1 -1
  200. package/helpers/routing/route.d.ts +2 -2
  201. package/helpers/uuid.d.ts +1 -1
  202. package/index.d.ts +5 -5
  203. package/package.json +1 -1
  204. package/public-api.d.ts +87 -87
  205. package/services/http/ngt-attachment-http.service.d.ts +9 -9
  206. package/services/http/ngt-http-form.service.d.ts +5 -5
  207. package/services/http/ngt-http-resource.service.d.ts +12 -12
  208. package/services/http/ngt-http-validation.service.d.ts +12 -12
  209. package/services/http/ngt-http.service.d.ts +27 -27
  210. package/services/http/ngt-translate.service.d.ts +33 -33
  211. package/services/ngt-stylizable/ngt-stylizable.service.d.ts +96 -96
  212. package/services/validation/ngt-ability-validation.service.d.ts +5 -5
@@ -1,127 +1,127 @@
1
- import { Component, Optional, Self, SkipSelf, ViewChild } from '@angular/core';
2
- import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
3
- import { NgtCheckboxComponent } from '../../ngt-checkbox/ngt-checkbox.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../../directives/ngt-stylizable/ngt-stylizable.directive";
6
- import * as i2 from "../ngt-datatable.component";
7
- import * as i3 from "../../../services/http/ngt-translate.service";
8
- import * as i4 from "@angular/common";
9
- import * as i5 from "@angular/forms";
10
- import * as i6 from "../../ngt-checkbox/ngt-checkbox.component";
11
- export class NgtThCheckComponent {
12
- constructor(injector, hostElement, ngtStylizableDirective, ngtDataTable, ngtTranslateService) {
13
- this.injector = injector;
14
- this.hostElement = hostElement;
15
- this.ngtStylizableDirective = ngtStylizableDirective;
16
- this.ngtDataTable = ngtDataTable;
17
- this.ngtTranslateService = ngtTranslateService;
18
- this.checked = false;
19
- this.subscriptions = [];
20
- this.bindNgtStyle();
21
- if (this.hasSelectedAllElements()) {
22
- this.checked = true;
23
- this.hasSelectedAllCheckboxes = true;
24
- }
25
- }
26
- getSelectAllElementsCheckboxStyle() {
27
- return this.hasSelectedAllElements()
28
- ? `${this.ngtCheckbox?.ngtStyle.compile(['color.bg'])} text-white`
29
- : `hover:${this.ngtCheckbox?.ngtStyle.compile(['color.bg'])} hover:text-white bg-white`;
30
- }
31
- hasSelectedAllElements() {
32
- return this.ngtDataTable?.hasSelectedAllElements;
33
- }
34
- canSelectAllFilter() {
35
- return this.ngtDataTable?.canSelectAllRegisters;
36
- }
37
- getPaginationTotal() {
38
- return this.ngtDataTable?.ngtPagination?.getPagination()?.total;
39
- }
40
- onToggleSelectAllElements() {
41
- this.ngtDataTable?.onSelectAllRegisters.emit();
42
- }
43
- ngAfterContentInit() {
44
- if (this.ngtDataTable) {
45
- this.subscriptions.push(this.ngtDataTable.onDataChange.subscribe(() => {
46
- this.checked = false;
47
- }));
48
- this.subscriptions.push(this.ngtDataTable.onClearSelectedElements.subscribe(() => {
49
- this.checked = false;
50
- }));
51
- }
52
- }
53
- ngOnDestroy() {
54
- this.destroySubscriptions();
55
- }
56
- onCheckboxChange(checked) {
57
- if (this.ngtDataTable) {
58
- this.ngtDataTable.onToogleAllCheckboxes.emit(checked);
59
- this.hasSelectedAllCheckboxes = checked;
60
- this.checked = checked;
61
- if (!checked && this.hasSelectedAllElements()) {
62
- this.hasSelectedAllCheckboxes = true;
63
- this.checked = true;
64
- }
65
- }
66
- }
67
- bindNgtStyle() {
68
- if (this.ngtStylizableDirective) {
69
- this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
70
- }
71
- else {
72
- this.ngtStyle = new NgtStylizableService();
73
- }
74
- this.ngtStyle.load(this.injector, 'NgtThCheck', {
75
- py: 'py-4',
76
- px: 'px-6',
77
- text: 'text-center',
78
- border: 'border-b',
79
- color: {
80
- border: '',
81
- bg: 'bg-gray-500',
82
- text: 'text-white'
83
- }
84
- });
85
- this.hostElement.nativeElement.classList += this.ngtStyle.compile([
86
- 'h',
87
- 'px',
88
- 'py',
89
- 'pb',
90
- 'pl',
91
- 'pr',
92
- 'pt',
93
- 'mb',
94
- 'ml',
95
- 'mr',
96
- 'mt',
97
- 'border',
98
- 'color.border',
99
- 'color.bg',
100
- 'color.text'
101
- ]);
102
- }
103
- destroySubscriptions() {
104
- this.subscriptions.forEach(subscription => subscription.unsubscribe());
105
- this.subscriptions = [];
106
- }
107
- }
108
- NgtThCheckComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtThCheckComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.NgtStylizableDirective, optional: true, self: true }, { token: i2.NgtDatatableComponent, optional: true, skipSelf: true }, { token: i3.NgtTranslateService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
109
- NgtThCheckComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtThCheckComponent, selector: "[ngt-th-check]", viewQueries: [{ propertyName: "ngtCheckbox", first: true, predicate: NgtCheckboxComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"canSelectAllFilter(); else default\">\n <div class=\"flex items-center content-center relative w-10\">\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'\n (click)=\"$event.stopPropagation()\">\n </ngt-checkbox>\n\n <div *ngIf=\"hasSelectedAllCheckboxes\" class=\"rounded-md border border-gray-400 p-1 ml-1 cursor-pointer relative\"\n [ngClass]=\"getSelectAllElementsCheckboxStyle()\"\n [title]=\"hasSelectedAllElements() ? ngtTranslateService.ngtDatatableClearSelection : ngtTranslateService.ngtDatatableSelectAllRegisters\"\n (click)=\"onToggleSelectAllElements()\">\n <svg class=\"fill-current self-center h-4\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\n <path\n d=\"M342.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 178.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l160-160zm96 128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 54.6 297.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l256-256z\" />\n </svg>\n\n <div *ngIf=\"hasSelectedAllElements()\"\n class=\"rounded-xl absolute top-0 text-xs right-0 -mt-5 -mr-2 py-1 px-2 text-center text-white bg-blue-500\">\n {{ getPaginationTotal() }}\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #default>\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)' (click)=\"$event.stopPropagation()\">\n </ngt-checkbox>\n</ng-template>\n\n<ng-content></ng-content>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.NgtCheckboxComponent, selector: "ngt-checkbox", inputs: ["label", "shining", "isDisabled", "isClickDisabled", "name", "mode", "helpTitle", "helpTextColor", "helpText", "helperAutoXReverse"] }] });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtThCheckComponent, decorators: [{
111
- type: Component,
112
- args: [{ selector: '[ngt-th-check]', template: "<ng-container *ngIf=\"canSelectAllFilter(); else default\">\n <div class=\"flex items-center content-center relative w-10\">\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'\n (click)=\"$event.stopPropagation()\">\n </ngt-checkbox>\n\n <div *ngIf=\"hasSelectedAllCheckboxes\" class=\"rounded-md border border-gray-400 p-1 ml-1 cursor-pointer relative\"\n [ngClass]=\"getSelectAllElementsCheckboxStyle()\"\n [title]=\"hasSelectedAllElements() ? ngtTranslateService.ngtDatatableClearSelection : ngtTranslateService.ngtDatatableSelectAllRegisters\"\n (click)=\"onToggleSelectAllElements()\">\n <svg class=\"fill-current self-center h-4\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\n <path\n d=\"M342.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 178.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l160-160zm96 128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 54.6 297.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l256-256z\" />\n </svg>\n\n <div *ngIf=\"hasSelectedAllElements()\"\n class=\"rounded-xl absolute top-0 text-xs right-0 -mt-5 -mr-2 py-1 px-2 text-center text-white bg-blue-500\">\n {{ getPaginationTotal() }}\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #default>\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)' (click)=\"$event.stopPropagation()\">\n </ngt-checkbox>\n</ng-template>\n\n<ng-content></ng-content>\n" }]
113
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.NgtStylizableDirective, decorators: [{
114
- type: Self
115
- }, {
116
- type: Optional
117
- }] }, { type: i2.NgtDatatableComponent, decorators: [{
118
- type: Optional
119
- }, {
120
- type: SkipSelf
121
- }] }, { type: i3.NgtTranslateService, decorators: [{
122
- type: Optional
123
- }] }]; }, propDecorators: { ngtCheckbox: [{
124
- type: ViewChild,
125
- args: [NgtCheckboxComponent]
126
- }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRoLWNoZWNrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRoLWNoZWNrL25ndC10aC1jaGVjay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtZGF0YXRhYmxlL25ndC10aC1jaGVjay9uZ3QtdGgtY2hlY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQW1DLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUtsSSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7Ozs7QUFPakYsTUFBTSxPQUFPLG1CQUFtQjtJQVM1QixZQUNZLFFBQWtCLEVBQ2xCLFdBQXVCLEVBR3ZCLHNCQUE4QyxFQUc5QyxZQUFtQyxFQUdwQyxtQkFBd0M7UUFWdkMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUd2QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBRzlDLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQUdwQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBakI1QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBSWYsa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBZTVDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLElB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LENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUM5RCxHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFFBQVE7WUFDUixjQUFjO1lBQ2QsVUFBVTtZQUNWLFlBQVk7U0FDZixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7Z0hBOUhRLG1CQUFtQjtvR0FBbkIsbUJBQW1CLG1HQUNqQixvQkFBb0IsZ0RDZG5DLHNyREE2QkE7MkZEaEJhLG1CQUFtQjtrQkFKL0IsU0FBUzsrQkFDSSxnQkFBZ0I7OzBCQWdCckIsSUFBSTs7MEJBQUksUUFBUTs7MEJBR2hCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUdwQixRQUFROzRDQWxCMkIsV0FBVztzQkFBbEQsU0FBUzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBTZWxmLCBTa2lwU2VsZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaHR0cC9uZ3QtdHJhbnNsYXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE5ndFN0eWxpemFibGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL25ndC1zdHlsaXphYmxlL25ndC1zdHlsaXphYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOZ3RTdHlsaXphYmxlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25ndC1zdHlsaXphYmxlL25ndC1zdHlsaXphYmxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmd0Q2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9uZ3QtY2hlY2tib3gvbmd0LWNoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3REYXRhdGFibGVDb21wb25lbnQgfSBmcm9tICcuLi9uZ3QtZGF0YXRhYmxlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnW25ndC10aC1jaGVja10nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9uZ3QtdGgtY2hlY2suY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE5ndFRoQ2hlY2tDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBWaWV3Q2hpbGQoTmd0Q2hlY2tib3hDb21wb25lbnQpIHB1YmxpYyBuZ3RDaGVja2JveDogTmd0Q2hlY2tib3hDb21wb25lbnQ7XG5cbiAgICBwdWJsaWMgY2hlY2tlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBuZ3RTdHlsZTogTmd0U3R5bGl6YWJsZVNlcnZpY2U7XG4gICAgcHVibGljIGhhc1NlbGVjdGVkQWxsQ2hlY2tib3hlczogYm9vbGVhbjtcblxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uczogQXJyYXk8U3Vic2NyaXB0aW9uPiA9IFtdO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcblxuICAgICAgICBAU2VsZigpIEBPcHRpb25hbCgpXG4gICAgICAgIHByaXZhdGUgbmd0U3R5bGl6YWJsZURpcmVjdGl2ZTogTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSxcblxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKVxuICAgICAgICBwcml2YXRlIG5ndERhdGFUYWJsZTogTmd0RGF0YXRhYmxlQ29tcG9uZW50LFxuXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIHB1YmxpYyBuZ3RUcmFuc2xhdGVTZXJ2aWNlOiBOZ3RUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICB0aGlzLmJpbmROZ3RTdHlsZSgpO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc1NlbGVjdGVkQWxsRWxlbWVudHMoKSkge1xuICAgICAgICAgICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuaGFzU2VsZWN0ZWRBbGxDaGVja2JveGVzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRTZWxlY3RBbGxFbGVtZW50c0NoZWNrYm94U3R5bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpXG4gICAgICAgICAgICA/IGAke3RoaXMubmd0Q2hlY2tib3g/Lm5ndFN0eWxlLmNvbXBpbGUoWydjb2xvci5iZyddKX0gdGV4dC13aGl0ZWBcbiAgICAgICAgICAgIDogYGhvdmVyOiR7dGhpcy5uZ3RDaGVja2JveD8ubmd0U3R5bGUuY29tcGlsZShbJ2NvbG9yLmJnJ10pfSBob3Zlcjp0ZXh0LXdoaXRlIGJnLXdoaXRlYDtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmd0RGF0YVRhYmxlPy5oYXNTZWxlY3RlZEFsbEVsZW1lbnRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5TZWxlY3RBbGxGaWx0ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ndERhdGFUYWJsZT8uY2FuU2VsZWN0QWxsUmVnaXN0ZXJzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQYWdpbmF0aW9uVG90YWwoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmd0RGF0YVRhYmxlPy5uZ3RQYWdpbmF0aW9uPy5nZXRQYWdpbmF0aW9uKCk/LnRvdGFsO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblRvZ2dsZVNlbGVjdEFsbEVsZW1lbnRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5ndERhdGFUYWJsZT8ub25TZWxlY3RBbGxSZWdpc3RlcnMuZW1pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25EYXRhQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgICAgICAgICAgICB0aGlzLm5ndERhdGFUYWJsZS5vbkNsZWFyU2VsZWN0ZWRFbGVtZW50cy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95U3Vic2NyaXB0aW9ucygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNoZWNrYm94Q2hhbmdlKGNoZWNrZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMubmd0RGF0YVRhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLm5ndERhdGFUYWJsZS5vblRvb2dsZUFsbENoZWNrYm94ZXMuZW1pdChjaGVja2VkKTtcbiAgICAgICAgICAgIHRoaXMuaGFzU2VsZWN0ZWRBbGxDaGVja2JveGVzID0gY2hlY2tlZDtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IGNoZWNrZWQ7XG5cbiAgICAgICAgICAgIGlmICghY2hlY2tlZCAmJiB0aGlzLmhhc1NlbGVjdGVkQWxsRWxlbWVudHMoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzU2VsZWN0ZWRBbGxDaGVja2JveGVzID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBiaW5kTmd0U3R5bGUoKSB7XG4gICAgICAgIGlmICh0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSB0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUuZ2V0Tmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSBuZXcgTmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubmd0U3R5bGUubG9hZCh0aGlzLmluamVjdG9yLCAnTmd0VGhDaGVjaycsIHtcbiAgICAgICAgICAgIHB5OiAncHktNCcsXG4gICAgICAgICAgICBweDogJ3B4LTYnLFxuICAgICAgICAgICAgdGV4dDogJ3RleHQtY2VudGVyJyxcbiAgICAgICAgICAgIGJvcmRlcjogJ2JvcmRlci1iJyxcbiAgICAgICAgICAgIGNvbG9yOiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJyxcbiAgICAgICAgICAgICAgICBiZzogJ2JnLWdyYXktNTAwJyxcbiAgICAgICAgICAgICAgICB0ZXh0OiAndGV4dC13aGl0ZSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdCArPSB0aGlzLm5ndFN0eWxlLmNvbXBpbGUoW1xuICAgICAgICAgICAgJ2gnLFxuICAgICAgICAgICAgJ3B4JyxcbiAgICAgICAgICAgICdweScsXG4gICAgICAgICAgICAncGInLFxuICAgICAgICAgICAgJ3BsJyxcbiAgICAgICAgICAgICdwcicsXG4gICAgICAgICAgICAncHQnLFxuICAgICAgICAgICAgJ21iJyxcbiAgICAgICAgICAgICdtbCcsXG4gICAgICAgICAgICAnbXInLFxuICAgICAgICAgICAgJ210JyxcbiAgICAgICAgICAgICdib3JkZXInLFxuICAgICAgICAgICAgJ2NvbG9yLmJvcmRlcicsXG4gICAgICAgICAgICAnY29sb3IuYmcnLFxuICAgICAgICAgICAgJ2NvbG9yLnRleHQnXG4gICAgICAgIF0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVzdHJveVN1YnNjcmlwdGlvbnMoKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YnNjcmlwdGlvbiA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSk7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IFtdO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjYW5TZWxlY3RBbGxGaWx0ZXIoKTsgZWxzZSBkZWZhdWx0XCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGNvbnRlbnQtY2VudGVyIHJlbGF0aXZlIHctMTBcIj5cbiAgICAgICAgPG5ndC1jaGVja2JveCBbKG5nTW9kZWwpXT0nY2hlY2tlZCcgKG5nTW9kZWxDaGFuZ2UpPSdvbkNoZWNrYm94Q2hhbmdlKCRldmVudCknXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgIDwvbmd0LWNoZWNrYm94PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJoYXNTZWxlY3RlZEFsbENoZWNrYm94ZXNcIiBjbGFzcz1cInJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1ncmF5LTQwMCBwLTEgbWwtMSBjdXJzb3ItcG9pbnRlciByZWxhdGl2ZVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJnZXRTZWxlY3RBbGxFbGVtZW50c0NoZWNrYm94U3R5bGUoKVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpID8gbmd0VHJhbnNsYXRlU2VydmljZS5uZ3REYXRhdGFibGVDbGVhclNlbGVjdGlvbiA6IG5ndFRyYW5zbGF0ZVNlcnZpY2Uubmd0RGF0YXRhYmxlU2VsZWN0QWxsUmVnaXN0ZXJzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZVNlbGVjdEFsbEVsZW1lbnRzKClcIj5cbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJmaWxsLWN1cnJlbnQgc2VsZi1jZW50ZXIgaC00XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNDQ4IDUxMlwiPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNMzQyLjYgODYuNmMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMEwxNjAgMTc4LjdsLTU3LjQtNTcuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsODAgODBjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsMTYwLTE2MHptOTYgMTI4YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDE2MCA0MDIuNyA1NC42IDI5Ny40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxMjggMTI4YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDI1Ni0yNTZ6XCIgLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQteGwgYWJzb2x1dGUgdG9wLTAgdGV4dC14cyByaWdodC0wIC1tdC01IC1tci0yIHB5LTEgcHgtMiB0ZXh0LWNlbnRlciB0ZXh0LXdoaXRlIGJnLWJsdWUtNTAwXCI+XG4gICAgICAgICAgICAgICAge3sgZ2V0UGFnaW5hdGlvblRvdGFsKCkgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgPG5ndC1jaGVja2JveCBbKG5nTW9kZWwpXT0nY2hlY2tlZCcgKG5nTW9kZWxDaGFuZ2UpPSdvbkNoZWNrYm94Q2hhbmdlKCRldmVudCknIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICA8L25ndC1jaGVja2JveD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
1
+ import { Component, Optional, Self, SkipSelf, ViewChild } from '@angular/core';
2
+ import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
3
+ import { NgtCheckboxComponent } from '../../ngt-checkbox/ngt-checkbox.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../directives/ngt-stylizable/ngt-stylizable.directive";
6
+ import * as i2 from "../ngt-datatable.component";
7
+ import * as i3 from "../../../services/http/ngt-translate.service";
8
+ import * as i4 from "@angular/common";
9
+ import * as i5 from "@angular/forms";
10
+ import * as i6 from "../../ngt-checkbox/ngt-checkbox.component";
11
+ export class NgtThCheckComponent {
12
+ constructor(injector, hostElement, ngtStylizableDirective, ngtDataTable, ngtTranslateService) {
13
+ this.injector = injector;
14
+ this.hostElement = hostElement;
15
+ this.ngtStylizableDirective = ngtStylizableDirective;
16
+ this.ngtDataTable = ngtDataTable;
17
+ this.ngtTranslateService = ngtTranslateService;
18
+ this.checked = false;
19
+ this.subscriptions = [];
20
+ this.bindNgtStyle();
21
+ if (this.hasSelectedAllElements()) {
22
+ this.checked = true;
23
+ this.hasSelectedAllCheckboxes = true;
24
+ }
25
+ }
26
+ getSelectAllElementsCheckboxStyle() {
27
+ return this.hasSelectedAllElements()
28
+ ? `${this.ngtCheckbox?.ngtStyle.compile(['color.bg'])} text-white`
29
+ : `hover:${this.ngtCheckbox?.ngtStyle.compile(['color.bg'])} hover:text-white bg-white`;
30
+ }
31
+ hasSelectedAllElements() {
32
+ return this.ngtDataTable?.hasSelectedAllElements;
33
+ }
34
+ canSelectAllFilter() {
35
+ return this.ngtDataTable?.canSelectAllRegisters;
36
+ }
37
+ getPaginationTotal() {
38
+ return this.ngtDataTable?.ngtPagination?.getPagination()?.total;
39
+ }
40
+ onToggleSelectAllElements() {
41
+ this.ngtDataTable?.onSelectAllRegisters.emit();
42
+ }
43
+ ngAfterContentInit() {
44
+ if (this.ngtDataTable) {
45
+ this.subscriptions.push(this.ngtDataTable.onDataChange.subscribe(() => {
46
+ this.checked = false;
47
+ }));
48
+ this.subscriptions.push(this.ngtDataTable.onClearSelectedElements.subscribe(() => {
49
+ this.checked = false;
50
+ }));
51
+ }
52
+ }
53
+ ngOnDestroy() {
54
+ this.destroySubscriptions();
55
+ }
56
+ onCheckboxChange(checked) {
57
+ if (this.ngtDataTable) {
58
+ this.ngtDataTable.onToogleAllCheckboxes.emit(checked);
59
+ this.hasSelectedAllCheckboxes = checked;
60
+ this.checked = checked;
61
+ if (!checked && this.hasSelectedAllElements()) {
62
+ this.hasSelectedAllCheckboxes = true;
63
+ this.checked = true;
64
+ }
65
+ }
66
+ }
67
+ bindNgtStyle() {
68
+ if (this.ngtStylizableDirective) {
69
+ this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
70
+ }
71
+ else {
72
+ this.ngtStyle = new NgtStylizableService();
73
+ }
74
+ this.ngtStyle.load(this.injector, 'NgtThCheck', {
75
+ py: 'py-4',
76
+ px: 'px-6',
77
+ text: 'text-center',
78
+ border: 'border-b',
79
+ color: {
80
+ border: '',
81
+ bg: 'bg-gray-500',
82
+ text: 'text-white'
83
+ }
84
+ });
85
+ this.hostElement.nativeElement.classList += this.ngtStyle.compile([
86
+ 'h',
87
+ 'px',
88
+ 'py',
89
+ 'pb',
90
+ 'pl',
91
+ 'pr',
92
+ 'pt',
93
+ 'mb',
94
+ 'ml',
95
+ 'mr',
96
+ 'mt',
97
+ 'border',
98
+ 'color.border',
99
+ 'color.bg',
100
+ 'color.text'
101
+ ]);
102
+ }
103
+ destroySubscriptions() {
104
+ this.subscriptions.forEach(subscription => subscription.unsubscribe());
105
+ this.subscriptions = [];
106
+ }
107
+ }
108
+ NgtThCheckComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtThCheckComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.NgtStylizableDirective, optional: true, self: true }, { token: i2.NgtDatatableComponent, optional: true, skipSelf: true }, { token: i3.NgtTranslateService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
109
+ NgtThCheckComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtThCheckComponent, selector: "[ngt-th-check]", viewQueries: [{ propertyName: "ngtCheckbox", first: true, predicate: NgtCheckboxComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"canSelectAllFilter(); else default\">\r\n <div class=\"flex items-center content-center relative w-10\">\r\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'\r\n (click)=\"$event.stopPropagation()\">\r\n </ngt-checkbox>\r\n\r\n <div *ngIf=\"hasSelectedAllCheckboxes\" class=\"rounded-md border border-gray-400 p-1 ml-1 cursor-pointer relative\"\r\n [ngClass]=\"getSelectAllElementsCheckboxStyle()\"\r\n [title]=\"hasSelectedAllElements() ? ngtTranslateService.ngtDatatableClearSelection : ngtTranslateService.ngtDatatableSelectAllRegisters\"\r\n (click)=\"onToggleSelectAllElements()\">\r\n <svg class=\"fill-current self-center h-4\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M342.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 178.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l160-160zm96 128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 54.6 297.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l256-256z\" />\r\n </svg>\r\n\r\n <div *ngIf=\"hasSelectedAllElements()\"\r\n class=\"rounded-xl absolute top-0 text-xs right-0 -mt-5 -mr-2 py-1 px-2 text-center text-white bg-blue-500\">\r\n {{ getPaginationTotal() }}\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #default>\r\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)' (click)=\"$event.stopPropagation()\">\r\n </ngt-checkbox>\r\n</ng-template>\r\n\r\n<ng-content></ng-content>\r\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.NgtCheckboxComponent, selector: "ngt-checkbox", inputs: ["label", "shining", "isDisabled", "isClickDisabled", "name", "mode", "helpTitle", "helpTextColor", "helpText", "helperAutoXReverse"] }] });
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtThCheckComponent, decorators: [{
111
+ type: Component,
112
+ args: [{ selector: '[ngt-th-check]', template: "<ng-container *ngIf=\"canSelectAllFilter(); else default\">\r\n <div class=\"flex items-center content-center relative w-10\">\r\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)'\r\n (click)=\"$event.stopPropagation()\">\r\n </ngt-checkbox>\r\n\r\n <div *ngIf=\"hasSelectedAllCheckboxes\" class=\"rounded-md border border-gray-400 p-1 ml-1 cursor-pointer relative\"\r\n [ngClass]=\"getSelectAllElementsCheckboxStyle()\"\r\n [title]=\"hasSelectedAllElements() ? ngtTranslateService.ngtDatatableClearSelection : ngtTranslateService.ngtDatatableSelectAllRegisters\"\r\n (click)=\"onToggleSelectAllElements()\">\r\n <svg class=\"fill-current self-center h-4\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M342.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 178.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l160-160zm96 128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 54.6 297.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l256-256z\" />\r\n </svg>\r\n\r\n <div *ngIf=\"hasSelectedAllElements()\"\r\n class=\"rounded-xl absolute top-0 text-xs right-0 -mt-5 -mr-2 py-1 px-2 text-center text-white bg-blue-500\">\r\n {{ getPaginationTotal() }}\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-template #default>\r\n <ngt-checkbox [(ngModel)]='checked' (ngModelChange)='onCheckboxChange($event)' (click)=\"$event.stopPropagation()\">\r\n </ngt-checkbox>\r\n</ng-template>\r\n\r\n<ng-content></ng-content>\r\n" }]
113
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.NgtStylizableDirective, decorators: [{
114
+ type: Self
115
+ }, {
116
+ type: Optional
117
+ }] }, { type: i2.NgtDatatableComponent, decorators: [{
118
+ type: Optional
119
+ }, {
120
+ type: SkipSelf
121
+ }] }, { type: i3.NgtTranslateService, decorators: [{
122
+ type: Optional
123
+ }] }]; }, propDecorators: { ngtCheckbox: [{
124
+ type: ViewChild,
125
+ args: [NgtCheckboxComponent]
126
+ }] } });
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRoLWNoZWNrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRoLWNoZWNrL25ndC10aC1jaGVjay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtZGF0YXRhYmxlL25ndC10aC1jaGVjay9uZ3QtdGgtY2hlY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQW1DLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUtsSSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7Ozs7QUFPakYsTUFBTSxPQUFPLG1CQUFtQjtJQVM1QixZQUNZLFFBQWtCLEVBQ2xCLFdBQXVCLEVBR3ZCLHNCQUE4QyxFQUc5QyxZQUFtQyxFQUdwQyxtQkFBd0M7UUFWdkMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUd2QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBRzlDLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQUdwQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBakI1QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBSWYsa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBZTVDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLElB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LENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUM5RCxHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFFBQVE7WUFDUixjQUFjO1lBQ2QsVUFBVTtZQUNWLFlBQVk7U0FDZixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7Z0hBOUhRLG1CQUFtQjtvR0FBbkIsbUJBQW1CLG1HQUNqQixvQkFBb0IsZ0RDZG5DLGd2REE2QkE7MkZEaEJhLG1CQUFtQjtrQkFKL0IsU0FBUzsrQkFDSSxnQkFBZ0I7OzBCQWdCckIsSUFBSTs7MEJBQUksUUFBUTs7MEJBR2hCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUdwQixRQUFROzRDQWxCMkIsV0FBVztzQkFBbEQsU0FBUzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBTZWxmLCBTa2lwU2VsZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5ndFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9odHRwL25ndC10cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmd0Q2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9uZ3QtY2hlY2tib3gvbmd0LWNoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5ndERhdGF0YWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL25ndC1kYXRhdGFibGUuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdbbmd0LXRoLWNoZWNrXScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmd0LXRoLWNoZWNrLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd0VGhDaGVja0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBAVmlld0NoaWxkKE5ndENoZWNrYm94Q29tcG9uZW50KSBwdWJsaWMgbmd0Q2hlY2tib3g6IE5ndENoZWNrYm94Q29tcG9uZW50O1xyXG5cclxuICAgIHB1YmxpYyBjaGVja2VkID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgbmd0U3R5bGU6IE5ndFN0eWxpemFibGVTZXJ2aWNlO1xyXG4gICAgcHVibGljIGhhc1NlbGVjdGVkQWxsQ2hlY2tib3hlczogYm9vbGVhbjtcclxuXHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcclxuXHJcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcclxuXHJcbiAgICAgICAgQFNlbGYoKSBAT3B0aW9uYWwoKVxyXG4gICAgICAgIHByaXZhdGUgbmd0U3R5bGl6YWJsZURpcmVjdGl2ZTogTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSxcclxuXHJcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKClcclxuICAgICAgICBwcml2YXRlIG5ndERhdGFUYWJsZTogTmd0RGF0YXRhYmxlQ29tcG9uZW50LFxyXG5cclxuICAgICAgICBAT3B0aW9uYWwoKVxyXG4gICAgICAgIHB1YmxpYyBuZ3RUcmFuc2xhdGVTZXJ2aWNlOiBOZ3RUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5iaW5kTmd0U3R5bGUoKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzU2VsZWN0ZWRBbGxDaGVja2JveGVzID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFNlbGVjdEFsbEVsZW1lbnRzQ2hlY2tib3hTdHlsZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmhhc1NlbGVjdGVkQWxsRWxlbWVudHMoKVxyXG4gICAgICAgICAgICA/IGAke3RoaXMubmd0Q2hlY2tib3g/Lm5ndFN0eWxlLmNvbXBpbGUoWydjb2xvci5iZyddKX0gdGV4dC13aGl0ZWBcclxuICAgICAgICAgICAgOiBgaG92ZXI6JHt0aGlzLm5ndENoZWNrYm94Py5uZ3RTdHlsZS5jb21waWxlKFsnY29sb3IuYmcnXSl9IGhvdmVyOnRleHQtd2hpdGUgYmctd2hpdGVgO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBoYXNTZWxlY3RlZEFsbEVsZW1lbnRzKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm5ndERhdGFUYWJsZT8uaGFzU2VsZWN0ZWRBbGxFbGVtZW50cztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2FuU2VsZWN0QWxsRmlsdGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm5ndERhdGFUYWJsZT8uY2FuU2VsZWN0QWxsUmVnaXN0ZXJzO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRQYWdpbmF0aW9uVG90YWwoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5uZ3REYXRhVGFibGU/Lm5ndFBhZ2luYXRpb24/LmdldFBhZ2luYXRpb24oKT8udG90YWw7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uVG9nZ2xlU2VsZWN0QWxsRWxlbWVudHMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5uZ3REYXRhVGFibGU/Lm9uU2VsZWN0QWxsUmVnaXN0ZXJzLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCkge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICAgICAgICAgIHRoaXMubmd0RGF0YVRhYmxlLm9uRGF0YUNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ3REYXRhVGFibGUub25DbGVhclNlbGVjdGVkRWxlbWVudHMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lTdWJzY3JpcHRpb25zKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG9uQ2hlY2tib3hDaGFuZ2UoY2hlY2tlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndERhdGFUYWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLm5ndERhdGFUYWJsZS5vblRvb2dsZUFsbENoZWNrYm94ZXMuZW1pdChjaGVja2VkKTtcclxuICAgICAgICAgICAgdGhpcy5oYXNTZWxlY3RlZEFsbENoZWNrYm94ZXMgPSBjaGVja2VkO1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xyXG5cclxuICAgICAgICAgICAgaWYgKCFjaGVja2VkICYmIHRoaXMuaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhhc1NlbGVjdGVkQWxsQ2hlY2tib3hlcyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYmluZE5ndFN0eWxlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUpIHtcclxuICAgICAgICAgICAgdGhpcy5uZ3RTdHlsZSA9IHRoaXMubmd0U3R5bGl6YWJsZURpcmVjdGl2ZS5nZXROZ3RTdHlsaXphYmxlU2VydmljZSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSBuZXcgTmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubmd0U3R5bGUubG9hZCh0aGlzLmluamVjdG9yLCAnTmd0VGhDaGVjaycsIHtcclxuICAgICAgICAgICAgcHk6ICdweS00JyxcclxuICAgICAgICAgICAgcHg6ICdweC02JyxcclxuICAgICAgICAgICAgdGV4dDogJ3RleHQtY2VudGVyJyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnYm9yZGVyLWInLFxyXG4gICAgICAgICAgICBjb2xvcjoge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJyxcclxuICAgICAgICAgICAgICAgIGJnOiAnYmctZ3JheS01MDAnLFxyXG4gICAgICAgICAgICAgICAgdGV4dDogJ3RleHQtd2hpdGUnXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdCArPSB0aGlzLm5ndFN0eWxlLmNvbXBpbGUoW1xyXG4gICAgICAgICAgICAnaCcsXHJcbiAgICAgICAgICAgICdweCcsXHJcbiAgICAgICAgICAgICdweScsXHJcbiAgICAgICAgICAgICdwYicsXHJcbiAgICAgICAgICAgICdwbCcsXHJcbiAgICAgICAgICAgICdwcicsXHJcbiAgICAgICAgICAgICdwdCcsXHJcbiAgICAgICAgICAgICdtYicsXHJcbiAgICAgICAgICAgICdtbCcsXHJcbiAgICAgICAgICAgICdtcicsXHJcbiAgICAgICAgICAgICdtdCcsXHJcbiAgICAgICAgICAgICdib3JkZXInLFxyXG4gICAgICAgICAgICAnY29sb3IuYm9yZGVyJyxcclxuICAgICAgICAgICAgJ2NvbG9yLmJnJyxcclxuICAgICAgICAgICAgJ2NvbG9yLnRleHQnXHJcbiAgICAgICAgXSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBkZXN0cm95U3Vic2NyaXB0aW9ucygpIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IFtdO1xyXG4gICAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjYW5TZWxlY3RBbGxGaWx0ZXIoKTsgZWxzZSBkZWZhdWx0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgY29udGVudC1jZW50ZXIgcmVsYXRpdmUgdy0xMFwiPlxyXG4gICAgICAgIDxuZ3QtY2hlY2tib3ggWyhuZ01vZGVsKV09J2NoZWNrZWQnIChuZ01vZGVsQ2hhbmdlKT0nb25DaGVja2JveENoYW5nZSgkZXZlbnQpJ1xyXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgPC9uZ3QtY2hlY2tib3g+XHJcblxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJoYXNTZWxlY3RlZEFsbENoZWNrYm94ZXNcIiBjbGFzcz1cInJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1ncmF5LTQwMCBwLTEgbWwtMSBjdXJzb3ItcG9pbnRlciByZWxhdGl2ZVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImdldFNlbGVjdEFsbEVsZW1lbnRzQ2hlY2tib3hTdHlsZSgpXCJcclxuICAgICAgICAgICAgW3RpdGxlXT1cImhhc1NlbGVjdGVkQWxsRWxlbWVudHMoKSA/IG5ndFRyYW5zbGF0ZVNlcnZpY2Uubmd0RGF0YXRhYmxlQ2xlYXJTZWxlY3Rpb24gOiBuZ3RUcmFuc2xhdGVTZXJ2aWNlLm5ndERhdGF0YWJsZVNlbGVjdEFsbFJlZ2lzdGVyc1wiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZVNlbGVjdEFsbEVsZW1lbnRzKClcIj5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImZpbGwtY3VycmVudCBzZWxmLWNlbnRlciBoLTRcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA0NDggNTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNMzQyLjYgODYuNmMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMEwxNjAgMTc4LjdsLTU3LjQtNTcuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsODAgODBjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsMTYwLTE2MHptOTYgMTI4YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDE2MCA0MDIuNyA1NC42IDI5Ny40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxMjggMTI4YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDI1Ni0yNTZ6XCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaGFzU2VsZWN0ZWRBbGxFbGVtZW50cygpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwicm91bmRlZC14bCBhYnNvbHV0ZSB0b3AtMCB0ZXh0LXhzIHJpZ2h0LTAgLW10LTUgLW1yLTIgcHktMSBweC0yIHRleHQtY2VudGVyIHRleHQtd2hpdGUgYmctYmx1ZS01MDBcIj5cclxuICAgICAgICAgICAgICAgIHt7IGdldFBhZ2luYXRpb25Ub3RhbCgpIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0PlxyXG4gICAgPG5ndC1jaGVja2JveCBbKG5nTW9kZWwpXT0nY2hlY2tlZCcgKG5nTW9kZWxDaGFuZ2UpPSdvbkNoZWNrYm94Q2hhbmdlKCRldmVudCknIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgIDwvbmd0LWNoZWNrYm94PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4iXX0=
@@ -1,55 +1,55 @@
1
- import { Component, Optional, Self } from '@angular/core';
2
- import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../../directives/ngt-stylizable/ngt-stylizable.directive";
5
- export class NgtTheadComponent {
6
- constructor(injector, hostElement, ngtStylizableDirective) {
7
- this.injector = injector;
8
- this.hostElement = hostElement;
9
- this.ngtStylizableDirective = ngtStylizableDirective;
10
- if (this.ngtStylizableDirective) {
11
- this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
12
- }
13
- else {
14
- this.ngtStyle = new NgtStylizableService();
15
- }
16
- this.ngtStyle.load(this.injector, 'NgtThead', {
17
- color: {
18
- bg: 'bg-gray-200',
19
- text: '',
20
- border: ''
21
- }
22
- });
23
- this.hostElement.nativeElement.classList += this.ngtStyle.compile([
24
- 'h',
25
- 'px',
26
- 'py',
27
- 'pb',
28
- 'pl',
29
- 'pr',
30
- 'pt',
31
- 'mb',
32
- 'ml',
33
- 'mr',
34
- 'mt',
35
- 'border',
36
- 'color.bg',
37
- 'color.text',
38
- 'color.border',
39
- 'text',
40
- 'font',
41
- 'rounded'
42
- ]);
43
- }
44
- }
45
- NgtTheadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtTheadComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.NgtStylizableDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
46
- NgtTheadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtTheadComponent, selector: "[ngt-thead]", ngImport: i0, template: "<ng-content></ng-content>" });
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtTheadComponent, decorators: [{
48
- type: Component,
49
- args: [{ selector: '[ngt-thead]', template: "<ng-content></ng-content>" }]
50
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.NgtStylizableDirective, decorators: [{
51
- type: Self
52
- }, {
53
- type: Optional
54
- }] }]; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRoZWFkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRoZWFkL25ndC10aGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtZGF0YXRhYmxlL25ndC10aGVhZC9uZ3QtdGhlYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0IsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQzs7O0FBTS9GLE1BQU0sT0FBTyxpQkFBaUI7SUFHMUIsWUFDWSxRQUFrQixFQUNsQixXQUF1QixFQUNILHNCQUE4QztRQUZsRSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ0gsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUUxRSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1NBQ3pFO2FBQU07WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztTQUM5QztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFO1lBQzFDLEtBQUssRUFBRTtnQkFDSCxFQUFFLEVBQUUsYUFBYTtnQkFDakIsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLEVBQUU7YUFDYjtTQUNKLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUM5RCxHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFFBQVE7WUFDUixVQUFVO1lBQ1YsWUFBWTtZQUNaLGNBQWM7WUFDZCxNQUFNO1lBQ04sTUFBTTtZQUNOLFNBQVM7U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDOzs4R0ExQ1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsbURDVDlCLDJCQUF5QjsyRkRTWixpQkFBaUI7a0JBSjdCLFNBQVM7K0JBQ0ksYUFBYTs7MEJBU2xCLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBPcHRpb25hbCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOZ3RTdHlsaXphYmxlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdbbmd0LXRoZWFkXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL25ndC10aGVhZC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTmd0VGhlYWRDb21wb25lbnQge1xuICAgIHB1YmxpYyBuZ3RTdHlsZTogTmd0U3R5bGl6YWJsZVNlcnZpY2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxuICAgICAgICBAU2VsZigpIEBPcHRpb25hbCgpIHByaXZhdGUgbmd0U3R5bGl6YWJsZURpcmVjdGl2ZTogTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSxcbiAgICApIHtcbiAgICAgICAgaWYgKHRoaXMubmd0U3R5bGl6YWJsZURpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5uZ3RTdHlsZSA9IHRoaXMubmd0U3R5bGl6YWJsZURpcmVjdGl2ZS5nZXROZ3RTdHlsaXphYmxlU2VydmljZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZ3RTdHlsZSA9IG5ldyBOZ3RTdHlsaXphYmxlU2VydmljZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5uZ3RTdHlsZS5sb2FkKHRoaXMuaW5qZWN0b3IsICdOZ3RUaGVhZCcsIHtcbiAgICAgICAgICAgIGNvbG9yOiB7XG4gICAgICAgICAgICAgICAgYmc6ICdiZy1ncmF5LTIwMCcsXG4gICAgICAgICAgICAgICAgdGV4dDogJycsXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0ICs9IHRoaXMubmd0U3R5bGUuY29tcGlsZShbXG4gICAgICAgICAgICAnaCcsXG4gICAgICAgICAgICAncHgnLFxuICAgICAgICAgICAgJ3B5JyxcbiAgICAgICAgICAgICdwYicsXG4gICAgICAgICAgICAncGwnLFxuICAgICAgICAgICAgJ3ByJyxcbiAgICAgICAgICAgICdwdCcsXG4gICAgICAgICAgICAnbWInLFxuICAgICAgICAgICAgJ21sJyxcbiAgICAgICAgICAgICdtcicsXG4gICAgICAgICAgICAnbXQnLFxuICAgICAgICAgICAgJ2JvcmRlcicsXG4gICAgICAgICAgICAnY29sb3IuYmcnLFxuICAgICAgICAgICAgJ2NvbG9yLnRleHQnLFxuICAgICAgICAgICAgJ2NvbG9yLmJvcmRlcicsXG4gICAgICAgICAgICAndGV4dCcsXG4gICAgICAgICAgICAnZm9udCcsXG4gICAgICAgICAgICAncm91bmRlZCdcbiAgICAgICAgXSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiJdfQ==
1
+ import { Component, Optional, Self } from '@angular/core';
2
+ import { NgtStylizableService } from '../../../services/ngt-stylizable/ngt-stylizable.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../../directives/ngt-stylizable/ngt-stylizable.directive";
5
+ export class NgtTheadComponent {
6
+ constructor(injector, hostElement, ngtStylizableDirective) {
7
+ this.injector = injector;
8
+ this.hostElement = hostElement;
9
+ this.ngtStylizableDirective = ngtStylizableDirective;
10
+ if (this.ngtStylizableDirective) {
11
+ this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
12
+ }
13
+ else {
14
+ this.ngtStyle = new NgtStylizableService();
15
+ }
16
+ this.ngtStyle.load(this.injector, 'NgtThead', {
17
+ color: {
18
+ bg: 'bg-gray-200',
19
+ text: '',
20
+ border: ''
21
+ }
22
+ });
23
+ this.hostElement.nativeElement.classList += this.ngtStyle.compile([
24
+ 'h',
25
+ 'px',
26
+ 'py',
27
+ 'pb',
28
+ 'pl',
29
+ 'pr',
30
+ 'pt',
31
+ 'mb',
32
+ 'ml',
33
+ 'mr',
34
+ 'mt',
35
+ 'border',
36
+ 'color.bg',
37
+ 'color.text',
38
+ 'color.border',
39
+ 'text',
40
+ 'font',
41
+ 'rounded'
42
+ ]);
43
+ }
44
+ }
45
+ NgtTheadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtTheadComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.NgtStylizableDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
46
+ NgtTheadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtTheadComponent, selector: "[ngt-thead]", ngImport: i0, template: "<ng-content></ng-content>" });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtTheadComponent, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: '[ngt-thead]', template: "<ng-content></ng-content>" }]
50
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.NgtStylizableDirective, decorators: [{
51
+ type: Self
52
+ }, {
53
+ type: Optional
54
+ }] }]; } });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LXRoZWFkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kYXRhdGFibGUvbmd0LXRoZWFkL25ndC10aGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtZGF0YXRhYmxlL25ndC10aGVhZC9uZ3QtdGhlYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0IsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQzs7O0FBTS9GLE1BQU0sT0FBTyxpQkFBaUI7SUFHMUIsWUFDWSxRQUFrQixFQUNsQixXQUF1QixFQUNILHNCQUE4QztRQUZsRSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ0gsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUUxRSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1NBQ3pFO2FBQU07WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztTQUM5QztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFO1lBQzFDLEtBQUssRUFBRTtnQkFDSCxFQUFFLEVBQUUsYUFBYTtnQkFDakIsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLEVBQUU7YUFDYjtTQUNKLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUM5RCxHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFFBQVE7WUFDUixVQUFVO1lBQ1YsWUFBWTtZQUNaLGNBQWM7WUFDZCxNQUFNO1lBQ04sTUFBTTtZQUNOLFNBQVM7U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDOzs4R0ExQ1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsbURDVDlCLDJCQUF5QjsyRkRTWixpQkFBaUI7a0JBSjdCLFNBQVM7K0JBQ0ksYUFBYTs7MEJBU2xCLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBPcHRpb25hbCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdbbmd0LXRoZWFkXScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmd0LXRoZWFkLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd0VGhlYWRDb21wb25lbnQge1xyXG4gICAgcHVibGljIG5ndFN0eWxlOiBOZ3RTdHlsaXphYmxlU2VydmljZTtcclxuXHJcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBAU2VsZigpIEBPcHRpb25hbCgpIHByaXZhdGUgbmd0U3R5bGl6YWJsZURpcmVjdGl2ZTogTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSxcclxuICAgICkge1xyXG4gICAgICAgIGlmICh0aGlzLm5ndFN0eWxpemFibGVEaXJlY3RpdmUpIHtcclxuICAgICAgICAgICAgdGhpcy5uZ3RTdHlsZSA9IHRoaXMubmd0U3R5bGl6YWJsZURpcmVjdGl2ZS5nZXROZ3RTdHlsaXphYmxlU2VydmljZSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSBuZXcgTmd0U3R5bGl6YWJsZVNlcnZpY2UoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubmd0U3R5bGUubG9hZCh0aGlzLmluamVjdG9yLCAnTmd0VGhlYWQnLCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB7XHJcbiAgICAgICAgICAgICAgICBiZzogJ2JnLWdyYXktMjAwJyxcclxuICAgICAgICAgICAgICAgIHRleHQ6ICcnLFxyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnJ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QgKz0gdGhpcy5uZ3RTdHlsZS5jb21waWxlKFtcclxuICAgICAgICAgICAgJ2gnLFxyXG4gICAgICAgICAgICAncHgnLFxyXG4gICAgICAgICAgICAncHknLFxyXG4gICAgICAgICAgICAncGInLFxyXG4gICAgICAgICAgICAncGwnLFxyXG4gICAgICAgICAgICAncHInLFxyXG4gICAgICAgICAgICAncHQnLFxyXG4gICAgICAgICAgICAnbWInLFxyXG4gICAgICAgICAgICAnbWwnLFxyXG4gICAgICAgICAgICAnbXInLFxyXG4gICAgICAgICAgICAnbXQnLFxyXG4gICAgICAgICAgICAnYm9yZGVyJyxcclxuICAgICAgICAgICAgJ2NvbG9yLmJnJyxcclxuICAgICAgICAgICAgJ2NvbG9yLnRleHQnLFxyXG4gICAgICAgICAgICAnY29sb3IuYm9yZGVyJyxcclxuICAgICAgICAgICAgJ3RleHQnLFxyXG4gICAgICAgICAgICAnZm9udCcsXHJcbiAgICAgICAgICAgICdyb3VuZGVkJ1xyXG4gICAgICAgIF0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD4iXX0=