@testgorilla/tgo-ui 1.1.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/components/alert-banner/alert-banner.component.d.ts +1 -1
  2. package/components/avatar/avatar.component.d.ts +1 -1
  3. package/components/banner-action/banner-action.component.d.ts +1 -1
  4. package/components/button/button.component.d.ts +1 -1
  5. package/components/card/card.component.d.ts +1 -1
  6. package/components/checkbox/checkbox.component.d.ts +1 -1
  7. package/components/create-account/create-account.component.d.ts +1 -1
  8. package/components/create-password/create-password.component.d.ts +1 -1
  9. package/components/datepicker/datepicker.component.d.ts +1 -1
  10. package/components/dialog/dialog.component.d.ts +1 -1
  11. package/components/dropdown/dropdown.component.d.ts +1 -1
  12. package/components/elevation-shadow/elevation-shadow.component.d.ts +1 -1
  13. package/components/field/field.component.d.ts +1 -1
  14. package/components/file-upload/file-upload.component.d.ts +8 -2
  15. package/components/forgot-password/forgot-password.component.d.ts +1 -1
  16. package/components/icon/icon.component.d.ts +1 -1
  17. package/components/icon-label/icon-label.component.d.ts +1 -1
  18. package/components/label/label.component.d.ts +1 -1
  19. package/components/login/login.component.d.ts +1 -1
  20. package/components/logo/logo.component.d.ts +1 -1
  21. package/components/navbar/navbar.component.d.ts +1 -1
  22. package/components/navigation/navigation.component.d.ts +1 -1
  23. package/components/paginator/paginator.component.d.ts +1 -1
  24. package/components/progress-bar/progress-bar.component.d.ts +1 -1
  25. package/components/radio-button/radio-button.component.d.ts +1 -1
  26. package/components/rating/rating.component.d.ts +1 -1
  27. package/components/snackbar/snackbar.component.d.ts +1 -1
  28. package/components/table/directives/dynamic-component.directive.d.ts +1 -1
  29. package/components/table/table.component.d.ts +1 -1
  30. package/components/tag/tag.component.d.ts +1 -1
  31. package/components/toggle/toggle.component.d.ts +1 -1
  32. package/components/tooltip/tooltip.component.d.ts +1 -1
  33. package/directives/digits-only.directive.d.ts +1 -1
  34. package/esm2022/components/alert-banner/alert-banner.component.mjs +98 -0
  35. package/{esm2020 → esm2022}/components/alert-banner/alert-banner.component.module.mjs +5 -5
  36. package/{esm2020 → esm2022}/components/avatar/avatar.component.mjs +4 -4
  37. package/{esm2020 → esm2022}/components/avatar/avatar.component.module.mjs +5 -5
  38. package/{esm2020 → esm2022}/components/banner-action/banner-action.component.mjs +4 -4
  39. package/{esm2020 → esm2022}/components/banner-action/banner-action.component.module.mjs +5 -5
  40. package/{esm2020 → esm2022}/components/button/button.component.mjs +4 -4
  41. package/{esm2020 → esm2022}/components/button/button.component.module.mjs +5 -5
  42. package/{esm2020 → esm2022}/components/card/card.component.mjs +4 -4
  43. package/{esm2020 → esm2022}/components/card/card.component.module.mjs +5 -5
  44. package/esm2022/components/checkbox/checkbox.component.mjs +151 -0
  45. package/{esm2020 → esm2022}/components/checkbox/checkbox.component.module.mjs +5 -5
  46. package/{esm2020 → esm2022}/components/confirm-dialog/confirm-dialog.component.mjs +4 -4
  47. package/{esm2020 → esm2022}/components/confirm-dialog/confirm-dialog.component.module.mjs +8 -8
  48. package/{esm2020 → esm2022}/components/create-account/create-account.component.mjs +4 -4
  49. package/{esm2020 → esm2022}/components/create-account/create-account.component.module.mjs +19 -19
  50. package/{esm2020 → esm2022}/components/create-password/create-password.component.mjs +4 -4
  51. package/{esm2020 → esm2022}/components/create-password/create-password.component.module.mjs +17 -17
  52. package/esm2022/components/datepicker/datepicker.component.mjs +179 -0
  53. package/{esm2020 → esm2022}/components/datepicker/datepicker.component.module.mjs +19 -19
  54. package/{esm2020 → esm2022}/components/dialog/dialog.component.mjs +4 -4
  55. package/{esm2020 → esm2022}/components/dialog/dialog.component.module.mjs +5 -5
  56. package/{esm2020 → esm2022}/components/dialog/dialog.service.mjs +4 -4
  57. package/esm2022/components/dropdown/dropdown.component.mjs +158 -0
  58. package/{esm2020 → esm2022}/components/dropdown/dropdown.component.module.mjs +19 -19
  59. package/{esm2020 → esm2022}/components/elevation-shadow/elevation-shadow.component.mjs +4 -4
  60. package/{esm2020 → esm2022}/components/elevation-shadow/elevation-shadow.component.module.mjs +5 -5
  61. package/esm2022/components/field/field.component.mjs +212 -0
  62. package/{esm2020 → esm2022}/components/field/field.component.module.mjs +17 -17
  63. package/esm2022/components/file-upload/file-upload.component.mjs +191 -0
  64. package/{esm2020 → esm2022}/components/file-upload/file-upload.component.module.mjs +5 -5
  65. package/{esm2020 → esm2022}/components/forgot-password/forgot-password.component.mjs +4 -4
  66. package/{esm2020 → esm2022}/components/forgot-password/forgot-password.component.module.mjs +17 -17
  67. package/{esm2020 → esm2022}/components/icon/icon.component.mjs +4 -4
  68. package/{esm2020 → esm2022}/components/icon/icon.component.module.mjs +5 -5
  69. package/{esm2020 → esm2022}/components/icon-label/icon-label.component.mjs +4 -4
  70. package/{esm2020 → esm2022}/components/icon-label/icon-label.component.module.mjs +5 -5
  71. package/{esm2020 → esm2022}/components/label/label.component.mjs +4 -4
  72. package/{esm2020 → esm2022}/components/label/label.component.module.mjs +5 -5
  73. package/{esm2020 → esm2022}/components/login/login.component.mjs +4 -4
  74. package/{esm2020 → esm2022}/components/login/login.component.module.mjs +17 -17
  75. package/{esm2020 → esm2022}/components/logo/logo.component.mjs +4 -4
  76. package/{esm2020 → esm2022}/components/logo/logo.component.module.mjs +5 -5
  77. package/{esm2020 → esm2022}/components/navbar/navbar.component.mjs +4 -4
  78. package/{esm2020 → esm2022}/components/navbar/navbar.component.module.mjs +19 -19
  79. package/{esm2020 → esm2022}/components/navigation/navigation.component.mjs +4 -4
  80. package/{esm2020 → esm2022}/components/navigation/navigation.component.module.mjs +5 -5
  81. package/{esm2020 → esm2022}/components/paginator/paginator.component.mjs +4 -4
  82. package/{esm2020 → esm2022}/components/paginator/paginator.component.module.mjs +5 -5
  83. package/{esm2020 → esm2022}/components/progress-bar/progress-bar.component.mjs +4 -4
  84. package/{esm2020 → esm2022}/components/progress-bar/progress-bar.component.module.mjs +5 -5
  85. package/{esm2020 → esm2022}/components/radio-button/radio-button.component.mjs +4 -4
  86. package/{esm2020 → esm2022}/components/radio-button/radio-button.component.module.mjs +5 -5
  87. package/{esm2020 → esm2022}/components/rating/rating.component.mjs +4 -4
  88. package/{esm2020 → esm2022}/components/rating/rating.component.module.mjs +5 -5
  89. package/esm2022/components/snackbar/snackbar.component.mjs +148 -0
  90. package/esm2022/components/snackbar/snackbar.component.module.mjs +44 -0
  91. package/{esm2020 → esm2022}/components/snackbar/snackbar.service.mjs +4 -4
  92. package/{esm2020 → esm2022}/components/spinner/spinner.component.mjs +4 -4
  93. package/{esm2020 → esm2022}/components/spinner/spinner.module.mjs +5 -5
  94. package/{esm2020 → esm2022}/components/table/directives/dynamic-component.directive.mjs +4 -4
  95. package/{esm2020 → esm2022}/components/table/pipes/data-property-getter.mjs +4 -4
  96. package/esm2022/components/table/table.component.mjs +158 -0
  97. package/{esm2020 → esm2022}/components/table/table.component.module.mjs +5 -5
  98. package/{esm2020 → esm2022}/components/tag/tag.component.mjs +4 -4
  99. package/{esm2020 → esm2022}/components/tag/tag.component.module.mjs +5 -5
  100. package/esm2022/components/toggle/toggle.component.mjs +78 -0
  101. package/{esm2020 → esm2022}/components/toggle/toggle.component.module.mjs +5 -5
  102. package/{esm2020 → esm2022}/components/tooltip/tooltip.component.mjs +4 -4
  103. package/{esm2020 → esm2022}/components/tooltip/tooltip.component.module.mjs +5 -5
  104. package/{esm2020 → esm2022}/directives/digits-only.directive.mjs +4 -4
  105. package/{esm2020 → esm2022}/directives/drag-drop.directive.mjs +4 -4
  106. package/{esm2020 → esm2022}/pipes/name-initials.pipe.mjs +4 -4
  107. package/esm2022/utils/localization/language.service.mjs +78 -0
  108. package/{fesm2020 → fesm2022}/testgorilla-tgo-ui.mjs +470 -462
  109. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -0
  110. package/package.json +16 -22
  111. package/esm2020/components/alert-banner/alert-banner.component.mjs +0 -98
  112. package/esm2020/components/checkbox/checkbox.component.mjs +0 -151
  113. package/esm2020/components/datepicker/datepicker.component.mjs +0 -179
  114. package/esm2020/components/dropdown/dropdown.component.mjs +0 -158
  115. package/esm2020/components/field/field.component.mjs +0 -212
  116. package/esm2020/components/file-upload/file-upload.component.mjs +0 -183
  117. package/esm2020/components/snackbar/snackbar.component.mjs +0 -148
  118. package/esm2020/components/snackbar/snackbar.component.module.mjs +0 -44
  119. package/esm2020/components/table/table.component.mjs +0 -158
  120. package/esm2020/components/toggle/toggle.component.mjs +0 -78
  121. package/esm2020/utils/localization/language.service.mjs +0 -78
  122. package/fesm2015/testgorilla-tgo-ui.mjs +0 -4282
  123. package/fesm2015/testgorilla-tgo-ui.mjs.map +0 -1
  124. package/fesm2020/testgorilla-tgo-ui.mjs.map +0 -1
  125. /package/{esm2020 → esm2022}/components/alert-banner/alert-banner.model.mjs +0 -0
  126. /package/{esm2020 → esm2022}/components/avatar/avatar.model.mjs +0 -0
  127. /package/{esm2020 → esm2022}/components/button/button.model.mjs +0 -0
  128. /package/{esm2020 → esm2022}/components/confirm-dialog/confirm-dialog.constants.mjs +0 -0
  129. /package/{esm2020 → esm2022}/components/confirm-dialog/confirm-dialog.model.mjs +0 -0
  130. /package/{esm2020 → esm2022}/components/create-account/create-account.constant.mjs +0 -0
  131. /package/{esm2020 → esm2022}/components/create-account/create-account.model.mjs +0 -0
  132. /package/{esm2020 → esm2022}/components/create-password/create-password.constant.mjs +0 -0
  133. /package/{esm2020 → esm2022}/components/create-password/create-password.model.mjs +0 -0
  134. /package/{esm2020 → esm2022}/components/dropdown/dropdown.model.mjs +0 -0
  135. /package/{esm2020 → esm2022}/components/elevation-shadow/elevation-shadow.constant.mjs +0 -0
  136. /package/{esm2020 → esm2022}/components/field/field.model.mjs +0 -0
  137. /package/{esm2020 → esm2022}/components/forgot-password/forgot-password.constant.mjs +0 -0
  138. /package/{esm2020 → esm2022}/components/forgot-password/forgot-password.model.mjs +0 -0
  139. /package/{esm2020 → esm2022}/components/icon/icon.config.mjs +0 -0
  140. /package/{esm2020 → esm2022}/components/icon/icon.model.mjs +0 -0
  141. /package/{esm2020 → esm2022}/components/label/label.model.mjs +0 -0
  142. /package/{esm2020 → esm2022}/components/login/login.constant.mjs +0 -0
  143. /package/{esm2020 → esm2022}/components/login/login.model.mjs +0 -0
  144. /package/{esm2020 → esm2022}/components/logo/logo.model.mjs +0 -0
  145. /package/{esm2020 → esm2022}/components/navbar/navbar.model.mjs +0 -0
  146. /package/{esm2020 → esm2022}/components/radio-button/radio-button.model.mjs +0 -0
  147. /package/{esm2020 → esm2022}/components/snackbar/snackbar.model.mjs +0 -0
  148. /package/{esm2020 → esm2022}/components/table/table.model.mjs +0 -0
  149. /package/{esm2020 → esm2022}/components/tag/tag.model.mjs +0 -0
  150. /package/{esm2020 → esm2022}/components/toggle/toggle.model.mjs +0 -0
  151. /package/{esm2020 → esm2022}/components/tooltip/tooltip.model.mjs +0 -0
  152. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  153. /package/{esm2020 → esm2022}/testgorilla-tgo-ui.mjs +0 -0
  154. /package/{esm2020 → esm2022}/utils/alert-bar.model.mjs +0 -0
  155. /package/{esm2020 → esm2022}/utils/alert-bars.utils.mjs +0 -0
  156. /package/{esm2020 → esm2022}/utils/validators.utils.mjs +0 -0
@@ -1,4282 +0,0 @@
1
- import { trigger, transition, animate, style, state } from '@angular/animations';
2
- import * as i0 from '@angular/core';
3
- import { Component, ViewEncapsulation, Input, EventEmitter, Output, ChangeDetectionStrategy, NgModule, forwardRef, HostBinding, Directive, HostListener, Injectable, Inject, APP_INITIALIZER, Pipe, ViewChild } from '@angular/core';
4
- import * as i1$1 from '@angular/common';
5
- import { CommonModule } from '@angular/common';
6
- import * as i2$1 from '@angular/material/button';
7
- import { MatButtonModule } from '@angular/material/button';
8
- import * as i1 from '@angular/material/icon';
9
- import { MatIconModule } from '@angular/material/icon';
10
- import * as i2 from '@angular/platform-browser';
11
- import * as i4 from '@angular/material/progress-spinner';
12
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
13
- import { HttpClientModule } from '@angular/common/http';
14
- import * as i1$2 from '@angular/material/card';
15
- import { MatCardModule } from '@angular/material/card';
16
- import * as i1$3 from '@angular/forms';
17
- import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, Validators, FormGroup, FormControl } from '@angular/forms';
18
- import * as i2$2 from '@angular/material/checkbox';
19
- import { MatCheckboxModule } from '@angular/material/checkbox';
20
- import * as i2$3 from '@angular/material/form-field';
21
- import { MatFormFieldModule } from '@angular/material/form-field';
22
- import * as i3 from '@angular/material/input';
23
- import { MatInputModule } from '@angular/material/input';
24
- import * as i5 from '@angular-material-extensions/password-strength';
25
- import { MatPasswordStrengthModule } from '@angular-material-extensions/password-strength';
26
- import * as i1$4 from '@angular/material/dialog';
27
- import { MatDialogModule, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
28
- import * as i1$5 from '@angular/material/progress-bar';
29
- import { MatProgressBarModule } from '@angular/material/progress-bar';
30
- import * as i2$4 from '@angular/material/toolbar';
31
- import { MatToolbarModule } from '@angular/material/toolbar';
32
- import * as i5$1 from '@angular/material/menu';
33
- import { MatMenuModule } from '@angular/material/menu';
34
- import * as i6$1 from '@angular/material/core';
35
- import { MatRippleModule, MatNativeDateModule } from '@angular/material/core';
36
- import * as i1$6 from '@angular/material/paginator';
37
- import { MatPaginatorModule } from '@angular/material/paginator';
38
- import * as i2$5 from '@angular/material/radio';
39
- import { MatRadioModule } from '@angular/material/radio';
40
- import * as i1$8 from '@angular/material/snack-bar';
41
- import { MAT_SNACK_BAR_DATA } from '@angular/material/snack-bar';
42
- import { __decorate } from 'tslib';
43
- import { UntilDestroy } from '@ngneat/until-destroy';
44
- import * as i1$7 from '@ngneat/transloco';
45
- import { TranslocoModule, TranslocoService } from '@ngneat/transloco';
46
- import { lastValueFrom, Subscription, ReplaySubject, debounceTime, map } from 'rxjs';
47
- import * as i4$1 from '@angular/material/sort';
48
- import { MatSort, MatSortModule } from '@angular/material/sort';
49
- import * as i3$1 from '@angular/material/table';
50
- import { MatTableDataSource, MatTableModule } from '@angular/material/table';
51
- import * as i6 from '@angular/material/tooltip';
52
- import { MatTooltipModule } from '@angular/material/tooltip';
53
- import * as i5$2 from '@angular/material/select';
54
- import { MatSelectModule } from '@angular/material/select';
55
- import * as i6$2 from '@angular/material/datepicker';
56
- import { MatDatepickerModule } from '@angular/material/datepicker';
57
-
58
- const alertBarsUtil = {
59
- //Set css class and iconName according type
60
- setIcon: (alertType) => {
61
- if (alertType === 'success') {
62
- return 'Round-check';
63
- }
64
- if (alertType === 'info') {
65
- return 'Info';
66
- }
67
- if (alertType === 'warning') {
68
- return 'Warning';
69
- }
70
- if (alertType === 'error') {
71
- return 'Error';
72
- }
73
- return '';
74
- },
75
- //Set cssClass for fixed or static position
76
- setPosition: (fixed) => {
77
- if (fixed === true) {
78
- return 'fixed';
79
- }
80
- else {
81
- return 'static';
82
- }
83
- },
84
- //Set css class for alertbanner
85
- setCssClass: (fullWidth, type, position) => {
86
- const isFullWidth = !!fullWidth ? 'full-width' : '';
87
- return `${type} ${position} ${isFullWidth}`;
88
- },
89
- };
90
-
91
- // Data of all tgoIcons
92
- const tgoIcons = [
93
- 'Add',
94
- 'Archive',
95
- 'Arrow_down',
96
- 'Arrow_left',
97
- 'Arrow_right',
98
- 'Arrow_up',
99
- 'Assessment',
100
- 'Attempts',
101
- 'Book',
102
- 'Calendar',
103
- 'Candidates',
104
- 'Chat-notifications',
105
- 'Chat',
106
- 'Check',
107
- 'Clone',
108
- 'Close',
109
- 'Code',
110
- 'Company',
111
- 'Copy',
112
- 'Custom-questions',
113
- 'Delete',
114
- 'Devices',
115
- 'Document',
116
- 'Download',
117
- 'Edit',
118
- 'Email-message',
119
- 'Empty-placeholder',
120
- 'Error',
121
- 'Essay',
122
- 'Eye-hide',
123
- 'Eye-view',
124
- 'Feedback-1',
125
- 'Feedback-2',
126
- 'Feedback-3',
127
- 'Feedback-4',
128
- 'Feedback-5',
129
- 'File-attach',
130
- 'File-upload',
131
- 'Filter',
132
- 'Folder',
133
- 'Format-add-file',
134
- 'Format-add-table',
135
- 'Format-align-L',
136
- 'Format-align-R',
137
- 'Format-align-center',
138
- 'Format-align-justify',
139
- 'Format-bold',
140
- 'Format-code-active',
141
- 'Format-code-block',
142
- 'Format-edit-table',
143
- 'Format-format',
144
- 'Format-function',
145
- 'Format-italics',
146
- 'Format-list-bulleted',
147
- 'Format-list-numbered',
148
- 'Format-picker',
149
- 'Format-quote',
150
- 'Format-subscript',
151
- 'Format-superscript',
152
- 'Format-text-direction-L',
153
- 'Format-text-direction-R',
154
- 'Format-text-size',
155
- 'Format-underline',
156
- 'Format-variable',
157
- 'Full-screen',
158
- 'Gender-female',
159
- 'Gender-male',
160
- 'Help-2',
161
- 'Help',
162
- 'Image',
163
- 'Info',
164
- 'Integration',
165
- 'Language',
166
- 'Layout',
167
- 'Learn',
168
- 'Level',
169
- 'Light-bulb',
170
- 'Link',
171
- 'Loading-spinner',
172
- 'Localisation',
173
- 'Location',
174
- 'Lock',
175
- 'Log-out',
176
- 'Menu-burger',
177
- 'Menu-ellipsis',
178
- 'Microphone',
179
- 'Minus',
180
- 'Mouse-cursor',
181
- 'Mouse-grab-cursor',
182
- 'Mouse',
183
- 'Multi-choice',
184
- 'Notifications',
185
- 'Password',
186
- 'Path',
187
- 'Plan-billing',
188
- 'Plus',
189
- 'Premium',
190
- 'Promotion',
191
- 'Question-count',
192
- 'Refer',
193
- 'Reset',
194
- 'Review',
195
- 'Round-check-filled',
196
- 'Round-check',
197
- 'Search',
198
- 'Secure-checkout',
199
- 'Send',
200
- 'Settings',
201
- 'Social-facebook',
202
- 'Social-instagram',
203
- 'Social-linkedin',
204
- 'Sorting-down-1',
205
- 'Sorting-down',
206
- 'Speedometer',
207
- 'Star-filled',
208
- 'Star-half',
209
- 'Star-outline',
210
- 'Support',
211
- 'Sync',
212
- 'Team',
213
- 'Test',
214
- 'Thunder',
215
- 'Timer',
216
- 'Type',
217
- 'Unarchive',
218
- 'Unlock',
219
- 'Upgrade',
220
- 'Upload',
221
- 'User-access',
222
- 'User-add',
223
- 'User-invite',
224
- 'User-profile',
225
- 'User-reject',
226
- 'User-switch',
227
- 'Video-pause',
228
- 'Video-play',
229
- 'Video-record',
230
- 'Video',
231
- 'Volume',
232
- 'Warning',
233
- 'Zoom-in',
234
- 'Zoom-out',
235
- ];
236
-
237
- class IconComponent {
238
- constructor(matIconRegistry, domSanitzer) {
239
- this.matIconRegistry = matIconRegistry;
240
- this.domSanitzer = domSanitzer;
241
- /**
242
- * Icon size
243
- *
244
- * @type {IconSize}
245
- * @memberof IconComponent
246
- */
247
- this.size = '16';
248
- /**
249
- * Icon css class
250
- *
251
- * @memberof IconComponent
252
- */
253
- this.cssClass = '';
254
- /**
255
- * Icon color
256
- *
257
- * @type {IconColor}
258
- * @memberof IconComponent
259
- */
260
- this.color = 'black';
261
- }
262
- ngOnInit() {
263
- this.customCssClass = this.setCssClass();
264
- this.addIcon();
265
- }
266
- ngOnChanges(changes) {
267
- if (changes['size'] || changes['cssClass'] || changes['color']) {
268
- this.customCssClass = this.setCssClass();
269
- }
270
- if (changes['name']) {
271
- this.addIcon();
272
- }
273
- }
274
- //set css class for size
275
- setCssClass() {
276
- return `${this.cssClass} size-${this.size} ${this.color}`;
277
- }
278
- //Add icon to matIcon registry
279
- addIcon() {
280
- const filename = tgoIcons.find(icon => icon === this.name);
281
- if (filename) {
282
- this.matIconRegistry.addSvgIcon(filename, this.domSanitzer.bypassSecurityTrustResourceUrl(`/icons/${filename}.svg`));
283
- }
284
- }
285
- }
286
- IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconComponent, deps: [{ token: i1.MatIconRegistry }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
287
- IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: IconComponent, selector: "ui-icon", inputs: { size: "size", cssClass: "cssClass", name: "name", color: "color" }, usesOnChanges: true, ngImport: i0, template: "<mat-icon [svgIcon]=\"name\" [attr.class]=\"customCssClass\"></mat-icon>\n", styles: ["mat-icon{display:flex}mat-icon.size-16 svg{width:16px;height:16px}mat-icon.size-24 svg{width:24px;height:24px}mat-icon.size-80 svg{width:80px;height:80px}mat-icon.dark svg{color:#888}mat-icon.white svg{color:#fff}mat-icon.teal svg{color:#46a997}mat-icon.petrol svg{color:#276678}mat-icon.black svg{color:#000}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconComponent, decorators: [{
289
- type: Component,
290
- args: [{ selector: 'ui-icon', encapsulation: ViewEncapsulation.None, template: "<mat-icon [svgIcon]=\"name\" [attr.class]=\"customCssClass\"></mat-icon>\n", styles: ["mat-icon{display:flex}mat-icon.size-16 svg{width:16px;height:16px}mat-icon.size-24 svg{width:24px;height:24px}mat-icon.size-80 svg{width:80px;height:80px}mat-icon.dark svg{color:#888}mat-icon.white svg{color:#fff}mat-icon.teal svg{color:#46a997}mat-icon.petrol svg{color:#276678}mat-icon.black svg{color:#000}\n"] }]
291
- }], ctorParameters: function () { return [{ type: i1.MatIconRegistry }, { type: i2.DomSanitizer }]; }, propDecorators: { size: [{
292
- type: Input
293
- }], cssClass: [{
294
- type: Input
295
- }], name: [{
296
- type: Input
297
- }], color: [{
298
- type: Input
299
- }] } });
300
-
301
- /* eslint-disable @angular-eslint/use-lifecycle-interface */
302
- class ButtonComponent {
303
- constructor() {
304
- /**
305
- * Define button height
306
- *
307
- * @type {ButtonSize}
308
- * @memberof ButtonComponent
309
- */
310
- this.size = 'big';
311
- /**
312
- * Background color of the button while in active state
313
- *
314
- * @type {ButtonColor}
315
- * @memberof ButtonComponent
316
- */
317
- this.type = 'primary';
318
- /**
319
- * Text content to appear on the button
320
- *
321
- * @memberof ButtonComponent
322
- */
323
- this.label = '';
324
- /**
325
- * Positioning of the icon (when existant)
326
- *
327
- * @type {ButtonIconPosition}
328
- * @memberof ButtonComponent
329
- */
330
- this.iconPosition = 'right';
331
- /**
332
- * Define if button has only icon without text
333
- *
334
- * @memberof ButtonComponent
335
- */
336
- this.justIcon = false;
337
- /**
338
- * Name of ui-icon
339
- *
340
- * @type {IconName}
341
- * @memberof ButtonComponent
342
- */
343
- this.iconName = '';
344
- /**
345
- * Indicator if the button should be disabled
346
- *
347
- * @memberof ButtonComponent
348
- */
349
- this.disabled = false;
350
- /**
351
- * Indicator if the loading icon should be shown
352
- *
353
- * @memberof ButtonComponent
354
- */
355
- this.loading = false;
356
- /**
357
- * Indicator of the button width
358
- *
359
- * @memberof ButtonComponent
360
- */
361
- this.fullWidth = false;
362
- this.buttonClickEvent = new EventEmitter();
363
- this.buttonHoverEvent = new EventEmitter();
364
- }
365
- ngOnInit() {
366
- this.classCss = this.setCssClass();
367
- this.isButtonLink = this.showButtonLink();
368
- this.isLabel = this.showLabel();
369
- }
370
- ngOnChanges(changes) {
371
- if (changes['type']) {
372
- this.isButtonLink = this.showButtonLink();
373
- }
374
- if (changes['loading']) {
375
- this.isLabel = this.showLabel();
376
- }
377
- if (changes['type'] ||
378
- changes['fullWidth'] ||
379
- changes['iconName'] ||
380
- changes['justIcon'] ||
381
- changes['iconPosition']) {
382
- this.classCss = this.setCssClass();
383
- }
384
- }
385
- buttonClick(event) {
386
- this.buttonClickEvent.emit(event);
387
- }
388
- buttonHover(event) {
389
- this.buttonHoverEvent.emit(event);
390
- }
391
- //Show or hide label
392
- showLabel() {
393
- return !this.loading;
394
- }
395
- //Set css class according inputs
396
- setCssClass() {
397
- const width = this.fullWidth ? 'full-width' : '';
398
- const hasIcon = this.iconName === null ? '' : 'icon';
399
- const justIcon = this.justIcon ? 'only-icon' : '';
400
- const iconPosition = this.iconPosition === undefined ? '' : this.iconPosition;
401
- return `${this.size} ${iconPosition} ${this.type} ${width} ${hasIcon} ${justIcon}`;
402
- }
403
- //Show or hide spinner
404
- showSpinner() {
405
- const isNotTab = this.type !== 'tab';
406
- const isNotLink = this.type !== 'link';
407
- const isLoading = this.loading === true;
408
- return isLoading && isNotTab && isNotLink;
409
- }
410
- //Show button with <button> or <a> tag
411
- showButtonLink() {
412
- return this.type !== 'link';
413
- }
414
- }
415
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
416
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ButtonComponent, selector: "ui-button", inputs: { size: "size", type: "type", label: "label", iconPosition: "iconPosition", justIcon: "justIcon", iconName: "iconName", disabled: "disabled", loading: "loading", fullWidth: "fullWidth", url: "url", urlTarget: "urlTarget", value: "value" }, outputs: { buttonClickEvent: "buttonClickEvent", buttonHoverEvent: "buttonHoverEvent" }, usesOnChanges: true, ngImport: i0, template: "<button\n [ngClass]=\"classCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"isButtonLink\"\n mat-flat-button>\n <span class=\"icon-only-wrapper\" *ngIf=\"justIcon === true && !!iconName\">\n <span class=\"icon only\" role=\"label\" [attr.aria-label]=\"label\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n </span>\n <span class=\"icon-label-wrapper\" [ngClass]=\"{'center-text': iconName === ''}\" *ngIf=\"justIcon === false\">\n <span class=\"icon\" *ngIf=\"iconPosition === 'left' && !!iconName\" aria-hidden=\"true\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n <span *ngIf=\"isLabel\" class=\"label\">{{ label }}</span>\n <span class=\"icon\" *ngIf=\"iconPosition === 'right' && !!iconName\" aria-hidden=\"true\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n <span class=\"spinner-wrapper\" *ngIf=\"showSpinner()\">\n <mat-spinner class=\"position-spinner\" aria-label=\"loading\" mode=\"indeterminate\" diameter=\"24\"></mat-spinner>\n </span>\n </span>\n</button>\n<a\n [ngClass]=\"classCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"!isButtonLink\" \n [href]=\"url\" \n [target]=\"urlTarget\"\n mat-flat-button>\n <span class=\"icon-label-wrapper\">\n {{ label }}\n </span>\n</a>\n", styles: [":host{display:flex}button.mat-mdc-unelevated-button,a.mat-mdc-unelevated-button{font-size:14px;font-weight:600;line-height:normal;letter-spacing:normal}button.mat-mdc-unelevated-button .spinner-wrapper,a.mat-mdc-unelevated-button .spinner-wrapper{display:flex;align-items:center;flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon,a.mat-mdc-unelevated-button .icon{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button .icon.only,a.mat-mdc-unelevated-button .icon.only{align-items:center;flex-flow:column;justify-content:center;margin-left:0}button.mat-mdc-unelevated-button .icon-label-wrapper,a.mat-mdc-unelevated-button .icon-label-wrapper{display:flex;align-items:center;justify-content:center;height:100%}button.mat-mdc-unelevated-button .icon-label-wrapper.center-text,a.mat-mdc-unelevated-button .icon-label-wrapper.center-text{flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon-label-wrapper .label,a.mat-mdc-unelevated-button .icon-label-wrapper .label{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button.big,a.mat-mdc-unelevated-button.big{height:48px;padding:12px 16px}button.mat-mdc-unelevated-button.small,a.mat-mdc-unelevated-button.small{height:38px;padding:7px 11px}button.mat-mdc-unelevated-button.small.left .icon,button.mat-mdc-unelevated-button.big.left .icon,a.mat-mdc-unelevated-button.small.left .icon,a.mat-mdc-unelevated-button.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.small.right .icon,button.mat-mdc-unelevated-button.big.right .icon,a.mat-mdc-unelevated-button.small.right .icon,a.mat-mdc-unelevated-button.big.right .icon{margin-left:8px}button.mat-mdc-unelevated-button.small.only-icon .icon,button.mat-mdc-unelevated-button.big.only-icon .icon,a.mat-mdc-unelevated-button.small.only-icon .icon,a.mat-mdc-unelevated-button.big.only-icon .icon{margin-left:0}button.mat-mdc-unelevated-button.primary,button.mat-mdc-unelevated-button.secondary,button.mat-mdc-unelevated-button.outlined,button.mat-mdc-unelevated-button.destructive,button.mat-mdc-unelevated-button.tertiary,button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.link{min-width:80px}button.mat-mdc-unelevated-button.primary.only-icon,button.mat-mdc-unelevated-button.secondary.only-icon,button.mat-mdc-unelevated-button.outlined.only-icon,button.mat-mdc-unelevated-button.destructive.only-icon,button.mat-mdc-unelevated-button.tertiary.only-icon,button.mat-mdc-unelevated-button.link.only-icon,a.mat-mdc-unelevated-button.primary.only-icon,a.mat-mdc-unelevated-button.secondary.only-icon,a.mat-mdc-unelevated-button.outlined.only-icon,a.mat-mdc-unelevated-button.destructive.only-icon,a.mat-mdc-unelevated-button.tertiary.only-icon,a.mat-mdc-unelevated-button.link.only-icon{min-width:1px}button.mat-mdc-unelevated-button.primary.full-width,button.mat-mdc-unelevated-button.secondary.full-width,button.mat-mdc-unelevated-button.outlined.full-width,button.mat-mdc-unelevated-button.destructive.full-width,button.mat-mdc-unelevated-button.tertiary.full-width,button.mat-mdc-unelevated-button.link.full-width,a.mat-mdc-unelevated-button.primary.full-width,a.mat-mdc-unelevated-button.secondary.full-width,a.mat-mdc-unelevated-button.outlined.full-width,a.mat-mdc-unelevated-button.destructive.full-width,a.mat-mdc-unelevated-button.tertiary.full-width,a.mat-mdc-unelevated-button.link.full-width{width:100%;min-width:100%}button.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper{justify-content:center}button.mat-mdc-unelevated-button.primary:focus,button.mat-mdc-unelevated-button.secondary:focus,button.mat-mdc-unelevated-button.outlined:focus,button.mat-mdc-unelevated-button.destructive:focus,button.mat-mdc-unelevated-button.tertiary:focus,button.mat-mdc-unelevated-button.link:focus,button.mat-mdc-unelevated-button.tab:focus,button.mat-mdc-unelevated-button.squareicon:focus,button.mat-mdc-unelevated-button.menuTrigger:focus,a.mat-mdc-unelevated-button.primary:focus,a.mat-mdc-unelevated-button.secondary:focus,a.mat-mdc-unelevated-button.outlined:focus,a.mat-mdc-unelevated-button.destructive:focus,a.mat-mdc-unelevated-button.tertiary:focus,a.mat-mdc-unelevated-button.link:focus,a.mat-mdc-unelevated-button.tab:focus,a.mat-mdc-unelevated-button.squareicon:focus,a.mat-mdc-unelevated-button.menuTrigger:focus{outline:1px dashed #888888;outline-offset:4px}button.mat-mdc-unelevated-button.menuCell:focus,a.mat-mdc-unelevated-button.menuCell:focus{outline:1px dashed #888888;outline-offset:-1px}button.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.primary{background-color:#46a997;color:#fff}button.mat-mdc-unelevated-button.primary:hover,a.mat-mdc-unelevated-button.primary:hover{background-color:#31766a}button.mat-mdc-unelevated-button.primary:disabled,button.mat-mdc-unelevated-button.primary:disabled:hover,a.mat-mdc-unelevated-button.primary:disabled,a.mat-mdc-unelevated-button.primary:disabled:hover{background-color:#b5ddd5}button.mat-mdc-unelevated-button.primary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.primary:focus.cdk-focused.cdk-mouse-focused{background-color:#1c443c}button.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary{background-color:#ededed;color:#000}button.mat-mdc-unelevated-button.secondary:hover,a.mat-mdc-unelevated-button.secondary:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.secondary:disabled,button.mat-mdc-unelevated-button.secondary:disabled:hover,a.mat-mdc-unelevated-button.secondary:disabled,a.mat-mdc-unelevated-button.secondary:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.secondary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.secondary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.secondary:focus.cdk-focused.cdk-mouse-focused{background-color:#888}button.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.outlined{background-color:#fff;color:#000;border-width:1px;border-style:solid;border-color:#000}button.mat-mdc-unelevated-button.outlined:hover,a.mat-mdc-unelevated-button.outlined:hover{background-color:#f6f6f6}button.mat-mdc-unelevated-button.outlined:disabled,button.mat-mdc-unelevated-button.outlined:disabled:hover,a.mat-mdc-unelevated-button.outlined:disabled,a.mat-mdc-unelevated-button.outlined:disabled:hover{color:#ededed;border-color:#ededed}button.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.outlined:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.outlined:focus.cdk-focused.cdk-mouse-focused{background-color:#e0e0e0}button.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.destructive{background-color:#cb7b7a;color:#fff}button.mat-mdc-unelevated-button.destructive:hover,a.mat-mdc-unelevated-button.destructive:hover{background-color:#8e5655}button.mat-mdc-unelevated-button.destructive:disabled,button.mat-mdc-unelevated-button.destructive:disabled:hover,a.mat-mdc-unelevated-button.destructive:disabled,a.mat-mdc-unelevated-button.destructive:disabled:hover{background-color:#e3c3c6}button.mat-mdc-unelevated-button.destructive:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.destructive:focus.cdk-focused.cdk-mouse-focused{background-color:#513131}button.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.tertiary{background-color:transparent;color:#46a997}button.mat-mdc-unelevated-button.tertiary:hover,a.mat-mdc-unelevated-button.tertiary:hover{background-color:#f6f6f6;color:#31766a}button.mat-mdc-unelevated-button.tertiary:disabled,button.mat-mdc-unelevated-button.tertiary:disabled:hover,a.mat-mdc-unelevated-button.tertiary:disabled,a.mat-mdc-unelevated-button.tertiary:disabled:hover{background-color:#fff;color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg{color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tertiary:focus.cdk-focused.cdk-mouse-focused{background-color:#e0e0e0;color:#1c443c}button.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg{color:#46a997}button.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.link{background-color:transparent;color:#46a997;border-radius:0}button.mat-mdc-unelevated-button.link span.icon-label-wrapper,a.mat-mdc-unelevated-button.link span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link:hover,a.mat-mdc-unelevated-button.link:hover{color:#31766a}button.mat-mdc-unelevated-button.link:disabled,button.mat-mdc-unelevated-button.link:disabled:hover,a.mat-mdc-unelevated-button.link:disabled,a.mat-mdc-unelevated-button.link:disabled:hover{color:#b5ddd5}button.mat-mdc-unelevated-button.link:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.link:focus.cdk-focused.cdk-mouse-focused{color:#1c443c}button.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg{color:#46a997}button.mat-mdc-unelevated-button.text,a.mat-mdc-unelevated-button.text{background-color:transparent;color:#000;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text span.icon-label-wrapper,a.mat-mdc-unelevated-button.text span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text:hover,a.mat-mdc-unelevated-button.text:hover{color:#000}button.mat-mdc-unelevated-button.text:disabled,button.mat-mdc-unelevated-button.text:disabled:hover,a.mat-mdc-unelevated-button.text:disabled,a.mat-mdc-unelevated-button.text:disabled:hover{color:#888}button.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.text:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.text:focus.cdk-focused.cdk-mouse-focused{color:#000}button.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon,a.mat-mdc-unelevated-button.squareicon{background-color:#ededed;color:#000;min-width:56px}button.mat-mdc-unelevated-button.squareicon:hover,a.mat-mdc-unelevated-button.squareicon:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.squareicon:disabled,button.mat-mdc-unelevated-button.squareicon:disabled:hover,a.mat-mdc-unelevated-button.squareicon:disabled,a.mat-mdc-unelevated-button.squareicon:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused{background-color:#ededed}button.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon .icon-label-wrapper,a.mat-mdc-unelevated-button.squareicon .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.squareicon.left .icon,button.mat-mdc-unelevated-button.squareicon.right .icon,a.mat-mdc-unelevated-button.squareicon.left .icon,a.mat-mdc-unelevated-button.squareicon.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.tab,a.mat-mdc-unelevated-button.tab{background-color:#fff;color:#000;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#e0e0e0;border-radius:0}button.mat-mdc-unelevated-button.tab:hover .label,button.mat-mdc-unelevated-button.tab:hover .icon.only,a.mat-mdc-unelevated-button.tab:hover .label,a.mat-mdc-unelevated-button.tab:hover .icon.only{text-decoration:underline}button.mat-mdc-unelevated-button.tab:disabled,button.mat-mdc-unelevated-button.tab:disabled:hover,a.mat-mdc-unelevated-button.tab:disabled,a.mat-mdc-unelevated-button.tab:disabled:hover{color:#888}button.mat-mdc-unelevated-button.tab:disabled .label,button.mat-mdc-unelevated-button.tab:disabled:hover .label,a.mat-mdc-unelevated-button.tab:disabled .label,a.mat-mdc-unelevated-button.tab:disabled:hover .label{text-decoration:none}button.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused{font-weight:700;border-color:#276678}button.mat-mdc-unelevated-button.menuTrigger,a.mat-mdc-unelevated-button.menuTrigger{background:transparent;min-width:24px;height:24px;padding:0}button.mat-mdc-unelevated-button.menuTrigger:hover,a.mat-mdc-unelevated-button.menuTrigger:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuTrigger:disabled,button.mat-mdc-unelevated-button.menuTrigger:disabled:hover,a.mat-mdc-unelevated-button.menuTrigger:disabled,a.mat-mdc-unelevated-button.menuTrigger:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuTrigger:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuTrigger:focus.cdk-focused.cdk-mouse-focused{background-color:transparent}button.mat-mdc-unelevated-button.menuTrigger .icon-label-wrapper,a.mat-mdc-unelevated-button.menuTrigger .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.menuTrigger.left .icon,button.mat-mdc-unelevated-button.menuTrigger.right .icon,a.mat-mdc-unelevated-button.menuTrigger.left .icon,a.mat-mdc-unelevated-button.menuTrigger.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.menuCell,a.mat-mdc-unelevated-button.menuCell{background-color:#fff;color:#000;font-weight:400;border-radius:0;min-width:100%;justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell.big.left .icon,a.mat-mdc-unelevated-button.menuCell.big.left .icon{margin-right:16px}button.mat-mdc-unelevated-button.menuCell .icon-label-wrapper,a.mat-mdc-unelevated-button.menuCell .icon-label-wrapper{justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell:hover,a.mat-mdc-unelevated-button.menuCell:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuCell:disabled,button.mat-mdc-unelevated-button.menuCell:disabled:hover,a.mat-mdc-unelevated-button.menuCell:disabled,a.mat-mdc-unelevated-button.menuCell:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.menuCell:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuCell:focus.cdk-focused.cdk-mouse-focused{background-color:#888}button.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] });
417
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponent, decorators: [{
418
- type: Component,
419
- args: [{ selector: 'ui-button', template: "<button\n [ngClass]=\"classCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"isButtonLink\"\n mat-flat-button>\n <span class=\"icon-only-wrapper\" *ngIf=\"justIcon === true && !!iconName\">\n <span class=\"icon only\" role=\"label\" [attr.aria-label]=\"label\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n </span>\n <span class=\"icon-label-wrapper\" [ngClass]=\"{'center-text': iconName === ''}\" *ngIf=\"justIcon === false\">\n <span class=\"icon\" *ngIf=\"iconPosition === 'left' && !!iconName\" aria-hidden=\"true\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n <span *ngIf=\"isLabel\" class=\"label\">{{ label }}</span>\n <span class=\"icon\" *ngIf=\"iconPosition === 'right' && !!iconName\" aria-hidden=\"true\"><ui-icon [name]=\"iconName\" size=\"24\"></ui-icon></span>\n <span class=\"spinner-wrapper\" *ngIf=\"showSpinner()\">\n <mat-spinner class=\"position-spinner\" aria-label=\"loading\" mode=\"indeterminate\" diameter=\"24\"></mat-spinner>\n </span>\n </span>\n</button>\n<a\n [ngClass]=\"classCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"!isButtonLink\" \n [href]=\"url\" \n [target]=\"urlTarget\"\n mat-flat-button>\n <span class=\"icon-label-wrapper\">\n {{ label }}\n </span>\n</a>\n", styles: [":host{display:flex}button.mat-mdc-unelevated-button,a.mat-mdc-unelevated-button{font-size:14px;font-weight:600;line-height:normal;letter-spacing:normal}button.mat-mdc-unelevated-button .spinner-wrapper,a.mat-mdc-unelevated-button .spinner-wrapper{display:flex;align-items:center;flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon,a.mat-mdc-unelevated-button .icon{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button .icon.only,a.mat-mdc-unelevated-button .icon.only{align-items:center;flex-flow:column;justify-content:center;margin-left:0}button.mat-mdc-unelevated-button .icon-label-wrapper,a.mat-mdc-unelevated-button .icon-label-wrapper{display:flex;align-items:center;justify-content:center;height:100%}button.mat-mdc-unelevated-button .icon-label-wrapper.center-text,a.mat-mdc-unelevated-button .icon-label-wrapper.center-text{flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon-label-wrapper .label,a.mat-mdc-unelevated-button .icon-label-wrapper .label{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button.big,a.mat-mdc-unelevated-button.big{height:48px;padding:12px 16px}button.mat-mdc-unelevated-button.small,a.mat-mdc-unelevated-button.small{height:38px;padding:7px 11px}button.mat-mdc-unelevated-button.small.left .icon,button.mat-mdc-unelevated-button.big.left .icon,a.mat-mdc-unelevated-button.small.left .icon,a.mat-mdc-unelevated-button.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.small.right .icon,button.mat-mdc-unelevated-button.big.right .icon,a.mat-mdc-unelevated-button.small.right .icon,a.mat-mdc-unelevated-button.big.right .icon{margin-left:8px}button.mat-mdc-unelevated-button.small.only-icon .icon,button.mat-mdc-unelevated-button.big.only-icon .icon,a.mat-mdc-unelevated-button.small.only-icon .icon,a.mat-mdc-unelevated-button.big.only-icon .icon{margin-left:0}button.mat-mdc-unelevated-button.primary,button.mat-mdc-unelevated-button.secondary,button.mat-mdc-unelevated-button.outlined,button.mat-mdc-unelevated-button.destructive,button.mat-mdc-unelevated-button.tertiary,button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.link{min-width:80px}button.mat-mdc-unelevated-button.primary.only-icon,button.mat-mdc-unelevated-button.secondary.only-icon,button.mat-mdc-unelevated-button.outlined.only-icon,button.mat-mdc-unelevated-button.destructive.only-icon,button.mat-mdc-unelevated-button.tertiary.only-icon,button.mat-mdc-unelevated-button.link.only-icon,a.mat-mdc-unelevated-button.primary.only-icon,a.mat-mdc-unelevated-button.secondary.only-icon,a.mat-mdc-unelevated-button.outlined.only-icon,a.mat-mdc-unelevated-button.destructive.only-icon,a.mat-mdc-unelevated-button.tertiary.only-icon,a.mat-mdc-unelevated-button.link.only-icon{min-width:1px}button.mat-mdc-unelevated-button.primary.full-width,button.mat-mdc-unelevated-button.secondary.full-width,button.mat-mdc-unelevated-button.outlined.full-width,button.mat-mdc-unelevated-button.destructive.full-width,button.mat-mdc-unelevated-button.tertiary.full-width,button.mat-mdc-unelevated-button.link.full-width,a.mat-mdc-unelevated-button.primary.full-width,a.mat-mdc-unelevated-button.secondary.full-width,a.mat-mdc-unelevated-button.outlined.full-width,a.mat-mdc-unelevated-button.destructive.full-width,a.mat-mdc-unelevated-button.tertiary.full-width,a.mat-mdc-unelevated-button.link.full-width{width:100%;min-width:100%}button.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper{justify-content:center}button.mat-mdc-unelevated-button.primary:focus,button.mat-mdc-unelevated-button.secondary:focus,button.mat-mdc-unelevated-button.outlined:focus,button.mat-mdc-unelevated-button.destructive:focus,button.mat-mdc-unelevated-button.tertiary:focus,button.mat-mdc-unelevated-button.link:focus,button.mat-mdc-unelevated-button.tab:focus,button.mat-mdc-unelevated-button.squareicon:focus,button.mat-mdc-unelevated-button.menuTrigger:focus,a.mat-mdc-unelevated-button.primary:focus,a.mat-mdc-unelevated-button.secondary:focus,a.mat-mdc-unelevated-button.outlined:focus,a.mat-mdc-unelevated-button.destructive:focus,a.mat-mdc-unelevated-button.tertiary:focus,a.mat-mdc-unelevated-button.link:focus,a.mat-mdc-unelevated-button.tab:focus,a.mat-mdc-unelevated-button.squareicon:focus,a.mat-mdc-unelevated-button.menuTrigger:focus{outline:1px dashed #888888;outline-offset:4px}button.mat-mdc-unelevated-button.menuCell:focus,a.mat-mdc-unelevated-button.menuCell:focus{outline:1px dashed #888888;outline-offset:-1px}button.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.primary{background-color:#46a997;color:#fff}button.mat-mdc-unelevated-button.primary:hover,a.mat-mdc-unelevated-button.primary:hover{background-color:#31766a}button.mat-mdc-unelevated-button.primary:disabled,button.mat-mdc-unelevated-button.primary:disabled:hover,a.mat-mdc-unelevated-button.primary:disabled,a.mat-mdc-unelevated-button.primary:disabled:hover{background-color:#b5ddd5}button.mat-mdc-unelevated-button.primary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.primary:focus.cdk-focused.cdk-mouse-focused{background-color:#1c443c}button.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary{background-color:#ededed;color:#000}button.mat-mdc-unelevated-button.secondary:hover,a.mat-mdc-unelevated-button.secondary:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.secondary:disabled,button.mat-mdc-unelevated-button.secondary:disabled:hover,a.mat-mdc-unelevated-button.secondary:disabled,a.mat-mdc-unelevated-button.secondary:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.secondary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.secondary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.secondary:focus.cdk-focused.cdk-mouse-focused{background-color:#888}button.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.outlined{background-color:#fff;color:#000;border-width:1px;border-style:solid;border-color:#000}button.mat-mdc-unelevated-button.outlined:hover,a.mat-mdc-unelevated-button.outlined:hover{background-color:#f6f6f6}button.mat-mdc-unelevated-button.outlined:disabled,button.mat-mdc-unelevated-button.outlined:disabled:hover,a.mat-mdc-unelevated-button.outlined:disabled,a.mat-mdc-unelevated-button.outlined:disabled:hover{color:#ededed;border-color:#ededed}button.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.outlined:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.outlined:focus.cdk-focused.cdk-mouse-focused{background-color:#e0e0e0}button.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.destructive{background-color:#cb7b7a;color:#fff}button.mat-mdc-unelevated-button.destructive:hover,a.mat-mdc-unelevated-button.destructive:hover{background-color:#8e5655}button.mat-mdc-unelevated-button.destructive:disabled,button.mat-mdc-unelevated-button.destructive:disabled:hover,a.mat-mdc-unelevated-button.destructive:disabled,a.mat-mdc-unelevated-button.destructive:disabled:hover{background-color:#e3c3c6}button.mat-mdc-unelevated-button.destructive:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.destructive:focus.cdk-focused.cdk-mouse-focused{background-color:#513131}button.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.tertiary{background-color:transparent;color:#46a997}button.mat-mdc-unelevated-button.tertiary:hover,a.mat-mdc-unelevated-button.tertiary:hover{background-color:#f6f6f6;color:#31766a}button.mat-mdc-unelevated-button.tertiary:disabled,button.mat-mdc-unelevated-button.tertiary:disabled:hover,a.mat-mdc-unelevated-button.tertiary:disabled,a.mat-mdc-unelevated-button.tertiary:disabled:hover{background-color:#fff;color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg{color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tertiary:focus.cdk-focused.cdk-mouse-focused{background-color:#e0e0e0;color:#1c443c}button.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg{color:#46a997}button.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.link{background-color:transparent;color:#46a997;border-radius:0}button.mat-mdc-unelevated-button.link span.icon-label-wrapper,a.mat-mdc-unelevated-button.link span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link:hover,a.mat-mdc-unelevated-button.link:hover{color:#31766a}button.mat-mdc-unelevated-button.link:disabled,button.mat-mdc-unelevated-button.link:disabled:hover,a.mat-mdc-unelevated-button.link:disabled,a.mat-mdc-unelevated-button.link:disabled:hover{color:#b5ddd5}button.mat-mdc-unelevated-button.link:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.link:focus.cdk-focused.cdk-mouse-focused{color:#1c443c}button.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg{color:#46a997}button.mat-mdc-unelevated-button.text,a.mat-mdc-unelevated-button.text{background-color:transparent;color:#000;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text span.icon-label-wrapper,a.mat-mdc-unelevated-button.text span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text:hover,a.mat-mdc-unelevated-button.text:hover{color:#000}button.mat-mdc-unelevated-button.text:disabled,button.mat-mdc-unelevated-button.text:disabled:hover,a.mat-mdc-unelevated-button.text:disabled,a.mat-mdc-unelevated-button.text:disabled:hover{color:#888}button.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.text:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.text:focus.cdk-focused.cdk-mouse-focused{color:#000}button.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon,a.mat-mdc-unelevated-button.squareicon{background-color:#ededed;color:#000;min-width:56px}button.mat-mdc-unelevated-button.squareicon:hover,a.mat-mdc-unelevated-button.squareicon:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.squareicon:disabled,button.mat-mdc-unelevated-button.squareicon:disabled:hover,a.mat-mdc-unelevated-button.squareicon:disabled,a.mat-mdc-unelevated-button.squareicon:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused{background-color:#ededed}button.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon .icon-label-wrapper,a.mat-mdc-unelevated-button.squareicon .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.squareicon.left .icon,button.mat-mdc-unelevated-button.squareicon.right .icon,a.mat-mdc-unelevated-button.squareicon.left .icon,a.mat-mdc-unelevated-button.squareicon.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.tab,a.mat-mdc-unelevated-button.tab{background-color:#fff;color:#000;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#e0e0e0;border-radius:0}button.mat-mdc-unelevated-button.tab:hover .label,button.mat-mdc-unelevated-button.tab:hover .icon.only,a.mat-mdc-unelevated-button.tab:hover .label,a.mat-mdc-unelevated-button.tab:hover .icon.only{text-decoration:underline}button.mat-mdc-unelevated-button.tab:disabled,button.mat-mdc-unelevated-button.tab:disabled:hover,a.mat-mdc-unelevated-button.tab:disabled,a.mat-mdc-unelevated-button.tab:disabled:hover{color:#888}button.mat-mdc-unelevated-button.tab:disabled .label,button.mat-mdc-unelevated-button.tab:disabled:hover .label,a.mat-mdc-unelevated-button.tab:disabled .label,a.mat-mdc-unelevated-button.tab:disabled:hover .label{text-decoration:none}button.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused{font-weight:700;border-color:#276678}button.mat-mdc-unelevated-button.menuTrigger,a.mat-mdc-unelevated-button.menuTrigger{background:transparent;min-width:24px;height:24px;padding:0}button.mat-mdc-unelevated-button.menuTrigger:hover,a.mat-mdc-unelevated-button.menuTrigger:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuTrigger:disabled,button.mat-mdc-unelevated-button.menuTrigger:disabled:hover,a.mat-mdc-unelevated-button.menuTrigger:disabled,a.mat-mdc-unelevated-button.menuTrigger:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuTrigger:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuTrigger:focus.cdk-focused.cdk-mouse-focused{background-color:transparent}button.mat-mdc-unelevated-button.menuTrigger .icon-label-wrapper,a.mat-mdc-unelevated-button.menuTrigger .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.menuTrigger.left .icon,button.mat-mdc-unelevated-button.menuTrigger.right .icon,a.mat-mdc-unelevated-button.menuTrigger.left .icon,a.mat-mdc-unelevated-button.menuTrigger.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.menuCell,a.mat-mdc-unelevated-button.menuCell{background-color:#fff;color:#000;font-weight:400;border-radius:0;min-width:100%;justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell.big.left .icon,a.mat-mdc-unelevated-button.menuCell.big.left .icon{margin-right:16px}button.mat-mdc-unelevated-button.menuCell .icon-label-wrapper,a.mat-mdc-unelevated-button.menuCell .icon-label-wrapper{justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell:hover,a.mat-mdc-unelevated-button.menuCell:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuCell:disabled,button.mat-mdc-unelevated-button.menuCell:disabled:hover,a.mat-mdc-unelevated-button.menuCell:disabled,a.mat-mdc-unelevated-button.menuCell:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.menuCell:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuCell:focus.cdk-focused.cdk-mouse-focused{background-color:#888}button.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}\n"] }]
420
- }], ctorParameters: function () { return []; }, propDecorators: { size: [{
421
- type: Input
422
- }], type: [{
423
- type: Input
424
- }], label: [{
425
- type: Input
426
- }], iconPosition: [{
427
- type: Input
428
- }], justIcon: [{
429
- type: Input
430
- }], iconName: [{
431
- type: Input
432
- }], disabled: [{
433
- type: Input
434
- }], loading: [{
435
- type: Input
436
- }], fullWidth: [{
437
- type: Input
438
- }], url: [{
439
- type: Input
440
- }], urlTarget: [{
441
- type: Input
442
- }], value: [{
443
- type: Input
444
- }], buttonClickEvent: [{
445
- type: Output
446
- }], buttonHoverEvent: [{
447
- type: Output
448
- }] } });
449
-
450
- class AlertBannerComponent {
451
- constructor() {
452
- /**
453
- * Alert Banner type
454
- *
455
- * @type {AlertBarType}
456
- * @memberof AlertBannerComponent
457
- */
458
- this.alertType = 'success';
459
- /**
460
- * Alert banner message
461
- *
462
- * @memberof AlertBannerComponent
463
- */
464
- this.message = '';
465
- /**
466
- * Include dismmiss button
467
- *
468
- * @memberof AlertBannerComponent
469
- */
470
- this.includeDismissButton = true;
471
- /**
472
- * Static or fixed position
473
- *
474
- * @memberof AlertBannerComponent
475
- */
476
- this.fixed = false;
477
- /**
478
- * Full width for alert banner
479
- *
480
- * @memberof AlertBannerComponent
481
- */
482
- this.fullWidth = true;
483
- /**
484
- * Link text that will appended at the end of message
485
- *
486
- * @memberof AlertBannerComponent
487
- */
488
- this.linkText = '';
489
- /**
490
- * Link target
491
- *
492
- * @type {@type {LinkTargetType}}
493
- * @memberof AlertBannerComponent
494
- */
495
- this.linkTarget = '_blank';
496
- this.visible = true;
497
- }
498
- ngOnInit() {
499
- this.iconName = alertBarsUtil.setIcon(this.alertType);
500
- this.position = alertBarsUtil.setPosition(this.fixed);
501
- this.cssClass = alertBarsUtil.setCssClass(this.fullWidth, this.alertType, this.position);
502
- }
503
- //Hide snackbar when dismiss button is clicked
504
- dismissClick() {
505
- this.visible = false;
506
- }
507
- }
508
- AlertBannerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
509
- AlertBannerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: AlertBannerComponent, selector: "ui-alert-banner", inputs: { alertType: "alertType", message: "message", includeDismissButton: "includeDismissButton", fixed: "fixed", fullWidth: "fullWidth", linkText: "linkText", linkUrl: "linkUrl", linkTarget: "linkTarget" }, ngImport: i0, template: "<div [ngClass]=\"cssClass\" [@openClose] *ngIf=\"visible\" class=\"alert-container\">\n <div class=\"alert-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n <a *ngIf=\"!!linkText\" [target]=\"linkTarget\" [href]=\"linkUrl\">{{ linkText }}</a>\n </div>\n <ui-button\n *ngIf=\"includeDismissButton\"\n type=\"text\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n (buttonClickEvent)=\"dismissClick()\"\n ></ui-button>\n</div>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .snackbar-container{max-width:600px}:host .alert-container,:host .snackbar-container{margin:0 auto;display:flex;padding:0 14px;border-radius:4px;align-items:center;justify-content:space-between;opacity:1;min-height:48px}:host .alert-container.fixed,:host .snackbar-container.fixed{position:fixed}:host .alert-container.static,:host .snackbar-container.static{position:relative}:host .alert-container ui-icon,:host .snackbar-container ui-icon{margin-right:14px}:host .alert-container ui-button,:host .snackbar-container ui-button{margin-left:14px}:host .alert-container ::ng-deep button.mat-mdc-unelevated-button.big,:host .snackbar-container ::ng-deep button.mat-mdc-unelevated-button.big{padding:0;min-width:auto}:host .alert-container .alert-text,:host .alert-container .snackbar-text,:host .snackbar-container .alert-text,:host .snackbar-container .snackbar-text{display:flex;align-items:center;color:#000}:host .alert-container .alert-text a,:host .alert-container .snackbar-text a,:host .snackbar-container .alert-text a,:host .snackbar-container .snackbar-text a{color:#000;text-decoration:underline;font-weight:700}:host .alert-container .alert-text a:hover,:host .alert-container .alert-text a:visited,:host .alert-container .alert-text a:focus,:host .alert-container .snackbar-text a:hover,:host .alert-container .snackbar-text a:visited,:host .alert-container .snackbar-text a:focus,:host .snackbar-container .alert-text a:hover,:host .snackbar-container .alert-text a:visited,:host .snackbar-container .alert-text a:focus,:host .snackbar-container .snackbar-text a:hover,:host .snackbar-container .snackbar-text a:visited,:host .snackbar-container .snackbar-text a:focus{text-decoration:none}:host .alert-container.success,:host .snackbar-container.success{background-color:#cbd6cb}:host .alert-container.info,:host .snackbar-container.info{background-color:#c8d7de}:host .alert-container.warning,:host .snackbar-container.warning{background-color:#f0d6bb}:host .alert-container.error,:host .snackbar-container.error{background-color:#e3c3c6}@media (max-width: 600px){:host .alert-container,:host .snackbar-container{padding:8px 14px}}:host .alert-container.fixed{top:0;z-index:98}:host .alert-container.full-width{width:100%;min-width:100%}:host .alert-container a{margin-left:7px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }], animations: [
510
- trigger('openClose', [
511
- transition(':enter', [animate('0.2s ease-out', style({ opacity: 1 }))]),
512
- transition(':leave', [animate('0.2s ease-in', style({ opacity: 0 }))]),
513
- ]),
514
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponent, decorators: [{
516
- type: Component,
517
- args: [{ selector: 'ui-alert-banner', animations: [
518
- trigger('openClose', [
519
- transition(':enter', [animate('0.2s ease-out', style({ opacity: 1 }))]),
520
- transition(':leave', [animate('0.2s ease-in', style({ opacity: 0 }))]),
521
- ]),
522
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"cssClass\" [@openClose] *ngIf=\"visible\" class=\"alert-container\">\n <div class=\"alert-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n <a *ngIf=\"!!linkText\" [target]=\"linkTarget\" [href]=\"linkUrl\">{{ linkText }}</a>\n </div>\n <ui-button\n *ngIf=\"includeDismissButton\"\n type=\"text\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n (buttonClickEvent)=\"dismissClick()\"\n ></ui-button>\n</div>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .snackbar-container{max-width:600px}:host .alert-container,:host .snackbar-container{margin:0 auto;display:flex;padding:0 14px;border-radius:4px;align-items:center;justify-content:space-between;opacity:1;min-height:48px}:host .alert-container.fixed,:host .snackbar-container.fixed{position:fixed}:host .alert-container.static,:host .snackbar-container.static{position:relative}:host .alert-container ui-icon,:host .snackbar-container ui-icon{margin-right:14px}:host .alert-container ui-button,:host .snackbar-container ui-button{margin-left:14px}:host .alert-container ::ng-deep button.mat-mdc-unelevated-button.big,:host .snackbar-container ::ng-deep button.mat-mdc-unelevated-button.big{padding:0;min-width:auto}:host .alert-container .alert-text,:host .alert-container .snackbar-text,:host .snackbar-container .alert-text,:host .snackbar-container .snackbar-text{display:flex;align-items:center;color:#000}:host .alert-container .alert-text a,:host .alert-container .snackbar-text a,:host .snackbar-container .alert-text a,:host .snackbar-container .snackbar-text a{color:#000;text-decoration:underline;font-weight:700}:host .alert-container .alert-text a:hover,:host .alert-container .alert-text a:visited,:host .alert-container .alert-text a:focus,:host .alert-container .snackbar-text a:hover,:host .alert-container .snackbar-text a:visited,:host .alert-container .snackbar-text a:focus,:host .snackbar-container .alert-text a:hover,:host .snackbar-container .alert-text a:visited,:host .snackbar-container .alert-text a:focus,:host .snackbar-container .snackbar-text a:hover,:host .snackbar-container .snackbar-text a:visited,:host .snackbar-container .snackbar-text a:focus{text-decoration:none}:host .alert-container.success,:host .snackbar-container.success{background-color:#cbd6cb}:host .alert-container.info,:host .snackbar-container.info{background-color:#c8d7de}:host .alert-container.warning,:host .snackbar-container.warning{background-color:#f0d6bb}:host .alert-container.error,:host .snackbar-container.error{background-color:#e3c3c6}@media (max-width: 600px){:host .alert-container,:host .snackbar-container{padding:8px 14px}}:host .alert-container.fixed{top:0;z-index:98}:host .alert-container.full-width{width:100%;min-width:100%}:host .alert-container a{margin-left:7px}\n"] }]
523
- }], ctorParameters: function () { return []; }, propDecorators: { alertType: [{
524
- type: Input
525
- }], message: [{
526
- type: Input
527
- }], includeDismissButton: [{
528
- type: Input
529
- }], fixed: [{
530
- type: Input
531
- }], fullWidth: [{
532
- type: Input
533
- }], linkText: [{
534
- type: Input
535
- }], linkUrl: [{
536
- type: Input
537
- }], linkTarget: [{
538
- type: Input
539
- }] } });
540
-
541
- class IconComponentModule {
542
- }
543
- IconComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
544
- IconComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: IconComponentModule, declarations: [IconComponent], imports: [CommonModule, MatIconModule, HttpClientModule], exports: [IconComponent] });
545
- IconComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconComponentModule, providers: [HttpClientModule], imports: [CommonModule, MatIconModule, HttpClientModule] });
546
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconComponentModule, decorators: [{
547
- type: NgModule,
548
- args: [{
549
- declarations: [IconComponent],
550
- imports: [CommonModule, MatIconModule, HttpClientModule],
551
- exports: [IconComponent],
552
- providers: [HttpClientModule],
553
- }]
554
- }] });
555
-
556
- class ButtonComponentModule {
557
- }
558
- ButtonComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
559
- ButtonComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponentModule, declarations: [ButtonComponent], imports: [CommonModule, MatButtonModule, IconComponentModule, MatProgressSpinnerModule], exports: [ButtonComponent] });
560
- ButtonComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponentModule, imports: [CommonModule, MatButtonModule, IconComponentModule, MatProgressSpinnerModule] });
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ButtonComponentModule, decorators: [{
562
- type: NgModule,
563
- args: [{
564
- declarations: [ButtonComponent],
565
- imports: [CommonModule, MatButtonModule, IconComponentModule, MatProgressSpinnerModule],
566
- exports: [ButtonComponent],
567
- providers: [],
568
- }]
569
- }] });
570
-
571
- class AlertBannerComponentModule {
572
- }
573
- AlertBannerComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
574
- AlertBannerComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponentModule, declarations: [AlertBannerComponent], imports: [CommonModule, ButtonComponentModule, IconComponentModule], exports: [AlertBannerComponent] });
575
- AlertBannerComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponentModule, imports: [CommonModule, ButtonComponentModule, IconComponentModule] });
576
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AlertBannerComponentModule, decorators: [{
577
- type: NgModule,
578
- args: [{
579
- declarations: [AlertBannerComponent],
580
- imports: [CommonModule, ButtonComponentModule, IconComponentModule],
581
- exports: [AlertBannerComponent],
582
- }]
583
- }] });
584
-
585
- class BannerActionComponent {
586
- constructor() {
587
- /**
588
- * BannerAction text
589
- *
590
- * @memberof BannerActionComponent
591
- */
592
- this.message = '';
593
- /**
594
- * BannerAction type
595
- *
596
- * @type {AlertBarType}
597
- * @memberof BannerActionComponent
598
- */
599
- this.bannerActionType = 'success';
600
- /**
601
- * Static or fixed position
602
- *
603
- * @memberof AlertBannerComponent
604
- */
605
- this.fixed = false;
606
- /**
607
- * Full width for alert banner
608
- *
609
- * @memberof AlertBannerComponent
610
- */
611
- this.fullWidth = true;
612
- this.buttonClickEvent = new EventEmitter();
613
- }
614
- buttonClick(event) {
615
- this.buttonClickEvent.emit(event);
616
- }
617
- ngOnInit() {
618
- this.iconName = alertBarsUtil.setIcon(this.bannerActionType);
619
- this.position = alertBarsUtil.setPosition(this.fixed);
620
- this.cssClass = alertBarsUtil.setCssClass(this.fullWidth, this.bannerActionType, this.position);
621
- }
622
- }
623
- BannerActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
624
- BannerActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BannerActionComponent, selector: "ui-banner-action", inputs: { message: "message", bannerActionType: "bannerActionType", buttonText: "buttonText", fixed: "fixed", fullWidth: "fullWidth", buttonIcon: "buttonIcon" }, outputs: { buttonClickEvent: "buttonClickEvent" }, ngImport: i0, template: "<div id=\"banner-action\" class=\"banner-action-container\" [ngClass]=\"cssClass\">\n <div class=\"banner-action-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n </div>\n <ui-button [label]=\"buttonText\" (buttonClickEvent)=\"buttonClick($event)\" [iconName]=\"buttonIcon\"></ui-button>\n</div>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .banner-action-container{height:72px;padding:0 16px;color:#000;font-size:14px;display:flex;align-items:center;background:#ffffff;border-radius:8px;justify-content:space-between;border-width:2px;border-style:solid}:host .banner-action-container.fixed{position:fixed;z-index:98;top:0}:host .banner-action-container.static{position:relative}:host .banner-action-container.full-width{width:100%;min-width:100%}:host .banner-action-container .banner-action-text{display:flex;align-items:center}:host .banner-action-container ui-icon{margin-right:14px}:host .banner-action-container ui-button{margin-left:14px}:host .banner-action-container.success{border-color:#46a997}:host .banner-action-container.info{border-color:#276678}:host .banner-action-container.warning{border-color:#cca45f}:host .banner-action-container.error{border-color:#cb7b7a}@media (max-width: 600px){:host .banner-action-container{height:auto;padding:16px;display:flex;flex-flow:column}:host .banner-action-container .banner-action-text{margin-bottom:10px}:host .banner-action-container ui-button{margin:0;width:100%}:host .banner-action-container ui-button ::ng-deep button{min-width:100%}}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
625
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponent, decorators: [{
626
- type: Component,
627
- args: [{ selector: 'ui-banner-action', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"banner-action\" class=\"banner-action-container\" [ngClass]=\"cssClass\">\n <div class=\"banner-action-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n </div>\n <ui-button [label]=\"buttonText\" (buttonClickEvent)=\"buttonClick($event)\" [iconName]=\"buttonIcon\"></ui-button>\n</div>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .banner-action-container{height:72px;padding:0 16px;color:#000;font-size:14px;display:flex;align-items:center;background:#ffffff;border-radius:8px;justify-content:space-between;border-width:2px;border-style:solid}:host .banner-action-container.fixed{position:fixed;z-index:98;top:0}:host .banner-action-container.static{position:relative}:host .banner-action-container.full-width{width:100%;min-width:100%}:host .banner-action-container .banner-action-text{display:flex;align-items:center}:host .banner-action-container ui-icon{margin-right:14px}:host .banner-action-container ui-button{margin-left:14px}:host .banner-action-container.success{border-color:#46a997}:host .banner-action-container.info{border-color:#276678}:host .banner-action-container.warning{border-color:#cca45f}:host .banner-action-container.error{border-color:#cb7b7a}@media (max-width: 600px){:host .banner-action-container{height:auto;padding:16px;display:flex;flex-flow:column}:host .banner-action-container .banner-action-text{margin-bottom:10px}:host .banner-action-container ui-button{margin:0;width:100%}:host .banner-action-container ui-button ::ng-deep button{min-width:100%}}\n"] }]
628
- }], ctorParameters: function () { return []; }, propDecorators: { message: [{
629
- type: Input
630
- }], bannerActionType: [{
631
- type: Input
632
- }], buttonText: [{
633
- type: Input
634
- }], fixed: [{
635
- type: Input
636
- }], fullWidth: [{
637
- type: Input
638
- }], buttonIcon: [{
639
- type: Input
640
- }], buttonClickEvent: [{
641
- type: Output
642
- }] } });
643
-
644
- class BannerActionComponentModule {
645
- }
646
- BannerActionComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
647
- BannerActionComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponentModule, declarations: [BannerActionComponent], imports: [CommonModule, ButtonComponentModule, IconComponentModule], exports: [BannerActionComponent] });
648
- BannerActionComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponentModule, imports: [CommonModule, ButtonComponentModule, IconComponentModule] });
649
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BannerActionComponentModule, decorators: [{
650
- type: NgModule,
651
- args: [{
652
- declarations: [BannerActionComponent],
653
- imports: [CommonModule, ButtonComponentModule, IconComponentModule],
654
- exports: [BannerActionComponent],
655
- providers: [],
656
- }]
657
- }] });
658
-
659
- var LogoTypeEnum;
660
- (function (LogoTypeEnum) {
661
- LogoTypeEnum["DEFAULT"] = "default";
662
- LogoTypeEnum["POWEREDBY"] = "poweredby";
663
- LogoTypeEnum["REVERSE"] = "reverse";
664
- })(LogoTypeEnum || (LogoTypeEnum = {}));
665
- ;
666
- var LogoPathEnum;
667
- (function (LogoPathEnum) {
668
- LogoPathEnum["DEFAULT"] = "/images/testgorilla.svg";
669
- LogoPathEnum["POWEREDBY"] = "/images/poweredbyTG.svg";
670
- LogoPathEnum["REVERSE"] = "/images/reverseTG.svg";
671
- })(LogoPathEnum || (LogoPathEnum = {}));
672
-
673
- class LogoComponent {
674
- constructor() {
675
- /**
676
- * Logo type
677
- *
678
- * @type {LogoTypeEnum}
679
- * @memberof LogoComponent
680
- */
681
- this.type = LogoTypeEnum.DEFAULT;
682
- /**
683
- * @ignore
684
- */
685
- this.setURL = () => {
686
- switch (this.type) {
687
- case LogoTypeEnum.POWEREDBY: {
688
- this.logoURL = LogoPathEnum.POWEREDBY;
689
- break;
690
- }
691
- case LogoTypeEnum.REVERSE: {
692
- this.logoURL = LogoPathEnum.REVERSE;
693
- break;
694
- }
695
- default: {
696
- this.logoURL = LogoPathEnum.DEFAULT;
697
- break;
698
- }
699
- }
700
- };
701
- }
702
- /**
703
- * @ignore
704
- */
705
- ngOnInit() {
706
- this.setURL();
707
- }
708
- ;
709
- /**
710
- * @ignore
711
- */
712
- ngOnChanges() {
713
- this.setURL();
714
- }
715
- }
716
- LogoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
717
- LogoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: LogoComponent, selector: "ui-logo", inputs: { type: "type" }, usesOnChanges: true, ngImport: i0, template: "<img [src]=\"logoURL\" [alt]=\"type\">\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
718
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LogoComponent, decorators: [{
719
- type: Component,
720
- args: [{ selector: 'ui-logo', changeDetection: ChangeDetectionStrategy.OnPush, template: "<img [src]=\"logoURL\" [alt]=\"type\">\n" }]
721
- }], propDecorators: { type: [{
722
- type: Input
723
- }] } });
724
-
725
- class CardComponent {
726
- constructor() {
727
- this.title = '';
728
- this.subTitle = '';
729
- }
730
- }
731
- CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
732
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CardComponent, selector: "ui-card", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .mat-mdc-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-mdc-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"], dependencies: [{ kind: "component", type: i1$2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i1$2.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i1$2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
733
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CardComponent, decorators: [{
734
- type: Component,
735
- args: [{ selector: 'ui-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card appearance=\"outlined\" class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .mat-mdc-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-mdc-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"] }]
736
- }], propDecorators: { title: [{
737
- type: Input
738
- }], subTitle: [{
739
- type: Input
740
- }] } });
741
-
742
- class LogoComponentModule {
743
- }
744
- LogoComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LogoComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
745
- LogoComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: LogoComponentModule, declarations: [LogoComponent], exports: [LogoComponent] });
746
- LogoComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LogoComponentModule });
747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LogoComponentModule, decorators: [{
748
- type: NgModule,
749
- args: [{
750
- declarations: [LogoComponent],
751
- imports: [],
752
- exports: [LogoComponent],
753
- }]
754
- }] });
755
-
756
- class CardComponentModule {
757
- }
758
- CardComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CardComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
759
- CardComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CardComponentModule, declarations: [CardComponent], imports: [CommonModule, MatCardModule, LogoComponentModule], exports: [CardComponent] });
760
- CardComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CardComponentModule, imports: [CommonModule, MatCardModule, LogoComponentModule] });
761
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CardComponentModule, decorators: [{
762
- type: NgModule,
763
- args: [{
764
- declarations: [CardComponent],
765
- imports: [CommonModule, MatCardModule, LogoComponentModule],
766
- exports: [CardComponent],
767
- }]
768
- }] });
769
-
770
- class CheckboxComponent {
771
- constructor() {
772
- /**
773
- * Determines whether the checkbox is disabled.
774
- * Default: false.
775
- *
776
- * @type {boolean}
777
- * @memberof CheckboxComponent
778
- */
779
- this.disabled = false;
780
- /**
781
- * Determines whether the checkbox is checked.
782
- * Default: false.
783
- *
784
- * @type {boolean}
785
- * @memberof CheckboxComponent
786
- */
787
- this.checked = false;
788
- /**
789
- * Determines whether the checkbox is indeterminate.
790
- * It can be used to represent a checkbox with three states, e.g. a checkbox that represents a nested list of checkable items.
791
- * Default: false.
792
- *
793
- * @type {boolean}
794
- * @memberof CheckboxComponent
795
- */
796
- this.indeterminate = false;
797
- /**
798
- * Determines whether the checkbox color.
799
- * Default: Test Gorilla primary color.
800
- *
801
- * @type {string}
802
- * @memberof CheckboxComponent
803
- */
804
- this.color = '#46A997';
805
- /**
806
- * Name value will be applied to the input element if present.
807
- *
808
- * @type {string}
809
- * @memberof CheckboxComponent
810
- */
811
- this.name = '';
812
- /**
813
- * Text content will be applied to the input element if present.
814
- *
815
- * @type {string}
816
- * @memberof CheckboxComponent
817
- */
818
- this.label = '';
819
- /**
820
- * Determines whether the checkbox is a multiple choice cell.
821
- * Default: false
822
- *
823
- * @type {boolean}
824
- * @memberof CheckboxComponent
825
- */
826
- this.multiple = false;
827
- /**
828
- * Event emitted when the checkbox's checked value changes.
829
- *
830
- * @type {boolean}
831
- * @memberof CheckboxComponent
832
- */
833
- this.changed = new EventEmitter();
834
- /**
835
- * @ignore
836
- */
837
- this.onChange = (_) => { };
838
- /**
839
- * @ignore
840
- */
841
- this.onTouch = () => { };
842
- }
843
- emitChange(event) {
844
- this.changed.emit(event.checked);
845
- }
846
- ngOnInit() {
847
- this.classMultiple = this.setClass();
848
- }
849
- toggleChecked(event) {
850
- this.changed.emit(event.checked);
851
- this.checked = event.checked;
852
- this.onTouch();
853
- this.onChange(this.checked);
854
- if (!this.disabled) {
855
- this.indeterminate = false;
856
- this.classMultiple = this.setClass();
857
- }
858
- }
859
- setClass() {
860
- if (this.multiple) {
861
- return this.checked || this.indeterminate ? 'multiple-checked' : 'multiple-unchecked';
862
- }
863
- return '';
864
- }
865
- writeValue(value) {
866
- this.checked = value;
867
- }
868
- registerOnChange(fn) {
869
- this.onChange = fn;
870
- }
871
- registerOnTouched(fn) {
872
- this.onTouch = fn;
873
- }
874
- setDisabledState(isDisabled) {
875
- this.disabled = isDisabled;
876
- }
877
- }
878
- CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
879
- CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CheckboxComponent, selector: "ui-checkbox", inputs: { disabled: "disabled", checked: "checked", indeterminate: "indeterminate", color: "color", name: "name", label: "label", multiple: "multiple" }, outputs: { changed: "changed" }, host: { properties: { "style.--color": "this.color" } }, providers: [
880
- {
881
- provide: NG_VALUE_ACCESSOR,
882
- useExisting: forwardRef(() => CheckboxComponent),
883
- multi: true,
884
- },
885
- ], ngImport: i0, template: "<div [ngClass]=\"classMultiple\">\n <mat-checkbox\n [indeterminate]=\"indeterminate\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n (change)=\"toggleChecked($event)\"\n [aria-label]=\"label\"\n class=\"checkbox\"\n >\n {{ label }}\n </mat-checkbox>\n</div>", styles: [".mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{background-color:var(--color)!important;border-color:var(--color)!important}.mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__ripple{background-color:var(--color)}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mdc-checkbox__native-control:indeterminate~.mat-mdc-checkbox-disabled .mdc-checkbox__background{background-color:#888}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mat-mdc-checkbox-checked.mat-mdc-checkbox-disabled .mdc-checkbox__background{background-color:#888}.multiple-checked{border:1px solid #46A997;display:flex;flex-direction:row;align-items:center;gap:16px;background:#46A997;border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-checkbox{width:100%;height:100%}.multiple-checked ::ng-deep .mdc-form-field{padding:8px;width:100%;height:100%;align-items:center}.multiple-checked .mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__background{border:1px solid #ffffff!important;border-color:#fff!important}.multiple-checked ::ng-deep label{color:#fff}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#ffffff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-checkbox{width:100%;height:100%}.multiple-unchecked ::ng-deep .mdc-form-field{padding:8px;width:100%;height:100%;align-items:center}.multiple-unchecked:hover{background:#F6F6F6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep .mdc-checkbox__background{border:1px solid #000000}.multiple-unchecked ::ng-deep .mdc-checkbox__native-control:not([disabled]):focus~.mdc-checkbox__ripple{opacity:0!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
886
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponent, decorators: [{
887
- type: Component,
888
- args: [{ selector: 'ui-checkbox', providers: [
889
- {
890
- provide: NG_VALUE_ACCESSOR,
891
- useExisting: forwardRef(() => CheckboxComponent),
892
- multi: true,
893
- },
894
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"classMultiple\">\n <mat-checkbox\n [indeterminate]=\"indeterminate\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n (change)=\"toggleChecked($event)\"\n [aria-label]=\"label\"\n class=\"checkbox\"\n >\n {{ label }}\n </mat-checkbox>\n</div>", styles: [".mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mat-mdc-checkbox-checked .mdc-checkbox__background{background-color:var(--color)!important;border-color:var(--color)!important}.mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__ripple{background-color:var(--color)}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mdc-checkbox__native-control:indeterminate~.mat-mdc-checkbox-disabled .mdc-checkbox__background{background-color:#888}::ng-deep .mat-mdc-checkbox.checkbox.mat-accent.mat-mdc-checkbox-checked.mat-mdc-checkbox-disabled .mdc-checkbox__background{background-color:#888}.multiple-checked{border:1px solid #46A997;display:flex;flex-direction:row;align-items:center;gap:16px;background:#46A997;border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-checkbox{width:100%;height:100%}.multiple-checked ::ng-deep .mdc-form-field{padding:8px;width:100%;height:100%;align-items:center}.multiple-checked .mat-mdc-checkbox.checkbox.mat-accent ::ng-deep .mdc-checkbox__background{border:1px solid #ffffff!important;border-color:#fff!important}.multiple-checked ::ng-deep label{color:#fff}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#ffffff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-checkbox{width:100%;height:100%}.multiple-unchecked ::ng-deep .mdc-form-field{padding:8px;width:100%;height:100%;align-items:center}.multiple-unchecked:hover{background:#F6F6F6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep .mdc-checkbox__background{border:1px solid #000000}.multiple-unchecked ::ng-deep .mdc-checkbox__native-control:not([disabled]):focus~.mdc-checkbox__ripple{opacity:0!important}\n"] }]
895
- }], propDecorators: { disabled: [{
896
- type: Input
897
- }], checked: [{
898
- type: Input
899
- }], indeterminate: [{
900
- type: Input
901
- }], color: [{
902
- type: HostBinding,
903
- args: ['style.--color']
904
- }, {
905
- type: Input
906
- }], name: [{
907
- type: Input
908
- }], label: [{
909
- type: Input
910
- }], multiple: [{
911
- type: Input
912
- }], changed: [{
913
- type: Output
914
- }] } });
915
-
916
- class CheckboxComponentModule {
917
- }
918
- CheckboxComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
919
- CheckboxComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponentModule, declarations: [CheckboxComponent], imports: [CommonModule, MatCheckboxModule, FormsModule, ReactiveFormsModule], exports: [CheckboxComponent] });
920
- CheckboxComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponentModule, imports: [CommonModule, MatCheckboxModule, FormsModule, ReactiveFormsModule] });
921
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CheckboxComponentModule, decorators: [{
922
- type: NgModule,
923
- args: [{
924
- declarations: [CheckboxComponent],
925
- imports: [CommonModule, MatCheckboxModule, FormsModule, ReactiveFormsModule],
926
- exports: [CheckboxComponent],
927
- }]
928
- }] });
929
-
930
- const PASSWORD_REGEX = /^(?=\D*\d)(?=[^a-z]*[a-z])(?=.*[#$%&'()*+,\-./:;<=>?@!^_~|"`{}\[\]])(?=[^A-Z]*[A-Z]).{12,}$/;
931
- class ValidatorsUtil {
932
- static validatePassword() {
933
- return [Validators.required, Validators.minLength(12), Validators.pattern(PASSWORD_REGEX)];
934
- }
935
- }
936
-
937
- const CREATE_ACCOUNT_i18n = {
938
- title: 'Create your Career Passport',
939
- subtitle: 'Enter the email address to which you received an assessment invite.',
940
- email_label: 'Email',
941
- password_label: 'Password',
942
- terms_conditions: 'I have read and accepted the ',
943
- terms_conditions_link_label: 'candidate terms',
944
- privacy_policy_link_label: 'privacy policy',
945
- terms_conditions_delimiter: 'and',
946
- button_label: 'Next',
947
- have_career_passport: 'Already have a Career Passport?',
948
- login: 'Log in here',
949
- };
950
-
951
- class DigitsOnlyDirective {
952
- constructor(el) {
953
- this.el = el;
954
- this.allowNegative = false;
955
- this.allowDecimal = false;
956
- this.allowOnlyDigits = false;
957
- }
958
- onKeyPress(event) {
959
- this.validate(event, event.key);
960
- }
961
- onPaste(event) {
962
- var _a;
963
- const pastedText = event && ((_a = event === null || event === void 0 ? void 0 : event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData('text/plain')); // Non-IE browsers
964
- this.validate(event, pastedText || '');
965
- }
966
- validate(event, text) {
967
- if (this.allowOnlyDigits) {
968
- const txtInput = this.el.nativeElement;
969
- const newValue = txtInput.value.substring(0, txtInput.selectionStart) + text + txtInput.value.substring(txtInput.selectionEnd);
970
- if (!this.regex) {
971
- this.regex = // eslint-disable-next-line no-eval
972
- eval(`/^${this.allowNegative ? '-?' : ''}${this.allowDecimal ? '((\\d+\\.?)|(\\.?))\\d*' : '\\d*'}$/g`);
973
- }
974
- if (!newValue.match(this.regex)) {
975
- event.preventDefault();
976
- return;
977
- }
978
- }
979
- }
980
- }
981
- DigitsOnlyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DigitsOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
982
- DigitsOnlyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DigitsOnlyDirective, selector: "[digitsOnly]", inputs: { allowNegative: "allowNegative", allowDecimal: "allowDecimal", allowOnlyDigits: "allowOnlyDigits" }, host: { listeners: { "keypress": "onKeyPress($event)", "paste": "onPaste($event)" } }, ngImport: i0 });
983
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DigitsOnlyDirective, decorators: [{
984
- type: Directive,
985
- args: [{
986
- selector: '[digitsOnly]',
987
- }]
988
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { allowNegative: [{
989
- type: Input
990
- }], allowDecimal: [{
991
- type: Input
992
- }], allowOnlyDigits: [{
993
- type: Input
994
- }], onKeyPress: [{
995
- type: HostListener,
996
- args: ['keypress', ['$event']]
997
- }], onPaste: [{
998
- type: HostListener,
999
- args: ['paste', ['$event']]
1000
- }] } });
1001
-
1002
- /* eslint-disable no-underscore-dangle */
1003
- class FieldComponent {
1004
- /**
1005
- * Input field errors
1006
- *
1007
- * @type {string}
1008
- * @memberof FieldComponent
1009
- */
1010
- set errors(errors) {
1011
- this._errors = errors;
1012
- this.errorsLength = this.setErrorsLength();
1013
- }
1014
- constructor() {
1015
- this.class = 'ui-field';
1016
- /**
1017
- * Form field label
1018
- *
1019
- * @type {string}
1020
- * @memberof FieldComponent
1021
- */
1022
- this.label = '';
1023
- /**
1024
- * Input placeholder
1025
- *
1026
- * @type {string}
1027
- * @memberof FieldComponent
1028
- */
1029
- this.placeholder = '';
1030
- /**
1031
- * Input id
1032
- *
1033
- * @type {string}
1034
- * @memberof FieldComponent
1035
- */
1036
- this.id = '';
1037
- /**
1038
- * Input value
1039
- *
1040
- * @type {string}
1041
- * @memberof FieldComponent
1042
- */
1043
- this.value = '';
1044
- /**
1045
- * Hint text
1046
- *
1047
- * @type {string}
1048
- * @memberof FieldComponent
1049
- */
1050
- this.hintMessage = '';
1051
- /**
1052
- * Input type
1053
- *
1054
- * @type {FieldType}
1055
- * @memberof FieldComponent
1056
- */
1057
- this.type = 'text';
1058
- /**
1059
- * Input is update only on blur
1060
- *
1061
- * @type {Boolean}
1062
- * @memberof FieldComponent
1063
- */
1064
- this.updateOnBlur = false;
1065
- /**
1066
- * allow only digits in input
1067
- *
1068
- * @type {Boolean}
1069
- * @memberof FieldComponent
1070
- */
1071
- this.allowOnlyDigits = false;
1072
- /**
1073
- * @ignore
1074
- */
1075
- this.onChange = (_) => { };
1076
- /**
1077
- * @ignore
1078
- */
1079
- this.onTouch = () => { };
1080
- }
1081
- ngOnInit() {
1082
- this.setSearchInput();
1083
- this.currentType = this.getType();
1084
- }
1085
- //set search input initial value
1086
- setSearchInput() {
1087
- if (this.type === 'search') {
1088
- this.showSearch = true;
1089
- }
1090
- else {
1091
- this.showClose = false;
1092
- this.showSearch = false;
1093
- }
1094
- }
1095
- //change type for reveal password
1096
- getType() {
1097
- if (this.type === 'password' && this.showPassword) {
1098
- return 'text';
1099
- }
1100
- return this.type;
1101
- }
1102
- //Clear input value
1103
- clearValue() {
1104
- this.value = '';
1105
- this.onChangeInputSearch();
1106
- }
1107
- //toggle for password
1108
- showPasswordClick() {
1109
- this.showPassword = !this.showPassword;
1110
- this.currentType = this.getType();
1111
- }
1112
- //Set options for search input
1113
- onChangeInputSearch() {
1114
- if (this.type === 'search') {
1115
- if (!this.value) {
1116
- this.showClose = false;
1117
- this.showSearch = true;
1118
- }
1119
- if (this.value) {
1120
- this.showClose = true;
1121
- this.showSearch = false;
1122
- }
1123
- }
1124
- }
1125
- // Set errors length for validation
1126
- // Consider only those errors which which are not empty
1127
- setErrorsLength() {
1128
- if (!!this._errors) {
1129
- return this._errors.filter(err => !!err).length > 0 ? true : false;
1130
- }
1131
- return false;
1132
- }
1133
- //Save input value
1134
- onInput(event) {
1135
- this.value = event.target.value;
1136
- this.errorsLength = this.setErrorsLength();
1137
- if (!this.updateOnBlur) {
1138
- this.onTouch();
1139
- }
1140
- this.onChange(this.value);
1141
- }
1142
- writeValue(value) {
1143
- if (value) {
1144
- this.value = value || '';
1145
- }
1146
- else {
1147
- this.value = '';
1148
- }
1149
- }
1150
- registerOnChange(fn) {
1151
- this.onChange = fn;
1152
- }
1153
- registerOnTouched(fn) {
1154
- this.onTouch = fn;
1155
- }
1156
- setDisabledState(isDisabled) {
1157
- this.disabled = isDisabled;
1158
- }
1159
- }
1160
- FieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1161
- FieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FieldComponent, selector: "ui-field", inputs: { label: "label", fieldName: "fieldName", placeholder: "placeholder", id: "id", value: "value", errors: "errors", disabled: "disabled", required: "required", hintMessage: "hintMessage", type: "type", updateOnBlur: "updateOnBlur", allowOnlyDigits: "allowOnlyDigits" }, host: { properties: { "class": "this.class" } }, providers: [
1162
- {
1163
- provide: NG_VALUE_ACCESSOR,
1164
- useExisting: forwardRef(() => FieldComponent),
1165
- multi: true,
1166
- },
1167
- ], ngImport: i0, template: "<mat-form-field #uiField appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <input\n matInput\n (blur)=\"onTouch()\"\n (input)=\"onInput($event)\"\n [id]=\"id!\"\n (keyup)=\"onChangeInputSearch()\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [type]=\"currentType\"\n [name]=\"fieldName!\"\n digitsOnly\n [allowOnlyDigits]=\"allowOnlyDigits\"\n />\n <div class=\"options\" *ngIf=\"type === 'search' || type === 'password'\">\n <div class=\"options-container\">\n <ui-button\n *ngIf=\"showClose\"\n type=\"secondary\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n label=\"Clear\"\n (buttonClickEvent)=\"clearValue()\"\n ></ui-button>\n <ui-icon *ngIf=\"showSearch\" size=\"24\" class=\"search\" name=\"Search\"></ui-icon>\n <ui-button\n *ngIf=\"type === 'password'\"\n type=\"secondary\"\n [justIcon]=\"true\"\n class=\"password\"\n [iconName]=\"showPassword ? 'Eye-hide' : 'Eye-view'\"\n label=\"View password\"\n (buttonClickEvent)=\"showPasswordClick()\"\n ></ui-button>\n </div>\n </div>\n <mat-hint class=\"info\" *ngIf=\"hintMessage && !_errors\">{{ hintMessage }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n</mat-form-field>\n", styles: [".ui-field input[type=search]::-webkit-search-decoration,.ui-field input[type=search]::-webkit-search-cancel-button,.ui-field input[type=search]::-webkit-search-results-button,.ui-field input[type=search]::-webkit-search-results-decoration{display:none}.ui-field .mat-mdc-form-field{margin-top:0;width:100%}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-field .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-field .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:4px;font-size:12px;line-height:16px;position:relative}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%;text-align:right}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}.ui-field .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-field .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-field .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:#cb7b7a}.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-field .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:#cb7b7a}.ui-field .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-field .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex}.ui-field .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-field .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .options .options-container ui-button.search svg,.ui-field .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .options .options-container ui-button.password svg{color:#276678}.ui-field .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-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-button svg,.ui-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-icon svg{color:#276678}.ui-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-button.close svg{color:#888}.ui-field .mat-mdc-form-field .options{position:inline-flex}.ui-field .mat-mdc-form-field .options .options-container{display:flex;column-gap:8px;padding-left:8px}.ui-field .mat-mdc-form-field .options .options-container ui-button,.ui-field .mat-mdc-form-field .options .options-container ui-icon{display:flex}.ui-field .mat-mdc-form-field .options .options-container ui-button svg,.ui-field .mat-mdc-form-field .options .options-container ui-icon svg{color:#888}.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon{padding:0;height:auto;background:transparent}.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon:hover,.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon:focus{background:transparent;color:inherit;border:none;outline:none}.ui-field .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-field .mat-mdc-form-field.mat-form-field-disabled .options .options-container ui-button svg,.ui-field .mat-mdc-form-field.mat-form-field-disabled .options .options-container ui-icon svg{color:#e0e0e0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "directive", type: DigitsOnlyDirective, selector: "[digitsOnly]", inputs: ["allowNegative", "allowDecimal", "allowOnlyDigits"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FieldComponent, decorators: [{
1169
- type: Component,
1170
- args: [{ selector: 'ui-field', encapsulation: ViewEncapsulation.None, providers: [
1171
- {
1172
- provide: NG_VALUE_ACCESSOR,
1173
- useExisting: forwardRef(() => FieldComponent),
1174
- multi: true,
1175
- },
1176
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field #uiField appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <input\n matInput\n (blur)=\"onTouch()\"\n (input)=\"onInput($event)\"\n [id]=\"id!\"\n (keyup)=\"onChangeInputSearch()\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [type]=\"currentType\"\n [name]=\"fieldName!\"\n digitsOnly\n [allowOnlyDigits]=\"allowOnlyDigits\"\n />\n <div class=\"options\" *ngIf=\"type === 'search' || type === 'password'\">\n <div class=\"options-container\">\n <ui-button\n *ngIf=\"showClose\"\n type=\"secondary\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n label=\"Clear\"\n (buttonClickEvent)=\"clearValue()\"\n ></ui-button>\n <ui-icon *ngIf=\"showSearch\" size=\"24\" class=\"search\" name=\"Search\"></ui-icon>\n <ui-button\n *ngIf=\"type === 'password'\"\n type=\"secondary\"\n [justIcon]=\"true\"\n class=\"password\"\n [iconName]=\"showPassword ? 'Eye-hide' : 'Eye-view'\"\n label=\"View password\"\n (buttonClickEvent)=\"showPasswordClick()\"\n ></ui-button>\n </div>\n </div>\n <mat-hint class=\"info\" *ngIf=\"hintMessage && !_errors\">{{ hintMessage }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n</mat-form-field>\n", styles: [".ui-field input[type=search]::-webkit-search-decoration,.ui-field input[type=search]::-webkit-search-cancel-button,.ui-field input[type=search]::-webkit-search-results-button,.ui-field input[type=search]::-webkit-search-results-decoration{display:none}.ui-field .mat-mdc-form-field{margin-top:0;width:100%}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-field .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-field .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:4px;font-size:12px;line-height:16px;position:relative}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%;text-align:right}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-field .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}.ui-field .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-field .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-field .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:#cb7b7a}.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-field .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-field .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:#cb7b7a}.ui-field .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-field .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex}.ui-field .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-field .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .options .options-container ui-button.search svg,.ui-field .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .options .options-container ui-button.password svg{color:#276678}.ui-field .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-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-button svg,.ui-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-icon svg{color:#276678}.ui-field .mat-mdc-form-field.mat-accent.mat-focused .options .options-container ui-button.close svg{color:#888}.ui-field .mat-mdc-form-field .options{position:inline-flex}.ui-field .mat-mdc-form-field .options .options-container{display:flex;column-gap:8px;padding-left:8px}.ui-field .mat-mdc-form-field .options .options-container ui-button,.ui-field .mat-mdc-form-field .options .options-container ui-icon{display:flex}.ui-field .mat-mdc-form-field .options .options-container ui-button svg,.ui-field .mat-mdc-form-field .options .options-container ui-icon svg{color:#888}.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon{padding:0;height:auto;background:transparent}.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon:hover,.ui-field .mat-mdc-form-field .options ui-button button.secondary.only-icon:focus{background:transparent;color:inherit;border:none;outline:none}.ui-field .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-field .mat-mdc-form-field.mat-form-field-disabled .options .options-container ui-button svg,.ui-field .mat-mdc-form-field.mat-form-field-disabled .options .options-container ui-icon svg{color:#e0e0e0}\n"] }]
1177
- }], ctorParameters: function () { return []; }, propDecorators: { class: [{
1178
- type: HostBinding
1179
- }], label: [{
1180
- type: Input
1181
- }], fieldName: [{
1182
- type: Input
1183
- }], placeholder: [{
1184
- type: Input
1185
- }], id: [{
1186
- type: Input
1187
- }], value: [{
1188
- type: Input
1189
- }], errors: [{
1190
- type: Input
1191
- }], disabled: [{
1192
- type: Input
1193
- }], required: [{
1194
- type: Input
1195
- }], hintMessage: [{
1196
- type: Input
1197
- }], type: [{
1198
- type: Input
1199
- }], updateOnBlur: [{
1200
- type: Input
1201
- }], allowOnlyDigits: [{
1202
- type: Input
1203
- }] } });
1204
-
1205
- class CreateAccountComponent {
1206
- /**
1207
- * @ignore
1208
- */
1209
- ngOnInit() {
1210
- var _a, _b;
1211
- if (this.email) {
1212
- (_a = this.registerForm.get('username')) === null || _a === void 0 ? void 0 : _a.setValue(this.email);
1213
- }
1214
- if (!this.emailEditable) {
1215
- (_b = this.registerForm.get('username')) === null || _b === void 0 ? void 0 : _b.disable();
1216
- }
1217
- }
1218
- constructor(fb) {
1219
- this.fb = fb;
1220
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
1221
- // https://github.com/storybookjs/storybook/issues/16865
1222
- // https://github.com/storybookjs/storybook/issues/17004
1223
- /**
1224
- * @ignore
1225
- */
1226
- this.email = '';
1227
- /**
1228
- * @ignore
1229
- */
1230
- this.emailEditable = true;
1231
- /**
1232
- * Path for candidate terms link
1233
- * @memberof CreateAccountComponent
1234
- */
1235
- this.termsOfusePath = 'https://www.testgorilla.com/candidate-terms/';
1236
- /**
1237
- * Path for privacy policy link
1238
- * @memberof CreateAccountComponent
1239
- */
1240
- this.privacyPolicyPath = 'https://www.testgorilla.com/privacy-policy/';
1241
- /**
1242
- * @ignore
1243
- */
1244
- this.registerForm = this.fb.group({
1245
- username: ['', [Validators.required, Validators.email]],
1246
- password: ['', ValidatorsUtil.validatePassword()],
1247
- agree_terms_and_conditions: [false, [Validators.requiredTrue]],
1248
- });
1249
- /**
1250
- * @ignore
1251
- */
1252
- this.formErrors = {
1253
- username: [''],
1254
- password: [''],
1255
- };
1256
- /**
1257
- * Indicator if the form is loading
1258
- *
1259
- * @memberof ButtonComponent
1260
- */
1261
- this.loading = false;
1262
- /**
1263
- *
1264
- * @description Object with the translations for the component.
1265
- * @type {Ii18nCreateAccount}
1266
- * @memberof CreateAccountComponent
1267
- */
1268
- this.i18n = CREATE_ACCOUNT_i18n;
1269
- /**
1270
- * @ignore
1271
- */
1272
- this.submitEvent = new EventEmitter();
1273
- /**
1274
- * @ignore
1275
- */
1276
- this.loginEvent = new EventEmitter();
1277
- /**
1278
- * @ignore
1279
- */
1280
- this.errorMessages = {
1281
- email: 'Enter a valid email',
1282
- required: 'This field is required',
1283
- };
1284
- /**
1285
- * @ignore
1286
- */
1287
- this.passwordErrorMessages = {
1288
- pattern: 'Password is invalid',
1289
- };
1290
- }
1291
- submit() {
1292
- var _a, _b;
1293
- this.submitEvent.emit({
1294
- username: (_a = this.registerForm.get('username')) === null || _a === void 0 ? void 0 : _a.value,
1295
- password: (_b = this.registerForm.get('password')) === null || _b === void 0 ? void 0 : _b.value,
1296
- });
1297
- }
1298
- login() {
1299
- this.loginEvent.emit();
1300
- }
1301
- checkErrors(field) {
1302
- const errorsMap = this.registerForm.controls[field].errors || {};
1303
- const errors = [];
1304
- for (const key in errorsMap) {
1305
- if (errorsMap[key] && this.errorMessages[key]) {
1306
- errors.push(this.errorMessages[key]);
1307
- }
1308
- }
1309
- if (field === 'password') {
1310
- for (const key in errorsMap) {
1311
- if (errorsMap[key] && this.passwordErrorMessages[key]) {
1312
- errors.push(this.passwordErrorMessages[key]);
1313
- }
1314
- }
1315
- }
1316
- this.formErrors[field] = errors;
1317
- }
1318
- }
1319
- CreateAccountComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponent, deps: [{ token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
1320
- CreateAccountComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CreateAccountComponent, selector: "ui-create-account", inputs: { email: "email", emailEditable: "emailEditable", termsOfusePath: "termsOfusePath", privacyPolicyPath: "privacyPolicyPath", formErrors: "formErrors", loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", loginEvent: "loginEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <div class=\"subtitle\">{{ i18n.subtitle }}</div>\n <form [formGroup]=\"registerForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"username\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"formErrors['username']\"\n (ngModelChange)=\"checkErrors('username')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"formErrors['password']\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n <div class=\"password-strength-container\">\n <mat-password-strength\n [min]=\"12\"\n #passwordComponentWithValidation\n [password]=\"registerForm.controls['password'].value\"\n aria-hidden=\"true\"\n >\n </mat-password-strength>\n </div>\n <mat-password-strength-info [passwordComponent]=\"passwordComponentWithValidation\"> </mat-password-strength-info>\n </div>\n <div class=\"terms-conditions-container\">\n <ui-checkbox formControlName=\"agree_terms_and_conditions\" [label]=\"i18n.terms_conditions\"></ui-checkbox>\n <a class=\"link\" [href]=\"termsOfusePath\" target=\"_blank\">{{ i18n.terms_conditions_link_label }}</a>\n <span>{{i18n.terms_conditions_delimiter}}</span>\n <a class=\"link\" [href]=\"privacyPolicyPath\" target=\"_blank\">{{ i18n.privacy_policy_link_label }}</a>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"registerForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.have_career_passport }} <span class=\"link\" (click)=\"login()\">{{ i18n.login }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin-top:40px}.form-box .subtitle{font-weight:400;font-size:16px;line-height:21.6px;margin:24px 0}.form-box .field{width:100%}.form-box .password-strength-container{margin:2.7px 0 1px}.form-box .terms-conditions-container{display:flex;align-items:center;gap:4px;margin-left:-8px}.form-box .submit-button{margin:24px 0}.form-box .mat-mdc-checkbox{font-weight:400}.form-box .mat-mdc-checkbox ::ng-deep .mdc-checkbox{padding-left:4px}.form-box .mat-mdc-checkbox ::ng-deep .mdc-checkbox .mdc-checkbox__background{left:4px}.form-box .link{font-weight:600;cursor:pointer;color:#46a997;text-decoration:none}.form-box .link:hover{text-decoration:underline}.form-box ::ng-deep .mat-mdc-card-content{padding:0!important}.row{display:flex;flex-direction:row}.row.space-between{justify-content:space-between}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["label", "fieldName", "placeholder", "id", "value", "errors", "disabled", "required", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: CheckboxComponent, selector: "ui-checkbox", inputs: ["disabled", "checked", "indeterminate", "color", "name", "label", "multiple"], outputs: ["changed"] }, { kind: "component", type: i5.MatPasswordStrengthComponent, selector: "mat-password-strength", inputs: ["password", "externalError", "enableLengthRule", "enableLowerCaseLetterRule", "enableUpperCaseLetterRule", "enableDigitRule", "enableSpecialCharRule", "min", "max", "customValidator", "warnThreshold", "accentThreshold"], outputs: ["onStrengthChanged"], exportAs: ["matPasswordStrength"] }, { kind: "component", type: i5.MatPasswordStrengthInfoComponent, selector: "mat-password-strength-info", inputs: ["passwordComponent", "enableScoreInfo", "lowerCaseCriteriaMsg", "upperCaseCriteriaMsg", "digitsCriteriaMsg", "specialCharsCriteriaMsg", "customCharsCriteriaMsg", "minCharsCriteriaMsg", "matIconDone", "matIconError"], exportAs: ["matPasswordStrengthInfo"] }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1321
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponent, decorators: [{
1322
- type: Component,
1323
- args: [{ selector: 'ui-create-account', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <div class=\"subtitle\">{{ i18n.subtitle }}</div>\n <form [formGroup]=\"registerForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"username\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"formErrors['username']\"\n (ngModelChange)=\"checkErrors('username')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"formErrors['password']\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n <div class=\"password-strength-container\">\n <mat-password-strength\n [min]=\"12\"\n #passwordComponentWithValidation\n [password]=\"registerForm.controls['password'].value\"\n aria-hidden=\"true\"\n >\n </mat-password-strength>\n </div>\n <mat-password-strength-info [passwordComponent]=\"passwordComponentWithValidation\"> </mat-password-strength-info>\n </div>\n <div class=\"terms-conditions-container\">\n <ui-checkbox formControlName=\"agree_terms_and_conditions\" [label]=\"i18n.terms_conditions\"></ui-checkbox>\n <a class=\"link\" [href]=\"termsOfusePath\" target=\"_blank\">{{ i18n.terms_conditions_link_label }}</a>\n <span>{{i18n.terms_conditions_delimiter}}</span>\n <a class=\"link\" [href]=\"privacyPolicyPath\" target=\"_blank\">{{ i18n.privacy_policy_link_label }}</a>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"registerForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.have_career_passport }} <span class=\"link\" (click)=\"login()\">{{ i18n.login }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin-top:40px}.form-box .subtitle{font-weight:400;font-size:16px;line-height:21.6px;margin:24px 0}.form-box .field{width:100%}.form-box .password-strength-container{margin:2.7px 0 1px}.form-box .terms-conditions-container{display:flex;align-items:center;gap:4px;margin-left:-8px}.form-box .submit-button{margin:24px 0}.form-box .mat-mdc-checkbox{font-weight:400}.form-box .mat-mdc-checkbox ::ng-deep .mdc-checkbox{padding-left:4px}.form-box .mat-mdc-checkbox ::ng-deep .mdc-checkbox .mdc-checkbox__background{left:4px}.form-box .link{font-weight:600;cursor:pointer;color:#46a997;text-decoration:none}.form-box .link:hover{text-decoration:underline}.form-box ::ng-deep .mat-mdc-card-content{padding:0!important}.row{display:flex;flex-direction:row}.row.space-between{justify-content:space-between}\n"] }]
1324
- }], ctorParameters: function () { return [{ type: i1$3.UntypedFormBuilder }]; }, propDecorators: { email: [{
1325
- type: Input
1326
- }], emailEditable: [{
1327
- type: Input
1328
- }], termsOfusePath: [{
1329
- type: Input
1330
- }], privacyPolicyPath: [{
1331
- type: Input
1332
- }], formErrors: [{
1333
- type: Input
1334
- }], loading: [{
1335
- type: Input
1336
- }], i18n: [{
1337
- type: Input
1338
- }], submitEvent: [{
1339
- type: Output
1340
- }], loginEvent: [{
1341
- type: Output
1342
- }] } });
1343
-
1344
- class FieldComponentModule {
1345
- }
1346
- FieldComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FieldComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1347
- FieldComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FieldComponentModule, declarations: [FieldComponent, DigitsOnlyDirective], imports: [CommonModule,
1348
- MatFormFieldModule,
1349
- MatInputModule,
1350
- IconComponentModule,
1351
- FormsModule,
1352
- ReactiveFormsModule,
1353
- ButtonComponentModule], exports: [FieldComponent] });
1354
- FieldComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FieldComponentModule, imports: [CommonModule,
1355
- MatFormFieldModule,
1356
- MatInputModule,
1357
- IconComponentModule,
1358
- FormsModule,
1359
- ReactiveFormsModule,
1360
- ButtonComponentModule] });
1361
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FieldComponentModule, decorators: [{
1362
- type: NgModule,
1363
- args: [{
1364
- declarations: [FieldComponent, DigitsOnlyDirective],
1365
- imports: [
1366
- CommonModule,
1367
- MatFormFieldModule,
1368
- MatInputModule,
1369
- IconComponentModule,
1370
- FormsModule,
1371
- ReactiveFormsModule,
1372
- ButtonComponentModule,
1373
- ],
1374
- exports: [FieldComponent],
1375
- providers: [],
1376
- }]
1377
- }] });
1378
-
1379
- class CreateAccountComponentModule {
1380
- }
1381
- CreateAccountComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1382
- CreateAccountComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponentModule, declarations: [CreateAccountComponent], imports: [CommonModule,
1383
- FormsModule,
1384
- ReactiveFormsModule,
1385
- FieldComponentModule,
1386
- ButtonComponentModule,
1387
- CheckboxComponentModule,
1388
- MatPasswordStrengthModule,
1389
- LogoComponentModule], exports: [CreateAccountComponent] });
1390
- CreateAccountComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponentModule, imports: [CommonModule,
1391
- FormsModule,
1392
- ReactiveFormsModule,
1393
- FieldComponentModule,
1394
- ButtonComponentModule,
1395
- CheckboxComponentModule,
1396
- MatPasswordStrengthModule,
1397
- LogoComponentModule] });
1398
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreateAccountComponentModule, decorators: [{
1399
- type: NgModule,
1400
- args: [{
1401
- declarations: [CreateAccountComponent],
1402
- imports: [
1403
- CommonModule,
1404
- FormsModule,
1405
- ReactiveFormsModule,
1406
- FieldComponentModule,
1407
- ButtonComponentModule,
1408
- CheckboxComponentModule,
1409
- MatPasswordStrengthModule,
1410
- LogoComponentModule,
1411
- ],
1412
- exports: [CreateAccountComponent],
1413
- providers: [],
1414
- }]
1415
- }] });
1416
-
1417
- const CREATE_PASSWORD_i18n = {
1418
- title: 'Please create a new password',
1419
- password_label: 'Set password',
1420
- button: 'Set new password',
1421
- };
1422
-
1423
- class CreatePasswordComponent {
1424
- /**
1425
- * @ignore
1426
- */
1427
- ngOnInit() { }
1428
- constructor(fb) {
1429
- this.fb = fb;
1430
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
1431
- // https://github.com/storybookjs/storybook/issues/16865
1432
- // https://github.com/storybookjs/storybook/issues/17004
1433
- /**
1434
- * @ignore
1435
- */
1436
- this.createPasswordForm = this.fb.group({
1437
- password: ['', ValidatorsUtil.validatePassword()],
1438
- });
1439
- /**
1440
- * @ignore
1441
- */
1442
- this.formErrors = {
1443
- password: [''],
1444
- };
1445
- /**
1446
- * Indicator if the form is loading
1447
- *
1448
- * @memberof ButtonComponent
1449
- */
1450
- this.loading = false;
1451
- /**
1452
- *
1453
- * @description Object with the translations for the component.
1454
- * @type {Ii18nCreatePassword}
1455
- * @memberof CreatePasswordComponent
1456
- */
1457
- this.i18n = CREATE_PASSWORD_i18n;
1458
- /**
1459
- * @ignore
1460
- */
1461
- this.submitEvent = new EventEmitter();
1462
- }
1463
- submit() {
1464
- var _a;
1465
- this.submitEvent.emit({
1466
- password: (_a = this.createPasswordForm.get('password')) === null || _a === void 0 ? void 0 : _a.value,
1467
- });
1468
- }
1469
- checkErrors(field) {
1470
- if (this.createPasswordForm.controls[field].touched) {
1471
- if (this.createPasswordForm.controls[field].hasError('required')) {
1472
- this.formErrors[field] = ['This field is required'];
1473
- return;
1474
- }
1475
- if (field === 'password' && this.createPasswordForm.controls[field].hasError('pattern')) {
1476
- this.formErrors.password = ['Password is invalid'];
1477
- return;
1478
- }
1479
- }
1480
- this.formErrors[field] = [''];
1481
- }
1482
- }
1483
- CreatePasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponent, deps: [{ token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
1484
- CreatePasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CreatePasswordComponent, selector: "ui-create-password", inputs: { formErrors: "formErrors", loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"createPasswordForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n <mat-password-strength\n [min]=\"12\"\n #passwordComponentWithValidation\n [password]=\"createPasswordForm.controls['password'].value\"\n aria-hidden=\"true\"\n >\n </mat-password-strength>\n <mat-password-strength-info [passwordComponent]=\"passwordComponentWithValidation\"> </mat-password-strength-info>\n </div>\n <div></div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button\"\n [disabled]=\"createPasswordForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin-top:25px}.form-box ::ng-deep .mat-mdc-card-content{padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["label", "fieldName", "placeholder", "id", "value", "errors", "disabled", "required", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: i5.MatPasswordStrengthComponent, selector: "mat-password-strength", inputs: ["password", "externalError", "enableLengthRule", "enableLowerCaseLetterRule", "enableUpperCaseLetterRule", "enableDigitRule", "enableSpecialCharRule", "min", "max", "customValidator", "warnThreshold", "accentThreshold"], outputs: ["onStrengthChanged"], exportAs: ["matPasswordStrength"] }, { kind: "component", type: i5.MatPasswordStrengthInfoComponent, selector: "mat-password-strength-info", inputs: ["passwordComponent", "enableScoreInfo", "lowerCaseCriteriaMsg", "upperCaseCriteriaMsg", "digitsCriteriaMsg", "specialCharsCriteriaMsg", "customCharsCriteriaMsg", "minCharsCriteriaMsg", "matIconDone", "matIconError"], exportAs: ["matPasswordStrengthInfo"] }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1485
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponent, decorators: [{
1486
- type: Component,
1487
- args: [{ selector: 'ui-create-password', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"createPasswordForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n <mat-password-strength\n [min]=\"12\"\n #passwordComponentWithValidation\n [password]=\"createPasswordForm.controls['password'].value\"\n aria-hidden=\"true\"\n >\n </mat-password-strength>\n <mat-password-strength-info [passwordComponent]=\"passwordComponentWithValidation\"> </mat-password-strength-info>\n </div>\n <div></div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button\"\n [disabled]=\"createPasswordForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin-top:25px}.form-box ::ng-deep .mat-mdc-card-content{padding:0!important}\n"] }]
1488
- }], ctorParameters: function () { return [{ type: i1$3.UntypedFormBuilder }]; }, propDecorators: { formErrors: [{
1489
- type: Input
1490
- }], loading: [{
1491
- type: Input
1492
- }], i18n: [{
1493
- type: Input
1494
- }], submitEvent: [{
1495
- type: Output
1496
- }] } });
1497
-
1498
- class CreatePasswordComponentModule {
1499
- }
1500
- CreatePasswordComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1501
- CreatePasswordComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponentModule, declarations: [CreatePasswordComponent], imports: [CommonModule,
1502
- FormsModule,
1503
- ReactiveFormsModule,
1504
- FieldComponentModule,
1505
- ButtonComponentModule,
1506
- MatPasswordStrengthModule,
1507
- LogoComponentModule], exports: [CreatePasswordComponent] });
1508
- CreatePasswordComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponentModule, imports: [CommonModule,
1509
- FormsModule,
1510
- ReactiveFormsModule,
1511
- FieldComponentModule,
1512
- ButtonComponentModule,
1513
- MatPasswordStrengthModule,
1514
- LogoComponentModule] });
1515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CreatePasswordComponentModule, decorators: [{
1516
- type: NgModule,
1517
- args: [{
1518
- declarations: [CreatePasswordComponent],
1519
- imports: [
1520
- CommonModule,
1521
- FormsModule,
1522
- ReactiveFormsModule,
1523
- FieldComponentModule,
1524
- ButtonComponentModule,
1525
- MatPasswordStrengthModule,
1526
- LogoComponentModule,
1527
- ],
1528
- exports: [CreatePasswordComponent],
1529
- providers: [],
1530
- }]
1531
- }] });
1532
-
1533
- class DialogComponent {
1534
- constructor(dialogRef) {
1535
- this.dialogRef = dialogRef;
1536
- /**
1537
- * Dialog title
1538
- *
1539
- * @memberof DialogComponent
1540
- */
1541
- this.title = '';
1542
- /**
1543
- * Show close button
1544
- *
1545
- * @memberof DialogComponent
1546
- */
1547
- this.showCloseButton = true;
1548
- /**
1549
- * Fuction called before dialgo is closed
1550
- *
1551
- * @memberof DialogComponent
1552
- */
1553
- this.canCloseFn = () => true;
1554
- /**
1555
- * Secondary button label
1556
- *
1557
- * @memberof DialogComponent
1558
- */
1559
- this.secondaryButtonLabel = '';
1560
- /**
1561
- * Primary button label
1562
- *
1563
- * @memberof DialogComponent
1564
- */
1565
- this.primaryButtonLabel = '';
1566
- /**
1567
- * Secondary button type
1568
- *
1569
- * @memberof DialogComponent
1570
- */
1571
- this.secondaryButtonType = 'secondary';
1572
- /**
1573
- * Primary button type
1574
- *
1575
- * @memberof DialogComponent
1576
- */
1577
- this.primaryButtonType = 'primary';
1578
- this.closeEvent = new EventEmitter();
1579
- this.secondaryButtonClickEvent = new EventEmitter();
1580
- this.primaryButtonClickEvent = new EventEmitter();
1581
- this.disableButtons = false;
1582
- }
1583
- ngOnInit() {
1584
- this.areButtonsDisabled();
1585
- }
1586
- ngOnChanges(changes) {
1587
- if (changes['canCloseFn']) {
1588
- this.dialogRef.disableClose = !this.canCloseFn();
1589
- this.areButtonsDisabled();
1590
- }
1591
- }
1592
- //Disable primary button when canClose is false
1593
- areButtonsDisabled() {
1594
- if (this.canCloseFn() === false) {
1595
- this.disableButtons = true;
1596
- }
1597
- else {
1598
- this.disableButtons = false;
1599
- }
1600
- }
1601
- //Close modal
1602
- dismiss() {
1603
- if (this.canCloseFn()) {
1604
- this.dialogRef.disableClose = false;
1605
- this.dialogRef.close();
1606
- }
1607
- }
1608
- onClose(event) {
1609
- this.closeEvent.emit(event);
1610
- }
1611
- onSecondaryButtonClick(event) {
1612
- this.secondaryButtonClickEvent.emit(event);
1613
- }
1614
- onPrimaryButtonClick(event) {
1615
- this.primaryButtonClickEvent.emit(event);
1616
- }
1617
- }
1618
- DialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogComponent, deps: [{ token: i1$4.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
1619
- DialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DialogComponent, selector: "ui-dialog", inputs: { title: "title", showCloseButton: "showCloseButton", canCloseFn: "canCloseFn", secondaryButtonLabel: "secondaryButtonLabel", primaryButtonLabel: "primaryButtonLabel", secondaryButtonType: "secondaryButtonType", primaryButtonType: "primaryButtonType" }, outputs: { closeEvent: "closeEvent", secondaryButtonClickEvent: "secondaryButtonClickEvent", primaryButtonClickEvent: "primaryButtonClickEvent" }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div mat-dialog-title class=\"dialog-title\">\n {{ title }}\n <div *ngIf=\"showCloseButton\">\n <ui-button\n type=\"text\"\n [justIcon]=\"true\"\n [disabled]=\"disableButtons\"\n class=\"close\"\n iconName=\"Close\"\n label=\"Close dialog\"\n (click)=\"onClose($event)\"\n (buttonClickEvent)=\"dismiss()\"\n ></ui-button>\n </div>\n </div>\n <mat-dialog-content>\n <ng-content></ng-content>\n </mat-dialog-content>\n <div mat-dialog-actions *ngIf=\"secondaryButtonLabel !== '' || primaryButtonLabel !== ''\">\n <ui-button\n [type]=\"secondaryButtonType\"\n *ngIf=\"!!secondaryButtonLabel\"\n [label]=\"secondaryButtonLabel\"\n (click)=\"onSecondaryButtonClick($event)\"\n ></ui-button>\n <ui-button\n [type]=\"primaryButtonType\"\n *ngIf=\"!!primaryButtonLabel\"\n [disabled]=\"disableButtons\"\n (click)=\"onPrimaryButtonClick($event)\"\n [label]=\"primaryButtonLabel\"\n (buttonClickEvent)=\"dismiss()\"\n ></ui-button>\n </div>\n</ng-container>\n", styles: [".ui-dialog-wrapper{display:flex;flex-flow:column}.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{border-radius:8px;padding:16px}.ui-dialog-wrapper .mat-mdc-dialog-content{font-size:14px;color:#000;line-height:20px}.dialog-title{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin:0;font-size:20px!important;font-weight:700!important}.dialog-title .close{margin-right:-24px}.dialog-title:before{content:none}.mat-mdc-dialog-actions{display:flex;justify-content:flex-end;column-gap:16px;padding:16px 0 0;margin-bottom:0;min-height:48px}@media (max-width: 1024px){.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{min-width:320px;max-width:600px;border-radius:0}.mat-mdc-dialog-content{max-height:524px}}@media (max-width: 600px){.cdk-overlay-pane.ui-dialog-wrapper{max-width:100%!important;min-height:100%;display:flex;flex-flow:column}.cdk-overlay-pane.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{min-width:100%;max-width:100%;height:100%;display:flex;flex-grow:1;border-radius:0}ui-dialog{height:100%;display:flex;flex-flow:column}.mat-mdc-dialog-content{max-height:unset;display:flex;flex-grow:1;flex-direction:column}}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1620
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogComponent, decorators: [{
1621
- type: Component,
1622
- args: [{ selector: 'ui-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container>\n <div mat-dialog-title class=\"dialog-title\">\n {{ title }}\n <div *ngIf=\"showCloseButton\">\n <ui-button\n type=\"text\"\n [justIcon]=\"true\"\n [disabled]=\"disableButtons\"\n class=\"close\"\n iconName=\"Close\"\n label=\"Close dialog\"\n (click)=\"onClose($event)\"\n (buttonClickEvent)=\"dismiss()\"\n ></ui-button>\n </div>\n </div>\n <mat-dialog-content>\n <ng-content></ng-content>\n </mat-dialog-content>\n <div mat-dialog-actions *ngIf=\"secondaryButtonLabel !== '' || primaryButtonLabel !== ''\">\n <ui-button\n [type]=\"secondaryButtonType\"\n *ngIf=\"!!secondaryButtonLabel\"\n [label]=\"secondaryButtonLabel\"\n (click)=\"onSecondaryButtonClick($event)\"\n ></ui-button>\n <ui-button\n [type]=\"primaryButtonType\"\n *ngIf=\"!!primaryButtonLabel\"\n [disabled]=\"disableButtons\"\n (click)=\"onPrimaryButtonClick($event)\"\n [label]=\"primaryButtonLabel\"\n (buttonClickEvent)=\"dismiss()\"\n ></ui-button>\n </div>\n</ng-container>\n", styles: [".ui-dialog-wrapper{display:flex;flex-flow:column}.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{border-radius:8px;padding:16px}.ui-dialog-wrapper .mat-mdc-dialog-content{font-size:14px;color:#000;line-height:20px}.dialog-title{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin:0;font-size:20px!important;font-weight:700!important}.dialog-title .close{margin-right:-24px}.dialog-title:before{content:none}.mat-mdc-dialog-actions{display:flex;justify-content:flex-end;column-gap:16px;padding:16px 0 0;margin-bottom:0;min-height:48px}@media (max-width: 1024px){.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{min-width:320px;max-width:600px;border-radius:0}.mat-mdc-dialog-content{max-height:524px}}@media (max-width: 600px){.cdk-overlay-pane.ui-dialog-wrapper{max-width:100%!important;min-height:100%;display:flex;flex-flow:column}.cdk-overlay-pane.ui-dialog-wrapper .mat-mdc-dialog-container .mdc-dialog__container .mat-mdc-dialog-surface{min-width:100%;max-width:100%;height:100%;display:flex;flex-grow:1;border-radius:0}ui-dialog{height:100%;display:flex;flex-flow:column}.mat-mdc-dialog-content{max-height:unset;display:flex;flex-grow:1;flex-direction:column}}\n"] }]
1623
- }], ctorParameters: function () { return [{ type: i1$4.MatDialogRef }]; }, propDecorators: { title: [{
1624
- type: Input
1625
- }], showCloseButton: [{
1626
- type: Input
1627
- }], canCloseFn: [{
1628
- type: Input
1629
- }], secondaryButtonLabel: [{
1630
- type: Input
1631
- }], primaryButtonLabel: [{
1632
- type: Input
1633
- }], secondaryButtonType: [{
1634
- type: Input
1635
- }], primaryButtonType: [{
1636
- type: Input
1637
- }], closeEvent: [{
1638
- type: Output
1639
- }], secondaryButtonClickEvent: [{
1640
- type: Output
1641
- }], primaryButtonClickEvent: [{
1642
- type: Output
1643
- }] } });
1644
-
1645
- class DialogService {
1646
- constructor(matDialog) {
1647
- this.matDialog = matDialog;
1648
- }
1649
- open(dialogComponent) {
1650
- // Open the dialog using UI custom styles
1651
- return this.matDialog.open(dialogComponent, {
1652
- panelClass: 'ui-dialog-wrapper',
1653
- });
1654
- }
1655
- }
1656
- DialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService, deps: [{ token: i1$4.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
1657
- DialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService });
1658
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogService, decorators: [{
1659
- type: Injectable
1660
- }], ctorParameters: function () { return [{ type: i1$4.MatDialog }]; } });
1661
-
1662
- class DialogComponentModule {
1663
- }
1664
- DialogComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1665
- DialogComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DialogComponentModule, declarations: [DialogComponent], imports: [CommonModule, MatDialogModule, ButtonComponentModule], exports: [DialogComponent] });
1666
- DialogComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogComponentModule, providers: [{ provide: MAT_DIALOG_DATA, useValue: {} }, { provide: MatDialogRef, useValue: {} }, DialogService], imports: [CommonModule, MatDialogModule, ButtonComponentModule] });
1667
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DialogComponentModule, decorators: [{
1668
- type: NgModule,
1669
- args: [{
1670
- declarations: [DialogComponent],
1671
- imports: [CommonModule, MatDialogModule, ButtonComponentModule],
1672
- exports: [DialogComponent],
1673
- providers: [{ provide: MAT_DIALOG_DATA, useValue: {} }, { provide: MatDialogRef, useValue: {} }, DialogService],
1674
- }]
1675
- }] });
1676
-
1677
- var ElevationType;
1678
- (function (ElevationType) {
1679
- ElevationType["DEFAULT"] = "default";
1680
- ElevationType["MODAL"] = "modal";
1681
- })(ElevationType || (ElevationType = {}));
1682
-
1683
- class ElevationShadowComponent {
1684
- constructor() {
1685
- /**
1686
- * The type of elevation shadow.
1687
- * Default: default.
1688
- *
1689
- * @type {ElevationType}
1690
- * @memberof ElevationShadowComponent
1691
- */
1692
- this.elevationType = ElevationType.DEFAULT;
1693
- }
1694
- }
1695
- ElevationShadowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1696
- ElevationShadowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ElevationShadowComponent, selector: "ui-elevation-shadow", inputs: { elevationType: "elevationType" }, ngImport: i0, template: "<div [ngClass]=\"elevationType\">\n <ng-content></ng-content>\n</div>", styles: [".modal{border:2px solid #E0E0E0;box-shadow:2px 24px 48px 8px #00000014;border-radius:8px}.default{border:2px solid #E0E0E0;box-shadow:0 8px 24px 4px #00000014;border-radius:8px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1697
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponent, decorators: [{
1698
- type: Component,
1699
- args: [{ selector: 'ui-elevation-shadow', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"elevationType\">\n <ng-content></ng-content>\n</div>", styles: [".modal{border:2px solid #E0E0E0;box-shadow:2px 24px 48px 8px #00000014;border-radius:8px}.default{border:2px solid #E0E0E0;box-shadow:0 8px 24px 4px #00000014;border-radius:8px}\n"] }]
1700
- }], propDecorators: { elevationType: [{
1701
- type: Input
1702
- }] } });
1703
-
1704
- class ElevationShadowComponentModule {
1705
- }
1706
- ElevationShadowComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1707
- ElevationShadowComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponentModule, declarations: [ElevationShadowComponent], imports: [CommonModule], exports: [ElevationShadowComponent] });
1708
- ElevationShadowComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponentModule, imports: [CommonModule] });
1709
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ElevationShadowComponentModule, decorators: [{
1710
- type: NgModule,
1711
- args: [{
1712
- declarations: [ElevationShadowComponent],
1713
- imports: [CommonModule],
1714
- exports: [ElevationShadowComponent],
1715
- }]
1716
- }] });
1717
-
1718
- class ProgressBarComponent {
1719
- constructor() {
1720
- /**
1721
- * Color of the progress bar.
1722
- * Defaults to Test Gorilla primary color.
1723
- *
1724
- * @type {string}
1725
- * @memberof ProgressBarComponent
1726
- */
1727
- this.color = '#46A997';
1728
- /**
1729
- * Progress value of the progress bar.
1730
- * Defaults to zero.
1731
- *
1732
- * @type {number}
1733
- * @memberof ProgressBarComponent
1734
- */
1735
- this.progress = 0;
1736
- /**
1737
- * Mode of the progress bar.
1738
- * Mode must be one of these values: determinate, indeterminate, buffer, query.
1739
- * Defaults to 'determinate'.
1740
- *
1741
- * @type {ProgressBarMode}
1742
- * @memberof ProgressBarComponent
1743
- */
1744
- this.mode = 'determinate';
1745
- /**
1746
- * Buffer value of the progress bar.
1747
- * Defaults to zero.
1748
- *
1749
- * @type {number}
1750
- * @memberof ProgressBarComponent
1751
- */
1752
- this.buffer = 0;
1753
- }
1754
- }
1755
- ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1756
- ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ProgressBarComponent, selector: "ui-progress-bar", inputs: { color: "color", progress: "progress", mode: "mode", buffer: "buffer" }, host: { properties: { "style.--color": "this.color" } }, ngImport: i0, template: "<mat-progress-bar\n [mode]=\"mode\"\n [value]=\"progress\"\n [bufferValue]=\"buffer\"\n aria-label=\"Progress bar\"\n title=\"progress-bar\"\n class=\"progress-bar\"\n></mat-progress-bar>\n", styles: [".mat-mdc-progress-bar.progress-bar{height:8px;border-radius:8px}.mat-mdc-progress-bar.progress-bar ::ng-deep .mdc-linear-progress__buffer-bar{background-color:#e0e0e0}.mat-mdc-progress-bar.progress-bar ::ng-deep .mdc-linear-progress__bar-inner{border-top-width:8px}\n"], dependencies: [{ kind: "component", type: i1$5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1757
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponent, decorators: [{
1758
- type: Component,
1759
- args: [{ selector: 'ui-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-progress-bar\n [mode]=\"mode\"\n [value]=\"progress\"\n [bufferValue]=\"buffer\"\n aria-label=\"Progress bar\"\n title=\"progress-bar\"\n class=\"progress-bar\"\n></mat-progress-bar>\n", styles: [".mat-mdc-progress-bar.progress-bar{height:8px;border-radius:8px}.mat-mdc-progress-bar.progress-bar ::ng-deep .mdc-linear-progress__buffer-bar{background-color:#e0e0e0}.mat-mdc-progress-bar.progress-bar ::ng-deep .mdc-linear-progress__bar-inner{border-top-width:8px}\n"] }]
1760
- }], ctorParameters: function () { return []; }, propDecorators: { color: [{
1761
- type: HostBinding,
1762
- args: ['style.--color']
1763
- }, {
1764
- type: Input
1765
- }], progress: [{
1766
- type: Input
1767
- }], mode: [{
1768
- type: Input
1769
- }], buffer: [{
1770
- type: Input
1771
- }] } });
1772
-
1773
- class DragDropDirective {
1774
- constructor() {
1775
- this.fileDropped = new EventEmitter();
1776
- }
1777
- // Dragover listener
1778
- onDragOver(event) {
1779
- event.preventDefault();
1780
- event.stopPropagation();
1781
- this.file = true;
1782
- }
1783
- // Dragleave listener
1784
- onDragLeave(event) {
1785
- event.preventDefault();
1786
- event.stopPropagation();
1787
- this.file = false;
1788
- }
1789
- // Drop listener
1790
- ondrop(event) {
1791
- event.preventDefault();
1792
- event.stopPropagation();
1793
- this.file = false;
1794
- let files;
1795
- if (!!event.dataTransfer) {
1796
- files = event.dataTransfer.files;
1797
- if (files.length > 0) {
1798
- this.fileDropped.emit(files);
1799
- }
1800
- }
1801
- }
1802
- }
1803
- DragDropDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DragDropDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1804
- DragDropDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DragDropDirective, selector: "[uiDragDrop]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "ondrop($event)" }, properties: { "class.file-over": "this.file" } }, ngImport: i0 });
1805
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DragDropDirective, decorators: [{
1806
- type: Directive,
1807
- args: [{
1808
- selector: '[uiDragDrop]'
1809
- }]
1810
- }], ctorParameters: function () { return []; }, propDecorators: { file: [{
1811
- type: HostBinding,
1812
- args: ['class.file-over']
1813
- }], fileDropped: [{
1814
- type: Output
1815
- }], onDragOver: [{
1816
- type: HostListener,
1817
- args: ['dragover', ['$event']]
1818
- }], onDragLeave: [{
1819
- type: HostListener,
1820
- args: ['dragleave', ['$event']]
1821
- }], ondrop: [{
1822
- type: HostListener,
1823
- args: ['drop', ['$event']]
1824
- }] } });
1825
-
1826
- class FileUploadComponent {
1827
- constructor() {
1828
- this.class = 'ui-file-upload';
1829
- this.OnDrop = new EventEmitter();
1830
- /**
1831
- * @ignore
1832
- */
1833
- this.onChange = (_) => { };
1834
- /**
1835
- * @ignore
1836
- */
1837
- this.onTouch = () => { };
1838
- this.file = null;
1839
- this.progress = false;
1840
- this.success = false;
1841
- }
1842
- ngOnInit() {
1843
- this.browse = true;
1844
- }
1845
- //When file is dropped
1846
- onFileDropped(files) {
1847
- this.emitFile(files);
1848
- }
1849
- //When input changes
1850
- onChangeUpload(event) {
1851
- const element = event.currentTarget;
1852
- this.emitFile(element.files || new FileList());
1853
- }
1854
- //Emit drop file
1855
- emitFile(files) {
1856
- const [file] = Array.from(files);
1857
- this.file = file;
1858
- this.errors = null;
1859
- this.onTouch();
1860
- this.onChange(this.file);
1861
- this.OnDrop.emit(file);
1862
- }
1863
- //Show progress-bar
1864
- showProgress() {
1865
- this.browse = false;
1866
- return this.file && !this.errors ? true : false;
1867
- }
1868
- //Show success elements
1869
- showSuccess() {
1870
- return this.file && this.uploadProgress === 100 && !this.errors ? true : false;
1871
- }
1872
- //Show browse when there are error
1873
- showBrowse() {
1874
- return this.errors ? true : false;
1875
- }
1876
- ngOnChanges(changes) {
1877
- if (changes['uploadProgress']) {
1878
- this.progress = this.showProgress();
1879
- this.success = this.showSuccess();
1880
- this.browse = this.showBrowse();
1881
- }
1882
- if (changes['errors']) {
1883
- this.progress = this.showProgress();
1884
- this.success = this.showSuccess();
1885
- this.browse = this.showBrowse();
1886
- }
1887
- }
1888
- writeValue(value) {
1889
- if (value) {
1890
- this.file = value || null;
1891
- }
1892
- else {
1893
- this.file = null;
1894
- }
1895
- }
1896
- registerOnChange(fn) {
1897
- this.onChange = fn;
1898
- }
1899
- registerOnTouched(fn) {
1900
- this.onTouch = fn;
1901
- }
1902
- setDisabledState(isDisabled) {
1903
- this.disabled = isDisabled;
1904
- }
1905
- }
1906
- FileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1907
- FileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FileUploadComponent, selector: "ui-file-upload", inputs: { maxFileSizeMB: "maxFileSizeMB", supportedFileTypes: "supportedFileTypes", uploadProgress: "uploadProgress", errors: "errors", disabled: "disabled" }, outputs: { OnDrop: "OnDrop" }, host: { properties: { "class": "this.class" } }, providers: [
1908
- {
1909
- provide: NG_VALUE_ACCESSOR,
1910
- useExisting: forwardRef(() => FileUploadComponent),
1911
- multi: true,
1912
- },
1913
- ], usesOnChanges: true, ngImport: i0, template: "<div class=\"upload-file-container\" uiDragDrop [ngClass]=\"{'upload-errors': !!errors}\" (fileDropped)=\"onFileDropped($event)\">\n <div *ngIf=\"browse\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ui-icon class=\"upload-icon\" name=\"File-upload\"></ui-icon>\n <div class=\"errors\" *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\">\n <ui-icon name=\"Error\"></ui-icon> {{ error }}\n </span>\n </div>\n <input class=\"form-control\" #fileDrop type=\"file\" id=\"fileDrop\" (change)=\"onChangeUpload($event)\">\n <p>Drag and drop or <label for=\"fileDrop\" class=\"semibold\">browse</label> your files</p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}MB max file size.</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ui-icon class=\"upload-icon\" name=\"File-upload\"></ui-icon>\n <input class=\"form-control\" #fileDrop type=\"file\" id=\"fileDrop\" (change)=\"onChangeUpload($event)\" [disabled]=\"disabled\">\n <p>Drag and drop or <label for=\"fileDrop\" class=\"semibold\">change</label> your files</p>\n <span class=\"upload-text\"><strong>{{ file.name }}</strong></span>\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar\n [progress]=\"uploadProgress\"\n ></ui-progress-bar>\n <p class=\"upload-text\">Uploading <span>{{uploadProgress}}</span>%</p>\n </div>\n</div>\n<div class=\"upload-supported-files\" *ngIf=\"!!supportedFileTypes\">\n <span>Supported file types:</span>{{ supportedFileTypes }}\n</div>", styles: [".upload-file-container{border-radius:8px;border:1px dashed #888888;background:#F6F6F6;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{opacity:0;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors ui-icon,.upload-file-container .upload-browse .errors ui-icon{margin-right:4px}.upload-file-container .upload-change .errors ui-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors ui-icon mat-icon.size-16 svg{width:16px;height:16px;color:#cb7b7a}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-supported-files{font-size:12px;line-height:16px;margin-top:8px;display:flex}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container{max-width:100%}}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "component", type: ProgressBarComponent, selector: "ui-progress-bar", inputs: ["color", "progress", "mode", "buffer"] }, { kind: "directive", type: DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }], animations: [
1914
- trigger('inOutAnimation', [
1915
- transition(':enter', [
1916
- style({ opacity: 0, height: 0 }),
1917
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1918
- ]),
1919
- transition(':leave', [
1920
- style({ opacity: 1, height: '196px' }),
1921
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1922
- ]),
1923
- ]),
1924
- trigger('inOutAnimationProgress', [
1925
- transition(':enter', [
1926
- style({ opacity: 0, height: 0 }),
1927
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1928
- ]),
1929
- transition(':leave', [
1930
- style({ opacity: 1, height: '196px' }),
1931
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1932
- ]),
1933
- ]),
1934
- trigger('inOutAnimationChange', [
1935
- transition(':enter', [
1936
- style({ opacity: 0, height: 0 }),
1937
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1938
- ]),
1939
- transition(':leave', [
1940
- style({ opacity: 1, height: '196px' }),
1941
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1942
- ]),
1943
- ]),
1944
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1945
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponent, decorators: [{
1946
- type: Component,
1947
- args: [{ selector: 'ui-file-upload', encapsulation: ViewEncapsulation.None, providers: [
1948
- {
1949
- provide: NG_VALUE_ACCESSOR,
1950
- useExisting: forwardRef(() => FileUploadComponent),
1951
- multi: true,
1952
- },
1953
- ], changeDetection: ChangeDetectionStrategy.OnPush, animations: [
1954
- trigger('inOutAnimation', [
1955
- transition(':enter', [
1956
- style({ opacity: 0, height: 0 }),
1957
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1958
- ]),
1959
- transition(':leave', [
1960
- style({ opacity: 1, height: '196px' }),
1961
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1962
- ]),
1963
- ]),
1964
- trigger('inOutAnimationProgress', [
1965
- transition(':enter', [
1966
- style({ opacity: 0, height: 0 }),
1967
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1968
- ]),
1969
- transition(':leave', [
1970
- style({ opacity: 1, height: '196px' }),
1971
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1972
- ]),
1973
- ]),
1974
- trigger('inOutAnimationChange', [
1975
- transition(':enter', [
1976
- style({ opacity: 0, height: 0 }),
1977
- animate('0.2s ease-out', style({ opacity: 1, height: '196px' })),
1978
- ]),
1979
- transition(':leave', [
1980
- style({ opacity: 1, height: '196px' }),
1981
- animate('0.2s ease-in', style({ opacity: 0, height: 0 })),
1982
- ]),
1983
- ]),
1984
- ], template: "<div class=\"upload-file-container\" uiDragDrop [ngClass]=\"{'upload-errors': !!errors}\" (fileDropped)=\"onFileDropped($event)\">\n <div *ngIf=\"browse\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ui-icon class=\"upload-icon\" name=\"File-upload\"></ui-icon>\n <div class=\"errors\" *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\">\n <ui-icon name=\"Error\"></ui-icon> {{ error }}\n </span>\n </div>\n <input class=\"form-control\" #fileDrop type=\"file\" id=\"fileDrop\" (change)=\"onChangeUpload($event)\">\n <p>Drag and drop or <label for=\"fileDrop\" class=\"semibold\">browse</label> your files</p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}MB max file size.</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ui-icon class=\"upload-icon\" name=\"File-upload\"></ui-icon>\n <input class=\"form-control\" #fileDrop type=\"file\" id=\"fileDrop\" (change)=\"onChangeUpload($event)\" [disabled]=\"disabled\">\n <p>Drag and drop or <label for=\"fileDrop\" class=\"semibold\">change</label> your files</p>\n <span class=\"upload-text\"><strong>{{ file.name }}</strong></span>\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar\n [progress]=\"uploadProgress\"\n ></ui-progress-bar>\n <p class=\"upload-text\">Uploading <span>{{uploadProgress}}</span>%</p>\n </div>\n</div>\n<div class=\"upload-supported-files\" *ngIf=\"!!supportedFileTypes\">\n <span>Supported file types:</span>{{ supportedFileTypes }}\n</div>", styles: [".upload-file-container{border-radius:8px;border:1px dashed #888888;background:#F6F6F6;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{opacity:0;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors ui-icon,.upload-file-container .upload-browse .errors ui-icon{margin-right:4px}.upload-file-container .upload-change .errors ui-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors ui-icon mat-icon.size-16 svg{width:16px;height:16px;color:#cb7b7a}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-supported-files{font-size:12px;line-height:16px;margin-top:8px;display:flex}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container{max-width:100%}}\n"] }]
1985
- }], ctorParameters: function () { return []; }, propDecorators: { class: [{
1986
- type: HostBinding
1987
- }], maxFileSizeMB: [{
1988
- type: Input
1989
- }], supportedFileTypes: [{
1990
- type: Input
1991
- }], uploadProgress: [{
1992
- type: Input
1993
- }], errors: [{
1994
- type: Input
1995
- }], disabled: [{
1996
- type: Input
1997
- }], OnDrop: [{
1998
- type: Output
1999
- }] } });
2000
-
2001
- class ProgressBarComponentModule {
2002
- }
2003
- ProgressBarComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2004
- ProgressBarComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponentModule, declarations: [ProgressBarComponent], imports: [CommonModule, MatProgressBarModule], exports: [ProgressBarComponent] });
2005
- ProgressBarComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponentModule, imports: [CommonModule, MatProgressBarModule] });
2006
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProgressBarComponentModule, decorators: [{
2007
- type: NgModule,
2008
- args: [{
2009
- declarations: [ProgressBarComponent],
2010
- imports: [CommonModule, MatProgressBarModule],
2011
- exports: [ProgressBarComponent],
2012
- providers: [],
2013
- }]
2014
- }] });
2015
-
2016
- class FileUploadComponentModule {
2017
- }
2018
- FileUploadComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2019
- FileUploadComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponentModule, declarations: [FileUploadComponent, DragDropDirective], imports: [CommonModule, MatFormFieldModule, MatInputModule, IconComponentModule, ProgressBarComponentModule], exports: [FileUploadComponent] });
2020
- FileUploadComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponentModule, imports: [CommonModule, MatFormFieldModule, MatInputModule, IconComponentModule, ProgressBarComponentModule] });
2021
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FileUploadComponentModule, decorators: [{
2022
- type: NgModule,
2023
- args: [{
2024
- declarations: [FileUploadComponent, DragDropDirective],
2025
- imports: [CommonModule, MatFormFieldModule, MatInputModule, IconComponentModule, ProgressBarComponentModule],
2026
- exports: [FileUploadComponent],
2027
- providers: [],
2028
- }]
2029
- }] });
2030
-
2031
- const FORGOT_PASSWORD_i18n = {
2032
- title: 'Reset your password',
2033
- email_label: 'Email',
2034
- button_label: 'Send reset link',
2035
- back_to_login: 'Back to log in',
2036
- };
2037
-
2038
- class ForgotPasswordComponent {
2039
- /**
2040
- * @ignore
2041
- */
2042
- ngOnInit() { }
2043
- constructor(fb) {
2044
- this.fb = fb;
2045
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
2046
- // https://github.com/storybookjs/storybook/issues/16865
2047
- // https://github.com/storybookjs/storybook/issues/17004
2048
- /**
2049
- * @ignore
2050
- */
2051
- this.forgotPasswordForm = this.fb.group({
2052
- email: ['', [Validators.required, Validators.email]],
2053
- });
2054
- /**
2055
- * @ignore
2056
- */
2057
- this.formErrors = {
2058
- email: [''],
2059
- };
2060
- /**
2061
- *
2062
- * @description Object with the translations for the component.
2063
- * @type {Ii18nForgotPassword}
2064
- * @memberof ForgotPasswordComponent
2065
- */
2066
- this.i18n = FORGOT_PASSWORD_i18n;
2067
- /**
2068
- * @ignore
2069
- */
2070
- this.submitEvent = new EventEmitter();
2071
- /**
2072
- * @ignore
2073
- */
2074
- this.backToLoginEvent = new EventEmitter();
2075
- }
2076
- submit() {
2077
- var _a;
2078
- this.submitEvent.emit({
2079
- email: (_a = this.forgotPasswordForm.get('email')) === null || _a === void 0 ? void 0 : _a.value,
2080
- });
2081
- }
2082
- backToLogin() {
2083
- this.backToLoginEvent.emit();
2084
- }
2085
- checkErrors(field) {
2086
- if (this.forgotPasswordForm.controls[field].touched) {
2087
- if (this.forgotPasswordForm.controls[field].hasError('required')) {
2088
- this.formErrors[field] = ['This field is required'];
2089
- return;
2090
- }
2091
- if (this.forgotPasswordForm.controls[field].hasError('email')) {
2092
- this.formErrors[field] = ['Enter a valid email'];
2093
- return;
2094
- }
2095
- }
2096
- this.formErrors[field] = [''];
2097
- }
2098
- }
2099
- ForgotPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2100
- ForgotPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ForgotPasswordComponent, selector: "ui-forgot-password", inputs: { formErrors: "formErrors", loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", backToLoginEvent: "backToLoginEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"forgotPasswordForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div></div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"forgotPasswordForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div class=\"back-login\" (click)=\"backToLogin()\">\n <mat-icon>arrow_back</mat-icon>\n <span>{{ i18n.back_to_login }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 21px}.form-box .field{width:100%}.form-box .submit-button{margin:3px 0 24px}.form-box .back-login{display:flex;align-content:center;color:#46a997;cursor:pointer}.form-box .back-login mat-icon{margin-right:8px}.form-box .back-login span{padding-top:2px;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["label", "fieldName", "placeholder", "id", "value", "errors", "disabled", "required", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
2102
- type: Component,
2103
- args: [{ selector: 'ui-forgot-password', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"forgotPasswordForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div></div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"forgotPasswordForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div class=\"back-login\" (click)=\"backToLogin()\">\n <mat-icon>arrow_back</mat-icon>\n <span>{{ i18n.back_to_login }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box ui-logo{width:160px;display:inline-flex}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 21px}.form-box .field{width:100%}.form-box .submit-button{margin:3px 0 24px}.form-box .back-login{display:flex;align-content:center;color:#46a997;cursor:pointer}.form-box .back-login mat-icon{margin-right:8px}.form-box .back-login span{padding-top:2px;font-weight:700}\n"] }]
2104
- }], ctorParameters: function () { return [{ type: i1$3.UntypedFormBuilder }]; }, propDecorators: { formErrors: [{
2105
- type: Input
2106
- }], loading: [{
2107
- type: Input
2108
- }], i18n: [{
2109
- type: Input
2110
- }], submitEvent: [{
2111
- type: Output
2112
- }], backToLoginEvent: [{
2113
- type: Output
2114
- }] } });
2115
-
2116
- class ForgotPasswordComponentModule {
2117
- }
2118
- ForgotPasswordComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2119
- ForgotPasswordComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponentModule, declarations: [ForgotPasswordComponent], imports: [CommonModule,
2120
- FormsModule,
2121
- ReactiveFormsModule,
2122
- FieldComponentModule,
2123
- ButtonComponentModule,
2124
- MatIconModule,
2125
- LogoComponentModule], exports: [ForgotPasswordComponent] });
2126
- ForgotPasswordComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponentModule, imports: [CommonModule,
2127
- FormsModule,
2128
- ReactiveFormsModule,
2129
- FieldComponentModule,
2130
- ButtonComponentModule,
2131
- MatIconModule,
2132
- LogoComponentModule] });
2133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ForgotPasswordComponentModule, decorators: [{
2134
- type: NgModule,
2135
- args: [{
2136
- declarations: [ForgotPasswordComponent],
2137
- imports: [
2138
- CommonModule,
2139
- FormsModule,
2140
- ReactiveFormsModule,
2141
- FieldComponentModule,
2142
- ButtonComponentModule,
2143
- MatIconModule,
2144
- LogoComponentModule,
2145
- ],
2146
- exports: [ForgotPasswordComponent],
2147
- providers: [],
2148
- }]
2149
- }] });
2150
-
2151
- class IconLabelComponent {
2152
- constructor() {
2153
- /**
2154
- * Icon size
2155
- *
2156
- * @type {IconSize}
2157
- * @memberof IconLabelComponent
2158
- */
2159
- this.iconSize = '16';
2160
- /**
2161
- * Label
2162
- *
2163
- * @memberof IconLabelComponent
2164
- */
2165
- this.text = '';
2166
- }
2167
- ngOnInit() { }
2168
- }
2169
- IconLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2170
- IconLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: IconLabelComponent, selector: "ui-icon-label", inputs: { iconSize: "iconSize", iconName: "iconName", text: "text" }, ngImport: i0, template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }] });
2171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponent, decorators: [{
2172
- type: Component,
2173
- args: [{ selector: 'ui-icon-label', template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"] }]
2174
- }], ctorParameters: function () { return []; }, propDecorators: { iconSize: [{
2175
- type: Input
2176
- }], iconName: [{
2177
- type: Input
2178
- }], text: [{
2179
- type: Input
2180
- }] } });
2181
-
2182
- class IconLabelComponentModule {
2183
- }
2184
- IconLabelComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2185
- IconLabelComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponentModule, declarations: [IconLabelComponent], imports: [CommonModule, IconComponentModule], exports: [IconLabelComponent] });
2186
- IconLabelComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponentModule, imports: [CommonModule, IconComponentModule] });
2187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IconLabelComponentModule, decorators: [{
2188
- type: NgModule,
2189
- args: [{
2190
- declarations: [IconLabelComponent],
2191
- imports: [CommonModule, IconComponentModule],
2192
- exports: [IconLabelComponent],
2193
- providers: [],
2194
- }]
2195
- }] });
2196
-
2197
- var LabelSizeEnum;
2198
- (function (LabelSizeEnum) {
2199
- LabelSizeEnum["SMALL"] = "small";
2200
- LabelSizeEnum["MEDIUM"] = "medium";
2201
- LabelSizeEnum["LARGE"] = "large";
2202
- LabelSizeEnum["BIG"] = "big";
2203
- LabelSizeEnum["HUGE"] = "huge";
2204
- })(LabelSizeEnum || (LabelSizeEnum = {}));
2205
-
2206
- class LabelComponent {
2207
- constructor() {
2208
- /**
2209
- * @ignore
2210
- */
2211
- this.LabelSizeEnum = LabelSizeEnum;
2212
- /**
2213
- * Label background color
2214
- *
2215
- * @type {string}
2216
- * @memberof LabelComponent
2217
- */
2218
- this.backgroundColor = '';
2219
- /**
2220
- * Status text color
2221
- *
2222
- * @type {string}
2223
- * @memberof LabelComponent
2224
- */
2225
- this.textColor = '';
2226
- /**
2227
- * Status title
2228
- *
2229
- * @type {string}
2230
- * @memberof LabelComponent
2231
- */
2232
- this.title = '';
2233
- /**
2234
- * Status description
2235
- *
2236
- * @type {string}
2237
- * @memberof LabelComponent
2238
- */
2239
- this.description = '';
2240
- /**
2241
- * Label size
2242
- *
2243
- * @type {LabelSizeEnum}
2244
- * @memberof LabelComponent
2245
- */
2246
- this.size = LabelSizeEnum.SMALL;
2247
- }
2248
- }
2249
- LabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2250
- LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: LabelComponent, selector: "ui-label", inputs: { backgroundColor: "backgroundColor", textColor: "textColor", title: "title", description: "description", size: "size" }, ngImport: i0, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <div [innerHTML]=\"title\"></div>\n <div [innerHTML]=\"description\" class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\"></div>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;min-height:16px}.label.medium{padding:2px 8px;font-size:12px;min-height:20px}.label.large{padding:8px 12px;font-size:14px;min-height:32px}.label.big{padding:8px 16px;font-size:14px;min-height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2251
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LabelComponent, decorators: [{
2252
- type: Component,
2253
- args: [{ selector: 'ui-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <div [innerHTML]=\"title\"></div>\n <div [innerHTML]=\"description\" class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\"></div>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;min-height:16px}.label.medium{padding:2px 8px;font-size:12px;min-height:20px}.label.large{padding:8px 12px;font-size:14px;min-height:32px}.label.big{padding:8px 16px;font-size:14px;min-height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"] }]
2254
- }], ctorParameters: function () { return []; }, propDecorators: { backgroundColor: [{
2255
- type: Input
2256
- }], textColor: [{
2257
- type: Input
2258
- }], title: [{
2259
- type: Input
2260
- }], description: [{
2261
- type: Input
2262
- }], size: [{
2263
- type: Input
2264
- }] } });
2265
-
2266
- class LabelComponentModule {
2267
- }
2268
- LabelComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LabelComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2269
- LabelComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: LabelComponentModule, declarations: [LabelComponent], imports: [CommonModule], exports: [LabelComponent] });
2270
- LabelComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LabelComponentModule, imports: [CommonModule] });
2271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LabelComponentModule, decorators: [{
2272
- type: NgModule,
2273
- args: [{
2274
- declarations: [LabelComponent],
2275
- imports: [CommonModule],
2276
- exports: [LabelComponent],
2277
- providers: [],
2278
- }]
2279
- }] });
2280
-
2281
- const LOGIN_i18n = {
2282
- title: 'Log in to your Career Passport',
2283
- email_label: 'Email address',
2284
- password_label: 'Password',
2285
- remember_me: 'Keep me logged in',
2286
- forgot_password: 'Forgot password?',
2287
- button_label: 'Log in',
2288
- not_have_account: "Don't have an account?",
2289
- create_account: 'Create one here',
2290
- };
2291
-
2292
- class LoginComponent {
2293
- /**
2294
- * @ignore
2295
- */
2296
- ngOnInit() {
2297
- var _a;
2298
- if (this.email) {
2299
- (_a = this.loginForm.get('email')) === null || _a === void 0 ? void 0 : _a.setValue(this.email);
2300
- }
2301
- }
2302
- constructor(fb) {
2303
- this.fb = fb;
2304
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
2305
- // https://github.com/storybookjs/storybook/issues/16865
2306
- // https://github.com/storybookjs/storybook/issues/17004
2307
- /**
2308
- * @ignore
2309
- */
2310
- this.email = '';
2311
- /**
2312
- * @ignore
2313
- */
2314
- this.loginForm = this.fb.group({
2315
- email: ['', [Validators.required, Validators.email]],
2316
- password: ['', [Validators.required]],
2317
- remember_me: [false],
2318
- });
2319
- /**
2320
- * @ignore
2321
- */
2322
- this.formErrors = {
2323
- email: '',
2324
- password: '',
2325
- };
2326
- /**
2327
- * Indicator if the form is loading
2328
- *
2329
- * @memberof ButtonComponent
2330
- */
2331
- this.loading = false;
2332
- /**
2333
- * @description Object with the translations for the component.
2334
- * @type {Ii18n}
2335
- * @memberof LoginComponent
2336
- */
2337
- this.i18n = LOGIN_i18n;
2338
- /**
2339
- * @ignore
2340
- */
2341
- this.submitEvent = new EventEmitter();
2342
- /**
2343
- * @ignore
2344
- */
2345
- this.forgotPasswordEvent = new EventEmitter();
2346
- /**
2347
- * @ignore
2348
- */
2349
- this.createAccountEvent = new EventEmitter();
2350
- }
2351
- submit() {
2352
- var _a, _b, _c;
2353
- this.submitEvent.emit({
2354
- username: (_a = this.loginForm.get('email')) === null || _a === void 0 ? void 0 : _a.value,
2355
- password: (_b = this.loginForm.get('password')) === null || _b === void 0 ? void 0 : _b.value,
2356
- remember_me: (_c = this.loginForm.get('remember_me')) === null || _c === void 0 ? void 0 : _c.value,
2357
- });
2358
- }
2359
- forgotPassword() {
2360
- this.forgotPasswordEvent.emit();
2361
- }
2362
- createAccount() {
2363
- this.createAccountEvent.emit();
2364
- }
2365
- checkErrors(field) {
2366
- if (this.loginForm.controls[field].touched) {
2367
- if (this.loginForm.controls[field].hasError('required')) {
2368
- this.formErrors[field] = 'This field is required';
2369
- return;
2370
- }
2371
- if (this.loginForm.controls[field].hasError('email')) {
2372
- this.formErrors[field] = 'Enter a valid email';
2373
- return;
2374
- }
2375
- }
2376
- this.formErrors[field] = '';
2377
- }
2378
- }
2379
- LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoginComponent, deps: [{ token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
2380
- LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: LoginComponent, selector: "ui-login", inputs: { email: "email", loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", forgotPasswordEvent: "forgotPasswordEvent", createAccountEvent: "createAccountEvent" }, ngImport: i0, template: "<div class=\"ui-login-container\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\" class=\"form-wrapper\">\n <div class=\"field-email\">\n <ui-field\n formControlName=\"email\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"[formErrors.email]\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field-password\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"[formErrors.password]\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"actions\">\n <div class=\"remember-me\">\n <ui-checkbox formControlName=\"remember_me\" [label]=\"i18n.remember_me\"></ui-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div class=\"create-account-wrapper\">\n <p>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </p>\n </div>\n </form>\n</div>\n", styles: [".ui-login-container{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(7,auto);max-width:672px;max-height:594px;height:100%;width:100%;padding:60px;background:#ffffff}.ui-login-container ui-logo{grid-column:1/5;grid-row:1/2;width:160px}.ui-login-container .title{grid-column:1/5;grid-row:2/3;font-weight:700;font-size:22px;line-height:29.7px;margin:24px 0;letter-spacing:-.04em}.ui-login-container .form-wrapper{grid-column:1/5;grid-row:3/8;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,auto)}.ui-login-container .form-wrapper .field-email{grid-column:1/5;grid-row:1/2}.ui-login-container .form-wrapper .field-password{grid-column:1/5;grid-row:2/3}.ui-login-container .form-wrapper .actions{grid-column:1/5;grid-row:3/4;display:flex;height:-moz-fit-content;height:fit-content;max-height:20px;justify-content:space-between;margin-top:3px;align-items:center}.ui-login-container .form-wrapper .actions .forgot-password{cursor:pointer;font-weight:700;text-decoration:underline}.ui-login-container .form-wrapper .actions .remember-me{margin-left:-10px}.ui-login-container .form-wrapper .submit-button{margin-top:40px;grid-column:1/5;grid-row:4/5}.ui-login-container .form-wrapper .create-account-wrapper{margin-top:24px;grid-column:1/5;grid-row:5/6}.ui-login-container .form-wrapper .create-account-wrapper p{margin:0;line-height:19.07px}.ui-login-container .form-wrapper .create-account-wrapper .create-account{color:#46a997;cursor:pointer}.ui-login-container .form-wrapper .create-account-wrapper .create-account:hover{text-decoration:underline}@media (min-width: 1024px){.ui-login-container{box-shadow:0 8px 16px #0000001a;border-radius:8px;padding:80px}}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["label", "fieldName", "placeholder", "id", "value", "errors", "disabled", "required", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: CheckboxComponent, selector: "ui-checkbox", inputs: ["disabled", "checked", "indeterminate", "color", "name", "label", "multiple"], outputs: ["changed"] }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoginComponent, decorators: [{
2382
- type: Component,
2383
- args: [{ selector: 'ui-login', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ui-login-container\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\" class=\"form-wrapper\">\n <div class=\"field-email\">\n <ui-field\n formControlName=\"email\"\n [label]=\"i18n.email_label\"\n [type]=\"'email'\"\n [required]=\"true\"\n [errors]=\"[formErrors.email]\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field-password\">\n <ui-field\n formControlName=\"password\"\n [label]=\"i18n.password_label\"\n [type]=\"'password'\"\n [required]=\"true\"\n [errors]=\"[formErrors.password]\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"actions\">\n <div class=\"remember-me\">\n <ui-checkbox formControlName=\"remember_me\" [label]=\"i18n.remember_me\"></ui-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (buttonClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div class=\"create-account-wrapper\">\n <p>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </p>\n </div>\n </form>\n</div>\n", styles: [".ui-login-container{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(7,auto);max-width:672px;max-height:594px;height:100%;width:100%;padding:60px;background:#ffffff}.ui-login-container ui-logo{grid-column:1/5;grid-row:1/2;width:160px}.ui-login-container .title{grid-column:1/5;grid-row:2/3;font-weight:700;font-size:22px;line-height:29.7px;margin:24px 0;letter-spacing:-.04em}.ui-login-container .form-wrapper{grid-column:1/5;grid-row:3/8;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,auto)}.ui-login-container .form-wrapper .field-email{grid-column:1/5;grid-row:1/2}.ui-login-container .form-wrapper .field-password{grid-column:1/5;grid-row:2/3}.ui-login-container .form-wrapper .actions{grid-column:1/5;grid-row:3/4;display:flex;height:-moz-fit-content;height:fit-content;max-height:20px;justify-content:space-between;margin-top:3px;align-items:center}.ui-login-container .form-wrapper .actions .forgot-password{cursor:pointer;font-weight:700;text-decoration:underline}.ui-login-container .form-wrapper .actions .remember-me{margin-left:-10px}.ui-login-container .form-wrapper .submit-button{margin-top:40px;grid-column:1/5;grid-row:4/5}.ui-login-container .form-wrapper .create-account-wrapper{margin-top:24px;grid-column:1/5;grid-row:5/6}.ui-login-container .form-wrapper .create-account-wrapper p{margin:0;line-height:19.07px}.ui-login-container .form-wrapper .create-account-wrapper .create-account{color:#46a997;cursor:pointer}.ui-login-container .form-wrapper .create-account-wrapper .create-account:hover{text-decoration:underline}@media (min-width: 1024px){.ui-login-container{box-shadow:0 8px 16px #0000001a;border-radius:8px;padding:80px}}\n"] }]
2384
- }], ctorParameters: function () { return [{ type: i1$3.UntypedFormBuilder }]; }, propDecorators: { email: [{
2385
- type: Input
2386
- }], loading: [{
2387
- type: Input
2388
- }], i18n: [{
2389
- type: Input
2390
- }], submitEvent: [{
2391
- type: Output
2392
- }], forgotPasswordEvent: [{
2393
- type: Output
2394
- }], createAccountEvent: [{
2395
- type: Output
2396
- }] } });
2397
-
2398
- class LoginComponentModule {
2399
- }
2400
- LoginComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoginComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2401
- LoginComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: LoginComponentModule, declarations: [LoginComponent], imports: [CommonModule,
2402
- FormsModule,
2403
- ReactiveFormsModule,
2404
- FieldComponentModule,
2405
- ButtonComponentModule,
2406
- CheckboxComponentModule,
2407
- LogoComponentModule], exports: [LoginComponent] });
2408
- LoginComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoginComponentModule, imports: [CommonModule,
2409
- FormsModule,
2410
- ReactiveFormsModule,
2411
- FieldComponentModule,
2412
- ButtonComponentModule,
2413
- CheckboxComponentModule,
2414
- LogoComponentModule] });
2415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LoginComponentModule, decorators: [{
2416
- type: NgModule,
2417
- args: [{
2418
- declarations: [LoginComponent],
2419
- imports: [
2420
- CommonModule,
2421
- FormsModule,
2422
- ReactiveFormsModule,
2423
- FieldComponentModule,
2424
- ButtonComponentModule,
2425
- CheckboxComponentModule,
2426
- LogoComponentModule,
2427
- ],
2428
- exports: [LoginComponent],
2429
- providers: [],
2430
- }]
2431
- }] });
2432
-
2433
- class NavbarComponent {
2434
- constructor() {
2435
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
2436
- // https://github.com/storybookjs/storybook/issues/16865
2437
- // https://github.com/storybookjs/storybook/issues/17004
2438
- /**
2439
- * Routes object
2440
- *
2441
- * @type {IRoute}
2442
- * @memberof NavbarComponent
2443
- * @ignore
2444
- */
2445
- this.routes = [];
2446
- /**
2447
- * Actived route id
2448
- *
2449
- * @type {string}
2450
- * @memberof NavbarComponent
2451
- */
2452
- this.activedRoute = '';
2453
- /**
2454
- * User first name and last name
2455
- *
2456
- * @type {string}
2457
- * @memberof NavbarComponent
2458
- */
2459
- this.userName = '';
2460
- /**
2461
- * Menu items to show in menu above the Log out button
2462
- *
2463
- * @type {string}
2464
- * @memberof NavbarComponent
2465
- */
2466
- this.menuItems = [];
2467
- /**
2468
- * @ignore
2469
- */
2470
- this.navigateEvent = new EventEmitter();
2471
- /**
2472
- * @ignore
2473
- */
2474
- this.menuItemClicked = new EventEmitter();
2475
- /**
2476
- * @ignore
2477
- */
2478
- this.logoutEvent = new EventEmitter();
2479
- }
2480
- navigate(routeId) {
2481
- this.navigateEvent.emit(`/${routeId}`);
2482
- }
2483
- logout() {
2484
- this.logoutEvent.emit();
2485
- }
2486
- clickMenuItem(id) {
2487
- this.menuItemClicked.emit(id);
2488
- }
2489
- }
2490
- NavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2491
- NavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NavbarComponent, selector: "ui-navbar", inputs: { routes: "routes", activedRoute: "activedRoute", userName: "userName", menuItems: "menuItems" }, outputs: { navigateEvent: "navigateEvent", menuItemClicked: "menuItemClicked", logoutEvent: "logoutEvent" }, ngImport: i0, template: "<mat-toolbar>\n <div class=\"custom-toolbar row\">\n <ui-logo class=\"logo\" (click)=\"navigate('')\"></ui-logo>\n <div class=\"navigation row\">\n <a *ngFor=\"let route of routes\" (click)=\"navigate(route.id)\" [ngClass]=\"{'active': activedRoute === route.id}\">\n <span>{{ route.title }}</span>\n </a>\n </div>\n <div class=\"actions\">\n <button mat-button class=\"profile-menu\" [matMenuTriggerFor]=\"menu\">\n {{ userName }}\n <mat-icon iconPositionEnd>expand_more</mat-icon>\n </button>\n </div>\n </div>\n</mat-toolbar>\n\n<mat-menu #menu=\"matMenu\">\n <button *ngFor=\"let e of menuItems\" mat-menu-item (click)=\"clickMenuItem(e.id)\">\n <div class=\"menu-item\">\n <ui-icon [name]=\"e.icon\" size=\"24\"></ui-icon>\n {{ e.text }}\n </div>\n </button>\n <button mat-menu-item (click)=\"logout()\">\n <mat-icon>power_settings_new</mat-icon>\n Log out\n </button>\n</mat-menu>\n", styles: [".mat-toolbar{height:80px!important;background-color:#fff!important;padding:0 192px!important}.mat-toolbar .custom-toolbar{width:100%;height:100%;background-color:#fff}.mat-toolbar .custom-toolbar ui-logo.logo{cursor:pointer;width:105px;height:32px;align-self:center;flex:1 0 216px;display:flex}.mat-toolbar .custom-toolbar .navigation{height:100%}.mat-toolbar .custom-toolbar .navigation a{display:flex;align-items:center;height:100%;background:#fff;cursor:pointer}.mat-toolbar .custom-toolbar .navigation a.active{border-top:2px solid #276678}.mat-toolbar .custom-toolbar .navigation a.active span{font-weight:700}.mat-toolbar .custom-toolbar .navigation a span{width:100%;text-align:center;font-weight:400;font-size:14px;line-height:16px}.mat-toolbar .custom-toolbar .navigation a:not(:first-of-type){margin-left:32px}.mat-toolbar .custom-toolbar .actions{width:100%;display:flex;align-items:center;justify-content:flex-end}.mat-toolbar .custom-toolbar .actions .profile-menu{font-weight:600;font-size:14px;height:100%;margin-right:-20px}.mat-toolbar .custom-toolbar .actions .profile-menu mat-icon{font-size:16px;position:relative;top:3px;left:3px}.row{display:flex;flex-direction:row}.menu-item{display:flex;align-items:center}.menu-item ui-icon{margin-right:16px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i5$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: LogoComponent, selector: "ui-logo", inputs: ["type"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2492
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponent, decorators: [{
2493
- type: Component,
2494
- args: [{ selector: 'ui-navbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-toolbar>\n <div class=\"custom-toolbar row\">\n <ui-logo class=\"logo\" (click)=\"navigate('')\"></ui-logo>\n <div class=\"navigation row\">\n <a *ngFor=\"let route of routes\" (click)=\"navigate(route.id)\" [ngClass]=\"{'active': activedRoute === route.id}\">\n <span>{{ route.title }}</span>\n </a>\n </div>\n <div class=\"actions\">\n <button mat-button class=\"profile-menu\" [matMenuTriggerFor]=\"menu\">\n {{ userName }}\n <mat-icon iconPositionEnd>expand_more</mat-icon>\n </button>\n </div>\n </div>\n</mat-toolbar>\n\n<mat-menu #menu=\"matMenu\">\n <button *ngFor=\"let e of menuItems\" mat-menu-item (click)=\"clickMenuItem(e.id)\">\n <div class=\"menu-item\">\n <ui-icon [name]=\"e.icon\" size=\"24\"></ui-icon>\n {{ e.text }}\n </div>\n </button>\n <button mat-menu-item (click)=\"logout()\">\n <mat-icon>power_settings_new</mat-icon>\n Log out\n </button>\n</mat-menu>\n", styles: [".mat-toolbar{height:80px!important;background-color:#fff!important;padding:0 192px!important}.mat-toolbar .custom-toolbar{width:100%;height:100%;background-color:#fff}.mat-toolbar .custom-toolbar ui-logo.logo{cursor:pointer;width:105px;height:32px;align-self:center;flex:1 0 216px;display:flex}.mat-toolbar .custom-toolbar .navigation{height:100%}.mat-toolbar .custom-toolbar .navigation a{display:flex;align-items:center;height:100%;background:#fff;cursor:pointer}.mat-toolbar .custom-toolbar .navigation a.active{border-top:2px solid #276678}.mat-toolbar .custom-toolbar .navigation a.active span{font-weight:700}.mat-toolbar .custom-toolbar .navigation a span{width:100%;text-align:center;font-weight:400;font-size:14px;line-height:16px}.mat-toolbar .custom-toolbar .navigation a:not(:first-of-type){margin-left:32px}.mat-toolbar .custom-toolbar .actions{width:100%;display:flex;align-items:center;justify-content:flex-end}.mat-toolbar .custom-toolbar .actions .profile-menu{font-weight:600;font-size:14px;height:100%;margin-right:-20px}.mat-toolbar .custom-toolbar .actions .profile-menu mat-icon{font-size:16px;position:relative;top:3px;left:3px}.row{display:flex;flex-direction:row}.menu-item{display:flex;align-items:center}.menu-item ui-icon{margin-right:16px}\n"] }]
2495
- }], ctorParameters: function () { return []; }, propDecorators: { routes: [{
2496
- type: Input
2497
- }], activedRoute: [{
2498
- type: Input
2499
- }], userName: [{
2500
- type: Input
2501
- }], menuItems: [{
2502
- type: Input
2503
- }], navigateEvent: [{
2504
- type: Output
2505
- }], menuItemClicked: [{
2506
- type: Output
2507
- }], logoutEvent: [{
2508
- type: Output
2509
- }] } });
2510
-
2511
- class NavbarComponentModule {
2512
- }
2513
- NavbarComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2514
- NavbarComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponentModule, declarations: [NavbarComponent], imports: [CommonModule,
2515
- MatToolbarModule,
2516
- MatIconModule,
2517
- MatButtonModule,
2518
- MatRippleModule,
2519
- MatMenuModule,
2520
- LogoComponentModule,
2521
- IconComponentModule], exports: [NavbarComponent] });
2522
- NavbarComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponentModule, imports: [CommonModule,
2523
- MatToolbarModule,
2524
- MatIconModule,
2525
- MatButtonModule,
2526
- MatRippleModule,
2527
- MatMenuModule,
2528
- LogoComponentModule,
2529
- IconComponentModule] });
2530
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavbarComponentModule, decorators: [{
2531
- type: NgModule,
2532
- args: [{
2533
- declarations: [NavbarComponent],
2534
- imports: [
2535
- CommonModule,
2536
- MatToolbarModule,
2537
- MatIconModule,
2538
- MatButtonModule,
2539
- MatRippleModule,
2540
- MatMenuModule,
2541
- LogoComponentModule,
2542
- IconComponentModule,
2543
- ],
2544
- exports: [NavbarComponent],
2545
- providers: [],
2546
- }]
2547
- }] });
2548
-
2549
- class NavigationComponent {
2550
- constructor() {
2551
- /**
2552
- * @ignore
2553
- */
2554
- this.goBackClickedEvent = new EventEmitter();
2555
- }
2556
- goBackClicked() {
2557
- this.goBackClickedEvent.emit();
2558
- }
2559
- }
2560
- NavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2561
- NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NavigationComponent, selector: "ui-navigation", inputs: { title: "title", subtitle: "subtitle", labelItem: "labelItem", logoURL: "logoURL" }, outputs: { goBackClickedEvent: "goBackClickedEvent" }, ngImport: i0, template: "<div class=\"navigation\">\n <button aria-label=\"Go back\" mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon aria-hidden=\"true\">chevron_left</mat-icon>\n </button>\n <div class=\"logo\" *ngIf=\"logoURL\">\n <img [src]=\"logoURL\" />\n </div>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label\n [backgroundColor]=\"labelItem.backgroundColor\"\n [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\"\n [size]=\"labelItem.size\"\n >\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation button{background:#ededed;border-radius:0%}.navigation mat-icon{color:#000}.navigation .logo{margin-left:20px}.navigation .logo img{width:100px;height:100px}.navigation .content{margin-left:20px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}::ng-deep .mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:0%!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: LabelComponent, selector: "ui-label", inputs: ["backgroundColor", "textColor", "title", "description", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2562
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponent, decorators: [{
2563
- type: Component,
2564
- args: [{ selector: 'ui-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navigation\">\n <button aria-label=\"Go back\" mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon aria-hidden=\"true\">chevron_left</mat-icon>\n </button>\n <div class=\"logo\" *ngIf=\"logoURL\">\n <img [src]=\"logoURL\" />\n </div>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label\n [backgroundColor]=\"labelItem.backgroundColor\"\n [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\"\n [size]=\"labelItem.size\"\n >\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation button{background:#ededed;border-radius:0%}.navigation mat-icon{color:#000}.navigation .logo{margin-left:20px}.navigation .logo img{width:100px;height:100px}.navigation .content{margin-left:20px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}::ng-deep .mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:0%!important}\n"] }]
2565
- }], ctorParameters: function () { return []; }, propDecorators: { title: [{
2566
- type: Input
2567
- }], subtitle: [{
2568
- type: Input
2569
- }], labelItem: [{
2570
- type: Input
2571
- }], logoURL: [{
2572
- type: Input
2573
- }], goBackClickedEvent: [{
2574
- type: Output
2575
- }] } });
2576
-
2577
- class NavigationComponentModule {
2578
- }
2579
- NavigationComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2580
- NavigationComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponentModule, declarations: [NavigationComponent], imports: [CommonModule, MatIconModule, MatButtonModule, LabelComponentModule], exports: [NavigationComponent] });
2581
- NavigationComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponentModule, imports: [CommonModule, MatIconModule, MatButtonModule, LabelComponentModule] });
2582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NavigationComponentModule, decorators: [{
2583
- type: NgModule,
2584
- args: [{
2585
- declarations: [NavigationComponent],
2586
- imports: [CommonModule, MatIconModule, MatButtonModule, LabelComponentModule],
2587
- exports: [NavigationComponent],
2588
- providers: [],
2589
- }]
2590
- }] });
2591
-
2592
- class PaginatorComponent {
2593
- /**
2594
- * @ignore
2595
- */
2596
- ngOnInit() { }
2597
- constructor() {
2598
- // TODO: Some properties and methods are ignored on purpose because of a current issue with compodoc and angular 13
2599
- // https://github.com/storybookjs/storybook/issues/16865
2600
- // https://github.com/storybookjs/storybook/issues/17004
2601
- /**
2602
- * Paginator size options
2603
- *
2604
- * @type {number[]}
2605
- * @memberof PaginatorComponent
2606
- */
2607
- this.pageSizeOptions = [10, 25, 50];
2608
- /**
2609
- * Data length
2610
- *
2611
- * @type {number}
2612
- * @memberof PaginatorComponent
2613
- */
2614
- this.length = 0;
2615
- /**
2616
- * Default page size
2617
- *
2618
- * @type {number}
2619
- * @memberof PaginatorComponent
2620
- */
2621
- this.defaultPageSize = 25;
2622
- /**
2623
- * @ignore
2624
- */
2625
- this.paginatorChangedEvent = new EventEmitter();
2626
- }
2627
- paginatorChanged(paginator) {
2628
- this.paginatorChangedEvent.emit(paginator);
2629
- }
2630
- }
2631
- PaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2632
- PaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: PaginatorComponent, selector: "ui-paginator", inputs: { length: "length", defaultPageSize: "defaultPageSize" }, outputs: { paginatorChangedEvent: "paginatorChangedEvent" }, ngImport: i0, template: "<mat-paginator [length]=\"length\"\n [pageSize]=\"defaultPageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n (page)=\"paginatorChanged($event)\">\n</mat-paginator>", styles: [".mat-mdc-paginator{border-radius:0 0 8px 8px}.mat-mdc-paginator .mat-mdc-paginator-outer-container{border-radius:0 0 8px 8px;font-weight:400;font-size:14px;line-height:16px;color:#000}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container{padding:0}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-select-value-text{font-size:14px}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-paginator-range-actions{height:100%}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-paginator-range-actions button{height:100%;width:70px;border-radius:0}\n"], dependencies: [{ kind: "component", type: i1$6.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2633
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponent, decorators: [{
2634
- type: Component,
2635
- args: [{ selector: 'ui-paginator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-paginator [length]=\"length\"\n [pageSize]=\"defaultPageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n (page)=\"paginatorChanged($event)\">\n</mat-paginator>", styles: [".mat-mdc-paginator{border-radius:0 0 8px 8px}.mat-mdc-paginator .mat-mdc-paginator-outer-container{border-radius:0 0 8px 8px;font-weight:400;font-size:14px;line-height:16px;color:#000}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container{padding:0}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-select-value-text{font-size:14px}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-paginator-range-actions{height:100%}.mat-mdc-paginator .mat-mdc-paginator-outer-container .mat-mdc-paginator-container .mat-mdc-paginator-range-actions button{height:100%;width:70px;border-radius:0}\n"] }]
2636
- }], ctorParameters: function () { return []; }, propDecorators: { length: [{
2637
- type: Input
2638
- }], defaultPageSize: [{
2639
- type: Input
2640
- }], paginatorChangedEvent: [{
2641
- type: Output
2642
- }] } });
2643
-
2644
- class PaginatorComponentModule {
2645
- }
2646
- PaginatorComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2647
- PaginatorComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponentModule, declarations: [PaginatorComponent], imports: [CommonModule, MatPaginatorModule], exports: [PaginatorComponent] });
2648
- PaginatorComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponentModule, imports: [CommonModule, MatPaginatorModule] });
2649
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginatorComponentModule, decorators: [{
2650
- type: NgModule,
2651
- args: [{
2652
- declarations: [PaginatorComponent],
2653
- imports: [CommonModule, MatPaginatorModule],
2654
- exports: [PaginatorComponent],
2655
- providers: [],
2656
- }]
2657
- }] });
2658
-
2659
- /* eslint-disable no-underscore-dangle */
2660
- class RadioButtonComponent {
2661
- constructor() {
2662
- /**
2663
- * Determines whether the radio button is disabled.
2664
- * Default: false.
2665
- *
2666
- * @type {boolean}
2667
- * @memberof RadioButtonComponent
2668
- */
2669
- this.disabled = false;
2670
- /**
2671
- * Determines whether the radio button is checked.
2672
- * Default: false.
2673
- *
2674
- * @type {boolean}
2675
- * @memberof RadioButtonComponent
2676
- */
2677
- //@Input() selected = false;
2678
- this._selected = false;
2679
- /**
2680
- * Determines whether the radio button can be unchecked.
2681
- * Default: false.
2682
- *
2683
- * @type {boolean}
2684
- * @memberof RadioButtonComponent
2685
- */
2686
- this.allowUnselect = false;
2687
- /**
2688
- * Determines the radio button color.
2689
- * Default: Test Gorilla primary color.
2690
- *
2691
- * @type {string}
2692
- * @memberof RadioButtonComponent
2693
- */
2694
- this.color = '#46A997';
2695
- /**
2696
- * Used to group radios for unique selection.
2697
- *
2698
- * @type {string}
2699
- * @memberof RadioButtonComponent
2700
- */
2701
- this.name = '';
2702
- /**
2703
- * Text content will be applied to the input element if present.
2704
- *
2705
- * @type {string}
2706
- * @memberof RadioButtonComponent
2707
- */
2708
- this.label = '';
2709
- /**
2710
- * Determines whether the radio button is a multiple choice cell.
2711
- * Default: false
2712
- *
2713
- * @type {boolean}
2714
- * @memberof RadioButtonComponent
2715
- */
2716
- this.multiple = false;
2717
- /**
2718
- * Event emitted when the checked state of the radio button changes.
2719
- *
2720
- * @type {boolean}
2721
- * @memberof RadioButtonComponent
2722
- */
2723
- this.changeRadio = new EventEmitter();
2724
- }
2725
- get selected() {
2726
- return this._selected;
2727
- }
2728
- set selected(selected) {
2729
- this._selected = selected;
2730
- }
2731
- ngOnInit() {
2732
- this.classMultiple = this.setClass();
2733
- }
2734
- ngOnChanges(changes) {
2735
- if (changes['selected']) {
2736
- this.classMultiple = this.setClass();
2737
- }
2738
- }
2739
- //Click method
2740
- clickRadio(element, event) {
2741
- //event.preventDefault();
2742
- if (this.allowUnselect) {
2743
- element.checked = !element.checked;
2744
- this._selected = element.checked;
2745
- this.classMultiple = this.setClass();
2746
- this.changeRadio.emit({ optionName: element.value, optionChecked: element.checked });
2747
- }
2748
- else {
2749
- this._selected = true;
2750
- this.changeRadio.emit({ optionName: element.value, optionChecked: true });
2751
- }
2752
- if (this.disabled) {
2753
- this._selected = false;
2754
- this.changeRadio.emit({ optionName: '', optionChecked: false });
2755
- }
2756
- }
2757
- //Set class for multiple radio
2758
- setClass() {
2759
- if (this.multiple) {
2760
- return this._selected ? 'multiple-checked' : 'multiple-unchecked';
2761
- }
2762
- return '';
2763
- }
2764
- }
2765
- RadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2766
- RadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RadioButtonComponent, selector: "ui-radio-button", inputs: { disabled: "disabled", selected: "selected", allowUnselect: "allowUnselect", color: "color", name: "name", label: "label", multiple: "multiple", value: "value" }, outputs: { changeRadio: "changeRadio" }, host: { properties: { "style.--color": "this.color" } }, usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"classMultiple\">\n <mat-radio-button\n #radio\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [aria-label]=\"label\"\n [value]=\"value\"\n class=\"radio-button\"\n (click)=\"clickRadio(radio, $event)\"\n >\n {{ label }}\n </mat-radio-button>\n</div>", styles: ["::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border-color:var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__inner-circle{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-radio-button .mat-ripple-element{background-color:var(--color)!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled.mat-radio-checked .mdc-radio__outer-circle,.mat-radio-button.mat-radio-disabled .mdc-radio__outer-circle{border-color:#888!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled .mdc-radio__inner-circle{background-color:#888!important}.multiple-checked{border:1px solid #46A997;display:flex;flex-direction:row;align-items:center;gap:16px;background:#46A997;border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%}.multiple-checked ::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border:1px solid #ffffff;border-radius:64px;background:#ffffff}.multiple-checked ::ng-deep label{color:#fff;padding:16px 0;height:100%;width:100%}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#ffffff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%}.multiple-unchecked:hover{background:#F6F6F6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep label{padding:16px 0;height:100%;width:100%}.multiple-unchecked ::ng-deep .mat-mdc-radio-button .mdc-radio .mdc-radio__background:before{opacity:0!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$5.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2767
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponent, decorators: [{
2768
- type: Component,
2769
- args: [{ selector: 'ui-radio-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"classMultiple\">\n <mat-radio-button\n #radio\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [aria-label]=\"label\"\n [value]=\"value\"\n class=\"radio-button\"\n (click)=\"clickRadio(radio, $event)\"\n >\n {{ label }}\n </mat-radio-button>\n</div>", styles: ["::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border-color:var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__inner-circle{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-radio-button .mat-ripple-element{background-color:var(--color)!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled.mat-radio-checked .mdc-radio__outer-circle,.mat-radio-button.mat-radio-disabled .mdc-radio__outer-circle{border-color:#888!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled .mdc-radio__inner-circle{background-color:#888!important}.multiple-checked{border:1px solid #46A997;display:flex;flex-direction:row;align-items:center;gap:16px;background:#46A997;border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%}.multiple-checked ::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border:1px solid #ffffff;border-radius:64px;background:#ffffff}.multiple-checked ::ng-deep label{color:#fff;padding:16px 0;height:100%;width:100%}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#ffffff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%}.multiple-unchecked:hover{background:#F6F6F6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep label{padding:16px 0;height:100%;width:100%}.multiple-unchecked ::ng-deep .mat-mdc-radio-button .mdc-radio .mdc-radio__background:before{opacity:0!important}\n"] }]
2770
- }], propDecorators: { disabled: [{
2771
- type: Input
2772
- }], selected: [{
2773
- type: Input
2774
- }], allowUnselect: [{
2775
- type: Input
2776
- }], color: [{
2777
- type: HostBinding,
2778
- args: ['style.--color']
2779
- }, {
2780
- type: Input
2781
- }], name: [{
2782
- type: Input
2783
- }], label: [{
2784
- type: Input
2785
- }], multiple: [{
2786
- type: Input
2787
- }], value: [{
2788
- type: Input
2789
- }], changeRadio: [{
2790
- type: Output
2791
- }] } });
2792
-
2793
- class RadioButtonComponentModule {
2794
- }
2795
- RadioButtonComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2796
- RadioButtonComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponentModule, declarations: [RadioButtonComponent], imports: [CommonModule, MatRadioModule, FormsModule, ReactiveFormsModule], exports: [RadioButtonComponent] });
2797
- RadioButtonComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponentModule, imports: [CommonModule, MatRadioModule, FormsModule, ReactiveFormsModule] });
2798
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioButtonComponentModule, decorators: [{
2799
- type: NgModule,
2800
- args: [{
2801
- declarations: [RadioButtonComponent],
2802
- imports: [CommonModule, MatRadioModule, FormsModule, ReactiveFormsModule],
2803
- exports: [RadioButtonComponent],
2804
- }]
2805
- }] });
2806
-
2807
- //Languages available in the app as enum
2808
- var Language;
2809
- (function (Language) {
2810
- Language["en"] = "en";
2811
- Language["es"] = "es";
2812
- Language["nl"] = "nl";
2813
- Language["fr"] = "fr";
2814
- Language["de"] = "de";
2815
- Language["it-it"] = "it-it";
2816
- Language["ja-jp"] = "ja-jp";
2817
- Language["pt-br"] = "pt-br";
2818
- Language["da-dk"] = "da-dk";
2819
- Language["nb-no"] = "nb-no";
2820
- Language["pl-pl"] = "pl-pl";
2821
- Language["sv-se"] = "sv-se";
2822
- })(Language || (Language = {}));
2823
- //This function retrieves all languages from the enum. It is used to initialize transloco
2824
- const getAvailableLangs = () => Object.values(Language);
2825
- let LanguageService = class LanguageService {
2826
- constructor(translocoService) {
2827
- this.translocoService = translocoService;
2828
- this.defaultLanguageList = [
2829
- { code: Language.en, label: 'English' },
2830
- { code: Language.es, label: 'Spanish' },
2831
- { code: Language.de, label: 'German' },
2832
- { code: Language.fr, label: 'French' },
2833
- { code: Language.nl, label: 'Dutch' },
2834
- { code: Language['it-it'], label: 'Italian' },
2835
- { code: Language['ja-jp'], label: 'Japanese' },
2836
- { code: Language['pt-br'], label: 'Portuguese' },
2837
- { code: Language['da-dk'], label: 'Danish' },
2838
- { code: Language['nb-no'], label: 'Norwegian' },
2839
- { code: Language['pl-pl'], label: 'Polish' },
2840
- { code: Language['sv-se'], label: 'Swedish' },
2841
- ];
2842
- }
2843
- /**
2844
- *
2845
- * @description Initialize Language Service.
2846
- * @memberof LanguageService
2847
- */
2848
- init(language) {
2849
- // Set active language according to user settings. TODO: Replace with user value.
2850
- this.setActiveLanguage(language);
2851
- // React to language changes and load the language selected.
2852
- this.languageChangeSubscription = this.translocoService.langChanges$.subscribe(lang => {
2853
- this.translocoService.load(lang).subscribe();
2854
- });
2855
- }
2856
- /**
2857
- *
2858
- * @description Set a langauge as active language.
2859
- * @param {string} languageCode Language value code.
2860
- * @memberof LanguageService
2861
- */
2862
- setActiveLanguage(languageCode) {
2863
- this.translocoService.setActiveLang(languageCode);
2864
- }
2865
- };
2866
- LanguageService.defaultLanguage = Language.en;
2867
- LanguageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LanguageService, deps: [{ token: i1$7.TranslocoService }], target: i0.ɵɵFactoryTarget.Injectable });
2868
- LanguageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LanguageService, providedIn: 'root' });
2869
- LanguageService = __decorate([
2870
- UntilDestroy({ checkProperties: true })
2871
- ], LanguageService);
2872
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LanguageService, decorators: [{
2873
- type: Injectable,
2874
- args: [{
2875
- providedIn: 'root',
2876
- }]
2877
- }], ctorParameters: function () { return [{ type: i1$7.TranslocoService }]; } });
2878
-
2879
- class SnackbarComponent {
2880
- constructor(data, snackbarRef, languageService) {
2881
- var _a, _b;
2882
- this.data = data;
2883
- this.snackbarRef = snackbarRef;
2884
- this.languageService = languageService;
2885
- /**
2886
- * Background color of the button while in active state
2887
- *
2888
- * @type {SnackbarType}
2889
- * @memberof SnackbarComponent
2890
- */
2891
- this.snackbarType = 'success';
2892
- /**
2893
- * Snackbar message
2894
- *
2895
- * @memberof SnackbarComponent
2896
- */
2897
- this.message = '';
2898
- /**
2899
- * Set the time that the snackbar will be visible
2900
- *
2901
- * @memberof SnackbarComponent
2902
- */
2903
- this.seconds = 5;
2904
- /**
2905
- * Include dismmiss button
2906
- *
2907
- * @memberof SnackbarComponent
2908
- */
2909
- this.includeDismissButton = true;
2910
- /**
2911
- * Static or fixed position
2912
- *
2913
- * @memberof SnackbarComponent
2914
- */
2915
- this.fixed = true;
2916
- /**
2917
- * The language to be used
2918
- *
2919
- * @type {string}
2920
- * @memberof SnackbarComponent
2921
- */
2922
- this.language = LanguageService.defaultLanguage;
2923
- this.showSnackbar = true;
2924
- this.visible = false;
2925
- this.timerStartedAt = 0;
2926
- this.timerPausedAt = 0;
2927
- this.translationContext = 'SNACKBAR.';
2928
- this.snackbarType = (_a = data.snackbarType) !== null && _a !== void 0 ? _a : 'success';
2929
- this.message = (_b = data.message) !== null && _b !== void 0 ? _b : '';
2930
- }
2931
- ngOnInit() {
2932
- this.milisenconds = this.seconds * 1000;
2933
- this.iconName = alertBarsUtil.setIcon(this.snackbarType);
2934
- this.show();
2935
- this.position = alertBarsUtil.setPosition(this.fixed);
2936
- this.languageService.init(this.language);
2937
- }
2938
- //Show snackbar
2939
- show() {
2940
- this.timerStartedAt = Date.now();
2941
- this.visible = true;
2942
- this.timer = setTimeout(() => this.hide(), this.milisenconds);
2943
- }
2944
- //Hide snackbar
2945
- hide() {
2946
- this.visible = false;
2947
- this.timerPausedAt = 0;
2948
- this.timerStartedAt = 0;
2949
- clearTimeout(this.timer);
2950
- this.timer = undefined;
2951
- }
2952
- //Pause timer when mouse enter
2953
- onMouseEnter() {
2954
- this.visible = true;
2955
- this.timerPausedAt = Date.now();
2956
- clearTimeout(this.timer);
2957
- }
2958
- //Continue timer when mouse leave
2959
- onMouseLeave() {
2960
- const diff = this.timerPausedAt - this.timerStartedAt;
2961
- if (diff <= 0) {
2962
- return this.hide();
2963
- }
2964
- this.timer = setTimeout(() => this.hide(), this.milisenconds - diff);
2965
- }
2966
- //Hide snackbar when dismiss button is clicked
2967
- dismissClick() {
2968
- this.visible = false;
2969
- this.snackbarRef.dismiss();
2970
- }
2971
- }
2972
- SnackbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponent, deps: [{ token: MAT_SNACK_BAR_DATA }, { token: i1$8.MatSnackBarRef }, { token: LanguageService }], target: i0.ɵɵFactoryTarget.Component });
2973
- SnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SnackbarComponent, selector: "ui-snackbar", inputs: { snackbarType: "snackbarType", message: "message", seconds: "seconds", includeDismissButton: "includeDismissButton", fixed: "fixed", language: "language" }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <div\n [ngClass]=\"snackbarType + ' ' + position\"\n [@openClose]\n *ngIf=\"visible\"\n class=\"snackbar-container\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n >\n <div class=\"snackbar-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n </div>\n <ui-button\n *ngIf=\"includeDismissButton\"\n type=\"text\"\n [label]=\"t(translationContext + 'DISMISS')\"\n (buttonClickEvent)=\"dismissClick()\"\n ></ui-button>\n </div>\n</ng-container>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .snackbar-container{max-width:600px}:host .alert-container,:host .snackbar-container{margin:0 auto;display:flex;padding:0 14px;border-radius:4px;align-items:center;justify-content:space-between;opacity:1;min-height:48px}:host .alert-container.fixed,:host .snackbar-container.fixed{position:fixed}:host .alert-container.static,:host .snackbar-container.static{position:relative}:host .alert-container ui-icon,:host .snackbar-container ui-icon{margin-right:14px}:host .alert-container ui-button,:host .snackbar-container ui-button{margin-left:14px}:host .alert-container ::ng-deep button.mat-mdc-unelevated-button.big,:host .snackbar-container ::ng-deep button.mat-mdc-unelevated-button.big{padding:0;min-width:auto}:host .alert-container .alert-text,:host .alert-container .snackbar-text,:host .snackbar-container .alert-text,:host .snackbar-container .snackbar-text{display:flex;align-items:center;color:#000}:host .alert-container .alert-text a,:host .alert-container .snackbar-text a,:host .snackbar-container .alert-text a,:host .snackbar-container .snackbar-text a{color:#000;text-decoration:underline;font-weight:700}:host .alert-container .alert-text a:hover,:host .alert-container .alert-text a:visited,:host .alert-container .alert-text a:focus,:host .alert-container .snackbar-text a:hover,:host .alert-container .snackbar-text a:visited,:host .alert-container .snackbar-text a:focus,:host .snackbar-container .alert-text a:hover,:host .snackbar-container .alert-text a:visited,:host .snackbar-container .alert-text a:focus,:host .snackbar-container .snackbar-text a:hover,:host .snackbar-container .snackbar-text a:visited,:host .snackbar-container .snackbar-text a:focus{text-decoration:none}:host .alert-container.success,:host .snackbar-container.success{background-color:#cbd6cb}:host .alert-container.info,:host .snackbar-container.info{background-color:#c8d7de}:host .alert-container.warning,:host .snackbar-container.warning{background-color:#f0d6bb}:host .alert-container.error,:host .snackbar-container.error{background-color:#e3c3c6}@media (max-width: 600px){:host .alert-container,:host .snackbar-container{padding:8px 14px}}:host .snackbar-container{bottom:0;z-index:98}:host .mat-mdc-snack-bar-container{margin:16px 8px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "directive", type: i1$7.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }], animations: [
2974
- trigger('openClose', [
2975
- transition(':enter', [
2976
- style({ bottom: '-55px', opacity: 0 }),
2977
- animate('0.2s ease-out', style({ opacity: 1, bottom: '10px' })),
2978
- ]),
2979
- transition(':leave', [
2980
- style({ bottom: '10px', opacity: 1 }),
2981
- animate('0.2s ease-in', style({ bottom: '-55px', opacity: 0 })),
2982
- ]),
2983
- ]),
2984
- ] });
2985
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponent, decorators: [{
2986
- type: Component,
2987
- args: [{ selector: 'ui-snackbar', animations: [
2988
- trigger('openClose', [
2989
- transition(':enter', [
2990
- style({ bottom: '-55px', opacity: 0 }),
2991
- animate('0.2s ease-out', style({ opacity: 1, bottom: '10px' })),
2992
- ]),
2993
- transition(':leave', [
2994
- style({ bottom: '10px', opacity: 1 }),
2995
- animate('0.2s ease-in', style({ bottom: '-55px', opacity: 0 })),
2996
- ]),
2997
- ]),
2998
- ], template: "<ng-container *transloco=\"let t\">\n <div\n [ngClass]=\"snackbarType + ' ' + position\"\n [@openClose]\n *ngIf=\"visible\"\n class=\"snackbar-container\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n >\n <div class=\"snackbar-text\">\n <ui-icon [name]=\"iconName\" size=\"24\"></ui-icon>\n {{ message }}\n </div>\n <ui-button\n *ngIf=\"includeDismissButton\"\n type=\"text\"\n [label]=\"t(translationContext + 'DISMISS')\"\n (buttonClickEvent)=\"dismissClick()\"\n ></ui-button>\n </div>\n</ng-container>\n", styles: [":host{display:flex;width:100%;justify-content:center}:host .snackbar-container{max-width:600px}:host .alert-container,:host .snackbar-container{margin:0 auto;display:flex;padding:0 14px;border-radius:4px;align-items:center;justify-content:space-between;opacity:1;min-height:48px}:host .alert-container.fixed,:host .snackbar-container.fixed{position:fixed}:host .alert-container.static,:host .snackbar-container.static{position:relative}:host .alert-container ui-icon,:host .snackbar-container ui-icon{margin-right:14px}:host .alert-container ui-button,:host .snackbar-container ui-button{margin-left:14px}:host .alert-container ::ng-deep button.mat-mdc-unelevated-button.big,:host .snackbar-container ::ng-deep button.mat-mdc-unelevated-button.big{padding:0;min-width:auto}:host .alert-container .alert-text,:host .alert-container .snackbar-text,:host .snackbar-container .alert-text,:host .snackbar-container .snackbar-text{display:flex;align-items:center;color:#000}:host .alert-container .alert-text a,:host .alert-container .snackbar-text a,:host .snackbar-container .alert-text a,:host .snackbar-container .snackbar-text a{color:#000;text-decoration:underline;font-weight:700}:host .alert-container .alert-text a:hover,:host .alert-container .alert-text a:visited,:host .alert-container .alert-text a:focus,:host .alert-container .snackbar-text a:hover,:host .alert-container .snackbar-text a:visited,:host .alert-container .snackbar-text a:focus,:host .snackbar-container .alert-text a:hover,:host .snackbar-container .alert-text a:visited,:host .snackbar-container .alert-text a:focus,:host .snackbar-container .snackbar-text a:hover,:host .snackbar-container .snackbar-text a:visited,:host .snackbar-container .snackbar-text a:focus{text-decoration:none}:host .alert-container.success,:host .snackbar-container.success{background-color:#cbd6cb}:host .alert-container.info,:host .snackbar-container.info{background-color:#c8d7de}:host .alert-container.warning,:host .snackbar-container.warning{background-color:#f0d6bb}:host .alert-container.error,:host .snackbar-container.error{background-color:#e3c3c6}@media (max-width: 600px){:host .alert-container,:host .snackbar-container{padding:8px 14px}}:host .snackbar-container{bottom:0;z-index:98}:host .mat-mdc-snack-bar-container{margin:16px 8px}\n"] }]
2999
- }], ctorParameters: function () {
3000
- return [{ type: undefined, decorators: [{
3001
- type: Inject,
3002
- args: [MAT_SNACK_BAR_DATA]
3003
- }] }, { type: i1$8.MatSnackBarRef }, { type: LanguageService }];
3004
- }, propDecorators: { snackbarType: [{
3005
- type: Input
3006
- }], message: [{
3007
- type: Input
3008
- }], seconds: [{
3009
- type: Input
3010
- }], includeDismissButton: [{
3011
- type: Input
3012
- }], fixed: [{
3013
- type: Input
3014
- }], language: [{
3015
- type: Input
3016
- }] } });
3017
-
3018
- class SnackbarService {
3019
- constructor(snackBar) {
3020
- this.snackBar = snackBar;
3021
- }
3022
- error(message) {
3023
- return this.snackBar.openFromComponent(SnackbarComponent, {
3024
- data: {
3025
- snackbarType: 'error',
3026
- message,
3027
- },
3028
- });
3029
- }
3030
- success(message) {
3031
- return this.snackBar.openFromComponent(SnackbarComponent, {
3032
- data: {
3033
- snackbarType: 'success',
3034
- message,
3035
- },
3036
- });
3037
- }
3038
- }
3039
- SnackbarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarService, deps: [{ token: i1$8.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable });
3040
- SnackbarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarService });
3041
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarService, decorators: [{
3042
- type: Injectable
3043
- }], ctorParameters: function () { return [{ type: i1$8.MatSnackBar }]; } });
3044
-
3045
- const preloadLang = (transloco) => () => {
3046
- transloco.setActiveLang('en');
3047
- return lastValueFrom(transloco.load('en'));
3048
- };
3049
- class SnackbarComponentModule {
3050
- }
3051
- SnackbarComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3052
- SnackbarComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponentModule, declarations: [SnackbarComponent], imports: [CommonModule, ButtonComponentModule, IconComponentModule, TranslocoModule], exports: [SnackbarComponent] });
3053
- SnackbarComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponentModule, providers: [
3054
- SnackbarService,
3055
- {
3056
- provide: APP_INITIALIZER,
3057
- useFactory: preloadLang,
3058
- deps: [TranslocoService],
3059
- multi: true,
3060
- },
3061
- ], imports: [CommonModule, ButtonComponentModule, IconComponentModule, TranslocoModule] });
3062
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackbarComponentModule, decorators: [{
3063
- type: NgModule,
3064
- args: [{
3065
- declarations: [SnackbarComponent],
3066
- imports: [CommonModule, ButtonComponentModule, IconComponentModule, TranslocoModule],
3067
- exports: [SnackbarComponent],
3068
- providers: [
3069
- SnackbarService,
3070
- {
3071
- provide: APP_INITIALIZER,
3072
- useFactory: preloadLang,
3073
- deps: [TranslocoService],
3074
- multi: true,
3075
- },
3076
- ],
3077
- }]
3078
- }] });
3079
-
3080
- class DataPropertyGetterPipe {
3081
- transform(obj, keyName = '') {
3082
- return this.getDeepVal(obj, keyName);
3083
- }
3084
- getDeepVal(obj, path) {
3085
- if (typeof obj === 'undefined' || obj === null) {
3086
- return '';
3087
- }
3088
- const splittedPath = path.split(/[\.\[\]\"\']{1,2}/);
3089
- for (let i = 0, l = splittedPath.length; i < l; i++) {
3090
- if (splittedPath[i] === '') {
3091
- continue;
3092
- }
3093
- obj = obj[splittedPath[i]];
3094
- if (typeof obj === 'undefined' || obj === null) {
3095
- return '';
3096
- }
3097
- }
3098
- return obj;
3099
- }
3100
- }
3101
- DataPropertyGetterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DataPropertyGetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
3102
- DataPropertyGetterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DataPropertyGetterPipe, name: "dataPropertyGetter" });
3103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DataPropertyGetterPipe, decorators: [{
3104
- type: Pipe,
3105
- args: [{
3106
- name: 'dataPropertyGetter',
3107
- }]
3108
- }] });
3109
-
3110
- var ColumnTypeEnum;
3111
- (function (ColumnTypeEnum) {
3112
- ColumnTypeEnum["FIELD"] = "field";
3113
- ColumnTypeEnum["FUNCTION"] = "function";
3114
- ColumnTypeEnum["RENDERER"] = "renderer";
3115
- })(ColumnTypeEnum || (ColumnTypeEnum = {}));
3116
- var ColumnAlignmentEnum;
3117
- (function (ColumnAlignmentEnum) {
3118
- ColumnAlignmentEnum["LEFT"] = "left";
3119
- ColumnAlignmentEnum["RIGHT"] = "right";
3120
- ColumnAlignmentEnum["CENTER"] = "center";
3121
- })(ColumnAlignmentEnum || (ColumnAlignmentEnum = {}));
3122
-
3123
- class DynamicComponentDirective {
3124
- set dynamicComponent(componentRenderer) {
3125
- if (componentRenderer.component) {
3126
- this.compRef = this.vcr.createComponent(componentRenderer.component);
3127
- if (componentRenderer.inputs) {
3128
- Object.keys(componentRenderer.inputs).map(inputName => (this.compRef.instance[inputName] = componentRenderer.inputs[inputName]));
3129
- }
3130
- if (componentRenderer.outputs) {
3131
- Object.keys(componentRenderer.outputs).map(output => {
3132
- var _a;
3133
- this.subscription.add(this.compRef.instance[output].subscribe((_a = componentRenderer.outputs) === null || _a === void 0 ? void 0 : _a[output]));
3134
- });
3135
- }
3136
- }
3137
- }
3138
- constructor(vcr) {
3139
- this.vcr = vcr;
3140
- this.subscription = new Subscription();
3141
- }
3142
- ngOnDestroy() {
3143
- if (this.compRef) {
3144
- this.compRef.destroy();
3145
- }
3146
- this.subscription.unsubscribe();
3147
- }
3148
- }
3149
- DynamicComponentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicComponentDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
3150
- DynamicComponentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DynamicComponentDirective, selector: "[dynamicComponent]", inputs: { dynamicComponent: "dynamicComponent" }, ngImport: i0 });
3151
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicComponentDirective, decorators: [{
3152
- type: Directive,
3153
- args: [{
3154
- selector: '[dynamicComponent]',
3155
- }]
3156
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { dynamicComponent: [{
3157
- type: Input
3158
- }] } });
3159
-
3160
- class TableComponent {
3161
- /**
3162
- * @ignore
3163
- */
3164
- set matSort(matSort) {
3165
- this.dataSource.sort = matSort;
3166
- this.dataSource.sortingDataAccessor = (item, property) => this.dataPropertyGetterPipe.transform(item, property);
3167
- }
3168
- /**
3169
- * Data to be rendered
3170
- *
3171
- * @ignore
3172
- * @type {IDataSource}
3173
- * @memberof TableComponent
3174
- */
3175
- set tableData(data) {
3176
- if (data === null || data === void 0 ? void 0 : data.length) {
3177
- this.setTableDataSource(data);
3178
- }
3179
- }
3180
- ngOnInit() {
3181
- this.columnsToDisplay = this.tableColumns.map((tableColumn) => tableColumn.headerName);
3182
- if (this.tableDetailColumns) {
3183
- this.columnsDetailToDisplay = this.tableDetailColumns.columnDefs.map((tableColumn) => tableColumn.headerName);
3184
- }
3185
- }
3186
- constructor(dataPropertyGetterPipe) {
3187
- this.dataPropertyGetterPipe = dataPropertyGetterPipe;
3188
- /**
3189
- * @ignore
3190
- */
3191
- this.tableDetails = false;
3192
- /**
3193
- * Data structure to select which columns should be rendered and their capabilities
3194
- *
3195
- * @type {ITableColumn}
3196
- * @memberof TableComponent
3197
- */
3198
- this.tableColumns = [];
3199
- /**
3200
- * @ignore
3201
- */
3202
- this.onSortEvent = new EventEmitter();
3203
- /**
3204
- * @ignore
3205
- */
3206
- this.onRowClickEvent = new EventEmitter();
3207
- /**
3208
- * @ignore
3209
- */
3210
- this.onDetailRowClickEvent = new EventEmitter();
3211
- /**
3212
- * @ignore
3213
- */
3214
- this.dataSource = new MatTableDataSource([]);
3215
- /**
3216
- * @ignore
3217
- */
3218
- this.dataSourceDetail = new MatTableDataSource([]);
3219
- /**
3220
- * @ignore
3221
- */
3222
- this.columnsToDisplay = [];
3223
- /**
3224
- * @ignore
3225
- */
3226
- this.columnsDetailToDisplay = [];
3227
- /**
3228
- * @ignore
3229
- */
3230
- this.DataType = ColumnTypeEnum;
3231
- }
3232
- onSort(sortParams) {
3233
- const columnSort = this.tableColumns.find((column) => column.headerName === sortParams.active);
3234
- if (columnSort === null || columnSort === void 0 ? void 0 : columnSort.field) {
3235
- sortParams.active = columnSort === null || columnSort === void 0 ? void 0 : columnSort.field;
3236
- }
3237
- this.onSortEvent.emit(sortParams);
3238
- }
3239
- onRowClick(rowParams) {
3240
- this.onRowClickEvent.emit(rowParams);
3241
- }
3242
- onDetailRowClick(rowParams) {
3243
- this.onDetailRowClickEvent.emit(rowParams);
3244
- }
3245
- toggleRow(element) {
3246
- this.elementDetail = this.elementDetail === element ? null : element;
3247
- if (this.elementDetail) {
3248
- this.tableDetailColumns.setDetailRowData({
3249
- data: element,
3250
- setDetailDataSource: this.setTableDetailDataSource.bind(this),
3251
- });
3252
- }
3253
- }
3254
- /**
3255
- * @ignore
3256
- */
3257
- setTableDataSource(data) {
3258
- this.dataSource = new MatTableDataSource(data);
3259
- }
3260
- /**
3261
- * @ignore
3262
- */
3263
- setTableDetailDataSource(rowData) {
3264
- this.dataSourceDetail = new MatTableDataSource(rowData);
3265
- }
3266
- }
3267
- TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableComponent, deps: [{ token: DataPropertyGetterPipe }], target: i0.ɵɵFactoryTarget.Component });
3268
- TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableComponent, selector: "ui-table", inputs: { tableDetails: "tableDetails", tableData: "tableData", tableColumns: "tableColumns", tableDetailColumns: "tableDetailColumns" }, outputs: { onSortEvent: "onSortEvent", onRowClickEvent: "onRowClickEvent", onDetailRowClickEvent: "onDetailRowClickEvent" }, viewQueries: [{ propertyName: "matSort", first: true, predicate: MatSort, descendants: true }], ngImport: i0, template: "<table *ngIf=\"!tableDetails\" mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSort($event)\">\n <ng-container *ngFor=\"let tableColumn of tableColumns; let i = index\" [matColumnDef]=\"tableColumn.headerName\">\n <ng-container *ngIf=\"tableColumn.sortable; else notSortable\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" [mat-sort-header]=\"tableColumn.field || ''\"\n arrowPosition=\"after\" [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-container>\n <ng-template #notSortable>\n <th mat-header-cell *matHeaderCellDef [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"[tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : '', onRowClickEvent.observed && i === tableColumns.length - 1 ? 'row-detail': '']\">\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n <mat-icon *ngIf=\"onRowClickEvent.observed && i === tableColumns.length - 1\" class=\"row-detail-icon\">navigate_next</mat-icon>\n </td>\n </ng-container>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnsToDisplay;\" [ngClass]=\"{'row-clickable': onRowClickEvent.observed}\"></tr>\n</table>\n\n<table *ngIf=\"tableDetails\" mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSort($event)\"\n multiTemplateDataRows>\n <ng-container *ngFor=\"let tableColumn of tableColumns; let i = index\" [matColumnDef]=\"tableColumn.headerName\">\n <ng-container *ngIf=\"tableColumn.sortable; else notSortable\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" [mat-sort-header]=\"tableColumn.field || ''\"\n arrowPosition=\"after\" [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-container>\n <ng-template #notSortable>\n <th mat-header-cell *matHeaderCellDef [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"[tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : '', i === 0 ? 'row-expand' : '']\">\n <mat-icon *ngIf=\"i === 0\" class=\"row-expand-icon\">{{ element === elementDetail ? 'expand_less' : 'expand_more' }}</mat-icon>\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n </td>\n </ng-container>\n\n <!-- Expanded Content Column -->\n <ng-container matColumnDef=\"expandedDetail\">\n <td mat-cell *matCellDef=\"let element\" [attr.colspan]=\"columnsToDisplay.length\">\n <div class=\"element-detail\" *ngIf=\"dataSourceDetail.data.length\"\n [@expandDetail]=\"element === elementDetail ? 'expanded' : 'collapsed'\">\n <table mat-table [dataSource]=\"dataSourceDetail\">\n <ng-container *ngFor=\"let tableColumn of tableDetailColumns.columnDefs\"\n [matColumnDef]=\"tableColumn.headerName\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" arrowPosition=\"after\"\n [ngStyle]=\"{width: tableColumn.styles?.width}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n {{tableColumn.headerName | uppercase}}\n </th>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onDetailRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : ''\"\n [ngStyle]=\"{padding: tableColumn.styles?.padding}\">\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnsDetailToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let rowDetail; columns: columnsDetailToDisplay;\"></tr>\n </table>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let element; columns: columnsToDisplay;\" class=\"element-row\"\n [ngClass]=\"{'expanded-row': elementDetail === element, 'row-clickable': tableDetails}\"\n (click)=\"toggleRow(element)\">\n </tr>\n <tr mat-row *matRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\"></tr>\n</table>\n\n<ng-template #tableDataTpl let-element=\"element\" let-tableColumn=\"tableColumn\">\n <div class=\"align-wrapper\">\n <ng-container [ngSwitch]=\"tableColumn.type\">\n <ng-container *ngSwitchCase=\"DataType.FIELD\">\n {{element | dataPropertyGetter: tableColumn.field}}\n </ng-container>\n <ng-container *ngSwitchCase=\"DataType.FUNCTION\">\n {{tableColumn.function?.(element)}}\n </ng-container>\n <ng-container *ngSwitchCase=\"DataType.RENDERER\">\n <ng-template\n [dynamicComponent]=\"tableColumn.renderer?.(element)\">\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{element | dataPropertyGetter: tableColumn.field}}\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #tableHeader let-tableColumn=\"tableColumn\">\n <div class=\"tooltip\" [ngStyle]=\"{'justify-content': tableColumn.styles?.alignment}\" [ngClass]=\"tableColumn.styles?.alignment\">\n <span>{{tableColumn.headerName | uppercase}}</span>\n <mat-icon *ngIf=\"tableColumn.headerTooltip\" [matTooltip]=\"tableColumn.headerTooltip\" class=\"tooltip-icon\" (click)=\"$event.stopPropagation()\">help</mat-icon>\n </div>\n</ng-template>\n", styles: ["table{cursor:initial;width:100%;overflow:hidden;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none}table .mat-mdc-header-cell{font-weight:700;color:#000;padding:16px}table .mat-mdc-header-cell .tooltip{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center}table .mat-mdc-header-cell .tooltip mat-icon{color:#1f5260;font-size:18px;position:relative;top:3px;left:4px;cursor:pointer}table .mat-mdc-cell{padding:16px;text-align:justify}table td,table th,table .mat-mdc-row{border-width:.5px}table .mat-mdc-row:hover:not(.element-detail .mat-row).row-clickable{background-color:#ecf6f5;cursor:pointer}table ::ng-deep .mat-sort-header-arrow{color:#276678}table .label.active{background-color:#46a997;color:#fff}table .label{padding:0 8px;width:-moz-fit-content;width:fit-content;font-weight:600;font-size:10px;border-radius:4px;background-color:#e9f0f1;color:#000}table th.th-right{text-align:right}table th.th-right ::ng-deep .mat-sort-header-container{justify-content:end}table th.th-left{text-align:left}table th.th-left ::ng-deep .mat-sort-header-container{justify-content:start}table th.th-center{text-align:center}table th.th-center ::ng-deep .mat-sort-header-container{justify-content:center}table .row-detail{display:flex;justify-content:space-between}table .row-detail-icon{align-self:center;font-size:16px;height:16px;width:16px}table .row-expand{display:flex}table .row-expand-icon{align-self:center;font-size:14px;height:14px;width:14px;margin-right:8px}table .align-wrapper{display:flex}table td.td-right{text-align:right}table td.td-right .align-wrapper{justify-content:end}table td.td-left{text-align:left}table td.td-left .align-wrapper{justify-content:start}table td.td-center{text-align:center}table td.td-center .align-wrapper{justify-content:center}table tr.detail-row{height:0}table tr.element-row:not(.expanded-row):hover{background:whitesmoke}table tr.element-row:not(.expanded-row):active{background:#efefef}table .element-row td{border-bottom-width:0}table .mat-column-expandedDetail{padding:0}table .element-detail{overflow:hidden;display:flex}table .element-detail table{background-color:#f6f6f6}table .element-detail table .mat-mdc-header-row{visibility:collapse}table .element-detail table .mat-mdc-cell{border-width:0px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i3$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i3$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i4$1.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i4$1.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: DynamicComponentDirective, selector: "[dynamicComponent]", inputs: ["dynamicComponent"] }, { kind: "pipe", type: i1$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: DataPropertyGetterPipe, name: "dataPropertyGetter" }], animations: [
3269
- trigger('expandDetail', [
3270
- state('collapsed, void', style({ height: '0px' })),
3271
- state('expanded', style({ height: '*' })),
3272
- transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
3273
- transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
3274
- ]),
3275
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3276
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableComponent, decorators: [{
3277
- type: Component,
3278
- args: [{ selector: 'ui-table', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
3279
- trigger('expandDetail', [
3280
- state('collapsed, void', style({ height: '0px' })),
3281
- state('expanded', style({ height: '*' })),
3282
- transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
3283
- transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
3284
- ]),
3285
- ], template: "<table *ngIf=\"!tableDetails\" mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSort($event)\">\n <ng-container *ngFor=\"let tableColumn of tableColumns; let i = index\" [matColumnDef]=\"tableColumn.headerName\">\n <ng-container *ngIf=\"tableColumn.sortable; else notSortable\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" [mat-sort-header]=\"tableColumn.field || ''\"\n arrowPosition=\"after\" [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-container>\n <ng-template #notSortable>\n <th mat-header-cell *matHeaderCellDef [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"[tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : '', onRowClickEvent.observed && i === tableColumns.length - 1 ? 'row-detail': '']\">\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n <mat-icon *ngIf=\"onRowClickEvent.observed && i === tableColumns.length - 1\" class=\"row-detail-icon\">navigate_next</mat-icon>\n </td>\n </ng-container>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnsToDisplay;\" [ngClass]=\"{'row-clickable': onRowClickEvent.observed}\"></tr>\n</table>\n\n<table *ngIf=\"tableDetails\" mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"onSort($event)\"\n multiTemplateDataRows>\n <ng-container *ngFor=\"let tableColumn of tableColumns; let i = index\" [matColumnDef]=\"tableColumn.headerName\">\n <ng-container *ngIf=\"tableColumn.sortable; else notSortable\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" [mat-sort-header]=\"tableColumn.field || ''\"\n arrowPosition=\"after\" [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-container>\n <ng-template #notSortable>\n <th mat-header-cell *matHeaderCellDef [ngStyle]=\"{width: tableColumn.styles?.width, minWidth: tableColumn.styles?.['min-width']}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n <ng-container *ngTemplateOutlet=\"tableHeader; context: {tableColumn}\"></ng-container>\n </th>\n </ng-template>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"[tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : '', i === 0 ? 'row-expand' : '']\">\n <mat-icon *ngIf=\"i === 0\" class=\"row-expand-icon\">{{ element === elementDetail ? 'expand_less' : 'expand_more' }}</mat-icon>\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n </td>\n </ng-container>\n\n <!-- Expanded Content Column -->\n <ng-container matColumnDef=\"expandedDetail\">\n <td mat-cell *matCellDef=\"let element\" [attr.colspan]=\"columnsToDisplay.length\">\n <div class=\"element-detail\" *ngIf=\"dataSourceDetail.data.length\"\n [@expandDetail]=\"element === elementDetail ? 'expanded' : 'collapsed'\">\n <table mat-table [dataSource]=\"dataSourceDetail\">\n <ng-container *ngFor=\"let tableColumn of tableDetailColumns.columnDefs\"\n [matColumnDef]=\"tableColumn.headerName\">\n <th mat-header-cell *matHeaderCellDef=\"let element\" arrowPosition=\"after\"\n [ngStyle]=\"{width: tableColumn.styles?.width}\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'th-'+tableColumn.styles?.alignment : ''\">\n {{tableColumn.headerName | uppercase}}\n </th>\n <td mat-cell *matCellDef=\"let element\" (click)=\"onDetailRowClick(element)\"\n [align]=\"tableColumn.styles?.alignment\"\n [ngClass]=\"tableColumn.styles?.alignment ? 'td-'+tableColumn.styles?.alignment : ''\"\n [ngStyle]=\"{padding: tableColumn.styles?.padding}\">\n <ng-container *ngTemplateOutlet=\"tableDataTpl; context: {element, tableColumn}\"></ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnsDetailToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let rowDetail; columns: columnsDetailToDisplay;\"></tr>\n </table>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let element; columns: columnsToDisplay;\" class=\"element-row\"\n [ngClass]=\"{'expanded-row': elementDetail === element, 'row-clickable': tableDetails}\"\n (click)=\"toggleRow(element)\">\n </tr>\n <tr mat-row *matRowDef=\"let row; columns: ['expandedDetail']\" class=\"detail-row\"></tr>\n</table>\n\n<ng-template #tableDataTpl let-element=\"element\" let-tableColumn=\"tableColumn\">\n <div class=\"align-wrapper\">\n <ng-container [ngSwitch]=\"tableColumn.type\">\n <ng-container *ngSwitchCase=\"DataType.FIELD\">\n {{element | dataPropertyGetter: tableColumn.field}}\n </ng-container>\n <ng-container *ngSwitchCase=\"DataType.FUNCTION\">\n {{tableColumn.function?.(element)}}\n </ng-container>\n <ng-container *ngSwitchCase=\"DataType.RENDERER\">\n <ng-template\n [dynamicComponent]=\"tableColumn.renderer?.(element)\">\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{element | dataPropertyGetter: tableColumn.field}}\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #tableHeader let-tableColumn=\"tableColumn\">\n <div class=\"tooltip\" [ngStyle]=\"{'justify-content': tableColumn.styles?.alignment}\" [ngClass]=\"tableColumn.styles?.alignment\">\n <span>{{tableColumn.headerName | uppercase}}</span>\n <mat-icon *ngIf=\"tableColumn.headerTooltip\" [matTooltip]=\"tableColumn.headerTooltip\" class=\"tooltip-icon\" (click)=\"$event.stopPropagation()\">help</mat-icon>\n </div>\n</ng-template>\n", styles: ["table{cursor:initial;width:100%;overflow:hidden;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none}table .mat-mdc-header-cell{font-weight:700;color:#000;padding:16px}table .mat-mdc-header-cell .tooltip{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center}table .mat-mdc-header-cell .tooltip mat-icon{color:#1f5260;font-size:18px;position:relative;top:3px;left:4px;cursor:pointer}table .mat-mdc-cell{padding:16px;text-align:justify}table td,table th,table .mat-mdc-row{border-width:.5px}table .mat-mdc-row:hover:not(.element-detail .mat-row).row-clickable{background-color:#ecf6f5;cursor:pointer}table ::ng-deep .mat-sort-header-arrow{color:#276678}table .label.active{background-color:#46a997;color:#fff}table .label{padding:0 8px;width:-moz-fit-content;width:fit-content;font-weight:600;font-size:10px;border-radius:4px;background-color:#e9f0f1;color:#000}table th.th-right{text-align:right}table th.th-right ::ng-deep .mat-sort-header-container{justify-content:end}table th.th-left{text-align:left}table th.th-left ::ng-deep .mat-sort-header-container{justify-content:start}table th.th-center{text-align:center}table th.th-center ::ng-deep .mat-sort-header-container{justify-content:center}table .row-detail{display:flex;justify-content:space-between}table .row-detail-icon{align-self:center;font-size:16px;height:16px;width:16px}table .row-expand{display:flex}table .row-expand-icon{align-self:center;font-size:14px;height:14px;width:14px;margin-right:8px}table .align-wrapper{display:flex}table td.td-right{text-align:right}table td.td-right .align-wrapper{justify-content:end}table td.td-left{text-align:left}table td.td-left .align-wrapper{justify-content:start}table td.td-center{text-align:center}table td.td-center .align-wrapper{justify-content:center}table tr.detail-row{height:0}table tr.element-row:not(.expanded-row):hover{background:whitesmoke}table tr.element-row:not(.expanded-row):active{background:#efefef}table .element-row td{border-bottom-width:0}table .mat-column-expandedDetail{padding:0}table .element-detail{overflow:hidden;display:flex}table .element-detail table{background-color:#f6f6f6}table .element-detail table .mat-mdc-header-row{visibility:collapse}table .element-detail table .mat-mdc-cell{border-width:0px}\n"] }]
3286
- }], ctorParameters: function () { return [{ type: DataPropertyGetterPipe }]; }, propDecorators: { matSort: [{
3287
- type: ViewChild,
3288
- args: [MatSort]
3289
- }], tableDetails: [{
3290
- type: Input
3291
- }], tableData: [{
3292
- type: Input
3293
- }], tableColumns: [{
3294
- type: Input
3295
- }], tableDetailColumns: [{
3296
- type: Input
3297
- }], onSortEvent: [{
3298
- type: Output
3299
- }], onRowClickEvent: [{
3300
- type: Output
3301
- }], onDetailRowClickEvent: [{
3302
- type: Output
3303
- }] } });
3304
-
3305
- class TableComponentModule {
3306
- }
3307
- TableComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3308
- TableComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TableComponentModule, declarations: [TableComponent, DataPropertyGetterPipe, DynamicComponentDirective], imports: [CommonModule, MatTableModule, MatSortModule, MatIconModule, MatTooltipModule], exports: [TableComponent] });
3309
- TableComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableComponentModule, providers: [DataPropertyGetterPipe], imports: [CommonModule, MatTableModule, MatSortModule, MatIconModule, MatTooltipModule] });
3310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableComponentModule, decorators: [{
3311
- type: NgModule,
3312
- args: [{
3313
- declarations: [TableComponent, DataPropertyGetterPipe, DynamicComponentDirective],
3314
- imports: [CommonModule, MatTableModule, MatSortModule, MatIconModule, MatTooltipModule],
3315
- exports: [TableComponent],
3316
- providers: [DataPropertyGetterPipe],
3317
- }]
3318
- }] });
3319
-
3320
- class TagComponent {
3321
- constructor() {
3322
- /**
3323
- * Icon
3324
- *
3325
- * @type {string}
3326
- * @memberof TagComponent
3327
- */
3328
- this.icon = '';
3329
- /**
3330
- * Whether to allow the tag to be closed.
3331
- *
3332
- * @type {boolean}
3333
- * @default false
3334
- * @memberof TagComponent
3335
- */
3336
- this.allowClose = false;
3337
- /**
3338
- * Whether the tag is in read-only mode.
3339
- *
3340
- * @type {boolean}
3341
- * @default false
3342
- * @memberof TagComponent
3343
- */
3344
- this.readOnly = false;
3345
- /**
3346
- * Whether the tag is selected.
3347
- *
3348
- * @type {boolean}
3349
- * @default false
3350
- * @memberof TagComponent
3351
- */
3352
- this.isSelected = false;
3353
- /**
3354
- * Display icon when is selected
3355
- *
3356
- * @type {boolean}
3357
- * @default false
3358
- * @memberof TagComponent
3359
- */
3360
- this.showIconWhenSelected = false;
3361
- /**
3362
- * Specifies whether the element is disabled.
3363
- *
3364
- * @type {boolean}
3365
- * @default false
3366
- * @memberof TagComponent
3367
- */
3368
- this.isDisabled = false;
3369
- /**
3370
- * Event triggered when the tag should be closed.
3371
- *
3372
- * @event
3373
- * @memberof TagComponent
3374
- */
3375
- this.close = new EventEmitter();
3376
- /**
3377
- * Event triggered when a press action occurs.
3378
- *
3379
- * @event
3380
- * @memberof TagComponent
3381
- */
3382
- this.press = new EventEmitter();
3383
- /**
3384
- * Subject that needs to be triggered when Label input changes, to check if it's truncated
3385
- * @private
3386
- * @type {void}
3387
- * @memberof TagComponent
3388
- */
3389
- this.checkLabelEllipsis$ = new ReplaySubject(1);
3390
- /**
3391
- * Observable that indicates if the Label is truncated
3392
- * debounceTime is used to wait for view to be initialized after receiving a new Label input
3393
- * @protected
3394
- * @type {boolean}
3395
- * @memberof TagComponent
3396
- */
3397
- this.isEllipseActiveObs$ = this.checkLabelEllipsis$.pipe(debounceTime(100), map(() => {
3398
- const el = this.labelElement.nativeElement;
3399
- return el.offsetWidth < el.scrollWidth;
3400
- }));
3401
- this.labelText = '';
3402
- }
3403
- /**
3404
- * Tag's label
3405
- *
3406
- * @memberof TagComponent
3407
- */
3408
- set label(value) {
3409
- this.labelText = value;
3410
- if (this.labelElement) {
3411
- this.isLabelEllipseActive();
3412
- }
3413
- }
3414
- ngAfterViewInit() {
3415
- this.isLabelEllipseActive();
3416
- }
3417
- onPress() {
3418
- if (!this.readOnly && !this.allowClose) {
3419
- this.isSelected = this.showIconWhenSelected ? !this.isSelected : false;
3420
- this.press.emit(this.isSelected);
3421
- }
3422
- }
3423
- onClose() {
3424
- this.close.emit();
3425
- }
3426
- isLabelEllipseActive() {
3427
- this.checkLabelEllipsis$.next();
3428
- }
3429
- get tabIndex() {
3430
- return this.isDisabled || this.readOnly ? -1 : 0;
3431
- }
3432
- get filled() {
3433
- return this.readOnly || this.allowClose || this.isSelected;
3434
- }
3435
- }
3436
- TagComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3437
- TagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TagComponent, selector: "ui-tag", inputs: { label: "label", icon: "icon", allowClose: "allowClose", readOnly: "readOnly", isSelected: "isSelected", showIconWhenSelected: "showIconWhenSelected", isDisabled: "isDisabled" }, outputs: { close: "close", press: "press" }, viewQueries: [{ propertyName: "labelElement", first: true, predicate: ["labelElement"], descendants: true }], ngImport: i0, template: "<div class=\"tag-wrapper\" [matTooltip]=\"(isEllipseActiveObs$ | async) ? labelText : ''\">\n <div\n [tabindex]=\"tabIndex\"\n class=\"tag-container\"\n [attr.data-testid]=\"'tag--container'\"\n [ngClass]=\"{\n filled: filled,\n readonly: readOnly,\n disabled: isDisabled,\n outlined: !isSelected,\n }\"\n (click)=\"onPress()\"\n >\n <ui-icon *ngIf=\"icon\" class=\"icon\" [name]=\"icon\"></ui-icon>\n <ui-icon *ngIf=\"isSelected && showIconWhenSelected\" class=\"icon\" [name]=\"'Check'\"></ui-icon>\n <span class=\"tag-label\" #labelElement>{{ labelText }}</span>\n <ui-icon [tabindex]=\"tabIndex\" *ngIf=\"allowClose\" class=\"delete-icon\" (click)=\"onClose()\" [name]=\"'Close'\"></ui-icon>\n </div>\n</div>\n", styles: [":host .tag-wrapper{max-width:264px}:host .tag-container{height:32px;max-width:264px;border-radius:4px;display:flex;align-items:center;justify-content:center;padding:0 8px;width:-moz-fit-content;width:fit-content;cursor:pointer;margin:4px}:host .tag-container.outlined{border:1px solid #6894A0}:host .tag-container:focus{outline:1px dashed #888888;outline-offset:4px;background:#F6F6F6;border:1px solid #6894A0}:host .tag-container:focus.filled{background-color:#e9f0f1;border:1px solid #276678}:host .tag-container.filled{background:#E9F0F1;border:1px solid #E9F0F1}:host .tag-container.filled:hover{background-color:#e9f0f1;border:1px solid #276678}:host .tag-container.filled:active{background:#A9C2C9;border:1px solid #1B4754}:host .tag-container:hover{background:#F6F6F6;border:1px solid #6894A0}:host .tag-container:active{background:#E9F0F1}:host .tag-container.readonly{pointer-events:none}:host .tag-container.disabled{opacity:.5;border:1px solid #276678;background:#E9F0F1;pointer-events:none}:host .tag-container .tag-label{-webkit-user-select:none;user-select:none;font-size:14px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .tag-container .icon{height:16px;width:16px;min-width:16px;margin-right:8px}:host .tag-container .delete-icon{display:flex;align-items:center;justify-content:center;margin-left:8px;text-align:center;border:1px solid transparent}:host .tag-container .delete-icon:focus{border:1px dashed #1B4754;border-radius:4px}:host .tag-container .delete-icon:focus-visible{outline:none}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }] });
3438
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TagComponent, decorators: [{
3439
- type: Component,
3440
- args: [{ selector: 'ui-tag', template: "<div class=\"tag-wrapper\" [matTooltip]=\"(isEllipseActiveObs$ | async) ? labelText : ''\">\n <div\n [tabindex]=\"tabIndex\"\n class=\"tag-container\"\n [attr.data-testid]=\"'tag--container'\"\n [ngClass]=\"{\n filled: filled,\n readonly: readOnly,\n disabled: isDisabled,\n outlined: !isSelected,\n }\"\n (click)=\"onPress()\"\n >\n <ui-icon *ngIf=\"icon\" class=\"icon\" [name]=\"icon\"></ui-icon>\n <ui-icon *ngIf=\"isSelected && showIconWhenSelected\" class=\"icon\" [name]=\"'Check'\"></ui-icon>\n <span class=\"tag-label\" #labelElement>{{ labelText }}</span>\n <ui-icon [tabindex]=\"tabIndex\" *ngIf=\"allowClose\" class=\"delete-icon\" (click)=\"onClose()\" [name]=\"'Close'\"></ui-icon>\n </div>\n</div>\n", styles: [":host .tag-wrapper{max-width:264px}:host .tag-container{height:32px;max-width:264px;border-radius:4px;display:flex;align-items:center;justify-content:center;padding:0 8px;width:-moz-fit-content;width:fit-content;cursor:pointer;margin:4px}:host .tag-container.outlined{border:1px solid #6894A0}:host .tag-container:focus{outline:1px dashed #888888;outline-offset:4px;background:#F6F6F6;border:1px solid #6894A0}:host .tag-container:focus.filled{background-color:#e9f0f1;border:1px solid #276678}:host .tag-container.filled{background:#E9F0F1;border:1px solid #E9F0F1}:host .tag-container.filled:hover{background-color:#e9f0f1;border:1px solid #276678}:host .tag-container.filled:active{background:#A9C2C9;border:1px solid #1B4754}:host .tag-container:hover{background:#F6F6F6;border:1px solid #6894A0}:host .tag-container:active{background:#E9F0F1}:host .tag-container.readonly{pointer-events:none}:host .tag-container.disabled{opacity:.5;border:1px solid #276678;background:#E9F0F1;pointer-events:none}:host .tag-container .tag-label{-webkit-user-select:none;user-select:none;font-size:14px;line-height:20px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .tag-container .icon{height:16px;width:16px;min-width:16px;margin-right:8px}:host .tag-container .delete-icon{display:flex;align-items:center;justify-content:center;margin-left:8px;text-align:center;border:1px solid transparent}:host .tag-container .delete-icon:focus{border:1px dashed #1B4754;border-radius:4px}:host .tag-container .delete-icon:focus-visible{outline:none}\n"] }]
3441
- }], propDecorators: { label: [{
3442
- type: Input
3443
- }], icon: [{
3444
- type: Input
3445
- }], allowClose: [{
3446
- type: Input
3447
- }], readOnly: [{
3448
- type: Input
3449
- }], isSelected: [{
3450
- type: Input
3451
- }], showIconWhenSelected: [{
3452
- type: Input
3453
- }], isDisabled: [{
3454
- type: Input
3455
- }], close: [{
3456
- type: Output
3457
- }], press: [{
3458
- type: Output
3459
- }], labelElement: [{
3460
- type: ViewChild,
3461
- args: ['labelElement']
3462
- }] } });
3463
-
3464
- var TooltipPositionType;
3465
- (function (TooltipPositionType) {
3466
- TooltipPositionType["TOP"] = "top";
3467
- TooltipPositionType["BOTTOM"] = "bottom";
3468
- TooltipPositionType["LEFT"] = "left";
3469
- TooltipPositionType["RIGHT"] = "right";
3470
- })(TooltipPositionType || (TooltipPositionType = {}));
3471
-
3472
- class TooltipComponent {
3473
- constructor() {
3474
- /**
3475
- * Allows the user to define the position of the tooltip relative to the parent element.
3476
- *
3477
- * @type {TooltipPositionType}
3478
- * @memberof TooltipComponent
3479
- */
3480
- this.position = TooltipPositionType.TOP;
3481
- /**
3482
- * The message to be displayed in the tooltip.
3483
- *
3484
- * @type {string}
3485
- * @memberof TooltipComponent
3486
- */
3487
- this.message = '';
3488
- }
3489
- ngOnInit() {
3490
- this.setPosition();
3491
- }
3492
- //set position
3493
- setPosition() {
3494
- switch (this.position) {
3495
- case TooltipPositionType.TOP:
3496
- this.matPosition = 'above';
3497
- break;
3498
- case TooltipPositionType.BOTTOM:
3499
- this.matPosition = 'below';
3500
- break;
3501
- default:
3502
- this.matPosition = this.position;
3503
- break;
3504
- }
3505
- }
3506
- }
3507
- TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3508
- TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TooltipComponent, selector: "ui-tooltip", inputs: { position: "position", message: "message" }, ngImport: i0, template: "<div [matTooltip]=\"message\" [matTooltipPosition]=\"matPosition\" matTooltipClass=\"tooltip\" aria-label=\"tooltip\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3509
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponent, decorators: [{
3510
- type: Component,
3511
- args: [{ selector: 'ui-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [matTooltip]=\"message\" [matTooltipPosition]=\"matPosition\" matTooltipClass=\"tooltip\" aria-label=\"tooltip\">\n <ng-content></ng-content>\n</div>\n" }]
3512
- }], propDecorators: { position: [{
3513
- type: Input
3514
- }], message: [{
3515
- type: Input
3516
- }] } });
3517
-
3518
- class TooltipComponentModule {
3519
- }
3520
- TooltipComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3521
- TooltipComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponentModule, declarations: [TooltipComponent], imports: [MatTooltipModule], exports: [TooltipComponent] });
3522
- TooltipComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponentModule, imports: [MatTooltipModule] });
3523
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TooltipComponentModule, decorators: [{
3524
- type: NgModule,
3525
- args: [{
3526
- declarations: [TooltipComponent],
3527
- imports: [MatTooltipModule],
3528
- exports: [TooltipComponent],
3529
- }]
3530
- }] });
3531
-
3532
- class TagComponentModule {
3533
- }
3534
- TagComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TagComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3535
- TagComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TagComponentModule, declarations: [TagComponent], imports: [CommonModule, IconComponentModule, TooltipComponentModule, MatTooltipModule], exports: [TagComponent] });
3536
- TagComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TagComponentModule, imports: [CommonModule, IconComponentModule, TooltipComponentModule, MatTooltipModule] });
3537
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TagComponentModule, decorators: [{
3538
- type: NgModule,
3539
- args: [{
3540
- declarations: [TagComponent],
3541
- imports: [CommonModule, IconComponentModule, TooltipComponentModule, MatTooltipModule],
3542
- exports: [TagComponent],
3543
- providers: [],
3544
- }]
3545
- }] });
3546
-
3547
- class DropdownComponent {
3548
- constructor() {
3549
- this.class = 'ui-dropdown';
3550
- /**
3551
- * Text content will be applied to the input element if present.
3552
- *
3553
- * @type {string}
3554
- * @memberof DropdownComponent
3555
- */
3556
- this.label = '';
3557
- /**
3558
- * Unique id of the element.
3559
- *
3560
- * @type {string}
3561
- * @memberof DropdownComponent
3562
- */
3563
- this.id = '';
3564
- /**
3565
- * Whether the component is disabled.
3566
- * Default: false.
3567
- *
3568
- * @type {boolean}
3569
- * @memberof DropdownComponent
3570
- */
3571
- this.disabled = false;
3572
- /**
3573
- * List of options.
3574
- *
3575
- * @type {OptionType}
3576
- * @memberof DropdownComponent
3577
- */
3578
- this.valueList = [];
3579
- /**
3580
- * Whether the user should be allowed to clear the values.
3581
- * Default: true.
3582
- *
3583
- * @type {boolean}
3584
- * @memberof DropdownComponent
3585
- */
3586
- this.allowClear = true;
3587
- /**
3588
- * This will allow the user to select multiple values at once.
3589
- * Default: true.
3590
- *
3591
- * @type {boolean}
3592
- * @memberof DropdownComponent
3593
- */
3594
- this.allowMultipleSelection = false;
3595
- /**
3596
- * Whether the component is required.
3597
- * Default: false.
3598
- *
3599
- * @type {boolean}
3600
- * @memberof DropdownComponent
3601
- */
3602
- this.required = false;
3603
- /**
3604
- * @ignore
3605
- */
3606
- this.onChange = (_) => { };
3607
- /**
3608
- * @ignore
3609
- */
3610
- this.onTouch = () => { };
3611
- this.errors = [];
3612
- this.valueList = [];
3613
- }
3614
- ngOnInit() {
3615
- this.errorsLength = this.setErrorsLength();
3616
- }
3617
- clearValue(event) {
3618
- event === null || event === void 0 ? void 0 : event.stopPropagation();
3619
- this.value = '';
3620
- }
3621
- //Save select value
3622
- onChangeOption(event) {
3623
- this.value = event.value;
3624
- this.errorsLength = this.setErrorsLength();
3625
- this.onTouch();
3626
- this.onChange(this.value);
3627
- }
3628
- //Set errors length for validation
3629
- setErrorsLength() {
3630
- if (!!this.errors) {
3631
- return this.errors.length > 0 ? true : false;
3632
- }
3633
- return false;
3634
- }
3635
- writeValue(value) {
3636
- if (value) {
3637
- this.value = value || '';
3638
- }
3639
- else {
3640
- this.value = '';
3641
- }
3642
- }
3643
- registerOnChange(fn) {
3644
- this.onChange = fn;
3645
- }
3646
- registerOnTouched(fn) {
3647
- this.onTouch = fn;
3648
- }
3649
- setDisabledState(isDisabled) {
3650
- this.disabled = isDisabled;
3651
- }
3652
- }
3653
- DropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3654
- DropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DropdownComponent, selector: "ui-dropdown", inputs: { label: "label", name: "name", placeholder: "placeholder", id: "id", value: "value", errors: "errors", disabled: "disabled", valueList: "valueList", allowClear: "allowClear", allowMultipleSelection: "allowMultipleSelection", required: "required" }, host: { properties: { "class": "this.class" } }, providers: [
3655
- {
3656
- provide: NG_VALUE_ACCESSOR,
3657
- useExisting: forwardRef(() => DropdownComponent),
3658
- multi: true,
3659
- },
3660
- ], ngImport: i0, template: "<mat-form-field appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label>{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-select\n #matSelect\n [id]=\"id!\"\n panelClass=\"ui-dropdown-list\"\n [disabled]=\"disabled\"\n [multiple]=\"allowMultipleSelection\"\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n (selectionChange)=\"onChangeOption($event)\"\n [attr.name]=\"name\">\n <div class=\"mat-option-section\" *ngFor=\"let section of valueList\">\n <span *ngIf=\"section.sectionTitle\" class=\"section-title\">{{ section.sectionTitle }}</span>\n <mat-option *ngIf=\"section.value\" #matOption [value]=\"section.value\">\n {{ section.value }}\n </mat-option>\n </div>\n </mat-select>\n <ui-button *ngIf=\"allowClear && !matSelect.empty\" type=\"secondary\" [justIcon]=\"true\" class=\"clear\" iconName=\"Close\" label=\"Clear\" (click)=\"clearValue($event)\"></ui-button>\n <ui-icon color=\"dark\" *ngIf=\"!matSelect.panelOpen\" size=\"24\" name=\"Arrow_down\"></ui-icon>\n <ui-icon color=\"petrol\" *ngIf=\"matSelect.panelOpen\" size=\"24\" name=\"Arrow_up\"></ui-icon>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of errors\">\n <ui-icon name=\"Error\"></ui-icon>{{ error }}\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: ["ui-dropdown{display:flex}ui-dropdown .mat-mdc-form-field{margin-top:0;width:100%}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px;flex:none}ui-dropdown .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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-select-arrow-wrapper{display:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-floating-label{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-floating-label mat-label{color:#276678}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-focused ui-icon:not(.clear) svg{color:#276678}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon{padding:0;height:auto;background:transparent}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon:hover,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon:focus{background:transparent;color:inherit;border:none;outline:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon.focus.cdk-focused.cdk-mouse-focused{background-color:transparent!important}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .clear{position:absolute;right:24px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .clear mat-icon.black svg{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-floating-label mat-label{color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-focused ui-icon svg{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0;margin-top:9px;font-size:12px;line-height:16px;position:relative}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-spacer{display:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error .errors{display:flex}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .options .options-container ui-button svg,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .options .options-container ui-icon svg{color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list{margin-top:4px;border-radius:8px!important;box-shadow:0 8px 24px 4px #00000014}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-option{display:flex;height:48px;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-option .mdc-list-item__primary-text{display:flex;align-items:center;justify-content:space-between}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-option-section .section-title{font-size:12px;text-transform:uppercase;display:flex;height:48px;align-items:center;font-weight:700;padding:0 16px}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple:focus:not(.mdc-list-item--disabled){background-color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected{background-color:#e9f0f1;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected:focus:not(.mdc-list-item--disabled){background-color:#c8d7de}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple:focus:not(.mdc-list-item--disabled){background-color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected{background-color:#f0dad9;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected:focus:not(.mdc-list-item--disabled){background-color:#e3c3c6}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-form-field-hint.error .errors{display:flex}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "type", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3661
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponent, decorators: [{
3662
- type: Component,
3663
- args: [{ selector: 'ui-dropdown', encapsulation: ViewEncapsulation.None, providers: [
3664
- {
3665
- provide: NG_VALUE_ACCESSOR,
3666
- useExisting: forwardRef(() => DropdownComponent),
3667
- multi: true,
3668
- },
3669
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label>{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-select\n #matSelect\n [id]=\"id!\"\n panelClass=\"ui-dropdown-list\"\n [disabled]=\"disabled\"\n [multiple]=\"allowMultipleSelection\"\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n (selectionChange)=\"onChangeOption($event)\"\n [attr.name]=\"name\">\n <div class=\"mat-option-section\" *ngFor=\"let section of valueList\">\n <span *ngIf=\"section.sectionTitle\" class=\"section-title\">{{ section.sectionTitle }}</span>\n <mat-option *ngIf=\"section.value\" #matOption [value]=\"section.value\">\n {{ section.value }}\n </mat-option>\n </div>\n </mat-select>\n <ui-button *ngIf=\"allowClear && !matSelect.empty\" type=\"secondary\" [justIcon]=\"true\" class=\"clear\" iconName=\"Close\" label=\"Clear\" (click)=\"clearValue($event)\"></ui-button>\n <ui-icon color=\"dark\" *ngIf=\"!matSelect.panelOpen\" size=\"24\" name=\"Arrow_down\"></ui-icon>\n <ui-icon color=\"petrol\" *ngIf=\"matSelect.panelOpen\" size=\"24\" name=\"Arrow_up\"></ui-icon>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of errors\">\n <ui-icon name=\"Error\"></ui-icon>{{ error }}\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: ["ui-dropdown{display:flex}ui-dropdown .mat-mdc-form-field{margin-top:0;width:100%}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px;flex:none}ui-dropdown .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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-select-arrow-wrapper{display:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-floating-label{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-floating-label mat-label{color:#276678}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-focused ui-icon:not(.clear) svg{color:#276678}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon{padding:0;height:auto;background:transparent}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon:hover,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon:focus{background:transparent;color:inherit;border:none;outline:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline button.mat-mdc-unelevated-button.secondary.only-icon.focus.cdk-focused.cdk-mouse-focused{background-color:transparent!important}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .clear{position:absolute;right:24px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .clear mat-icon.black svg{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.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:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-floating-label mat-label{color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-warn.mat-focused ui-icon svg{color:#888}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0;margin-top:9px;font-size:12px;line-height:16px;position:relative}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-spacer{display:none}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error .errors{display:flex}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .options .options-container ui-button svg,ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .options .options-container ui-icon svg{color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list{margin-top:4px;border-radius:8px!important;box-shadow:0 8px 24px 4px #00000014}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-option{display:flex;height:48px;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-option .mdc-list-item__primary-text{display:flex;align-items:center;justify-content:space-between}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-option-section .section-title{font-size:12px;text-transform:uppercase;display:flex;height:48px;align-items:center;font-weight:700;padding:0 16px}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple:focus:not(.mdc-list-item--disabled){background-color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected{background-color:#e9f0f1;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent mat-option.mdc-list-item--selected:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-accent .mat-mdc-option-multiple.mdc-list-item--selected:focus:not(.mdc-list-item--disabled){background-color:#c8d7de}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple:focus:not(.mdc-list-item--disabled){background-color:#e0e0e0}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active,.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected{background-color:#f0dad9;color:#000}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn mat-option.mdc-list-item--selected:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mat-mdc-option-active:focus:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected:hover:not(.mdc-list-item--disabled),.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list.mat-warn .mat-mdc-option-multiple.mdc-list-item--selected:focus:not(.mdc-list-item--disabled){background-color:#e3c3c6}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.cdk-overlay-container .cdk-overlay-pane .ui-dropdown-list .mat-mdc-form-field-hint.error .errors{display:flex}\n"] }]
3670
- }], ctorParameters: function () { return []; }, propDecorators: { class: [{
3671
- type: HostBinding
3672
- }], label: [{
3673
- type: Input
3674
- }], name: [{
3675
- type: Input
3676
- }], placeholder: [{
3677
- type: Input
3678
- }], id: [{
3679
- type: Input
3680
- }], value: [{
3681
- type: Input
3682
- }], errors: [{
3683
- type: Input
3684
- }], disabled: [{
3685
- type: Input
3686
- }], valueList: [{
3687
- type: Input
3688
- }], allowClear: [{
3689
- type: Input
3690
- }], allowMultipleSelection: [{
3691
- type: Input
3692
- }], required: [{
3693
- type: Input
3694
- }] } });
3695
-
3696
- class DropdownComponentModule {
3697
- }
3698
- DropdownComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3699
- DropdownComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponentModule, declarations: [DropdownComponent], imports: [CommonModule,
3700
- MatFormFieldModule,
3701
- MatInputModule,
3702
- IconComponentModule,
3703
- FormsModule,
3704
- ReactiveFormsModule,
3705
- ButtonComponentModule,
3706
- MatSelectModule], exports: [DropdownComponent] });
3707
- DropdownComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponentModule, imports: [CommonModule,
3708
- MatFormFieldModule,
3709
- MatInputModule,
3710
- IconComponentModule,
3711
- FormsModule,
3712
- ReactiveFormsModule,
3713
- ButtonComponentModule,
3714
- MatSelectModule] });
3715
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DropdownComponentModule, decorators: [{
3716
- type: NgModule,
3717
- args: [{
3718
- declarations: [DropdownComponent],
3719
- imports: [
3720
- CommonModule,
3721
- MatFormFieldModule,
3722
- MatInputModule,
3723
- IconComponentModule,
3724
- FormsModule,
3725
- ReactiveFormsModule,
3726
- ButtonComponentModule,
3727
- MatSelectModule,
3728
- ],
3729
- exports: [DropdownComponent],
3730
- providers: [],
3731
- }]
3732
- }] });
3733
-
3734
- class SpinnerComponent {
3735
- }
3736
- SpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3737
- SpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SpinnerComponent, selector: "ui-spinner", ngImport: i0, template: "<svg class=\"spinner\" viewBox=\"0 0 50 50\">\n <circle class=\"path\" cx=\"25\" cy=\"25\" r=\"20\" fill=\"none\" stroke-width=\"5\"></circle>\n</svg>\n", styles: [".spinner{animation:rotate 2s linear infinite;z-index:999;position:fixed;top:50%;left:50%;margin:-25px 0 0 -25px;width:50px;height:50px}.spinner .path{stroke:#000;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}\n"] });
3738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponent, decorators: [{
3739
- type: Component,
3740
- args: [{ selector: 'ui-spinner', template: "<svg class=\"spinner\" viewBox=\"0 0 50 50\">\n <circle class=\"path\" cx=\"25\" cy=\"25\" r=\"20\" fill=\"none\" stroke-width=\"5\"></circle>\n</svg>\n", styles: [".spinner{animation:rotate 2s linear infinite;z-index:999;position:fixed;top:50%;left:50%;margin:-25px 0 0 -25px;width:50px;height:50px}.spinner .path{stroke:#000;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}\n"] }]
3741
- }] });
3742
-
3743
- class SpinnerComponentModule {
3744
- }
3745
- SpinnerComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3746
- SpinnerComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponentModule, declarations: [SpinnerComponent], exports: [SpinnerComponent] });
3747
- SpinnerComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponentModule });
3748
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SpinnerComponentModule, decorators: [{
3749
- type: NgModule,
3750
- args: [{
3751
- declarations: [SpinnerComponent],
3752
- exports: [SpinnerComponent],
3753
- }]
3754
- }] });
3755
-
3756
- const CONFIRM_DIALOG_i18n = {
3757
- confirmButtonText: 'YES',
3758
- cancelButtonText: 'Cancel',
3759
- title: 'Confirm',
3760
- };
3761
-
3762
- class ConfirmDialogComponent {
3763
- constructor(dialogRef, data) {
3764
- var _a, _b, _c;
3765
- this.dialogRef = dialogRef;
3766
- this.data = data;
3767
- this.confirmMessage = data.message;
3768
- this.confirmButtonText = (_a = data.confirmButtonText) !== null && _a !== void 0 ? _a : CONFIRM_DIALOG_i18n.confirmButtonText;
3769
- this.cancelButtonText = (_b = data.cancelButtonText) !== null && _b !== void 0 ? _b : CONFIRM_DIALOG_i18n.cancelButtonText;
3770
- this.title = (_c = data.title) !== null && _c !== void 0 ? _c : CONFIRM_DIALOG_i18n.title;
3771
- }
3772
- }
3773
- ConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponent, deps: [{ token: i1$4.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
3774
- ConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ConfirmDialogComponent, selector: "ui-confirm-dialog", ngImport: i0, template: "<ui-dialog\n [title]=\"title\"\n [primaryButtonLabel]=\"confirmButtonText\"\n [secondaryButtonLabel]=\"cancelButtonText\"\n (primaryButtonClickEvent)=\"dialogRef.close(true)\"\n (secondaryButtonClickEvent)=\"dialogRef.close(false)\"\n primaryButtonType=\"destructive\"\n secondaryButtonType=\"outlined\"\n [showCloseButton]=\"false\"\n>\n <div class=\"message\">{{ confirmMessage }}</div>\n</ui-dialog>\n", styles: ["::ng-deep .ui-dialog-wrapper{max-width:600px!important}\n"], dependencies: [{ kind: "component", type: DialogComponent, selector: "ui-dialog", inputs: ["title", "showCloseButton", "canCloseFn", "secondaryButtonLabel", "primaryButtonLabel", "secondaryButtonType", "primaryButtonType"], outputs: ["closeEvent", "secondaryButtonClickEvent", "primaryButtonClickEvent"] }] });
3775
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
3776
- type: Component,
3777
- args: [{ selector: 'ui-confirm-dialog', template: "<ui-dialog\n [title]=\"title\"\n [primaryButtonLabel]=\"confirmButtonText\"\n [secondaryButtonLabel]=\"cancelButtonText\"\n (primaryButtonClickEvent)=\"dialogRef.close(true)\"\n (secondaryButtonClickEvent)=\"dialogRef.close(false)\"\n primaryButtonType=\"destructive\"\n secondaryButtonType=\"outlined\"\n [showCloseButton]=\"false\"\n>\n <div class=\"message\">{{ confirmMessage }}</div>\n</ui-dialog>\n", styles: ["::ng-deep .ui-dialog-wrapper{max-width:600px!important}\n"] }]
3778
- }], ctorParameters: function () {
3779
- return [{ type: i1$4.MatDialogRef }, { type: undefined, decorators: [{
3780
- type: Inject,
3781
- args: [MAT_DIALOG_DATA]
3782
- }] }];
3783
- } });
3784
-
3785
- class ConfirmDialogComponentModule {
3786
- }
3787
- ConfirmDialogComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3788
- ConfirmDialogComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponentModule, declarations: [ConfirmDialogComponent], imports: [CommonModule, MatDialogModule, ButtonComponentModule, DialogComponentModule], exports: [ConfirmDialogComponent] });
3789
- ConfirmDialogComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponentModule, providers: [
3790
- { provide: MAT_DIALOG_DATA, useValue: {} },
3791
- { provide: MatDialogRef, useValue: {} },
3792
- ], imports: [CommonModule, MatDialogModule, ButtonComponentModule, DialogComponentModule] });
3793
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmDialogComponentModule, decorators: [{
3794
- type: NgModule,
3795
- args: [{
3796
- declarations: [ConfirmDialogComponent],
3797
- exports: [ConfirmDialogComponent],
3798
- providers: [
3799
- { provide: MAT_DIALOG_DATA, useValue: {} },
3800
- { provide: MatDialogRef, useValue: {} },
3801
- ],
3802
- imports: [CommonModule, MatDialogModule, ButtonComponentModule, DialogComponentModule],
3803
- }]
3804
- }] });
3805
-
3806
- /* eslint-disable no-underscore-dangle */
3807
- class DatepickerComponent {
3808
- constructor() {
3809
- this.class = 'ui-datepicker';
3810
- /**
3811
- * Form field label
3812
- *
3813
- * @type {string}
3814
- * @memberof DatepickerComponent
3815
- */
3816
- this.label = '';
3817
- /**
3818
- * Input placeholder
3819
- *
3820
- * @type {string}
3821
- * @memberof DatepickerComponent
3822
- */
3823
- this.placeholder = '';
3824
- /**
3825
- * Input id
3826
- *
3827
- * @type {string}
3828
- * @memberof DatepickerComponent
3829
- */
3830
- this.id = '';
3831
- /**
3832
- * Input is update only on blur
3833
- *
3834
- * @type {Boolean}
3835
- * @memberof DatepickerComponent
3836
- */
3837
- this.updateOnBlur = false;
3838
- /**
3839
- * @ignore
3840
- */
3841
- this.onChange = (_) => { };
3842
- /**
3843
- * @ignore
3844
- */
3845
- this.onTouch = () => { };
3846
- /**
3847
- * Event emitted when the value is change - when used outside of form
3848
- *
3849
- * @type {Date}
3850
- * @memberof DatepickerComponent
3851
- */
3852
- this.changed = new EventEmitter();
3853
- this.range = new FormGroup({
3854
- start: new FormControl(null),
3855
- end: new FormControl(null),
3856
- });
3857
- }
3858
- /**
3859
- * Input field errors
3860
- *
3861
- * @type {string}
3862
- * @memberof DatepickerComponent
3863
- */
3864
- set errors(errors) {
3865
- this._errors = errors;
3866
- this.errorsLength = this.setErrorsLength();
3867
- }
3868
- get hint() {
3869
- if (this.hintMessage === undefined) {
3870
- return this.isRange ? 'MM/DD/YYYY - MM/DD/YYYY' : 'MM/DD/YYYY';
3871
- }
3872
- return this.hintMessage;
3873
- }
3874
- ngOnChanges() {
3875
- if (this.isRange) {
3876
- this.setRange();
3877
- }
3878
- }
3879
- // Set errors length for validation
3880
- // Consider only those errors which which are not empty
3881
- setErrorsLength() {
3882
- if (!!this._errors) {
3883
- return this._errors.filter(err => !!err).length > 0 ? true : false;
3884
- }
3885
- return false;
3886
- }
3887
- onValueChange(value) {
3888
- this.writeValue(value);
3889
- this.errorsLength = this.setErrorsLength();
3890
- if (!this.updateOnBlur) {
3891
- this.onTouch();
3892
- }
3893
- this.onChange(value);
3894
- this.changed.emit(value);
3895
- }
3896
- writeValue(value) {
3897
- this.value = value;
3898
- if (this.isRange) {
3899
- this.setRange();
3900
- }
3901
- }
3902
- registerOnChange(fn) {
3903
- this.onChange = fn;
3904
- }
3905
- registerOnTouched(fn) {
3906
- this.onTouch = fn;
3907
- }
3908
- setDisabledState(isDisabled) {
3909
- this.disabled = isDisabled;
3910
- }
3911
- dateRangeChange(start, end) {
3912
- if (start && end) {
3913
- this.onValueChange(this.getRange(start, end));
3914
- }
3915
- }
3916
- setRange() {
3917
- var _a;
3918
- if (typeof this.value === 'string') {
3919
- const [start, end] = (_a = this.value) === null || _a === void 0 ? void 0 : _a.split('-');
3920
- if (start) {
3921
- this.range.controls.start.setValue(new Date(start));
3922
- }
3923
- if (end) {
3924
- this.range.controls.end.setValue(new Date(end));
3925
- }
3926
- }
3927
- }
3928
- getRange(start, end) {
3929
- return `${start}-${end}`;
3930
- }
3931
- }
3932
- DatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3933
- DatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DatepickerComponent, selector: "ui-datepicker", inputs: { label: "label", fieldName: "fieldName", placeholder: "placeholder", id: "id", value: "value", errors: "errors", isRange: "isRange", disabled: "disabled", required: "required", hintMessage: "hintMessage", updateOnBlur: "updateOnBlur" }, outputs: { changed: "changed" }, host: { properties: { "class": "this.class" } }, providers: [
3934
- {
3935
- provide: NG_VALUE_ACCESSOR,
3936
- useExisting: forwardRef(() => DatepickerComponent),
3937
- multi: true,
3938
- },
3939
- ], usesOnChanges: true, ngImport: i0, template: "<mat-form-field #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n matInput\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" placeholder=\"Start date\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" placeholder=\"End date\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n</mat-form-field>\n", styles: [".ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.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:4px;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}.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:#cb7b7a}.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:9px}.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:#cb7b7a}.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:#cb7b7a}.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:#cb7b7a}.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}.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}.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}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "directive", type: i1$3.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$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6$2.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i6$2.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: i6$2.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i6$2.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i6$2.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i6$2.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3940
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponent, decorators: [{
3941
- type: Component,
3942
- args: [{ selector: 'ui-datepicker', encapsulation: ViewEncapsulation.None, providers: [
3943
- {
3944
- provide: NG_VALUE_ACCESSOR,
3945
- useExisting: forwardRef(() => DatepickerComponent),
3946
- multi: true,
3947
- },
3948
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n matInput\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" placeholder=\"Start date\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" placeholder=\"End date\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n</mat-form-field>\n", styles: [".ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.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:4px;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}.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:#cb7b7a}.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:9px}.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:#cb7b7a}.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:#cb7b7a}.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:#cb7b7a}.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}.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}.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}\n"] }]
3949
- }], propDecorators: { class: [{
3950
- type: HostBinding
3951
- }], label: [{
3952
- type: Input
3953
- }], fieldName: [{
3954
- type: Input
3955
- }], placeholder: [{
3956
- type: Input
3957
- }], id: [{
3958
- type: Input
3959
- }], value: [{
3960
- type: Input
3961
- }], errors: [{
3962
- type: Input
3963
- }], isRange: [{
3964
- type: Input
3965
- }], disabled: [{
3966
- type: Input
3967
- }], required: [{
3968
- type: Input
3969
- }], hintMessage: [{
3970
- type: Input
3971
- }], updateOnBlur: [{
3972
- type: Input
3973
- }], changed: [{
3974
- type: Output
3975
- }] } });
3976
-
3977
- class DatepickerComponentModule {
3978
- }
3979
- DatepickerComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3980
- DatepickerComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponentModule, declarations: [DatepickerComponent], imports: [CommonModule,
3981
- MatFormFieldModule,
3982
- MatInputModule,
3983
- IconComponentModule,
3984
- FormsModule,
3985
- ReactiveFormsModule,
3986
- MatDatepickerModule,
3987
- MatNativeDateModule], exports: [DatepickerComponent] });
3988
- DatepickerComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponentModule, imports: [CommonModule,
3989
- MatFormFieldModule,
3990
- MatInputModule,
3991
- IconComponentModule,
3992
- FormsModule,
3993
- ReactiveFormsModule,
3994
- MatDatepickerModule,
3995
- MatNativeDateModule] });
3996
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerComponentModule, decorators: [{
3997
- type: NgModule,
3998
- args: [{
3999
- declarations: [DatepickerComponent],
4000
- imports: [
4001
- CommonModule,
4002
- MatFormFieldModule,
4003
- MatInputModule,
4004
- IconComponentModule,
4005
- FormsModule,
4006
- ReactiveFormsModule,
4007
- MatDatepickerModule,
4008
- MatNativeDateModule,
4009
- ],
4010
- providers: [],
4011
- exports: [DatepickerComponent],
4012
- }]
4013
- }] });
4014
-
4015
- class RatingComponent {
4016
- set length(length) {
4017
- this.items = Array(Math.max(length, this.MIN_LENGTH))
4018
- .fill(0)
4019
- .map((x, i) => i);
4020
- }
4021
- constructor() {
4022
- this.MIN_LENGTH = 0;
4023
- this.DEFAULT_LENGTH = 5;
4024
- this.items = [];
4025
- // todo support stars rating
4026
- this.theme = 'block';
4027
- this.barWidth = 35;
4028
- this.valueChange = new EventEmitter();
4029
- this.length = this.DEFAULT_LENGTH;
4030
- }
4031
- select(index) {
4032
- this.value = index + 1;
4033
- this.valueChange.emit(this.value);
4034
- }
4035
- onHover(index) {
4036
- this.hoverIndex = index + 1;
4037
- }
4038
- }
4039
- RatingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RatingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4040
- RatingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RatingComponent, selector: "ui-rating", inputs: { value: "value", theme: "theme", barWidth: "barWidth", length: "length" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"rating\" (mouseleave)=\"onHover(-1)\">\n <div class=\"rating-item\" *ngFor=\"let item of items\" (click)=\"select(item)\" (mouseenter)=\"onHover(item)\"\n [ngClass]=\"{ 'rating-item-selected': item < value, 'rating-item-hover': item < hoverIndex }\" [ngStyle]=\"{'width.px': barWidth}\">\n </div>\n</div>\n", styles: [".rating{display:flex;align-content:center;justify-content:flex-start;align-items:center}.rating-item{width:35px;height:16px;border:1px solid #E0E0E0;border-left:0;cursor:pointer}.rating-item-hover{border:0;background-color:#b5ddd5}.rating-item-hover:not(:first-child){border-left:1px solid #ffffff}.rating-item:first-child{border-radius:4px 0 0 4px}.rating-item:first-child:not(.rating-item-selected):not(.rating-item-hover){border-left:1px solid #E0E0E0}.rating-item:last-child{border-radius:0 4px 4px 0}.rating-item:first-child:last-child{border-radius:4px}.rating-item-selected{border:0;background-color:#46a997}.rating-item-selected:not(:first-child){border-left:1px solid #ffffff}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4041
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RatingComponent, decorators: [{
4042
- type: Component,
4043
- args: [{ selector: 'ui-rating', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"rating\" (mouseleave)=\"onHover(-1)\">\n <div class=\"rating-item\" *ngFor=\"let item of items\" (click)=\"select(item)\" (mouseenter)=\"onHover(item)\"\n [ngClass]=\"{ 'rating-item-selected': item < value, 'rating-item-hover': item < hoverIndex }\" [ngStyle]=\"{'width.px': barWidth}\">\n </div>\n</div>\n", styles: [".rating{display:flex;align-content:center;justify-content:flex-start;align-items:center}.rating-item{width:35px;height:16px;border:1px solid #E0E0E0;border-left:0;cursor:pointer}.rating-item-hover{border:0;background-color:#b5ddd5}.rating-item-hover:not(:first-child){border-left:1px solid #ffffff}.rating-item:first-child{border-radius:4px 0 0 4px}.rating-item:first-child:not(.rating-item-selected):not(.rating-item-hover){border-left:1px solid #E0E0E0}.rating-item:last-child{border-radius:0 4px 4px 0}.rating-item:first-child:last-child{border-radius:4px}.rating-item-selected{border:0;background-color:#46a997}.rating-item-selected:not(:first-child){border-left:1px solid #ffffff}\n"] }]
4044
- }], ctorParameters: function () { return []; }, propDecorators: { value: [{
4045
- type: Input
4046
- }], theme: [{
4047
- type: Input
4048
- }], barWidth: [{
4049
- type: Input
4050
- }], length: [{
4051
- type: Input
4052
- }], valueChange: [{
4053
- type: Output
4054
- }] } });
4055
-
4056
- class RatingComponentModule {
4057
- }
4058
- RatingComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RatingComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4059
- RatingComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: RatingComponentModule, declarations: [RatingComponent], imports: [CommonModule], exports: [RatingComponent] });
4060
- RatingComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RatingComponentModule, imports: [CommonModule] });
4061
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RatingComponentModule, decorators: [{
4062
- type: NgModule,
4063
- args: [{
4064
- declarations: [RatingComponent],
4065
- imports: [CommonModule],
4066
- exports: [RatingComponent],
4067
- }]
4068
- }] });
4069
-
4070
- class ToggleComponent {
4071
- constructor() {
4072
- /**
4073
- * The `selected` property determines the current state of the toggle switch.
4074
- *
4075
- * @type {boolean}
4076
- * @default false
4077
- * @memberof ToggleComponent
4078
- */
4079
- this.selected = false;
4080
- /**
4081
- * The `disabled` property determines whether the toggle switch is disabled.
4082
- *
4083
- * @type {boolean}
4084
- * @default false
4085
- * @memberof ToggleComponent
4086
- */
4087
- this.disabled = false;
4088
- /**
4089
- * The `toggle` event is triggered when the state of the toggle switch changes. It returns the new state.
4090
- *
4091
- * @type {event}
4092
- * @memberof ToggleComponent
4093
- */
4094
- this.toggle = new EventEmitter();
4095
- this.onChange = () => { };
4096
- this.onTouched = () => { };
4097
- }
4098
- onToggle() {
4099
- if (!this.disabled) {
4100
- this.selected = !this.selected;
4101
- this.toggle.emit(this.selected);
4102
- }
4103
- }
4104
- writeValue(state) {
4105
- if (state) {
4106
- this.selected = state;
4107
- }
4108
- }
4109
- registerOnChange(fn) {
4110
- this.onChange = fn;
4111
- }
4112
- registerOnTouched(fn) {
4113
- this.onTouched = fn;
4114
- }
4115
- setDisabledState(isDisabled) {
4116
- this.disabled = isDisabled;
4117
- }
4118
- }
4119
- ToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4120
- ToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ToggleComponent, selector: "ui-toggle", inputs: { selected: "selected", disabled: "disabled" }, outputs: { toggle: "toggle" }, providers: [
4121
- {
4122
- provide: NG_VALUE_ACCESSOR,
4123
- useExisting: forwardRef(() => ToggleComponent),
4124
- multi: true,
4125
- },
4126
- ], ngImport: i0, template: "<div\n [tabIndex]=\"0\"\n class=\"toggle-container\"\n [ngClass]=\"{ 'active': selected, 'disabled': disabled }\"\n (click)=\"onToggle()\"\n>\n <div class=\"knob\"></div>\n</div>\n", styles: [":host .toggle-container{width:32px;height:16px;border-radius:16px;background:#888888;display:flex;align-items:center;padding:0 2px;cursor:pointer}:host .toggle-container:focus{outline:1px dashed #888888;outline-offset:4px}:host .toggle-container .knob{height:12px;width:12px;border-radius:16px;background:#F6F6F6;transition:transform .3s}:host .toggle-container.disabled{background:#E0E0E0;pointer-events:none}:host .toggle-container.disabled:focus{outline:none}:host .toggle-container.active{background:#46A997}:host .toggle-container.active.disabled{opacity:.5}:host .toggle-container.active .knob{transform:translate(16px)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
4127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponent, decorators: [{
4128
- type: Component,
4129
- args: [{ selector: 'ui-toggle', providers: [
4130
- {
4131
- provide: NG_VALUE_ACCESSOR,
4132
- useExisting: forwardRef(() => ToggleComponent),
4133
- multi: true,
4134
- },
4135
- ], template: "<div\n [tabIndex]=\"0\"\n class=\"toggle-container\"\n [ngClass]=\"{ 'active': selected, 'disabled': disabled }\"\n (click)=\"onToggle()\"\n>\n <div class=\"knob\"></div>\n</div>\n", styles: [":host .toggle-container{width:32px;height:16px;border-radius:16px;background:#888888;display:flex;align-items:center;padding:0 2px;cursor:pointer}:host .toggle-container:focus{outline:1px dashed #888888;outline-offset:4px}:host .toggle-container .knob{height:12px;width:12px;border-radius:16px;background:#F6F6F6;transition:transform .3s}:host .toggle-container.disabled{background:#E0E0E0;pointer-events:none}:host .toggle-container.disabled:focus{outline:none}:host .toggle-container.active{background:#46A997}:host .toggle-container.active.disabled{opacity:.5}:host .toggle-container.active .knob{transform:translate(16px)}\n"] }]
4136
- }], propDecorators: { selected: [{
4137
- type: Input
4138
- }], disabled: [{
4139
- type: Input
4140
- }], toggle: [{
4141
- type: Output
4142
- }] } });
4143
-
4144
- class ToggleComponentModule {
4145
- }
4146
- ToggleComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4147
- ToggleComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponentModule, declarations: [ToggleComponent], imports: [CommonModule] });
4148
- ToggleComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponentModule, imports: [CommonModule] });
4149
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToggleComponentModule, decorators: [{
4150
- type: NgModule,
4151
- args: [{
4152
- declarations: [ToggleComponent],
4153
- imports: [CommonModule],
4154
- }]
4155
- }] });
4156
-
4157
- var AvatarSize;
4158
- (function (AvatarSize) {
4159
- AvatarSize["SMALL"] = "small";
4160
- AvatarSize["MEDIUM"] = "medium";
4161
- AvatarSize["LARGE"] = "large";
4162
- })(AvatarSize || (AvatarSize = {}));
4163
- const iconSize = {
4164
- small: '16',
4165
- medium: '24',
4166
- large: '80',
4167
- };
4168
-
4169
- class NameInitialsPipe {
4170
- transform(value) {
4171
- var _a, _b, _c, _d;
4172
- const initials = value.split(' ').filter(Boolean);
4173
- if (initials.length > 1) {
4174
- return initials.map(initial => initial[0].toUpperCase()).join('');
4175
- }
4176
- else {
4177
- const firstLetters = value.substring(0, 2);
4178
- return `${(_b = (_a = firstLetters[0]) === null || _a === void 0 ? void 0 : _a.toUpperCase()) !== null && _b !== void 0 ? _b : ''}${(_d = (_c = firstLetters[1]) === null || _c === void 0 ? void 0 : _c.toLowerCase()) !== null && _d !== void 0 ? _d : ''}`;
4179
- }
4180
- }
4181
- }
4182
- NameInitialsPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NameInitialsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4183
- NameInitialsPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: NameInitialsPipe, name: "nameInitials" });
4184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NameInitialsPipe, decorators: [{
4185
- type: Pipe,
4186
- args: [{
4187
- name: 'nameInitials',
4188
- }]
4189
- }] });
4190
-
4191
- class AvatarComponent {
4192
- constructor() {
4193
- /**
4194
- * Input property for specifying the size of the avatar.
4195
- * @type {AvatarSize}
4196
- * @default AvatarSize.SMALL
4197
- * @memberof AvatarComponent
4198
- */
4199
- this.size = AvatarSize.SMALL;
4200
- /**
4201
- * Input property for specifying the URL of the image to display in the avatar.
4202
- * @type {string}
4203
- * @memberof AvatarComponent
4204
- */
4205
- this.imageUrl = '';
4206
- /**
4207
- * Input property for specifying the initials to display in the avatar.
4208
- * @type {string}
4209
- * @memberof AvatarComponent
4210
- */
4211
- this.name = '';
4212
- /**
4213
- * Input property for specifying the tooltip text for edit.
4214
- * @type {string}
4215
- * @memberof AvatarComponent
4216
- */
4217
- this.tooltipText = '';
4218
- /**
4219
- * Input property that makes avatar clickable.
4220
- * @type {boolean}
4221
- * @memberof AvatarComponent
4222
- */
4223
- this.allowClick = false;
4224
- /**
4225
- * Event emitted when the avatar is clicked.
4226
- * @type {void}
4227
- * @memberof AvatarComponent
4228
- */
4229
- this.avatarClick = new EventEmitter();
4230
- this.iconSize = iconSize;
4231
- this.avatarSize = AvatarSize;
4232
- }
4233
- onAvatarClick() {
4234
- this.avatarClick.emit();
4235
- }
4236
- get clickAllowance() {
4237
- return this.allowClick ? 'clickable' : 'non-clickable';
4238
- }
4239
- }
4240
- AvatarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4241
- AvatarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: AvatarComponent, selector: "ui-avatar", inputs: { size: "size", imageUrl: "imageUrl", name: "name", tooltipText: "tooltipText", allowClick: "allowClick" }, outputs: { avatarClick: "avatarClick" }, ngImport: i0, template: "<div\n class=\"avatar-container\"\n [attr.type]=\"!imageUrl && !name ? 'icon' : 'initials'\"\n [ngClass]=\"[size, clickAllowance]\"\n (click)=\"onAvatarClick()\"\n>\n <span *ngIf=\"name && !imageUrl\">\n {{ name | nameInitials }}\n </span>\n <img *ngIf=\"imageUrl\" [attr.src]=\"imageUrl\" [alt]=\"'profile-image'\">\n <ui-icon color=\"dark\" [size]=\"iconSize[size]\" *ngIf=\"!imageUrl && !name\" [name]=\"'User-profile'\"></ui-icon>\n</div>\n\n", styles: [":host .clickable{cursor:pointer}:host .non-clickable{pointer-events:none}:host .avatar-container{font-family:Open Sans,sans-serif;font-weight:400;display:flex;justify-content:center;align-items:center;border-radius:100%;background:#CBD6CB;position:relative;-webkit-user-select:none;user-select:none}:host .avatar-container[type=icon]{background:#E0E0E0}:host .avatar-container img{width:100%;height:100%;object-fit:cover;border-radius:100%}:host .avatar-container.small{width:24px;height:24px;font-size:10px}:host .avatar-container.medium{width:48px;height:48px;font-size:20px}:host .avatar-container.large{width:120px;height:120px;font-size:50px;letter-spacing:-2}:host .avatar-container .edit-avatar{display:flex;justify-content:center;align-items:center;position:absolute;right:0;bottom:0;background:#F6F6F6;width:32px;height:32px;border-radius:100%;cursor:pointer;-webkit-backdrop-filter:drop-shadow(0px 8px 24px 4px #000000,8%);backdrop-filter:drop-shadow(0px 8px 24px 4px #000000,8%)}:host .avatar-container .edit-avatar:hover{background:#EDEDED}:host .avatar-container .edit-avatar:active{background:#E0E0E0}:host .avatar-container .edit-avatar:focus{outline:1px dashed #888888;outline-offset:4px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color"] }, { kind: "pipe", type: NameInitialsPipe, name: "nameInitials" }] });
4242
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponent, decorators: [{
4243
- type: Component,
4244
- args: [{ selector: 'ui-avatar', template: "<div\n class=\"avatar-container\"\n [attr.type]=\"!imageUrl && !name ? 'icon' : 'initials'\"\n [ngClass]=\"[size, clickAllowance]\"\n (click)=\"onAvatarClick()\"\n>\n <span *ngIf=\"name && !imageUrl\">\n {{ name | nameInitials }}\n </span>\n <img *ngIf=\"imageUrl\" [attr.src]=\"imageUrl\" [alt]=\"'profile-image'\">\n <ui-icon color=\"dark\" [size]=\"iconSize[size]\" *ngIf=\"!imageUrl && !name\" [name]=\"'User-profile'\"></ui-icon>\n</div>\n\n", styles: [":host .clickable{cursor:pointer}:host .non-clickable{pointer-events:none}:host .avatar-container{font-family:Open Sans,sans-serif;font-weight:400;display:flex;justify-content:center;align-items:center;border-radius:100%;background:#CBD6CB;position:relative;-webkit-user-select:none;user-select:none}:host .avatar-container[type=icon]{background:#E0E0E0}:host .avatar-container img{width:100%;height:100%;object-fit:cover;border-radius:100%}:host .avatar-container.small{width:24px;height:24px;font-size:10px}:host .avatar-container.medium{width:48px;height:48px;font-size:20px}:host .avatar-container.large{width:120px;height:120px;font-size:50px;letter-spacing:-2}:host .avatar-container .edit-avatar{display:flex;justify-content:center;align-items:center;position:absolute;right:0;bottom:0;background:#F6F6F6;width:32px;height:32px;border-radius:100%;cursor:pointer;-webkit-backdrop-filter:drop-shadow(0px 8px 24px 4px #000000,8%);backdrop-filter:drop-shadow(0px 8px 24px 4px #000000,8%)}:host .avatar-container .edit-avatar:hover{background:#EDEDED}:host .avatar-container .edit-avatar:active{background:#E0E0E0}:host .avatar-container .edit-avatar:focus{outline:1px dashed #888888;outline-offset:4px}\n"] }]
4245
- }], propDecorators: { size: [{
4246
- type: Input
4247
- }], imageUrl: [{
4248
- type: Input
4249
- }], name: [{
4250
- type: Input
4251
- }], tooltipText: [{
4252
- type: Input
4253
- }], allowClick: [{
4254
- type: Input
4255
- }], avatarClick: [{
4256
- type: Output
4257
- }] } });
4258
-
4259
- class AvatarComponentModule {
4260
- }
4261
- AvatarComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4262
- AvatarComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponentModule, declarations: [AvatarComponent, NameInitialsPipe], imports: [CommonModule, IconComponentModule, MatTooltipModule], exports: [AvatarComponent] });
4263
- AvatarComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponentModule, imports: [CommonModule, IconComponentModule, MatTooltipModule] });
4264
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AvatarComponentModule, decorators: [{
4265
- type: NgModule,
4266
- args: [{
4267
- declarations: [AvatarComponent, NameInitialsPipe],
4268
- imports: [CommonModule, IconComponentModule, MatTooltipModule],
4269
- exports: [AvatarComponent],
4270
- }]
4271
- }] });
4272
-
4273
- /* eslint-disable */
4274
- /* Components */
4275
- // Alert Banner
4276
-
4277
- /**
4278
- * Generated bundle index. Do not edit.
4279
- */
4280
-
4281
- export { AlertBannerComponent, AlertBannerComponentModule, AvatarComponent, AvatarComponentModule, BannerActionComponent, BannerActionComponentModule, ButtonComponent, ButtonComponentModule, CardComponent, CardComponentModule, CheckboxComponent, CheckboxComponentModule, ColumnAlignmentEnum, ColumnTypeEnum, ConfirmDialogComponent, ConfirmDialogComponentModule, CreateAccountComponent, CreateAccountComponentModule, CreatePasswordComponent, CreatePasswordComponentModule, DataPropertyGetterPipe, DatepickerComponent, DatepickerComponentModule, DialogComponent, DialogComponentModule, DialogService, DropdownComponent, DropdownComponentModule, ElevationShadowComponent, ElevationShadowComponentModule, ElevationType, FieldComponent, FieldComponentModule, FileUploadComponent, FileUploadComponentModule, ForgotPasswordComponent, ForgotPasswordComponentModule, IconComponent, IconComponentModule, IconLabelComponent, IconLabelComponentModule, LabelComponent, LabelComponentModule, LabelSizeEnum, LoginComponent, LoginComponentModule, LogoComponent, LogoComponentModule, LogoPathEnum, LogoTypeEnum, NavbarComponent, NavbarComponentModule, NavigationComponent, NavigationComponentModule, PaginatorComponent, PaginatorComponentModule, ProgressBarComponent, ProgressBarComponentModule, RadioButtonComponent, RadioButtonComponentModule, RatingComponent, RatingComponentModule, SnackbarComponent, SnackbarComponentModule, SnackbarService, SpinnerComponent, SpinnerComponentModule, TableComponent, TableComponentModule, TagComponent, TagComponentModule, ToggleComponent, ToggleComponentModule, TooltipComponent, TooltipComponentModule, TooltipPositionType, preloadLang };
4282
- //# sourceMappingURL=testgorilla-tgo-ui.mjs.map