@testgorilla/tgo-ui 11.22.2 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/fesm2022/testgorilla-tgo-ui-components-accordion.mjs +335 -229
  2. package/fesm2022/testgorilla-tgo-ui-components-accordion.mjs.map +1 -1
  3. package/fesm2022/testgorilla-tgo-ui-components-ai-audio-circle.mjs +547 -465
  4. package/fesm2022/testgorilla-tgo-ui-components-ai-audio-circle.mjs.map +1 -1
  5. package/fesm2022/testgorilla-tgo-ui-components-ai-caveat.mjs +160 -75
  6. package/fesm2022/testgorilla-tgo-ui-components-ai-caveat.mjs.map +1 -1
  7. package/fesm2022/testgorilla-tgo-ui-components-ai-feedback.mjs +678 -278
  8. package/fesm2022/testgorilla-tgo-ui-components-ai-feedback.mjs.map +1 -1
  9. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs +337 -274
  10. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs.map +1 -1
  11. package/fesm2022/testgorilla-tgo-ui-components-audio-waveform.mjs +351 -192
  12. package/fesm2022/testgorilla-tgo-ui-components-audio-waveform.mjs.map +1 -1
  13. package/fesm2022/testgorilla-tgo-ui-components-autocomplete-v2.mjs +1950 -960
  14. package/fesm2022/testgorilla-tgo-ui-components-autocomplete-v2.mjs.map +1 -1
  15. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs +1206 -1044
  16. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs.map +1 -1
  17. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs +328 -182
  18. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs.map +1 -1
  19. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs +383 -203
  20. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs.map +1 -1
  21. package/fesm2022/testgorilla-tgo-ui-components-breadcrumb.mjs +553 -261
  22. package/fesm2022/testgorilla-tgo-ui-components-breadcrumb.mjs.map +1 -1
  23. package/fesm2022/testgorilla-tgo-ui-components-button.mjs +709 -739
  24. package/fesm2022/testgorilla-tgo-ui-components-button.mjs.map +1 -1
  25. package/fesm2022/testgorilla-tgo-ui-components-card.mjs +219 -184
  26. package/fesm2022/testgorilla-tgo-ui-components-card.mjs.map +1 -1
  27. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs +515 -458
  28. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs.map +1 -1
  29. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs +423 -162
  30. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs.map +1 -1
  31. package/fesm2022/testgorilla-tgo-ui-components-core.mjs +10784 -10996
  32. package/fesm2022/testgorilla-tgo-ui-components-core.mjs.map +1 -1
  33. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs +810 -533
  34. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs.map +1 -1
  35. package/fesm2022/testgorilla-tgo-ui-components-device-control.mjs +473 -116
  36. package/fesm2022/testgorilla-tgo-ui-components-device-control.mjs.map +1 -1
  37. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs +1149 -540
  38. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs.map +1 -1
  39. package/fesm2022/testgorilla-tgo-ui-components-divider.mjs +148 -84
  40. package/fesm2022/testgorilla-tgo-ui-components-divider.mjs.map +1 -1
  41. package/fesm2022/testgorilla-tgo-ui-components-donut-chart.mjs +239 -142
  42. package/fesm2022/testgorilla-tgo-ui-components-donut-chart.mjs.map +1 -1
  43. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs +599 -467
  44. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs.map +1 -1
  45. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs +126 -70
  46. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs.map +1 -1
  47. package/fesm2022/testgorilla-tgo-ui-components-empty-state.mjs +324 -329
  48. package/fesm2022/testgorilla-tgo-ui-components-empty-state.mjs.map +1 -1
  49. package/fesm2022/testgorilla-tgo-ui-components-field.mjs +969 -648
  50. package/fesm2022/testgorilla-tgo-ui-components-field.mjs.map +1 -1
  51. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs +553 -419
  52. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs.map +1 -1
  53. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs +847 -452
  54. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs.map +1 -1
  55. package/fesm2022/testgorilla-tgo-ui-components-gaussian-chart.mjs +398 -302
  56. package/fesm2022/testgorilla-tgo-ui-components-gaussian-chart.mjs.map +1 -1
  57. package/fesm2022/testgorilla-tgo-ui-components-icon-label.mjs +162 -95
  58. package/fesm2022/testgorilla-tgo-ui-components-icon-label.mjs.map +1 -1
  59. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs +1825 -1789
  60. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs.map +1 -1
  61. package/fesm2022/testgorilla-tgo-ui-components-infinite-scroll-table.mjs +1018 -672
  62. package/fesm2022/testgorilla-tgo-ui-components-infinite-scroll-table.mjs.map +1 -1
  63. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs +758 -368
  64. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs.map +1 -1
  65. package/fesm2022/testgorilla-tgo-ui-components-logo.mjs +204 -212
  66. package/fesm2022/testgorilla-tgo-ui-components-logo.mjs.map +1 -1
  67. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs +183 -48
  68. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs.map +1 -1
  69. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs +243 -79
  70. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs.map +1 -1
  71. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs +751 -361
  72. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs.map +1 -1
  73. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs +1122 -385
  74. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs.map +1 -1
  75. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs +689 -413
  76. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs.map +1 -1
  77. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs +227 -92
  78. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs.map +1 -1
  79. package/fesm2022/testgorilla-tgo-ui-components-paginator.mjs +174 -113
  80. package/fesm2022/testgorilla-tgo-ui-components-paginator.mjs.map +1 -1
  81. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs +367 -165
  82. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs.map +1 -1
  83. package/fesm2022/testgorilla-tgo-ui-components-password-strength.mjs +253 -118
  84. package/fesm2022/testgorilla-tgo-ui-components-password-strength.mjs.map +1 -1
  85. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs +730 -444
  86. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs.map +1 -1
  87. package/fesm2022/testgorilla-tgo-ui-components-popover.mjs +533 -221
  88. package/fesm2022/testgorilla-tgo-ui-components-popover.mjs.map +1 -1
  89. package/fesm2022/testgorilla-tgo-ui-components-popup-tip.mjs +274 -76
  90. package/fesm2022/testgorilla-tgo-ui-components-popup-tip.mjs.map +1 -1
  91. package/fesm2022/testgorilla-tgo-ui-components-progress-bar.mjs +184 -124
  92. package/fesm2022/testgorilla-tgo-ui-components-progress-bar.mjs.map +1 -1
  93. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs +1223 -574
  94. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs.map +1 -1
  95. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs +249 -160
  96. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs.map +1 -1
  97. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs +447 -439
  98. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs.map +1 -1
  99. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs +226 -150
  100. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs.map +1 -1
  101. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs +255 -67
  102. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs.map +1 -1
  103. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs +205 -162
  104. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs.map +1 -1
  105. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs +245 -153
  106. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs.map +1 -1
  107. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs +274 -140
  108. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs.map +1 -1
  109. package/fesm2022/testgorilla-tgo-ui-components-segmented-toggle.mjs +319 -147
  110. package/fesm2022/testgorilla-tgo-ui-components-segmented-toggle.mjs.map +1 -1
  111. package/fesm2022/testgorilla-tgo-ui-components-selectable-card.mjs +286 -84
  112. package/fesm2022/testgorilla-tgo-ui-components-selectable-card.mjs.map +1 -1
  113. package/fesm2022/testgorilla-tgo-ui-components-side-navigation.mjs +660 -208
  114. package/fesm2022/testgorilla-tgo-ui-components-side-navigation.mjs.map +1 -1
  115. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs +579 -320
  116. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs.map +1 -1
  117. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs +419 -200
  118. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs.map +1 -1
  119. package/fesm2022/testgorilla-tgo-ui-components-skeleton.mjs +132 -80
  120. package/fesm2022/testgorilla-tgo-ui-components-skeleton.mjs.map +1 -1
  121. package/fesm2022/testgorilla-tgo-ui-components-slider.mjs +741 -390
  122. package/fesm2022/testgorilla-tgo-ui-components-slider.mjs.map +1 -1
  123. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs +455 -329
  124. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs.map +1 -1
  125. package/fesm2022/testgorilla-tgo-ui-components-spider-chart.mjs +543 -514
  126. package/fesm2022/testgorilla-tgo-ui-components-spider-chart.mjs.map +1 -1
  127. package/fesm2022/testgorilla-tgo-ui-components-spinner.mjs +193 -104
  128. package/fesm2022/testgorilla-tgo-ui-components-spinner.mjs.map +1 -1
  129. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs +760 -524
  130. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs.map +1 -1
  131. package/fesm2022/testgorilla-tgo-ui-components-table.mjs +714 -415
  132. package/fesm2022/testgorilla-tgo-ui-components-table.mjs.map +1 -1
  133. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs +847 -438
  134. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs.map +1 -1
  135. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs +535 -275
  136. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs.map +1 -1
  137. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs +316 -246
  138. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs.map +1 -1
  139. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs +404 -284
  140. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs.map +1 -1
  141. package/fesm2022/testgorilla-tgo-ui-components-universal-skills.mjs +664 -383
  142. package/fesm2022/testgorilla-tgo-ui-components-universal-skills.mjs.map +1 -1
  143. package/fesm2022/testgorilla-tgo-ui-components-validation-error.mjs +201 -112
  144. package/fesm2022/testgorilla-tgo-ui-components-validation-error.mjs.map +1 -1
  145. package/fesm2022/testgorilla-tgo-ui-components-write-with-ai.mjs +1014 -458
  146. package/fesm2022/testgorilla-tgo-ui-components-write-with-ai.mjs.map +1 -1
  147. package/fesm2022/testgorilla-tgo-ui.mjs +147 -155
  148. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  149. package/mcp/catalog.json +1 -1
  150. package/package.json +16 -17
  151. package/projects/tgo-canopy-ui/assets/icons/rebrand/Sequences-filled.svg +3 -0
  152. package/projects/tgo-canopy-ui/assets/icons/rebrand/Sequences-in-line.svg +3 -0
  153. package/projects/tgo-canopy-ui/theme/_palette.scss +23 -18
  154. package/types/testgorilla-tgo-ui-components-accordion.d.ts +214 -158
  155. package/types/testgorilla-tgo-ui-components-ai-audio-circle.d.ts +93 -69
  156. package/types/testgorilla-tgo-ui-components-ai-caveat.d.ts +37 -34
  157. package/types/testgorilla-tgo-ui-components-ai-feedback.d.ts +126 -86
  158. package/types/testgorilla-tgo-ui-components-alert-banner.d.ts +260 -185
  159. package/types/testgorilla-tgo-ui-components-audio-waveform.d.ts +96 -67
  160. package/types/testgorilla-tgo-ui-components-autocomplete-v2.d.ts +455 -256
  161. package/types/testgorilla-tgo-ui-components-autocomplete.d.ts +545 -390
  162. package/types/testgorilla-tgo-ui-components-avatar.d.ts +128 -102
  163. package/types/testgorilla-tgo-ui-components-badge.d.ts +191 -139
  164. package/types/testgorilla-tgo-ui-components-breadcrumb.d.ts +100 -62
  165. package/types/testgorilla-tgo-ui-components-button.d.ts +479 -340
  166. package/types/testgorilla-tgo-ui-components-card.d.ts +153 -114
  167. package/types/testgorilla-tgo-ui-components-checkbox.d.ts +299 -223
  168. package/types/testgorilla-tgo-ui-components-checklist.d.ts +149 -97
  169. package/types/testgorilla-tgo-ui-components-core.d.ts +307 -295
  170. package/types/testgorilla-tgo-ui-components-datepicker.d.ts +404 -299
  171. package/types/testgorilla-tgo-ui-components-device-control.d.ts +151 -81
  172. package/types/testgorilla-tgo-ui-components-dialog.d.ts +442 -329
  173. package/types/testgorilla-tgo-ui-components-divider.d.ts +64 -51
  174. package/types/testgorilla-tgo-ui-components-donut-chart.d.ts +41 -37
  175. package/types/testgorilla-tgo-ui-components-dropdown.d.ts +335 -241
  176. package/types/testgorilla-tgo-ui-components-elevation-shadow.d.ts +48 -43
  177. package/types/testgorilla-tgo-ui-components-empty-state.d.ts +317 -215
  178. package/types/testgorilla-tgo-ui-components-field.d.ts +559 -388
  179. package/types/testgorilla-tgo-ui-components-file-upload.d.ts +230 -168
  180. package/types/testgorilla-tgo-ui-components-filter-button.d.ts +263 -206
  181. package/types/testgorilla-tgo-ui-components-gaussian-chart.d.ts +107 -94
  182. package/types/testgorilla-tgo-ui-components-icon-label.d.ts +84 -61
  183. package/types/testgorilla-tgo-ui-components-icon.d.ts +137 -110
  184. package/types/testgorilla-tgo-ui-components-infinite-scroll-table.d.ts +429 -303
  185. package/types/testgorilla-tgo-ui-components-inline-field.d.ts +338 -254
  186. package/types/testgorilla-tgo-ui-components-logo.d.ts +119 -101
  187. package/types/testgorilla-tgo-ui-components-media-card.d.ts +51 -35
  188. package/types/testgorilla-tgo-ui-components-media-dialog.d.ts +40 -45
  189. package/types/testgorilla-tgo-ui-components-multi-input.d.ts +283 -194
  190. package/types/testgorilla-tgo-ui-components-navbar.d.ts +326 -208
  191. package/types/testgorilla-tgo-ui-components-overflow-menu.d.ts +276 -204
  192. package/types/testgorilla-tgo-ui-components-page-header.d.ts +67 -50
  193. package/types/testgorilla-tgo-ui-components-paginator.d.ts +103 -70
  194. package/types/testgorilla-tgo-ui-components-password-criteria.d.ts +67 -58
  195. package/types/testgorilla-tgo-ui-components-password-strength.d.ts +66 -57
  196. package/types/testgorilla-tgo-ui-components-phone-input.d.ts +217 -175
  197. package/types/testgorilla-tgo-ui-components-popover.d.ts +94 -53
  198. package/types/testgorilla-tgo-ui-components-popup-tip.d.ts +81 -44
  199. package/types/testgorilla-tgo-ui-components-progress-bar.d.ts +115 -84
  200. package/types/testgorilla-tgo-ui-components-prompt.d.ts +315 -219
  201. package/types/testgorilla-tgo-ui-components-radial-progress.d.ts +146 -107
  202. package/types/testgorilla-tgo-ui-components-radio-button.d.ts +296 -219
  203. package/types/testgorilla-tgo-ui-components-rating.d.ts +134 -95
  204. package/types/testgorilla-tgo-ui-components-scale-table.d.ts +67 -47
  205. package/types/testgorilla-tgo-ui-components-scale.d.ts +91 -66
  206. package/types/testgorilla-tgo-ui-components-segmented-bar.d.ts +118 -89
  207. package/types/testgorilla-tgo-ui-components-segmented-button.d.ts +107 -80
  208. package/types/testgorilla-tgo-ui-components-segmented-toggle.d.ts +138 -105
  209. package/types/testgorilla-tgo-ui-components-selectable-card.d.ts +90 -56
  210. package/types/testgorilla-tgo-ui-components-side-navigation.d.ts +183 -107
  211. package/types/testgorilla-tgo-ui-components-side-panel.d.ts +156 -145
  212. package/types/testgorilla-tgo-ui-components-side-sheet.d.ts +98 -89
  213. package/types/testgorilla-tgo-ui-components-skeleton.d.ts +50 -33
  214. package/types/testgorilla-tgo-ui-components-slider.d.ts +278 -198
  215. package/types/testgorilla-tgo-ui-components-snackbar.d.ts +211 -159
  216. package/types/testgorilla-tgo-ui-components-spider-chart.d.ts +140 -121
  217. package/types/testgorilla-tgo-ui-components-spinner.d.ts +93 -72
  218. package/types/testgorilla-tgo-ui-components-stepper.d.ts +480 -338
  219. package/types/testgorilla-tgo-ui-components-table.d.ts +280 -233
  220. package/types/testgorilla-tgo-ui-components-tabs.d.ts +282 -183
  221. package/types/testgorilla-tgo-ui-components-tag.d.ts +266 -193
  222. package/types/testgorilla-tgo-ui-components-toggle.d.ts +180 -132
  223. package/types/testgorilla-tgo-ui-components-tooltip.d.ts +142 -105
  224. package/types/testgorilla-tgo-ui-components-universal-skills.d.ts +165 -144
  225. package/types/testgorilla-tgo-ui-components-validation-error.d.ts +70 -51
  226. package/types/testgorilla-tgo-ui-components-write-with-ai.d.ts +210 -133
  227. package/types/testgorilla-tgo-ui.d.ts +52 -45
@@ -1,538 +1,815 @@
1
- import { formatDate, NgClass, NgTemplateOutlet, AsyncPipe, CommonModule } from '@angular/common';
2
- import * as i0 from '@angular/core';
3
- import { Injectable, inject, Directive, EventEmitter, Output, Input, HostBinding, Optional, Inject, Self, ChangeDetectionStrategy, ViewEncapsulation, Component, NgModule } from '@angular/core';
4
- import * as i1 from '@angular/forms';
5
- import { FormGroup, FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
6
- import { NativeDateAdapter, DateAdapter, MAT_DATE_FORMATS, MatNativeDateModule } from '@angular/material/core';
7
- import { MatDatepickerInput, MatDatepickerToggle, MatDatepickerToggleIcon, MatDatepicker, MatDateRangeInput, MatStartDate, MatEndDate, MatDateRangePicker, MatDatepickerModule } from '@angular/material/datepicker';
8
- import { MatFormField, MatLabel, MatSuffix, MatHint, MatFormFieldModule } from '@angular/material/form-field';
9
- import { MatInput, MatInputModule } from '@angular/material/input';
10
- import { adjustLightness, UiTranslatePipe, HasValidationErrorPipe } from '@testgorilla/tgo-ui/components/core';
11
- import { IconComponent, IconComponentModule } from '@testgorilla/tgo-ui/components/icon';
12
- import { ValidationErrorComponent, ValidationErrorModule } from '@testgorilla/tgo-ui/components/validation-error';
13
-
14
- class DatepickerService {
15
- #useBrowserTimezone = false;
16
- set useBrowserTimezone(value) {
17
- this.#useBrowserTimezone = value;
18
- }
19
- get useBrowserTimezone() {
20
- return this.#useBrowserTimezone;
21
- }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
23
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerService, providedIn: 'root' }); }
24
- }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerService, decorators: [{
26
- type: Injectable,
27
- args: [{
28
- providedIn: 'root',
29
- }]
30
- }] });
31
-
1
+ import { AsyncPipe, CommonModule, NgClass, NgTemplateOutlet, formatDate } from "@angular/common";
2
+ import * as i0 from "@angular/core";
3
+ import { ChangeDetectionStrategy, Component, Directive, EventEmitter, HostBinding, Inject, Injectable, Input, NgModule, Optional, Output, Self, ViewEncapsulation, inject } from "@angular/core";
4
+ import * as i1 from "@angular/forms";
5
+ import { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from "@angular/forms";
6
+ import { DateAdapter, MAT_DATE_FORMATS, MatNativeDateModule, NativeDateAdapter } from "@angular/material/core";
7
+ import { MatDateRangeInput, MatDateRangePicker, MatDatepicker, MatDatepickerInput, MatDatepickerModule, MatDatepickerToggle, MatDatepickerToggleIcon, MatEndDate, MatStartDate } from "@angular/material/datepicker";
8
+ import { MatFormField, MatFormFieldModule, MatHint, MatLabel, MatSuffix } from "@angular/material/form-field";
9
+ import { MatInput, MatInputModule } from "@angular/material/input";
10
+ import { HasValidationErrorPipe, UiTranslatePipe, adjustLightness } from "@testgorilla/tgo-ui/components/core";
11
+ import { IconComponent, IconComponentModule } from "@testgorilla/tgo-ui/components/icon";
12
+ import { ValidationErrorComponent, ValidationErrorModule } from "@testgorilla/tgo-ui/components/validation-error";
13
+ var DatepickerService = class DatepickerService {
14
+ #useBrowserTimezone = false;
15
+ set useBrowserTimezone(value) {
16
+ this.#useBrowserTimezone = value;
17
+ }
18
+ get useBrowserTimezone() {
19
+ return this.#useBrowserTimezone;
20
+ }
21
+ static {
22
+ this.ɵfac = i0.ɵɵngDeclareFactory({
23
+ minVersion: "12.0.0",
24
+ version: "22.2.4",
25
+ ngImport: i0,
26
+ type: DatepickerService,
27
+ deps: [],
28
+ target: i0.ɵɵFactoryTarget.Injectable
29
+ });
30
+ }
31
+ static {
32
+ this.ɵprov = i0.ɵɵngDeclareInjectable({
33
+ minVersion: "12.0.0",
34
+ version: "22.2.4",
35
+ ngImport: i0,
36
+ type: DatepickerService,
37
+ providedIn: "root"
38
+ });
39
+ }
40
+ };
41
+ i0.ɵɵngDeclareClassMetadata({
42
+ minVersion: "12.0.0",
43
+ version: "22.2.4",
44
+ ngImport: i0,
45
+ type: DatepickerService,
46
+ decorators: [{
47
+ type: Injectable,
48
+ args: [{ providedIn: "root" }]
49
+ }]
50
+ });
32
51
  const UI_DATE_FORMATS = {
33
- parse: {
34
- dateInput: { day: 'numeric', month: 'numeric', year: 'numeric' },
35
- },
36
- display: {
37
- dateInput: 'input',
38
- monthYearLabel: { year: 'numeric', month: 'short' },
39
- dateA11yLabel: { year: 'numeric', month: 'long', day: 'numeric' },
40
- monthYearA11yLabel: { year: 'numeric', month: 'long' },
41
- },
52
+ parse: { dateInput: {
53
+ day: "numeric",
54
+ month: "numeric",
55
+ year: "numeric"
56
+ } },
57
+ display: {
58
+ dateInput: "input",
59
+ monthYearLabel: {
60
+ year: "numeric",
61
+ month: "short"
62
+ },
63
+ dateA11yLabel: {
64
+ year: "numeric",
65
+ month: "long",
66
+ day: "numeric"
67
+ },
68
+ monthYearA11yLabel: {
69
+ year: "numeric",
70
+ month: "long"
71
+ }
72
+ }
42
73
  };
43
- class UiDateAdapter extends NativeDateAdapter {
44
- #datepickerService = inject(DatepickerService);
45
- constructor() {
46
- super();
47
- }
48
- format(date) {
49
- if (!this.#datepickerService.useBrowserTimezone) {
50
- return formatDate(date, 'MM/dd/yyyy', 'en-US');
51
- }
52
- const locale = navigator.language;
53
- const options = {
54
- timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
55
- dateStyle: 'short',
56
- };
57
- return new Intl.DateTimeFormat(locale, options).format(date);
58
- }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: UiDateAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
60
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: UiDateAdapter }); }
61
- }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: UiDateAdapter, decorators: [{
63
- type: Injectable
64
- }], ctorParameters: () => [] });
65
-
66
- class CustomDateAdapter extends NativeDateAdapter {
67
- format(date) {
68
- return formatDate(date, 'MM/yyyy', 'en-US');
69
- }
70
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CustomDateAdapter, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
71
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CustomDateAdapter }); }
72
- }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CustomDateAdapter, decorators: [{
74
- type: Injectable
75
- }] });
74
+ var UiDateAdapter = class UiDateAdapter extends NativeDateAdapter {
75
+ #datepickerService = inject(DatepickerService);
76
+ constructor() {
77
+ super();
78
+ }
79
+ format(date) {
80
+ if (!this.#datepickerService.useBrowserTimezone) return formatDate(date, "MM/dd/yyyy", "en-US");
81
+ const locale = navigator.language;
82
+ const options = {
83
+ timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
84
+ dateStyle: "short"
85
+ };
86
+ return new Intl.DateTimeFormat(locale, options).format(date);
87
+ }
88
+ static {
89
+ this.ɵfac = i0.ɵɵngDeclareFactory({
90
+ minVersion: "12.0.0",
91
+ version: "22.2.4",
92
+ ngImport: i0,
93
+ type: UiDateAdapter,
94
+ deps: [],
95
+ target: i0.ɵɵFactoryTarget.Injectable
96
+ });
97
+ }
98
+ static {
99
+ this.ɵprov = i0.ɵɵngDeclareInjectable({
100
+ minVersion: "12.0.0",
101
+ version: "22.2.4",
102
+ ngImport: i0,
103
+ type: UiDateAdapter
104
+ });
105
+ }
106
+ };
107
+ i0.ɵɵngDeclareClassMetadata({
108
+ minVersion: "12.0.0",
109
+ version: "22.2.4",
110
+ ngImport: i0,
111
+ type: UiDateAdapter,
112
+ decorators: [{ type: Injectable }],
113
+ ctorParameters: () => []
114
+ });
115
+ var CustomDateAdapter = class CustomDateAdapter extends NativeDateAdapter {
116
+ format(date) {
117
+ return formatDate(date, "MM/yyyy", "en-US");
118
+ }
119
+ static {
120
+ this.ɵfac = i0.ɵɵngDeclareFactory({
121
+ minVersion: "12.0.0",
122
+ version: "22.2.4",
123
+ ngImport: i0,
124
+ type: CustomDateAdapter,
125
+ deps: null,
126
+ target: i0.ɵɵFactoryTarget.Injectable
127
+ });
128
+ }
129
+ static {
130
+ this.ɵprov = i0.ɵɵngDeclareInjectable({
131
+ minVersion: "12.0.0",
132
+ version: "22.2.4",
133
+ ngImport: i0,
134
+ type: CustomDateAdapter
135
+ });
136
+ }
137
+ };
138
+ i0.ɵɵngDeclareClassMetadata({
139
+ minVersion: "12.0.0",
140
+ version: "22.2.4",
141
+ ngImport: i0,
142
+ type: CustomDateAdapter,
143
+ decorators: [{ type: Injectable }]
144
+ });
76
145
  const FORMATS = {
77
- parse: {
78
- dateInput: 'MM/YYYY',
79
- },
80
- display: {
81
- dateInput: 'MM/YYYY',
82
- monthYearLabel: 'MMM YYYY',
83
- dateA11yLabel: 'LL',
84
- monthYearA11yLabel: 'MMMM YYYY',
85
- },
146
+ parse: { dateInput: "MM/YYYY" },
147
+ display: {
148
+ dateInput: "MM/YYYY",
149
+ monthYearLabel: "MMM YYYY",
150
+ dateA11yLabel: "LL",
151
+ monthYearA11yLabel: "MMMM YYYY"
152
+ }
86
153
  };
87
- class NoDateFormatDirective {
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: NoDateFormatDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
89
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: NoDateFormatDirective, isStandalone: true, selector: "[appNoDateFormat]", providers: [
90
- {
91
- provide: DateAdapter,
92
- useClass: CustomDateAdapter,
93
- },
94
- {
95
- provide: MAT_DATE_FORMATS,
96
- useValue: FORMATS,
97
- },
98
- ], ngImport: i0 }); }
99
- }
100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: NoDateFormatDirective, decorators: [{
101
- type: Directive,
102
- args: [{
103
- // eslint-disable-next-line @angular-eslint/directive-selector -- public directive selector; ui-prefix rename is breaking, deferred to the breaking-change MAJOR (see plan)
104
- selector: '[appNoDateFormat]',
105
- providers: [
106
- {
107
- provide: DateAdapter,
108
- useClass: CustomDateAdapter,
109
- },
110
- {
111
- provide: MAT_DATE_FORMATS,
112
- useValue: FORMATS,
113
- },
114
- ],
115
- standalone: true,
116
- }]
117
- }] });
118
-
119
- // eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
120
- class DatepickerComponent {
121
- get rangeStartTestId() {
122
- return this.testId ? `${this.testId}-start` : 'datepicker-range-start';
123
- }
124
- get rangeEndTestId() {
125
- return this.testId ? `${this.testId}-end` : 'datepicker-range-end';
126
- }
127
- /**
128
- * Input field errors
129
- *
130
- * @type {string}
131
- * @memberof DatepickerComponent
132
- */
133
- set errors(errors) {
134
- this._errors = errors?.filter(Boolean) ?? [];
135
- this.errorsLength = this.setErrorsLength();
136
- }
137
- /**
138
- * Use browser timezone
139
- * @type boolean
140
- * @memberof DatepickerComponent
141
- */
142
- set browserTimezone(value) {
143
- this.datepickerService.useBrowserTimezone = value;
144
- }
145
- constructor(defaultAppTheme, cdr, ngControl, datepickerService) {
146
- this.defaultAppTheme = defaultAppTheme;
147
- this.cdr = cdr;
148
- this.ngControl = ngControl;
149
- this.datepickerService = datepickerService;
150
- this.class = 'ui-datepicker';
151
- /**
152
- * Form field label
153
- *
154
- * @type {string}
155
- * @memberof DatepickerComponent
156
- */
157
- this.label = '';
158
- /**
159
- * Input placeholder
160
- *
161
- * @type {string}
162
- * @memberof DatepickerComponent
163
- */
164
- this.placeholder = '';
165
- this.testId = null;
166
- /**
167
- * Input id
168
- *
169
- * @type {string}
170
- * @memberof DatepickerComponent
171
- */
172
- this.id = '';
173
- /**
174
- * Input is update only on blur
175
- *
176
- * @type {Boolean}
177
- * @memberof DatepickerComponent
178
- */
179
- this.updateOnBlur = false;
180
- /**
181
- * Show reserved content below form field
182
- *
183
- * @type {boolean}
184
- * @memberof DatepickerComponent
185
- */
186
- this.showBottomContent = true;
187
- /**
188
- * Set full width DatepickerComponent
189
- *
190
- * @type {boolean}
191
- * @memberof DatepickerComponent
192
- */
193
- this.fullWidth = false;
194
- /**
195
- * Show and pick date without day
196
- * @default false
197
- * @type {boolean}
198
- * @memberof DatepickerComponent
199
- */
200
- this.monthPicker = false;
201
- /**
202
- *
203
- * Defines the application theme
204
- *
205
- * @type {ApplicationTheme}
206
- * @memberof DatepickerComponent
207
- */
208
- this.applicationTheme = 'light';
209
- /**
210
- * Hide in-build errors for Reactive Forms
211
- *
212
- * @type {number}
213
- * @memberof DatepickerComponent
214
- */
215
- this.hideBuiltInErrors = false;
216
- /**
217
- * Hide label in errors
218
- *
219
- * @type {number}
220
- * @memberof DatepickerComponent
221
- */
222
- this.hideLabelInErrors = false;
223
- /**
224
- * Prevent user input
225
- *
226
- * @type {boolean}
227
- * @memberof DatepickerComponent
228
- */
229
- this.preventUserInput = false;
230
- /**
231
- * Color of the option hover.
232
- * Defaults to Test Gorilla primary color.
233
- *
234
- * @type {string}
235
- * @memberof DatepickerComponent
236
- */
237
- this.companyColor = '';
238
- /**
239
- * @ignore
240
- */
241
- this.onChange = () => { };
242
- /**
243
- * @ignore
244
- */
245
- this.onTouch = () => { };
246
- /**
247
- * Event emitted when the value is change - when used outside of form
248
- *
249
- * @type {Date}
250
- * @memberof DatepickerComponent
251
- */
252
- this.changed = new EventEmitter();
253
- this.range = new FormGroup({
254
- start: new FormControl(null),
255
- end: new FormControl(null),
256
- });
257
- this.translationContext = 'DATEPICKER.';
258
- if (defaultAppTheme) {
259
- this.applicationTheme = defaultAppTheme;
260
- }
261
- if (this.ngControl !== null) {
262
- this.ngControl.valueAccessor = this;
263
- }
264
- }
265
- get hint() {
266
- if (this.hintMessage === undefined) {
267
- return this.isRange ? 'MM/DD/YYYY - MM/DD/YYYY' : this.monthPicker ? 'MM/YYYY' : 'MM/DD/YYYY';
268
- }
269
- return this.hintMessage;
270
- }
271
- /**
272
- * Used to mark component view as dirty when touched programmatically with markAsTouched/markAllAsTouched or errors
273
- * to display validation errors that might happen (e.g. required)
274
- */
275
- // eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
276
- ngDoCheck() {
277
- if (this.ngControl?.touched || this.ngControl?.errors) {
278
- this.cdr.markForCheck();
279
- }
280
- }
281
- // eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
282
- ngOnInit() {
283
- document.body.setAttribute('theme', this.applicationTheme);
284
- this.setStyleVariable();
285
- }
286
- // eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
287
- ngOnChanges(changes) {
288
- if (this.isRange) {
289
- this.setRange();
290
- }
291
- if (changes['companyColor']) {
292
- this.setStyleVariable();
293
- }
294
- }
295
- // Set errors length for validation
296
- // Consider only those errors which are not empty
297
- setErrorsLength() {
298
- if (this._errors) {
299
- return this._errors.filter(err => Boolean(err)).length > 0 ? true : false;
300
- }
301
- return false;
302
- }
303
- onValueChange(value) {
304
- this.writeValue(value);
305
- this.errorsLength = this.setErrorsLength();
306
- if (!this.updateOnBlur) {
307
- this.onTouch();
308
- }
309
- this.onChange(value);
310
- this.changed.emit(value);
311
- }
312
- writeValue(value) {
313
- this.value = value;
314
- if (this.isRange) {
315
- this.setRange();
316
- }
317
- }
318
- registerOnChange(fn) {
319
- this.onChange = fn;
320
- }
321
- registerOnTouched(fn) {
322
- this.onTouch = fn;
323
- }
324
- setDisabledState(isDisabled) {
325
- this.disabled = isDisabled;
326
- this.cdr.markForCheck();
327
- }
328
- handleCloseRangePicker() {
329
- if (this.setSingleDateRangeOnBlur) {
330
- this.fillSingleDateRange(true);
331
- }
332
- }
333
- fillSingleDateRange(isStart) {
334
- const { start, end } = this.range.controls;
335
- const sourceControl = isStart ? start : end;
336
- const targetControl = isStart ? end : start;
337
- if (sourceControl.value && !targetControl.value) {
338
- targetControl.setValue(sourceControl.value);
339
- this.dateRangeChange();
340
- }
341
- }
342
- dateRangeChange() {
343
- const start = this.range.controls.start.value ?? null;
344
- const end = this.range.controls.end.value ?? null;
345
- this.onValueChange([start ? new Date(start) : start, end ? new Date(end) : end]);
346
- }
347
- setMonthAndYear(normalizedMonthAndYear, datepicker) {
348
- const ctrlValue = this.value || new Date();
349
- ctrlValue.setMonth(normalizedMonthAndYear.getMonth());
350
- ctrlValue.setFullYear(normalizedMonthAndYear.getFullYear());
351
- datepicker.close();
352
- this.onValueChange(new Date(ctrlValue));
353
- }
354
- setRange() {
355
- if (Array.isArray(this.value)) {
356
- const [start, end] = this.value;
357
- if (start && String(this.range.controls.start.value) !== String(start)) {
358
- this.range.controls.start.setValue(new Date(start));
359
- }
360
- if (end && String(this.range.controls.end.value) !== String(end)) {
361
- this.range.controls.end.setValue(new Date(end));
362
- }
363
- }
364
- if (!this.value) {
365
- this.range.controls.start.setValue(null);
366
- this.range.controls.end.setValue(null);
367
- }
368
- }
369
- onInput(event) {
370
- const target = event.target;
371
- const [month, year] = target.value.split('/');
372
- const date = new Date().getDate();
373
- const fullDateString = `${month}/${date}/${year}`;
374
- const fullDate = new Date(fullDateString);
375
- this.onValueChange(fullDate);
376
- }
377
- setStyleVariable() {
378
- const hover = this.companyColor ? adjustLightness(this.companyColor, 'hover') : '#FFF2FC';
379
- document.body.style.setProperty('--datepicker-hover-color', hover);
380
- document.body.style.setProperty('--datepicker-selected-color', `${this.companyColor || '#D410AA'}`);
381
- }
382
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }, { token: DatepickerService }], target: i0.ɵɵFactoryTarget.Component }); }
383
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.25", type: DatepickerComponent, isStandalone: true, selector: "ui-datepicker", inputs: { label: "label", fieldName: "fieldName", placeholder: "placeholder", testId: "testId", id: "id", value: "value", errors: "errors", isRange: "isRange", setSingleDateRangeOnBlur: "setSingleDateRangeOnBlur", showInnerErrors: "showInnerErrors", innerErrorsMessage: "innerErrorsMessage", disabled: "disabled", required: "required", hintMessage: "hintMessage", updateOnBlur: "updateOnBlur", showBottomContent: "showBottomContent", fullWidth: "fullWidth", minDate: "minDate", maxDate: "maxDate", monthPicker: "monthPicker", applicationTheme: "applicationTheme", hideBuiltInErrors: "hideBuiltInErrors", hideLabelInErrors: "hideLabelInErrors", preventUserInput: "preventUserInput", companyColor: "companyColor", browserTimezone: "browserTimezone" }, outputs: { changed: "changed" }, host: { properties: { "class": "this.class" } }, providers: [
384
- { provide: DateAdapter, useClass: UiDateAdapter },
385
- { provide: MAT_DATE_FORMATS, useValue: UI_DATE_FORMATS },
386
- ], usesOnChanges: true, ngImport: i0, template: "@if (monthPicker) {\n <mat-form-field\n appNoDateFormat\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-input'\"\n matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker\n panelClass=\"month-picker\"\n #dp\n startView=\"multi-year\"\n (monthSelected)=\"setMonthAndYear($event, dp)\"\n ></mat-datepicker>\n\n @if (hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n} @else {\n @if (isRange) {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n class=\"range-datepicker\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <mat-date-range-input [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\">\n <input\n [attr.data-testid]=\"rangeStartTestId\"\n matStartDate\n formControlName=\"start\"\n [placeholder]=\"translationContext + 'START_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(true)\"\n />\n <input\n [attr.data-testid]=\"rangeEndTestId\"\n matEndDate\n formControlName=\"end\"\n [placeholder]=\"translationContext + 'END_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(false)\"\n />\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker (closed)=\"handleCloseRangePicker()\"></mat-date-range-picker>\n\n @if (\n hint &&\n !_errors &&\n !(ngControl?.touched && (ngControl?.errors | hasValidationError)) &&\n !(range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (\n errorsLength ||\n (ngControl?.touched && (ngControl?.errors | hasValidationError)) ||\n (range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n } @else {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-picker-input'\"\n matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n\n @if (hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n }\n}\n\n<ng-template #labelTpl>{{ label + (required ? ' *' : '') }}</ng-template>\n<ng-template #hintsTpl>\n @if (errorsLength) {\n @for (error of _errors; track error) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n }\n }\n @if (ngControl && !hideBuiltInErrors) {\n <ui-validation-error [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\"></ui-validation-error>\n }\n @if (showInnerErrors) {\n @if (isRange) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"innerErrorsMessage\"></span>\n </div>\n }\n }\n</ng-template>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.range-datepicker .mat-mdc-form-field-hint.error svg{color:#e02800!important}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-icon-suffix{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#e02800}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:var(--datepicker-selected-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white}[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: var(--datepicker-hover-color)}.info{margin-top:4px!important;padding-bottom:10px}\n"], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: NoDateFormatDirective, selector: "[appNoDateFormat]" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "directive", type: MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "component", type: ValidationErrorComponent, selector: "ui-validation-error", inputs: ["ngControl", "touchedOn", "errorMessage", "label", "applicationTheme", "customErrors"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: UiTranslatePipe, name: "uiTranslate" }, { kind: "pipe", type: HasValidationErrorPipe, name: "hasValidationError" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
387
- }
388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponent, decorators: [{
389
- type: Component,
390
- args: [{ selector: 'ui-datepicker', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
391
- { provide: DateAdapter, useClass: UiDateAdapter },
392
- { provide: MAT_DATE_FORMATS, useValue: UI_DATE_FORMATS },
393
- ], imports: [
394
- MatFormField,
395
- NoDateFormatDirective,
396
- NgClass,
397
- MatLabel,
398
- NgTemplateOutlet,
399
- MatInput,
400
- MatDatepickerInput,
401
- MatDatepickerToggle,
402
- MatSuffix,
403
- IconComponent,
404
- MatDatepickerToggleIcon,
405
- MatDatepicker,
406
- MatHint,
407
- MatDateRangeInput,
408
- FormsModule,
409
- ReactiveFormsModule,
410
- MatStartDate,
411
- MatEndDate,
412
- MatDateRangePicker,
413
- ValidationErrorComponent,
414
- AsyncPipe,
415
- UiTranslatePipe,
416
- HasValidationErrorPipe,
417
- ], template: "@if (monthPicker) {\n <mat-form-field\n appNoDateFormat\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-input'\"\n matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker\n panelClass=\"month-picker\"\n #dp\n startView=\"multi-year\"\n (monthSelected)=\"setMonthAndYear($event, dp)\"\n ></mat-datepicker>\n\n @if (hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n} @else {\n @if (isRange) {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n class=\"range-datepicker\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <mat-date-range-input [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\">\n <input\n [attr.data-testid]=\"rangeStartTestId\"\n matStartDate\n formControlName=\"start\"\n [placeholder]=\"translationContext + 'START_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(true)\"\n />\n <input\n [attr.data-testid]=\"rangeEndTestId\"\n matEndDate\n formControlName=\"end\"\n [placeholder]=\"translationContext + 'END_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(false)\"\n />\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker (closed)=\"handleCloseRangePicker()\"></mat-date-range-picker>\n\n @if (\n hint &&\n !_errors &&\n !(ngControl?.touched && (ngControl?.errors | hasValidationError)) &&\n !(range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (\n errorsLength ||\n (ngControl?.touched && (ngControl?.errors | hasValidationError)) ||\n (range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n } @else {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-picker-input'\"\n matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n\n @if (hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n }\n}\n\n<ng-template #labelTpl>{{ label + (required ? ' *' : '') }}</ng-template>\n<ng-template #hintsTpl>\n @if (errorsLength) {\n @for (error of _errors; track error) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n }\n }\n @if (ngControl && !hideBuiltInErrors) {\n <ui-validation-error [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\"></ui-validation-error>\n }\n @if (showInnerErrors) {\n @if (isRange) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"innerErrorsMessage\"></span>\n </div>\n }\n }\n</ng-template>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.range-datepicker .mat-mdc-form-field-hint.error svg{color:#e02800!important}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-icon-suffix{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#e02800}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:var(--datepicker-selected-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white}[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: var(--datepicker-hover-color)}.info{margin-top:4px!important;padding-bottom:10px}\n"] }]
418
- }], ctorParameters: () => [{ type: undefined, decorators: [{
419
- type: Optional
420
- }, {
421
- type: Inject,
422
- args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
423
- }] }, { type: i0.ChangeDetectorRef }, { type: i1.NgControl, decorators: [{
424
- type: Optional
425
- }, {
426
- type: Self
427
- }] }, { type: DatepickerService }], propDecorators: { class: [{
428
- type: HostBinding
429
- }], label: [{
430
- type: Input
431
- }], fieldName: [{
432
- type: Input
433
- }], placeholder: [{
434
- type: Input
435
- }], testId: [{
436
- type: Input
437
- }], id: [{
438
- type: Input
439
- }], value: [{
440
- type: Input
441
- }], errors: [{
442
- type: Input
443
- }], isRange: [{
444
- type: Input
445
- }], setSingleDateRangeOnBlur: [{
446
- type: Input
447
- }], showInnerErrors: [{
448
- type: Input
449
- }], innerErrorsMessage: [{
450
- type: Input
451
- }], disabled: [{
452
- type: Input
453
- }], required: [{
454
- type: Input
455
- }], hintMessage: [{
456
- type: Input
457
- }], updateOnBlur: [{
458
- type: Input
459
- }], showBottomContent: [{
460
- type: Input
461
- }], fullWidth: [{
462
- type: Input
463
- }], minDate: [{
464
- type: Input
465
- }], maxDate: [{
466
- type: Input
467
- }], monthPicker: [{
468
- type: Input
469
- }], applicationTheme: [{
470
- type: Input
471
- }], hideBuiltInErrors: [{
472
- type: Input
473
- }], hideLabelInErrors: [{
474
- type: Input
475
- }], preventUserInput: [{
476
- type: Input
477
- }], companyColor: [{
478
- type: Input
479
- }], browserTimezone: [{
480
- type: Input
481
- }], changed: [{
482
- type: Output
483
- }] } });
484
-
485
- class DatepickerComponentModule {
486
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
487
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponentModule, imports: [CommonModule,
488
- MatFormFieldModule,
489
- MatInputModule,
490
- IconComponentModule,
491
- FormsModule,
492
- ReactiveFormsModule,
493
- MatDatepickerModule,
494
- MatNativeDateModule,
495
- UiTranslatePipe,
496
- NoDateFormatDirective,
497
- HasValidationErrorPipe,
498
- ValidationErrorModule,
499
- DatepickerComponent], exports: [DatepickerComponent] }); }
500
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponentModule, imports: [CommonModule,
501
- MatFormFieldModule,
502
- MatInputModule,
503
- IconComponentModule,
504
- FormsModule,
505
- ReactiveFormsModule,
506
- MatDatepickerModule,
507
- MatNativeDateModule,
508
- ValidationErrorModule,
509
- DatepickerComponent] }); }
510
- }
511
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: DatepickerComponentModule, decorators: [{
512
- type: NgModule,
513
- args: [{
514
- imports: [
515
- CommonModule,
516
- MatFormFieldModule,
517
- MatInputModule,
518
- IconComponentModule,
519
- FormsModule,
520
- ReactiveFormsModule,
521
- MatDatepickerModule,
522
- MatNativeDateModule,
523
- UiTranslatePipe,
524
- NoDateFormatDirective,
525
- HasValidationErrorPipe,
526
- ValidationErrorModule,
527
- DatepickerComponent,
528
- ],
529
- exports: [DatepickerComponent],
530
- }]
531
- }] });
532
-
533
- /**
534
- * Generated bundle index. Do not edit.
535
- */
536
-
154
+ var NoDateFormatDirective = class NoDateFormatDirective {
155
+ static {
156
+ this.ɵfac = i0.ɵɵngDeclareFactory({
157
+ minVersion: "12.0.0",
158
+ version: "22.2.4",
159
+ ngImport: i0,
160
+ type: NoDateFormatDirective,
161
+ deps: [],
162
+ target: i0.ɵɵFactoryTarget.Directive
163
+ });
164
+ }
165
+ static {
166
+ this.ɵdir = i0.ɵɵngDeclareDirective({
167
+ minVersion: "14.0.0",
168
+ version: "22.2.4",
169
+ type: NoDateFormatDirective,
170
+ isStandalone: true,
171
+ selector: "[appNoDateFormat]",
172
+ providers: [{
173
+ provide: DateAdapter,
174
+ useClass: CustomDateAdapter
175
+ }, {
176
+ provide: MAT_DATE_FORMATS,
177
+ useValue: FORMATS
178
+ }],
179
+ ngImport: i0
180
+ });
181
+ }
182
+ };
183
+ i0.ɵɵngDeclareClassMetadata({
184
+ minVersion: "12.0.0",
185
+ version: "22.2.4",
186
+ ngImport: i0,
187
+ type: NoDateFormatDirective,
188
+ decorators: [{
189
+ type: Directive,
190
+ args: [{
191
+ selector: "[appNoDateFormat]",
192
+ providers: [{
193
+ provide: DateAdapter,
194
+ useClass: CustomDateAdapter
195
+ }, {
196
+ provide: MAT_DATE_FORMATS,
197
+ useValue: FORMATS
198
+ }],
199
+ standalone: true
200
+ }]
201
+ }]
202
+ });
203
+ var DatepickerComponent = class DatepickerComponent {
204
+ get rangeStartTestId() {
205
+ return this.testId ? `${this.testId}-start` : "datepicker-range-start";
206
+ }
207
+ get rangeEndTestId() {
208
+ return this.testId ? `${this.testId}-end` : "datepicker-range-end";
209
+ }
210
+ set errors(errors) {
211
+ this._errors = errors?.filter(Boolean) ?? [];
212
+ this.errorsLength = this.setErrorsLength();
213
+ }
214
+ set browserTimezone(value) {
215
+ this.datepickerService.useBrowserTimezone = value;
216
+ }
217
+ constructor(defaultAppTheme, cdr, ngControl, datepickerService) {
218
+ this.defaultAppTheme = defaultAppTheme;
219
+ this.cdr = cdr;
220
+ this.ngControl = ngControl;
221
+ this.datepickerService = datepickerService;
222
+ this.class = "ui-datepicker";
223
+ this.label = "";
224
+ this.placeholder = "";
225
+ this.testId = null;
226
+ this.id = "";
227
+ this.updateOnBlur = false;
228
+ this.showBottomContent = true;
229
+ this.fullWidth = false;
230
+ this.monthPicker = false;
231
+ this.applicationTheme = "light";
232
+ this.hideBuiltInErrors = false;
233
+ this.hideLabelInErrors = false;
234
+ this.preventUserInput = false;
235
+ this.companyColor = "";
236
+ this.onChange = () => {};
237
+ this.onTouch = () => {};
238
+ this.changed = new EventEmitter();
239
+ this.range = new FormGroup({
240
+ start: new FormControl(null),
241
+ end: new FormControl(null)
242
+ });
243
+ this.translationContext = "DATEPICKER.";
244
+ if (defaultAppTheme) this.applicationTheme = defaultAppTheme;
245
+ if (this.ngControl !== null) this.ngControl.valueAccessor = this;
246
+ }
247
+ get hint() {
248
+ if (this.hintMessage === void 0) return this.isRange ? "MM/DD/YYYY - MM/DD/YYYY" : this.monthPicker ? "MM/YYYY" : "MM/DD/YYYY";
249
+ return this.hintMessage;
250
+ }
251
+ ngDoCheck() {
252
+ if (this.ngControl?.touched || this.ngControl?.errors) this.cdr.markForCheck();
253
+ }
254
+ ngOnInit() {
255
+ document.body.setAttribute("theme", this.applicationTheme);
256
+ this.setStyleVariable();
257
+ }
258
+ ngOnChanges(changes) {
259
+ if (this.isRange) this.setRange();
260
+ if (changes["companyColor"]) this.setStyleVariable();
261
+ }
262
+ setErrorsLength() {
263
+ if (this._errors) return this._errors.filter((err) => Boolean(err)).length > 0 ? true : false;
264
+ return false;
265
+ }
266
+ onValueChange(value) {
267
+ this.writeValue(value);
268
+ this.errorsLength = this.setErrorsLength();
269
+ if (!this.updateOnBlur) this.onTouch();
270
+ this.onChange(value);
271
+ this.changed.emit(value);
272
+ }
273
+ writeValue(value) {
274
+ this.value = value;
275
+ if (this.isRange) this.setRange();
276
+ }
277
+ registerOnChange(fn) {
278
+ this.onChange = fn;
279
+ }
280
+ registerOnTouched(fn) {
281
+ this.onTouch = fn;
282
+ }
283
+ setDisabledState(isDisabled) {
284
+ this.disabled = isDisabled;
285
+ this.cdr.markForCheck();
286
+ }
287
+ handleCloseRangePicker() {
288
+ if (this.setSingleDateRangeOnBlur) this.fillSingleDateRange(true);
289
+ }
290
+ fillSingleDateRange(isStart) {
291
+ const { start, end } = this.range.controls;
292
+ const sourceControl = isStart ? start : end;
293
+ const targetControl = isStart ? end : start;
294
+ if (sourceControl.value && !targetControl.value) {
295
+ targetControl.setValue(sourceControl.value);
296
+ this.dateRangeChange();
297
+ }
298
+ }
299
+ dateRangeChange() {
300
+ const start = this.range.controls.start.value ?? null;
301
+ const end = this.range.controls.end.value ?? null;
302
+ this.onValueChange([start ? new Date(start) : start, end ? new Date(end) : end]);
303
+ }
304
+ setMonthAndYear(normalizedMonthAndYear, datepicker) {
305
+ const ctrlValue = this.value || /* @__PURE__ */ new Date();
306
+ ctrlValue.setMonth(normalizedMonthAndYear.getMonth());
307
+ ctrlValue.setFullYear(normalizedMonthAndYear.getFullYear());
308
+ datepicker.close();
309
+ this.onValueChange(new Date(ctrlValue));
310
+ }
311
+ setRange() {
312
+ if (Array.isArray(this.value)) {
313
+ const [start, end] = this.value;
314
+ if (start && String(this.range.controls.start.value) !== String(start)) this.range.controls.start.setValue(new Date(start));
315
+ if (end && String(this.range.controls.end.value) !== String(end)) this.range.controls.end.setValue(new Date(end));
316
+ }
317
+ if (!this.value) {
318
+ this.range.controls.start.setValue(null);
319
+ this.range.controls.end.setValue(null);
320
+ }
321
+ }
322
+ onInput(event) {
323
+ const [month, year] = event.target.value.split("/");
324
+ const fullDateString = `${month}/${(/* @__PURE__ */ new Date()).getDate()}/${year}`;
325
+ const fullDate = new Date(fullDateString);
326
+ this.onValueChange(fullDate);
327
+ }
328
+ setStyleVariable() {
329
+ const hover = this.companyColor ? adjustLightness(this.companyColor, "hover") : "#FFF2FC";
330
+ document.body.style.setProperty("--datepicker-hover-color", hover);
331
+ document.body.style.setProperty("--datepicker-selected-color", `${this.companyColor || "#D410AA"}`);
332
+ }
333
+ static {
334
+ this.ɵfac = i0.ɵɵngDeclareFactory({
335
+ minVersion: "12.0.0",
336
+ version: "22.2.4",
337
+ ngImport: i0,
338
+ type: DatepickerComponent,
339
+ deps: [
340
+ {
341
+ token: "CANOPYUI_DEFAULT_APPLICATION_THEME",
342
+ optional: true
343
+ },
344
+ { token: i0.ChangeDetectorRef },
345
+ {
346
+ token: i1.NgControl,
347
+ optional: true,
348
+ self: true
349
+ },
350
+ { token: DatepickerService }
351
+ ],
352
+ target: i0.ɵɵFactoryTarget.Component
353
+ });
354
+ }
355
+ static {
356
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
357
+ minVersion: "17.0.0",
358
+ version: "22.2.4",
359
+ type: DatepickerComponent,
360
+ isStandalone: true,
361
+ selector: "ui-datepicker",
362
+ inputs: {
363
+ label: "label",
364
+ fieldName: "fieldName",
365
+ placeholder: "placeholder",
366
+ testId: "testId",
367
+ id: "id",
368
+ value: "value",
369
+ errors: "errors",
370
+ isRange: "isRange",
371
+ setSingleDateRangeOnBlur: "setSingleDateRangeOnBlur",
372
+ showInnerErrors: "showInnerErrors",
373
+ innerErrorsMessage: "innerErrorsMessage",
374
+ disabled: "disabled",
375
+ required: "required",
376
+ hintMessage: "hintMessage",
377
+ updateOnBlur: "updateOnBlur",
378
+ showBottomContent: "showBottomContent",
379
+ fullWidth: "fullWidth",
380
+ minDate: "minDate",
381
+ maxDate: "maxDate",
382
+ monthPicker: "monthPicker",
383
+ applicationTheme: "applicationTheme",
384
+ hideBuiltInErrors: "hideBuiltInErrors",
385
+ hideLabelInErrors: "hideLabelInErrors",
386
+ preventUserInput: "preventUserInput",
387
+ companyColor: "companyColor",
388
+ browserTimezone: "browserTimezone"
389
+ },
390
+ outputs: { changed: "changed" },
391
+ host: { properties: { "class": "this.class" } },
392
+ providers: [{
393
+ provide: DateAdapter,
394
+ useClass: UiDateAdapter
395
+ }, {
396
+ provide: MAT_DATE_FORMATS,
397
+ useValue: UI_DATE_FORMATS
398
+ }],
399
+ usesOnChanges: true,
400
+ ngImport: i0,
401
+ template: "@if (monthPicker) {\n <mat-form-field\n appNoDateFormat\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-input'\"\n matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker\n panelClass=\"month-picker\"\n #dp\n startView=\"multi-year\"\n (monthSelected)=\"setMonthAndYear($event, dp)\"\n ></mat-datepicker>\n\n @if (\n hint && !_errors && !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n} @else {\n @if (isRange) {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n class=\"range-datepicker\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <mat-date-range-input [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\">\n <input\n [attr.data-testid]=\"rangeStartTestId\"\n matStartDate\n formControlName=\"start\"\n [placeholder]=\"translationContext + 'START_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(true)\"\n />\n <input\n [attr.data-testid]=\"rangeEndTestId\"\n matEndDate\n formControlName=\"end\"\n [placeholder]=\"translationContext + 'END_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(false)\"\n />\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker (closed)=\"handleCloseRangePicker()\"></mat-date-range-picker>\n\n @if (\n hint &&\n !_errors &&\n !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError)) &&\n !(range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (\n errorsLength ||\n (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError)) ||\n (range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n } @else {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-picker-input'\"\n matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n\n @if (\n hint && !_errors && !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n }\n}\n\n<ng-template #labelTpl>{{ label + (required ? ' *' : '') }}</ng-template>\n<ng-template #hintsTpl>\n @if (errorsLength) {\n @for (error of _errors; track error) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n }\n }\n @if (ngControl && !hideBuiltInErrors) {\n <ui-validation-error [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\"></ui-validation-error>\n }\n @if (showInnerErrors) {\n @if (isRange) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"innerErrorsMessage\"></span>\n </div>\n }\n }\n</ng-template>\n",
402
+ styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.range-datepicker .mat-mdc-form-field-hint.error svg{color:#e02800!important}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-icon-suffix{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#e02800}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:var(--datepicker-selected-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white}[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: var(--datepicker-hover-color)}.info{margin-top:4px!important;padding-bottom:10px}\n"],
403
+ dependencies: [
404
+ {
405
+ kind: "component",
406
+ type: MatFormField,
407
+ selector: "mat-form-field",
408
+ inputs: [
409
+ "hideRequiredMarker",
410
+ "color",
411
+ "floatLabel",
412
+ "appearance",
413
+ "subscriptSizing",
414
+ "hintLabel"
415
+ ],
416
+ exportAs: ["matFormField"]
417
+ },
418
+ {
419
+ kind: "directive",
420
+ type: NoDateFormatDirective,
421
+ selector: "[appNoDateFormat]"
422
+ },
423
+ {
424
+ kind: "directive",
425
+ type: NgClass,
426
+ selector: "[ngClass]",
427
+ inputs: ["class", "ngClass"]
428
+ },
429
+ {
430
+ kind: "directive",
431
+ type: MatLabel,
432
+ selector: "mat-label"
433
+ },
434
+ {
435
+ kind: "directive",
436
+ type: NgTemplateOutlet,
437
+ selector: "[ngTemplateOutlet]",
438
+ inputs: [
439
+ "ngTemplateOutletContext",
440
+ "ngTemplateOutlet",
441
+ "ngTemplateOutletInjector"
442
+ ]
443
+ },
444
+ {
445
+ kind: "directive",
446
+ type: MatInput,
447
+ selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]",
448
+ inputs: [
449
+ "disabled",
450
+ "id",
451
+ "placeholder",
452
+ "name",
453
+ "required",
454
+ "type",
455
+ "errorStateMatcher",
456
+ "aria-describedby",
457
+ "value",
458
+ "readonly",
459
+ "disabledInteractive"
460
+ ],
461
+ exportAs: ["matInput"]
462
+ },
463
+ {
464
+ kind: "directive",
465
+ type: MatDatepickerInput,
466
+ selector: "input[matDatepicker]",
467
+ inputs: [
468
+ "matDatepicker",
469
+ "min",
470
+ "max",
471
+ "matDatepickerFilter"
472
+ ],
473
+ exportAs: ["matDatepickerInput"]
474
+ },
475
+ {
476
+ kind: "component",
477
+ type: MatDatepickerToggle,
478
+ selector: "mat-datepicker-toggle",
479
+ inputs: [
480
+ "for",
481
+ "tabIndex",
482
+ "aria-label",
483
+ "disabled",
484
+ "disableRipple"
485
+ ],
486
+ exportAs: ["matDatepickerToggle"]
487
+ },
488
+ {
489
+ kind: "directive",
490
+ type: MatSuffix,
491
+ selector: "[matSuffix], [matIconSuffix], [matTextSuffix]",
492
+ inputs: ["matTextSuffix"]
493
+ },
494
+ {
495
+ kind: "component",
496
+ type: IconComponent,
497
+ selector: "ui-icon",
498
+ inputs: [
499
+ "size",
500
+ "cssClass",
501
+ "name",
502
+ "color",
503
+ "filled",
504
+ "toggleIconStyle",
505
+ "applicationTheme",
506
+ "useFullIconName"
507
+ ]
508
+ },
509
+ {
510
+ kind: "directive",
511
+ type: MatDatepickerToggleIcon,
512
+ selector: "[matDatepickerToggleIcon]"
513
+ },
514
+ {
515
+ kind: "component",
516
+ type: MatDatepicker,
517
+ selector: "mat-datepicker",
518
+ exportAs: ["matDatepicker"]
519
+ },
520
+ {
521
+ kind: "directive",
522
+ type: MatHint,
523
+ selector: "mat-hint",
524
+ inputs: ["align", "id"]
525
+ },
526
+ {
527
+ kind: "component",
528
+ type: MatDateRangeInput,
529
+ selector: "mat-date-range-input",
530
+ inputs: [
531
+ "rangePicker",
532
+ "required",
533
+ "dateFilter",
534
+ "min",
535
+ "max",
536
+ "disabled",
537
+ "separator",
538
+ "comparisonStart",
539
+ "comparisonEnd"
540
+ ],
541
+ exportAs: ["matDateRangeInput"]
542
+ },
543
+ {
544
+ kind: "ngmodule",
545
+ type: FormsModule
546
+ },
547
+ {
548
+ kind: "directive",
549
+ type: i1.DefaultValueAccessor,
550
+ selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]"
551
+ },
552
+ {
553
+ kind: "directive",
554
+ type: i1.NgControlStatus,
555
+ selector: "[formControlName],[ngModel],[formControl]"
556
+ },
557
+ {
558
+ kind: "directive",
559
+ type: i1.NgControlStatusGroup,
560
+ selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]"
561
+ },
562
+ {
563
+ kind: "ngmodule",
564
+ type: ReactiveFormsModule
565
+ },
566
+ {
567
+ kind: "directive",
568
+ type: i1.FormGroupDirective,
569
+ selector: "[formGroup]",
570
+ inputs: ["formGroup"],
571
+ outputs: ["ngSubmit"],
572
+ exportAs: ["ngForm"]
573
+ },
574
+ {
575
+ kind: "directive",
576
+ type: i1.FormControlName,
577
+ selector: "[formControlName]",
578
+ inputs: [
579
+ "formControlName",
580
+ "disabled",
581
+ "ngModel"
582
+ ],
583
+ outputs: ["ngModelChange"]
584
+ },
585
+ {
586
+ kind: "directive",
587
+ type: MatStartDate,
588
+ selector: "input[matStartDate]",
589
+ outputs: ["dateChange", "dateInput"]
590
+ },
591
+ {
592
+ kind: "directive",
593
+ type: MatEndDate,
594
+ selector: "input[matEndDate]",
595
+ outputs: ["dateChange", "dateInput"]
596
+ },
597
+ {
598
+ kind: "component",
599
+ type: MatDateRangePicker,
600
+ selector: "mat-date-range-picker",
601
+ exportAs: ["matDateRangePicker"]
602
+ },
603
+ {
604
+ kind: "component",
605
+ type: ValidationErrorComponent,
606
+ selector: "ui-validation-error",
607
+ inputs: [
608
+ "ngControl",
609
+ "touchedOn",
610
+ "errorMessage",
611
+ "label",
612
+ "applicationTheme",
613
+ "customErrors"
614
+ ]
615
+ },
616
+ {
617
+ kind: "pipe",
618
+ type: AsyncPipe,
619
+ name: "async"
620
+ },
621
+ {
622
+ kind: "pipe",
623
+ type: UiTranslatePipe,
624
+ name: "uiTranslate"
625
+ },
626
+ {
627
+ kind: "pipe",
628
+ type: HasValidationErrorPipe,
629
+ name: "hasValidationError"
630
+ }
631
+ ],
632
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
633
+ encapsulation: i0.ViewEncapsulation.None
634
+ });
635
+ }
636
+ };
637
+ i0.ɵɵngDeclareClassMetadata({
638
+ minVersion: "12.0.0",
639
+ version: "22.2.4",
640
+ ngImport: i0,
641
+ type: DatepickerComponent,
642
+ decorators: [{
643
+ type: Component,
644
+ args: [{
645
+ selector: "ui-datepicker",
646
+ encapsulation: ViewEncapsulation.None,
647
+ changeDetection: ChangeDetectionStrategy.OnPush,
648
+ providers: [{
649
+ provide: DateAdapter,
650
+ useClass: UiDateAdapter
651
+ }, {
652
+ provide: MAT_DATE_FORMATS,
653
+ useValue: UI_DATE_FORMATS
654
+ }],
655
+ imports: [
656
+ MatFormField,
657
+ NoDateFormatDirective,
658
+ NgClass,
659
+ MatLabel,
660
+ NgTemplateOutlet,
661
+ MatInput,
662
+ MatDatepickerInput,
663
+ MatDatepickerToggle,
664
+ MatSuffix,
665
+ IconComponent,
666
+ MatDatepickerToggleIcon,
667
+ MatDatepicker,
668
+ MatHint,
669
+ MatDateRangeInput,
670
+ FormsModule,
671
+ ReactiveFormsModule,
672
+ MatStartDate,
673
+ MatEndDate,
674
+ MatDateRangePicker,
675
+ ValidationErrorComponent,
676
+ AsyncPipe,
677
+ UiTranslatePipe,
678
+ HasValidationErrorPipe
679
+ ],
680
+ template: "@if (monthPicker) {\n <mat-form-field\n appNoDateFormat\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-input'\"\n matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker\n panelClass=\"month-picker\"\n #dp\n startView=\"multi-year\"\n (monthSelected)=\"setMonthAndYear($event, dp)\"\n ></mat-datepicker>\n\n @if (\n hint && !_errors && !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n} @else {\n @if (isRange) {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n class=\"range-datepicker\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n\n <mat-date-range-input [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\">\n <input\n [attr.data-testid]=\"rangeStartTestId\"\n matStartDate\n formControlName=\"start\"\n [placeholder]=\"translationContext + 'START_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(true)\"\n />\n <input\n [attr.data-testid]=\"rangeEndTestId\"\n matEndDate\n formControlName=\"end\"\n [placeholder]=\"translationContext + 'END_DATE' | uiTranslate | async\"\n (dateChange)=\"dateRangeChange()\"\n (blur)=\"setSingleDateRangeOnBlur && fillSingleDateRange(false)\"\n />\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker (closed)=\"handleCloseRangePicker()\"></mat-date-range-picker>\n\n @if (\n hint &&\n !_errors &&\n !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError)) &&\n !(range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (\n errorsLength ||\n (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError)) ||\n (range?.invalid && showInnerErrors)\n ) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n } @else {\n <mat-form-field\n appearance=\"outline\"\n [color]=\"errorsLength || (ngControl?.errors && ngControl?.touched) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n @if (label) {\n <mat-label>\n <ng-container [ngTemplateOutlet]=\"labelTpl\"></ng-container>\n </mat-label>\n }\n <input\n [attr.data-testid]=\"testId ?? 'datepicker-picker-input'\"\n matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon\n matDatepickerToggleIcon\n [applicationTheme]=\"applicationTheme\"\n name=\"Calendar\"\n size=\"24\"\n color=\"inherit\"\n ></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n\n @if (\n hint && !_errors && !(ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))\n ) {\n <mat-hint class=\"info\">{{ hint }} </mat-hint>\n }\n @if (errorsLength || (ngControl?.touched && ($safeNavigationMigration(ngControl?.errors) | hasValidationError))) {\n <mat-hint class=\"error\">\n <ng-container [ngTemplateOutlet]=\"hintsTpl\"></ng-container>\n </mat-hint>\n }\n </mat-form-field>\n }\n}\n\n<ng-template #labelTpl>{{ label + (required ? ' *' : '') }}</ng-template>\n<ng-template #hintsTpl>\n @if (errorsLength) {\n @for (error of _errors; track error) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n }\n }\n @if (ngControl && !hideBuiltInErrors) {\n <ui-validation-error [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\"></ui-validation-error>\n }\n @if (showInnerErrors) {\n @if (isRange) {\n <div class=\"errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"innerErrorsMessage\"></span>\n </div>\n }\n }\n</ng-template>\n",
681
+ styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.range-datepicker .mat-mdc-form-field-hint.error svg{color:#e02800!important}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-icon-suffix{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#e02800}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#e02800}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:var(--datepicker-hover-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:var(--datepicker-selected-color)}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white}[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: var(--datepicker-hover-color)}.info{margin-top:4px!important;padding-bottom:10px}\n"]
682
+ }]
683
+ }],
684
+ ctorParameters: () => [
685
+ {
686
+ type: void 0,
687
+ decorators: [{ type: Optional }, {
688
+ type: Inject,
689
+ args: ["CANOPYUI_DEFAULT_APPLICATION_THEME"]
690
+ }]
691
+ },
692
+ { type: i0.ChangeDetectorRef },
693
+ {
694
+ type: i1.NgControl,
695
+ decorators: [{ type: Optional }, { type: Self }]
696
+ },
697
+ { type: DatepickerService }
698
+ ],
699
+ propDecorators: {
700
+ class: [{ type: HostBinding }],
701
+ label: [{ type: Input }],
702
+ fieldName: [{ type: Input }],
703
+ placeholder: [{ type: Input }],
704
+ testId: [{ type: Input }],
705
+ id: [{ type: Input }],
706
+ value: [{ type: Input }],
707
+ errors: [{ type: Input }],
708
+ isRange: [{ type: Input }],
709
+ setSingleDateRangeOnBlur: [{ type: Input }],
710
+ showInnerErrors: [{ type: Input }],
711
+ innerErrorsMessage: [{ type: Input }],
712
+ disabled: [{ type: Input }],
713
+ required: [{ type: Input }],
714
+ hintMessage: [{ type: Input }],
715
+ updateOnBlur: [{ type: Input }],
716
+ showBottomContent: [{ type: Input }],
717
+ fullWidth: [{ type: Input }],
718
+ minDate: [{ type: Input }],
719
+ maxDate: [{ type: Input }],
720
+ monthPicker: [{ type: Input }],
721
+ applicationTheme: [{ type: Input }],
722
+ hideBuiltInErrors: [{ type: Input }],
723
+ hideLabelInErrors: [{ type: Input }],
724
+ preventUserInput: [{ type: Input }],
725
+ companyColor: [{ type: Input }],
726
+ browserTimezone: [{ type: Input }],
727
+ changed: [{ type: Output }]
728
+ }
729
+ });
730
+ var DatepickerComponentModule = class DatepickerComponentModule {
731
+ static {
732
+ this.ɵfac = i0.ɵɵngDeclareFactory({
733
+ minVersion: "12.0.0",
734
+ version: "22.2.4",
735
+ ngImport: i0,
736
+ type: DatepickerComponentModule,
737
+ deps: [],
738
+ target: i0.ɵɵFactoryTarget.NgModule
739
+ });
740
+ }
741
+ static {
742
+ this.ɵmod = i0.ɵɵngDeclareNgModule({
743
+ minVersion: "14.0.0",
744
+ version: "22.2.4",
745
+ ngImport: i0,
746
+ type: DatepickerComponentModule,
747
+ imports: [
748
+ CommonModule,
749
+ MatFormFieldModule,
750
+ MatInputModule,
751
+ IconComponentModule,
752
+ FormsModule,
753
+ ReactiveFormsModule,
754
+ MatDatepickerModule,
755
+ MatNativeDateModule,
756
+ UiTranslatePipe,
757
+ NoDateFormatDirective,
758
+ HasValidationErrorPipe,
759
+ ValidationErrorModule,
760
+ DatepickerComponent
761
+ ],
762
+ exports: [DatepickerComponent]
763
+ });
764
+ }
765
+ static {
766
+ this.ɵinj = i0.ɵɵngDeclareInjector({
767
+ minVersion: "12.0.0",
768
+ version: "22.2.4",
769
+ ngImport: i0,
770
+ type: DatepickerComponentModule,
771
+ imports: [
772
+ CommonModule,
773
+ MatFormFieldModule,
774
+ MatInputModule,
775
+ IconComponentModule,
776
+ FormsModule,
777
+ ReactiveFormsModule,
778
+ MatDatepickerModule,
779
+ MatNativeDateModule,
780
+ ValidationErrorModule,
781
+ DatepickerComponent
782
+ ]
783
+ });
784
+ }
785
+ };
786
+ i0.ɵɵngDeclareClassMetadata({
787
+ minVersion: "12.0.0",
788
+ version: "22.2.4",
789
+ ngImport: i0,
790
+ type: DatepickerComponentModule,
791
+ decorators: [{
792
+ type: NgModule,
793
+ args: [{
794
+ imports: [
795
+ CommonModule,
796
+ MatFormFieldModule,
797
+ MatInputModule,
798
+ IconComponentModule,
799
+ FormsModule,
800
+ ReactiveFormsModule,
801
+ MatDatepickerModule,
802
+ MatNativeDateModule,
803
+ UiTranslatePipe,
804
+ NoDateFormatDirective,
805
+ HasValidationErrorPipe,
806
+ ValidationErrorModule,
807
+ DatepickerComponent
808
+ ],
809
+ exports: [DatepickerComponent]
810
+ }]
811
+ }]
812
+ });
537
813
  export { CustomDateAdapter, DatepickerComponent, DatepickerComponentModule, DatepickerService, NoDateFormatDirective, UI_DATE_FORMATS, UiDateAdapter };
538
- //# sourceMappingURL=testgorilla-tgo-ui-components-datepicker.mjs.map
814
+
815
+ //# sourceMappingURL=testgorilla-tgo-ui-components-datepicker.mjs.map