desy-angular 3.0.0 → 5.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/README.md +3 -3
  2. package/bundles/desy-angular.umd.js +1740 -776
  3. package/bundles/desy-angular.umd.js.map +1 -1
  4. package/bundles/desy-angular.umd.min.js +2 -2
  5. package/bundles/desy-angular.umd.min.js.map +1 -1
  6. package/desy-angular.d.ts +28 -24
  7. package/desy-angular.metadata.json +1 -1
  8. package/esm2015/desy-angular.js +29 -25
  9. package/esm2015/lib/desy-angular.module.js +1 -3
  10. package/esm2015/lib/desy-buttons/components/button/button.component.js +9 -16
  11. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +8 -3
  12. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +70 -70
  13. package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +6 -15
  14. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +67 -55
  15. package/esm2015/lib/desy-buttons/components/pill/pill.component.js +5 -3
  16. package/esm2015/lib/desy-commons/interfaces/title-data.js +1 -1
  17. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +2 -2
  18. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +36 -2
  19. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +2 -2
  20. package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +46 -0
  21. package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -0
  22. package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -0
  23. package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +46 -0
  24. package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +44 -0
  25. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +131 -25
  26. package/esm2015/lib/desy-forms/components/input/input.component.js +2 -3
  27. package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -0
  28. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +46 -0
  29. package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -0
  30. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +42 -0
  31. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +115 -21
  32. package/esm2015/lib/desy-forms/components/radios/radios.component.js +2 -2
  33. package/esm2015/lib/desy-forms/components/select/option/option.component.js +7 -7
  34. package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -0
  35. package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -0
  36. package/esm2015/lib/desy-forms/components/select/select.component.js +19 -6
  37. package/esm2015/lib/desy-forms/desy-forms.module.js +31 -1
  38. package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +1 -1
  39. package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +1 -1
  40. package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +1 -1
  41. package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -0
  42. package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +1 -1
  43. package/esm2015/lib/desy-forms/interfaces/select-item-data.js +1 -1
  44. package/esm2015/lib/desy-modals/components/modal/modal.component.js +3 -3
  45. package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +2 -2
  46. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -0
  47. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -0
  48. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -0
  49. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -0
  50. package/esm2015/lib/desy-nav/components/footer/footer.component.js +31 -4
  51. package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +26 -36
  52. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -0
  53. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +15 -4
  54. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +25 -0
  55. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -0
  56. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +76 -13
  57. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +26 -36
  58. package/esm2015/lib/desy-nav/components/header/header.component.js +39 -4
  59. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +2 -2
  60. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -0
  61. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -0
  62. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -0
  63. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +35 -23
  64. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +3 -3
  65. package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +24 -5
  66. package/esm2015/lib/desy-nav/desy-nav.module.js +37 -4
  67. package/esm2015/lib/desy-nav/interfaces/footer-data.js +1 -1
  68. package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +1 -1
  69. package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +1 -1
  70. package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +1 -1
  71. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +2 -2
  72. package/esm2015/lib/desy-tables/components/table/table.component.js +3 -2
  73. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +5 -3
  74. package/esm2015/lib/desy-tables/interfaces/index.js +2 -1
  75. package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -0
  76. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +2 -2
  77. package/esm2015/lib/desy-views/components/alert/alert.component.js +28 -23
  78. package/esm2015/lib/desy-views/components/item/item.component.js +11 -2
  79. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +2 -2
  80. package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -0
  81. package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -0
  82. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +57 -36
  83. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +1 -1
  84. package/esm2015/lib/desy-views/desy-views.module.js +7 -1
  85. package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +1 -1
  86. package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +1 -1
  87. package/esm2015/public-api.js +20 -1
  88. package/fesm2015/desy-angular.js +1533 -677
  89. package/fesm2015/desy-angular.js.map +1 -1
  90. package/lib/desy-buttons/components/button/button.component.d.ts +6 -6
  91. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -0
  92. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +4 -7
  93. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +2 -6
  94. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +1 -2
  95. package/lib/desy-buttons/components/pill/pill.component.d.ts +1 -0
  96. package/lib/desy-commons/interfaces/title-data.d.ts +2 -1
  97. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +5 -0
  98. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +22 -0
  99. package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -0
  100. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -0
  101. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +22 -0
  102. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +19 -0
  103. package/lib/desy-forms/components/date-input/date-input.component.d.ts +21 -4
  104. package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -0
  105. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -0
  106. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -0
  107. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -0
  108. package/lib/desy-forms/components/input-group/input-group.component.d.ts +24 -6
  109. package/lib/desy-forms/components/select/option/option.component.d.ts +6 -7
  110. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -0
  111. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -0
  112. package/lib/desy-forms/components/select/select.component.d.ts +6 -3
  113. package/lib/desy-forms/interfaces/fieldset-data.d.ts +1 -0
  114. package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +1 -0
  115. package/lib/desy-forms/interfaces/item-date-input-data.d.ts +2 -0
  116. package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -0
  117. package/lib/desy-forms/interfaces/item-input-group-data.d.ts +1 -2
  118. package/lib/desy-forms/interfaces/select-item-data.d.ts +2 -1
  119. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -0
  120. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -0
  121. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -0
  122. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -0
  123. package/lib/desy-nav/components/footer/footer.component.d.ts +14 -2
  124. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +10 -6
  125. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -0
  126. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +6 -1
  127. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +6 -0
  128. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
  129. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +30 -8
  130. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +11 -8
  131. package/lib/desy-nav/components/header/header.component.d.ts +12 -0
  132. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -0
  133. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -0
  134. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -0
  135. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +11 -7
  136. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +9 -2
  137. package/lib/desy-nav/interfaces/footer-data.d.ts +7 -7
  138. package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +5 -1
  139. package/lib/desy-nav/interfaces/header-subnav-data.d.ts +6 -1
  140. package/lib/desy-tables/components/table/table.component.d.ts +2 -1
  141. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +6 -4
  142. package/lib/desy-tables/interfaces/index.d.ts +1 -0
  143. package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -0
  144. package/lib/desy-views/components/alert/alert.component.d.ts +6 -4
  145. package/lib/desy-views/components/item/item.component.d.ts +5 -2
  146. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -0
  147. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -0
  148. package/lib/desy-views/components/tabs/tabs.component.d.ts +14 -3
  149. package/lib/desy-views/interfaces/tabs-items-data.d.ts +5 -5
  150. package/lib/desy-views/interfaces/tabs-panel-data.d.ts +4 -4
  151. package/package.json +2 -2
  152. package/public-api.d.ts +19 -0
  153. package/esm2015/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.js +0 -58
  154. package/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.d.ts +0 -18
@@ -1,20 +1,30 @@
1
- import { Component, forwardRef, Input, Optional } from '@angular/core';
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Optional, Output, ViewChild } from '@angular/core';
2
3
  import { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';
3
4
  import { FormFieldComponent } from '../form-field/form-field.component';
5
+ import { LegendComponent } from '../fieldset/legend/legend.component';
6
+ import { FieldsetComponent } from '../fieldset/fieldset.component';
7
+ import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
8
+ import { DateInputDayComponent } from './date-input-day/date-input-day.component';
9
+ import { DateInputMonthComponent } from './date-input-month/date-input-month.component';
10
+ import { DateInputYearComponent } from './date-input-year/date-input-year.component';
11
+ import { MakeHtmlListPipe } from '../../../shared/pipes/make-html-list.pipe';
12
+ import { DesyOnInputChange } from '../../../shared/decorators/desy-on-input-change.decorator';
13
+ import { DateInputDividerComponent } from './date-input-divider/date-input-divider.component';
14
+ import { StringUtils } from '../../../shared/utils/string-utils';
15
+ import { DateInputItemComponent } from './date-input-item/date-input-item.component';
4
16
  export class DateInputComponent extends FormFieldComponent {
5
17
  constructor(controlContainer) {
6
18
  super();
7
19
  this.controlContainer = controlContainer;
8
- }
9
- ngOnInit() {
10
- this.initDefaultItems();
11
- this.checkRequired();
12
- this.onExternalChange();
20
+ this.itemsChange = new EventEmitter();
21
+ this.contentInit = false;
13
22
  }
14
23
  ngOnChanges() {
15
- this.initDefaultItems();
16
24
  this.checkRequired();
17
- this.onExternalChange();
25
+ }
26
+ ngAfterContentInit() {
27
+ this.contentInit = true;
18
28
  }
19
29
  initDefaultItems() {
20
30
  if (!this.items) {
@@ -41,39 +51,70 @@ export class DateInputComponent extends FormFieldComponent {
41
51
  if (!this.id) {
42
52
  throw Error('id is required');
43
53
  }
44
- if (this.items) {
45
- for (const item of this.items) {
46
- if (!item.name) {
47
- throw Error('item name is required');
48
- }
49
- }
50
- }
51
54
  }
52
55
  writeValue(value) {
53
56
  this.value = value;
54
57
  if (this.value) {
55
- this.items.forEach(item => item.value = this.value[this.getItemName(item)]);
58
+ const items = this.getItems();
59
+ items.forEach(item => item.value = this.value[this.getItemName(item)]);
60
+ if (this.items) {
61
+ this.itemsChange.emit(this.items);
62
+ }
56
63
  }
57
64
  this.onChange(value);
58
65
  }
66
+ overrideFieldsetParams(fieldset) {
67
+ fieldset.caller = this.innerHtml;
68
+ fieldset.errorId = this.getErrorId();
69
+ fieldset.describedBy = new MakeHtmlListPipe().transform([this.getHintId(), this.getErrorId()], null);
70
+ fieldset.role = 'group';
71
+ fieldset.detectChanges();
72
+ }
59
73
  onExternalChange() {
74
+ if (!this.contentInit) {
75
+ return;
76
+ }
60
77
  if (!this.value) {
61
78
  this.value = {};
62
79
  }
63
- this.items.forEach(item => this.value[this.getItemName(item)] = item.value);
64
- this.onChange(this.value);
80
+ const items = this.getItems();
81
+ items.forEach(item => this.value[this.getItemName(item)] = item.value);
82
+ const newVal = {};
83
+ Object.assign(newVal, this.value);
84
+ this.onChange(newVal);
65
85
  }
66
- onInternalChange(itemName, itemValue) {
86
+ onInternalChange(item, itemValue) {
87
+ const itemName = this.getItemName(item);
67
88
  if (!this.value) {
68
89
  this.value = {};
69
90
  }
70
- this.value[itemName] = itemValue ? +itemValue : undefined;
71
- this.onChange(this.value);
91
+ if (this.value[itemName] !== itemValue) {
92
+ this.value[itemName] = itemValue ? +itemValue : undefined;
93
+ const newVal = {};
94
+ Object.assign(newVal, this.value);
95
+ this.onChange(newVal);
96
+ if (item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent) {
97
+ item.valueChange.emit(itemValue);
98
+ }
99
+ if (this.items) {
100
+ item.value = itemValue;
101
+ this.itemsChange.emit(this.items);
102
+ }
103
+ }
72
104
  }
73
105
  hasFieldset() {
74
- return !!(this.legendRef || this.fieldsetData
106
+ return !!(this.hasFieldsetComponent() || this.hasLegendComponent() || this.legendRef || this.fieldsetData
75
107
  || (this.legendData && (this.legendData.text || this.legendData.html)) || this.legendText);
76
108
  }
109
+ hasFieldsetComponent() {
110
+ return !!this.fieldsetComponent;
111
+ }
112
+ hasLegendComponent() {
113
+ return !!this.legendComponent;
114
+ }
115
+ hasErrorMessageComponent() {
116
+ return !!this.errorMessageComponent;
117
+ }
77
118
  getItemName(item) {
78
119
  return this.namePrefix ? this.namePrefix + '-' + item.name : item.name;
79
120
  }
@@ -89,11 +130,59 @@ export class DateInputComponent extends FormFieldComponent {
89
130
  }
90
131
  return labelData;
91
132
  }
133
+ getItemLabelRef(item) {
134
+ return item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent ?
135
+ item.labelRef : null;
136
+ }
137
+ getItems() {
138
+ let items;
139
+ if (this.dateInputItemComponents && this.dateInputItemComponents.length > 0) {
140
+ items = this.dateInputItemComponents.toArray();
141
+ }
142
+ else if (this.items) {
143
+ items = this.items;
144
+ }
145
+ else if (this.contentInit) {
146
+ items = DateInputComponent.defaultItems;
147
+ }
148
+ else {
149
+ items = [];
150
+ }
151
+ items.forEach(item => {
152
+ if (!item.name && !(item instanceof DateInputDividerComponent)) {
153
+ throw new Error('Item name is required');
154
+ }
155
+ });
156
+ return items;
157
+ }
158
+ getItemDividerTemplate(item) {
159
+ return item.divider instanceof DateInputDividerComponent ? item.divider.dividerContent : null;
160
+ }
161
+ getItemDividerHtml(item) {
162
+ return item.divider.html ? item.divider.html : `<p>${StringUtils.escapeHtml(item.divider.text)}</p>`;
163
+ }
92
164
  }
165
+ DateInputComponent.defaultItems = [
166
+ {
167
+ name: 'day',
168
+ classes: 'w-14',
169
+ maxlength: 2
170
+ },
171
+ {
172
+ name: 'month',
173
+ classes: 'w-14',
174
+ maxlength: 2
175
+ },
176
+ {
177
+ name: 'year',
178
+ classes: 'w-20',
179
+ maxlength: 4
180
+ }
181
+ ];
93
182
  DateInputComponent.decorators = [
94
183
  { type: Component, args: [{
95
184
  selector: 'desy-date-input',
96
- template: "<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n\r\n <!-- date-input -->\r\n <!-- Reactive forms -->\r\n <div *ngIf=\"controlContainer && !ngModelGroup\"\r\n [formGroup]=\"controlContainer.control\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of items; index as i\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"{text: item.label ? item.label : (item.name | titlecase)}\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Template-driven forms -->\r\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\r\n <div [ngModelGroup]=\"ngModelGroup\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of items; index as i\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item.name, $event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n <!-- With ngModel-->\r\n <div *ngIf=\"!controlContainer\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of items; index as i\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item.name, $event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n<!-- /date-input -->\r\n\r\n<div [class]=\"['c-form-group', formGroupClasses] | makeHtmlList\"\r\n [ngClass]=\"{'c-form-group--error' : (hasErrorsMessage() || formGroupClasses == 'c-form-group--error')}\">\r\n\r\n <desy-fieldset *ngIf=\"fieldsetData\"\r\n [classes]=\"fieldsetData.classes\"\r\n [id]=\"fieldsetData.id\"\r\n [legendData]=\"fieldsetData.legend\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"\r\n [ariaLabel]=\"fieldsetData.ariaLabel\"\r\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\r\n [ariaHidden]=\"fieldsetData.ariaHidden\"\r\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\r\n [ariaControls]=\"fieldsetData.ariaControls\"\r\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\r\n [ariaLive]=\"fieldsetData.ariaLive\"\r\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\r\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\r\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && legendRef\"\r\n [legendRef]=\"legendRef\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !legendRef && legendData\"\r\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !legendRef && !legendData && legendText\"\r\n [legendText]=\"legendText\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n\r\n <ng-container *ngIf=\"!hasFieldset()\">\r\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\r\n </ng-container>\r\n</div>\r\n",
185
+ template: "\r\n<ng-template #innerHtml>\r\n <ng-container *ngIf=\"hasHintComponent()\">\r\n <ng-content select=\"desy-hint\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!hasHintComponent()\">\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n </ng-container>\r\n\r\n\r\n <ng-container *ngIf=\"hasErrorMessageComponent()\">\r\n <ng-content select=\"desy-error-message\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!hasErrorMessageComponent()\">\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n </ng-container>\r\n\r\n <!-- With reactive forms -->\r\n <div *ngIf=\"controlContainer && !ngModelGroup\"\r\n [formGroup]=\"controlContainer.control\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Template-driven forms -->\r\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\r\n <div [ngModelGroup]=\"ngModelGroup\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n \r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n <!-- With ngModel-->\r\n <div *ngIf=\"!controlContainer\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n \r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n</ng-template>\r\n\r\n<div [class]=\"['c-form-group', formGroupClasses] | makeHtmlList\"\r\n [ngClass]=\"{'c-form-group--error' : (hasErrorsMessage() || formGroupClasses == 'c-form-group--error')}\">\r\n\r\n <ng-container *ngIf=\"hasFieldsetComponent()\">\r\n <ng-content select=\"desy-fieldset\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!hasFieldsetComponent()\">\r\n <desy-fieldset *ngIf=\"fieldsetData\"\r\n [classes]=\"fieldsetData.classes\"\r\n [id]=\"fieldsetData.id\"\r\n [legendData]=\"fieldsetData.legend\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"\r\n [ariaLabel]=\"fieldsetData.ariaLabel\"\r\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\r\n [ariaHidden]=\"fieldsetData.ariaHidden\"\r\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\r\n [ariaControls]=\"fieldsetData.ariaControls\"\r\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\r\n [ariaLive]=\"fieldsetData.ariaLive\"\r\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\r\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\r\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && hasLegendComponent()\"\r\n [legendRef]=\"legendTemplate\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\">\r\n <ng-template #legendTemplate>\r\n <ng-content select=\"desy-legend\"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && legendRef\"\r\n [legendRef]=\"legendRef\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && legendData\"\r\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText\"\r\n [legendText]=\"legendText\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!hasFieldset()\">\r\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\r\n </ng-container>\r\n</div>\r\n",
97
186
  providers: [
98
187
  {
99
188
  provide: NG_VALUE_ACCESSOR,
@@ -109,14 +198,31 @@ DateInputComponent.ctorParameters = () => [
109
198
  DateInputComponent.propDecorators = {
110
199
  ngModelGroup: [{ type: Input }],
111
200
  items: [{ type: Input }],
201
+ itemsChange: [{ type: Output }],
112
202
  namePrefix: [{ type: Input }],
113
203
  classes: [{ type: Input }],
114
204
  formGroupClasses: [{ type: Input }],
115
205
  errorMessage: [{ type: Input }],
116
206
  id: [{ type: Input }],
207
+ fieldsetComponent: [{ type: ContentChildren, args: [FieldsetComponent,] }],
208
+ legendComponent: [{ type: ContentChildren, args: [LegendComponent,] }],
209
+ dateInputItemComponents: [{ type: ContentChildren, args: [DateInputItemComponent,] }],
117
210
  fieldsetData: [{ type: Input }],
118
211
  legendRef: [{ type: Input }],
119
212
  legendData: [{ type: Input }],
120
- legendText: [{ type: Input }]
213
+ legendText: [{ type: Input }],
214
+ innerHtml: [{ type: ViewChild, args: ['innerHtml', { static: true },] }]
121
215
  };
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQWV4RSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsa0JBQXVCO0lBdUI3RCxZQUErQixnQkFBa0M7UUFDL0QsS0FBSyxFQUFFLENBQUM7UUFEcUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUVqRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHO2dCQUNYO29CQUNFLElBQUksRUFBRSxLQUFLO29CQUNYLE9BQU8sRUFBRSxNQUFNO29CQUNmLFNBQVMsRUFBRSxDQUFDO2lCQUNiO2dCQUNEO29CQUNFLElBQUksRUFB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LENBQUM7U0FDNUI7YUFBTTtZQUNMLFNBQVMsR0FBRztnQkFDVixJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7YUFDaEUsQ0FBQztTQUNIO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7O1lBaElGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQiwrbGJBQTBDO2dCQUMxQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzt3QkFDakQsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O1lBZlEsZ0JBQWdCLHVCQXVDVixRQUFROzs7MkJBckJwQixLQUFLO29CQUVMLEtBQUs7eUJBQ0wsS0FBSztzQkFDTCxLQUFLOytCQUNMLEtBQUs7MkJBQ0wsS0FBSztpQkFDTCxLQUFLOzJCQVNMLEtBQUs7d0JBQ0wsS0FBSzt5QkFDTCxLQUFLO3lCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3B0aW9uYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRzZXREYXRhLCBMZWdlbmREYXRhLCBJdGVtRGF0ZUlucHV0RGF0YSwgTGFiZWxEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1kYXRlLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVJbnB1dENvbXBvbmVudCBleHRlbmRzIEZvcm1GaWVsZENvbXBvbmVudDxhbnk+IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBuZ01vZGVsR3JvdXA6IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgaXRlbXM6IEl0ZW1EYXRlSW5wdXREYXRhW107XHJcbiAgQElucHV0KCkgbmFtZVByZWZpeDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBmb3JtR3JvdXBDbGFzc2VzOiBhbnk7XHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDIpIGluY2x1aXIgdGVtcGxhdGUgbGVnZW5kXHJcbiAgICogMykgaW5jbHVpciBsZWdlbmREYXRhIC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW5hIGxlZ2VuZGEgY29uIGxvcyBwYXJhbWV0cm9zIHBhc2Fkb3MgIChpbnRlcmZheiBleHB1ZXN0YSlcclxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgZmllbGRzZXREYXRhOiBGaWVsZHNldERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xyXG4gIEBJbnB1dCgpIGxlZ2VuZERhdGE6IExlZ2VuZERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kVGV4dDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbml0RGVmYXVsdEl0ZW1zKCk7XHJcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWQoKTtcclxuICAgIHRoaXMub25FeHRlcm5hbENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaXREZWZhdWx0SXRlbXMoKTtcclxuICAgIHRoaXMuY2hlY2tSZXF1aXJlZCgpO1xyXG4gICAgdGhpcy5vbkV4dGVybmFsQ2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuICBpbml0RGVmYXVsdEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLml0ZW1zKSB7XHJcbiAgICAgIHRoaXMuaXRlbXMgPSBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2TDrWEnLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMTQnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiAyXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBuYW1lOiAnbWVzJyxcclxuICAgICAgICAgIGNsYXNzZXM6ICd3LTE0JyxcclxuICAgICAgICAgIG1heGxlbmd0aDogMlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2HDsW8nLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMjAnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiA0XHJcbiAgICAgICAgfVxyXG4gICAgICBdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXF1aXJlZCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pZCkge1xyXG4gICAgICB0aHJvdyBFcnJvcignaWQgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgaWYgKCFpdGVtLm5hbWUpIHtcclxuICAgICAgICAgIHRocm93IEVycm9yKCdpdGVtIG5hbWUgaXMgcmVxdWlyZWQnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy5pdGVtcy5mb3JFYWNoKGl0ZW0gPT4gaXRlbS52YWx1ZSA9IHRoaXMudmFsdWVbdGhpcy5nZXRJdGVtTmFtZShpdGVtKV0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkV4dGVybmFsQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB7fTtcclxuICAgIH1cclxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaChpdGVtID0+IHRoaXMudmFsdWVbdGhpcy5nZXRJdGVtTmFtZShpdGVtKV0gPSBpdGVtLnZhbHVlKTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkludGVybmFsQ2hhbmdlKGl0ZW1OYW1lOiBzdHJpbmcsIGl0ZW1WYWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHt9O1xyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZVtpdGVtTmFtZV0gPSBpdGVtVmFsdWUgPyAraXRlbVZhbHVlIDogdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhXHJcbiAgICAgIHx8ICh0aGlzLmxlZ2VuZERhdGEgJiYgKHRoaXMubGVnZW5kRGF0YS50ZXh0IHx8IHRoaXMubGVnZW5kRGF0YS5odG1sKSkgfHwgdGhpcy5sZWdlbmRUZXh0KTtcclxuICB9XHJcblxyXG4gIGdldEl0ZW1OYW1lKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm5hbWVQcmVmaXggPyB0aGlzLm5hbWVQcmVmaXggKyAnLScgKyBpdGVtLm5hbWUgOiBpdGVtLm5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTGFiZWwoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBMYWJlbERhdGEge1xyXG4gICAgbGV0IGxhYmVsRGF0YTogTGFiZWxEYXRhO1xyXG4gICAgaWYgKGl0ZW0ubGFiZWxEYXRhICYmIChpdGVtLmxhYmVsRGF0YS50ZXh0IHx8IGl0ZW0ubGFiZWxEYXRhLmh0bWwpKSB7XHJcbiAgICAgIGxhYmVsRGF0YSA9IGl0ZW0ubGFiZWxEYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGFiZWxEYXRhID0ge1xyXG4gICAgICAgIHRleHQ6IGl0ZW0ubGFiZWxUZXh0ID8gaXRlbS5sYWJlbFRleHQgOiBpdGVtLm5hbWUudG9VcHBlckNhc2UoKVxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxhYmVsRGF0YTtcclxuICB9XHJcbn1cclxuIl19
216
+ __decorate([
217
+ DesyOnInputChange('onExternalChange')
218
+ ], DateInputComponent.prototype, "items", void 0);
219
+ __decorate([
220
+ DesyOnInputChange('onExternalChange')
221
+ ], DateInputComponent.prototype, "namePrefix", void 0);
222
+ __decorate([
223
+ DesyContentChild({ onSetCallbackName: 'overrideFieldsetParams' })
224
+ ], DateInputComponent.prototype, "fieldsetComponent", void 0);
225
+ __decorate([
226
+ DesyContentChild()
227
+ ], DateInputComponent.prototype, "legendComponent", void 0);
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsS0FBSyxFQUVMLFFBQVEsRUFBRSxNQUFNLEVBR2hCLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDNUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFN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SSxFQUFFOztBQTlCL0I7SUFEUixpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQztpREFDRjtBQUkzQjtJQURSLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO3NEQUNWO0FBT1E7SUFEbkMsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBQyxDQUFDOzZEQUNRO0FBR3ZDO0lBRGpDLGdCQUFnQixFQUFFOzJEQUNnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3B0aW9uYWwsIE91dHB1dCxcclxuICBRdWVyeUxpc3QsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRzZXREYXRhLCBMZWdlbmREYXRhLCBJdGVtRGF0ZUlucHV0RGF0YSwgTGFiZWxEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRzZXRDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHNldC9maWVsZHNldC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XHJcbmltcG9ydCB7IERhdGVJbnB1dERheUNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS1pbnB1dC1kYXkvZGF0ZS1pbnB1dC1kYXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0ZUlucHV0TW9udGhDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtaW5wdXQtbW9udGgvZGF0ZS1pbnB1dC1tb250aC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXRlSW5wdXRZZWFyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LXllYXIvZGF0ZS1pbnB1dC15ZWFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TWFrZUh0bWxMaXN0UGlwZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL21ha2UtaHRtbC1saXN0LnBpcGUnO1xyXG5pbXBvcnQge0Rlc3lPbklucHV0Q2hhbmdlfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LW9uLWlucHV0LWNoYW5nZS5kZWNvcmF0b3InO1xyXG5pbXBvcnQgeyBEYXRlSW5wdXREaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LWRpdmlkZXIvZGF0ZS1pbnB1dC1kaXZpZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0cmluZ1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL3N0cmluZy11dGlscyc7XHJcbmltcG9ydCB7IERhdGVJbnB1dEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2RhdGUtaW5wdXQtaXRlbS9kYXRlLWlucHV0LWl0ZW0uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1kYXRlLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVJbnB1dENvbXBvbmVudCBleHRlbmRzIEZvcm1GaWVsZENvbXBvbmVudDxhbnk+IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0IHtcclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgZGVmYXVsdEl0ZW1zID0gW1xyXG4gICAge1xyXG4gICAgICBuYW1lOiAnZGF5JyxcclxuICAgICAgY2xhc3NlczogJ3ctMTQnLFxyXG4gICAgICBtYXhsZW5ndGg6IDJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdtb250aCcsXHJcbiAgICAgIGNsYXNzZXM6ICd3LTE0JyxcclxuICAgICAgbWF4bGVuZ3RoOiAyXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAneWVhcicsXHJcbiAgICAgIGNsYXNzZXM6ICd3LTIwJyxcclxuICAgICAgbWF4bGVuZ3RoOiA0XHJcbiAgICB9XHJcbiAgXTtcclxuXHJcbiAgQElucHV0KCkgbmdNb2RlbEdyb3VwOiBzdHJpbmc7XHJcblxyXG4gIEBEZXN5T25JbnB1dENoYW5nZSgnb25FeHRlcm5hbENoYW5nZScpXHJcbiAgQElucHV0KCkgaXRlbXM6IEl0ZW1EYXRlSW5wdXREYXRhW107XHJcbiAgQE91dHB1dCgpIGl0ZW1zQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SXRlbURhdGVJbnB1dERhdGFbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW1EYXRlSW5wdXREYXRhW10+KCk7XHJcblxyXG4gIEBEZXN5T25JbnB1dENoYW5nZSgnb25FeHRlcm5hbENoYW5nZScpXHJcbiAgQElucHV0KCkgbmFtZVByZWZpeDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBmb3JtR3JvdXBDbGFzc2VzOiBhbnk7XHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoeyBvblNldENhbGxiYWNrTmFtZTogJ292ZXJyaWRlRmllbGRzZXRQYXJhbXMnfSlcclxuICBAQ29udGVudENoaWxkcmVuKEZpZWxkc2V0Q29tcG9uZW50KSBmaWVsZHNldENvbXBvbmVudDogRmllbGRzZXRDb21wb25lbnQ7XHJcblxyXG4gIEBEZXN5Q29udGVudENoaWxkKClcclxuICBAQ29udGVudENoaWxkcmVuKExlZ2VuZENvbXBvbmVudCkgbGVnZW5kQ29tcG9uZW50OiBMZWdlbmRDb21wb25lbnQ7XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oRGF0ZUlucHV0SXRlbUNvbXBvbmVudCkgZGF0ZUlucHV0SXRlbUNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxEYXRlSW5wdXRJdGVtQ29tcG9uZW50PjtcclxuXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDIpIGluY2x1aXIgdGVtcGxhdGUgbGVnZW5kXHJcbiAgICogMykgaW5jbHVpciBsZWdlbmREYXRhIC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW5hIGxlZ2VuZGEgY29uIGxvcyBwYXJhbWV0cm9zIHBhc2Fkb3MgIChpbnRlcmZheiBleHB1ZXN0YSlcclxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgZmllbGRzZXREYXRhOiBGaWVsZHNldERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xyXG4gIEBJbnB1dCgpIGxlZ2VuZERhdGE6IExlZ2VuZERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kVGV4dDogc3RyaW5nO1xyXG5cclxuICBAVmlld0NoaWxkKCdpbm5lckh0bWwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbm5lckh0bWw6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgY29udGVudEluaXQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hlY2tSZXF1aXJlZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50SW5pdCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBpbml0RGVmYXVsdEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLml0ZW1zKSB7XHJcbiAgICAgIHRoaXMuaXRlbXMgPSBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2TDrWEnLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMTQnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiAyXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBuYW1lOiAnbWVzJyxcclxuICAgICAgICAgIGNsYXNzZXM6ICd3LTE0JyxcclxuICAgICAgICAgIG1heGxlbmd0aDogMlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2HDsW8nLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMjAnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiA0XHJcbiAgICAgICAgfVxyXG4gICAgICBdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXF1aXJlZCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pZCkge1xyXG4gICAgICB0aHJvdyBFcnJvcignaWQgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcclxuICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XHJcbiAgICAgIGl0ZW1zLmZvckVhY2goaXRlbSA9PiBpdGVtLnZhbHVlID0gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXSk7XHJcblxyXG4gICAgICBpZiAodGhpcy5pdGVtcykge1xyXG4gICAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZUZpZWxkc2V0UGFyYW1zKGZpZWxkc2V0OiBGaWVsZHNldENvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgZmllbGRzZXQuY2FsbGVyID0gdGhpcy5pbm5lckh0bWw7XHJcbiAgICBmaWVsZHNldC5lcnJvcklkID0gdGhpcy5nZXRFcnJvcklkKCk7XHJcbiAgICBmaWVsZHNldC5kZXNjcmliZWRCeSA9IG5ldyBNYWtlSHRtbExpc3RQaXBlKCkudHJhbnNmb3JtKFt0aGlzLmdldEhpbnRJZCgpLCB0aGlzLmdldEVycm9ySWQoKV0sIG51bGwpO1xyXG4gICAgZmllbGRzZXQucm9sZSA9ICdncm91cCc7XHJcbiAgICBmaWVsZHNldC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBvbkV4dGVybmFsQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRlbnRJbml0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHt9O1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xyXG4gICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IHRoaXMudmFsdWVbdGhpcy5nZXRJdGVtTmFtZShpdGVtKV0gPSBpdGVtLnZhbHVlKTtcclxuICAgIGNvbnN0IG5ld1ZhbCA9IHt9O1xyXG4gICAgT2JqZWN0LmFzc2lnbihuZXdWYWwsIHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5vbkNoYW5nZShuZXdWYWwpO1xyXG4gIH1cclxuXHJcbiAgb25JbnRlcm5hbENoYW5nZShpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSwgaXRlbVZhbHVlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW1OYW1lID0gdGhpcy5nZXRJdGVtTmFtZShpdGVtKTtcclxuICAgIGlmICghdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMudmFsdWVbaXRlbU5hbWVdICE9PSBpdGVtVmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZVtpdGVtTmFtZV0gPSBpdGVtVmFsdWUgPyAraXRlbVZhbHVlIDogdW5kZWZpbmVkO1xyXG4gICAgICBjb25zdCBuZXdWYWwgPSB7fTtcclxuICAgICAgT2JqZWN0LmFzc2lnbihuZXdWYWwsIHRoaXMudmFsdWUpO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlKG5ld1ZhbCk7XHJcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0RGF5Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBEYXRlSW5wdXRNb250aENvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0WWVhckNvbXBvbmVudCkge1xyXG4gICAgICAgIGl0ZW0udmFsdWVDaGFuZ2UuZW1pdChpdGVtVmFsdWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodGhpcy5pdGVtcykge1xyXG4gICAgICAgIGl0ZW0udmFsdWUgPSBpdGVtVmFsdWU7XHJcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYXNGaWVsZHNldCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhISh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkgfHwgdGhpcy5oYXNMZWdlbmRDb21wb25lbnQoKSB8fCB0aGlzLmxlZ2VuZFJlZiB8fCB0aGlzLmZpZWxkc2V0RGF0YVxyXG4gICAgICB8fCAodGhpcy5sZWdlbmREYXRhICYmICh0aGlzLmxlZ2VuZERhdGEudGV4dCB8fCB0aGlzLmxlZ2VuZERhdGEuaHRtbCkpIHx8IHRoaXMubGVnZW5kVGV4dCk7XHJcbiAgfVxyXG5cclxuICBoYXNGaWVsZHNldENvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuZmllbGRzZXRDb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBoYXNMZWdlbmRDb21wb25lbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmxlZ2VuZENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIGhhc0Vycm9yTWVzc2FnZUNvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuZXJyb3JNZXNzYWdlQ29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbU5hbWUoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubmFtZVByZWZpeCA/IHRoaXMubmFtZVByZWZpeCArICctJyArIGl0ZW0ubmFtZSA6IGl0ZW0ubmFtZTtcclxuICB9XHJcblxyXG4gIGdldEl0ZW1MYWJlbChpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSk6IExhYmVsRGF0YSB7XHJcbiAgICBsZXQgbGFiZWxEYXRhOiBMYWJlbERhdGE7XHJcbiAgICBpZiAoaXRlbS5sYWJlbERhdGEgJiYgKGl0ZW0ubGFiZWxEYXRhLnRleHQgfHwgaXRlbS5sYWJlbERhdGEuaHRtbCkpIHtcclxuICAgICAgbGFiZWxEYXRhID0gaXRlbS5sYWJlbERhdGE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsYWJlbERhdGEgPSB7XHJcbiAgICAgICAgdGV4dDogaXRlbS5sYWJlbFRleHQgPyBpdGVtLmxhYmVsVGV4dCA6IGl0ZW0ubmFtZS50b1VwcGVyQ2FzZSgpXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbGFiZWxEYXRhO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbUxhYmVsUmVmKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gaXRlbSBpbnN0YW5jZW9mIERhdGVJbnB1dERheUNvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0TW9udGhDb21wb25lbnQgfHwgaXRlbSBpbnN0YW5jZW9mIERhdGVJbnB1dFllYXJDb21wb25lbnQgP1xyXG4gICAgICBpdGVtLmxhYmVsUmVmIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGdldEl0ZW1zKCk6IEl0ZW1EYXRlSW5wdXREYXRhW10ge1xyXG4gICAgbGV0IGl0ZW1zO1xyXG4gICAgaWYgKHRoaXMuZGF0ZUlucHV0SXRlbUNvbXBvbmVudHMgJiYgdGhpcy5kYXRlSW5wdXRJdGVtQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGl0ZW1zID0gdGhpcy5kYXRlSW5wdXRJdGVtQ29tcG9uZW50cy50b0FycmF5KCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXRlbXMpIHtcclxuICAgICAgaXRlbXMgPSB0aGlzLml0ZW1zO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbnRlbnRJbml0KSB7XHJcbiAgICAgIGl0ZW1zID0gRGF0ZUlucHV0Q29tcG9uZW50LmRlZmF1bHRJdGVtcztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGl0ZW1zID0gW107XHJcbiAgICB9XHJcblxyXG4gICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgaWYgKCFpdGVtLm5hbWUgJiYgIShpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0RGl2aWRlckNvbXBvbmVudCkpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0l0ZW0gbmFtZSBpcyByZXF1aXJlZCcpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gaXRlbXM7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtRGl2aWRlclRlbXBsYXRlKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyIGluc3RhbmNlb2YgRGF0ZUlucHV0RGl2aWRlckNvbXBvbmVudCA/IGl0ZW0uZGl2aWRlci5kaXZpZGVyQ29udGVudCA6IG51bGw7XHJcbiAgfVxyXG4gIGdldEl0ZW1EaXZpZGVySHRtbChpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyLmh0bWwgPyBpdGVtLmRpdmlkZXIuaHRtbCA6IGA8cD4keyBTdHJpbmdVdGlscy5lc2NhcGVIdG1sKGl0ZW0uZGl2aWRlci50ZXh0KSB9PC9wPmA7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -4,7 +4,6 @@ import { FormFieldComponent } from '../form-field/form-field.component';
4
4
  export class InputComponent extends FormFieldComponent {
5
5
  ngOnChanges(changes) {
6
6
  this.checkRequired();
7
- this.writeValue(this.value);
8
7
  }
9
8
  getErrorId() {
10
9
  return this.errorId ? this.errorId : super.getErrorId();
@@ -33,7 +32,7 @@ export class InputComponent extends FormFieldComponent {
33
32
  InputComponent.decorators = [
34
33
  { type: Component, args: [{
35
34
  selector: 'desy-input',
36
- template: "\r\n<div [class]=\"['c-form-group', this.formGroupClasses] | makeHtmlList\" [ngClass]=\"{'c-form-group--error': hasErrorsMessage()}\">\r\n\r\n <ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\r\n <desy-label *ngIf=\"!labelRef && labelData\"\r\n [text]=\"labelData.text\"\r\n [html]=\"labelData.html\"\r\n [classes]=\"labelData.classes\"\r\n [isPageHeading]=\"labelData.isPageHeading\"\r\n [for]=\"id\"\r\n [role]=\"labelData.role\"\r\n [ariaLabel]=\"labelData.ariaLabel\"\r\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\r\n [ariaHidden]=\"labelData.ariaHidden\"\r\n [ariaDisabled]=\"labelData.ariaDisabled\"\r\n [ariaControls]=\"labelData.ariaControls\"\r\n [ariaCurrent]=\"labelData.ariaCurrent\"\r\n [ariaLive]=\"labelData.ariaLive\"\r\n [ariaExpanded]=\"labelData.ariaExpanded\"\r\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\r\n [tabindex]=\"labelData.tabindex\"></desy-label>\r\n <desy-label *ngIf=\"!labelRef && !labelData && labelText\" [text]=\"labelText\" [for]=\"id\"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n\r\n <!-- input -->\r\n <input [class]=\"['c-input block mt-sm border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base', classes] | makeHtmlList\"\r\n [ngClass]=\"{'border-alert-base ring-2 ring-alert-base' : getErrorId()}\"\r\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"name ? name : null\"\r\n [type]=\"type ? type : 'text'\"\r\n [attr.aria-describedby]=\"[describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"getErrorId() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"getErrorId() ? true : null\"\r\n [attr.autocomplete]=\"autocomplete ? autocomplete : null\"\r\n [attr.pattern]=\"pattern ? pattern : null\"\r\n [attr.inputmode]=\"inputmode ? inputmode : null\"\r\n [attr.placeholder]=\"placeholder ? placeholder : null\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.maxlength]=\"maxlength ? maxlength : null\"\r\n\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <!-- input -->\r\n</div>\r\n",
35
+ template: "\r\n<div [class]=\"['c-form-group', this.formGroupClasses] | makeHtmlList\" [ngClass]=\"{'c-form-group--error': hasErrorsMessage()}\">\r\n\r\n <ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\r\n <desy-label *ngIf=\"!labelRef && labelData\"\r\n [text]=\"labelData.text\"\r\n [html]=\"labelData.html\"\r\n [classes]=\"labelData.classes\"\r\n [isPageHeading]=\"labelData.isPageHeading\"\r\n [for]=\"id\"\r\n [role]=\"labelData.role\"\r\n [ariaLabel]=\"labelData.ariaLabel\"\r\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\r\n [ariaHidden]=\"labelData.ariaHidden\"\r\n [ariaDisabled]=\"labelData.ariaDisabled\"\r\n [ariaControls]=\"labelData.ariaControls\"\r\n [ariaCurrent]=\"labelData.ariaCurrent\"\r\n [ariaLive]=\"labelData.ariaLive\"\r\n [ariaExpanded]=\"labelData.ariaExpanded\"\r\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\r\n [tabindex]=\"labelData.tabindex\"></desy-label>\r\n <desy-label *ngIf=\"!labelRef && !labelData && labelText\" [text]=\"labelText\" [for]=\"id\"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n\r\n <input [class]=\"['c-input block mt-sm border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base',\r\n classes,\r\n getErrorId() ? 'border-alert-base ring-2 ring-alert-base' : null] | makeHtmlList\"\r\n [value]=\"value ? value : ''\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"name ? name : null\"\r\n [type]=\"type ? type : 'text'\"\r\n [attr.aria-describedby]=\"[describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"getErrorId() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"getErrorId() ? true : null\"\r\n [attr.autocomplete]=\"autocomplete ? autocomplete : null\"\r\n [attr.pattern]=\"pattern ? pattern : null\"\r\n [attr.inputmode]=\"inputmode ? inputmode : null\"\r\n [attr.placeholder]=\"placeholder ? placeholder : null\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.maxlength]=\"maxlength ? maxlength : null\"\r\n\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n</div>\r\n",
37
36
  providers: [
38
37
  {
39
38
  provide: NG_VALUE_ACCESSOR,
@@ -56,4 +55,4 @@ InputComponent.propDecorators = {
56
55
  maxlength: [{ type: Input }],
57
56
  errorId: [{ type: Input }]
58
57
  };
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBYXhFLE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQXVCO0lBZXpELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7U0FDMUI7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNaLE1BQU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDL0I7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLE1BQU0sS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDakM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDbEM7SUFDSCxDQUFDOzs7WUF0REYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0QixpN0xBQXFDO2dCQUNyQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7d0JBQzdDLEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGO2FBQ0Y7OzttQkFHRSxLQUFLO21CQUNMLEtBQUs7MEJBQ0wsS0FBSztzQkFDTCxLQUFLO3dCQUNMLEtBQUs7MEJBQ0wsS0FBSzsrQkFDTCxLQUFLO3NCQUNMLEtBQUs7MkJBQ0wsS0FBSzt3QkFDTCxLQUFLO3NCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PGFueT4gaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRlc2NyaWJlZEJ5OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlucHV0bW9kZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwQ2xhc3Nlczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBhdXRvY29tcGxldGU6IHN0cmluZztcclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlcjtcclxuICBASW5wdXQoKSBlcnJvcklkOiBzdHJpbmc7XHJcblxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWQoKTtcclxuICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldEVycm9ySWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmVycm9ySWQgPyB0aGlzLmVycm9ySWQgOiBzdXBlci5nZXRFcnJvcklkKCk7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgJyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXF1aXJlZCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pZCkge1xyXG4gICAgICB0aHJvdyBFcnJvcignaWQgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5uYW1lKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCduYW1lIGlzIHJlcXVpcmVkJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuaGFzTGFiZWwoKSkge1xyXG4gICAgICB0aHJvdyBFcnJvcignbGFiZWwgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBYXhFLE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQXVCO0lBZXpELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7U0FDMUI7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNaLE1BQU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDL0I7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLE1BQU0sS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDakM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDbEM7SUFDSCxDQUFDOzs7WUFyREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0Qiw4NkxBQXFDO2dCQUNyQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7d0JBQzdDLEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGO2FBQ0Y7OzttQkFHRSxLQUFLO21CQUNMLEtBQUs7MEJBQ0wsS0FBSztzQkFDTCxLQUFLO3dCQUNMLEtBQUs7MEJBQ0wsS0FBSzsrQkFDTCxLQUFLO3NCQUNMLEtBQUs7MkJBQ0wsS0FBSzt3QkFDTCxLQUFLO3NCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PGFueT4gaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdHlwZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRlc2NyaWJlZEJ5OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGF0dGVybjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlucHV0bW9kZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwQ2xhc3Nlczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBhdXRvY29tcGxldGU6IHN0cmluZztcclxuICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlcjtcclxuICBASW5wdXQoKSBlcnJvcklkOiBzdHJpbmc7XHJcblxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWQoKTtcclxuICB9XHJcblxyXG4gIGdldEVycm9ySWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmVycm9ySWQgPyB0aGlzLmVycm9ySWQgOiBzdXBlci5nZXRFcnJvcklkKCk7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgJyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXF1aXJlZCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pZCkge1xyXG4gICAgICB0aHJvdyBFcnJvcignaWQgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5uYW1lKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCduYW1lIGlzIHJlcXVpcmVkJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuaGFzTGFiZWwoKSkge1xyXG4gICAgICB0aHJvdyBFcnJvcignbGFiZWwgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,20 @@
1
+ import { Component, forwardRef, ViewChild } from '@angular/core';
2
+ import { InputGroupItemComponent } from '../input-group-item/input-group-item.component';
3
+ export class InputGroupDividerComponent extends InputGroupItemComponent {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.isSelect = false;
7
+ this.divider = this;
8
+ }
9
+ }
10
+ InputGroupDividerComponent.decorators = [
11
+ { type: Component, args: [{
12
+ selector: 'desy-input-group-divider',
13
+ template: "<ng-template #dividerContent>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n",
14
+ providers: [{ provide: InputGroupItemComponent, useExisting: forwardRef(() => InputGroupDividerComponent) }]
15
+ },] }
16
+ ];
17
+ InputGroupDividerComponent.propDecorators = {
18
+ dividerContent: [{ type: ViewChild, args: ['dividerContent', { static: true },] }]
19
+ };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtZGl2aWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvaW5wdXQtZ3JvdXAvaW5wdXQtZ3JvdXAtZGl2aWRlci9pbnB1dC1ncm91cC1kaXZpZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBZSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFRdkYsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHVCQUF1QjtJQUx2RTs7UUFPRSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxJQUFJLENBQUM7SUFJakIsQ0FBQzs7O1lBWkEsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwwQkFBMEI7Z0JBQ3BDLDhGQUFtRDtnQkFDbkQsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxFQUFDLENBQUM7YUFDM0c7Ozs2QkFNRSxTQUFTLFNBQUMsZ0JBQWdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGZvcndhcmRSZWYsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBJdGVtQ29tcG9uZW50fSBmcm9tICcuLi9pbnB1dC1ncm91cC1pdGVtL2lucHV0LWdyb3VwLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtJdGVtRGl2aWRlcklucHV0R3JvdXBEYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1pbnB1dC1ncm91cC1kaXZpZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZ3JvdXAtZGl2aWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IElucHV0R3JvdXBJdGVtQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dEdyb3VwRGl2aWRlckNvbXBvbmVudCl9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0R3JvdXBEaXZpZGVyQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRHcm91cEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBJdGVtRGl2aWRlcklucHV0R3JvdXBEYXRhIHtcclxuXHJcbiAgaXNTZWxlY3QgPSBmYWxzZTtcclxuICBkaXZpZGVyID0gdGhpcztcclxuXHJcbiAgQFZpZXdDaGlsZCgnZGl2aWRlckNvbnRlbnQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBkaXZpZGVyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbn1cclxuIl19
@@ -0,0 +1,46 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';
3
+ import { InputGroupItemComponent } from '../input-group-item/input-group-item.component';
4
+ import { LabelComponent } from '../../label/label.component';
5
+ import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
6
+ export class InputGroupInputComponent extends InputGroupItemComponent {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.isSelect = false;
10
+ this.valueChange = new EventEmitter();
11
+ }
12
+ ngAfterContentInit() {
13
+ if (!this.name) {
14
+ throw Error('item name is required');
15
+ }
16
+ if (!this.labelComponent) {
17
+ throw Error('item label is required');
18
+ }
19
+ }
20
+ }
21
+ InputGroupInputComponent.decorators = [
22
+ { type: Component, args: [{
23
+ selector: 'desy-input-group-input',
24
+ template: "<ng-template #label>\r\n <ng-content select=\"desy-label\"></ng-content>\r\n</ng-template>\r\n",
25
+ providers: [{ provide: InputGroupItemComponent, useExisting: forwardRef(() => InputGroupInputComponent) }]
26
+ },] }
27
+ ];
28
+ InputGroupInputComponent.propDecorators = {
29
+ id: [{ type: Input }],
30
+ name: [{ type: Input }],
31
+ value: [{ type: Input }],
32
+ valueChange: [{ type: Output }],
33
+ formGroupClasses: [{ type: Input }],
34
+ type: [{ type: Input }],
35
+ inputmode: [{ type: Input }],
36
+ autocomplete: [{ type: Input }],
37
+ placeholder: [{ type: Input }],
38
+ pattern: [{ type: Input }],
39
+ maxlength: [{ type: Input }],
40
+ labelRef: [{ type: ViewChild, args: ['label', { static: true },] }],
41
+ labelComponent: [{ type: ContentChildren, args: [LabelComponent,] }]
42
+ };
43
+ __decorate([
44
+ DesyContentChild()
45
+ ], InputGroupInputComponent.prototype, "labelComponent", void 0);
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0LWdyb3VwL2lucHV0LWdyb3VwLWlucHV0L2lucHV0LWdyb3VwLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFPNUYsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHVCQUF1QjtJQUxyRTs7UUFPRSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBS1AsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBdUJsRCxDQUFDO0lBUkMsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsTUFBTSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztTQUN0QztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3hCLE1BQU0sS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDOzs7WUFsQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLDJHQUFpRDtnQkFDakQsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFDLENBQUM7YUFDekc7OztpQkFLRSxLQUFLO21CQUNMLEtBQUs7b0JBQ0wsS0FBSzswQkFDTCxNQUFNOytCQUNOLEtBQUs7bUJBRUwsS0FBSzt3QkFDTCxLQUFLOzJCQUNMLEtBQUs7MEJBQ0wsS0FBSztzQkFDTCxLQUFLO3dCQUNMLEtBQUs7dUJBRUwsU0FBUyxTQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7NkJBR25DLGVBQWUsU0FBQyxjQUFjOztBQUFFO0lBRGhDLGdCQUFnQixFQUFFO2dFQUM2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJbnB1dEdyb3VwSXRlbUNvbXBvbmVudH0gZnJvbSAnLi4vaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TGFiZWxDb21wb25lbnR9IGZyb20gJy4uLy4uL2xhYmVsL2xhYmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGVzeUNvbnRlbnRDaGlsZH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktaW5wdXQtZ3JvdXAtaW5wdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1ncm91cC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IElucHV0R3JvdXBJdGVtQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dEdyb3VwSW5wdXRDb21wb25lbnQpfV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dEdyb3VwSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBJbnB1dEdyb3VwSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xyXG5cclxuICBpc1NlbGVjdCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBpZD86IHN0cmluZztcclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdmFsdWU/OiBhbnk7XHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwQ2xhc3Nlcz86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgdHlwZT86IHN0cmluZztcclxuICBASW5wdXQoKSBpbnB1dG1vZGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgYXV0b2NvbXBsZXRlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBhdHRlcm4/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWF4bGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICBAVmlld0NoaWxkKCdsYWJlbCcsIHsgc3RhdGljOiB0cnVlIH0pIGxhYmVsUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMYWJlbENvbXBvbmVudCkgbGFiZWxDb21wb25lbnQ6IExhYmVsQ29tcG9uZW50O1xyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMubmFtZSkge1xyXG4gICAgICB0aHJvdyBFcnJvcignaXRlbSBuYW1lIGlzIHJlcXVpcmVkJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMubGFiZWxDb21wb25lbnQpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2l0ZW0gbGFiZWwgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,13 @@
1
+ import { Component, Input } from '@angular/core';
2
+ export class InputGroupItemComponent {
3
+ }
4
+ InputGroupItemComponent.decorators = [
5
+ { type: Component, args: [{
6
+ selector: 'desy-input-group-item',
7
+ template: ''
8
+ },] }
9
+ ];
10
+ InputGroupItemComponent.propDecorators = {
11
+ classes: [{ type: Input }]
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvaW5wdXQtZ3JvdXAvaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQU8vQyxNQUFNLE9BQU8sdUJBQXVCOzs7WUFKbkMsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLFFBQVEsRUFBRSxFQUFFO2FBQ2I7OztzQkFFRSxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJdGVtSW5wdXRHcm91cERhdGF9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LWlucHV0LWdyb3VwLWl0ZW0nLFxyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRHcm91cEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBJdGVtSW5wdXRHcm91cERhdGEge1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM/OiBzdHJpbmc7XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';
3
+ import { InputGroupItemComponent } from '../input-group-item/input-group-item.component';
4
+ import { OptionComponent } from '../../select/option/option.component';
5
+ import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
6
+ import { LabelComponent } from '../../label/label.component';
7
+ export class InputGroupSelectComponent extends InputGroupItemComponent {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.isSelect = true;
11
+ this.valueChange = new EventEmitter();
12
+ }
13
+ ngAfterContentInit() {
14
+ if (!this.name) {
15
+ throw Error('item name is required');
16
+ }
17
+ if (!this.labelComponent) {
18
+ throw Error('item label is required');
19
+ }
20
+ }
21
+ }
22
+ InputGroupSelectComponent.decorators = [
23
+ { type: Component, args: [{
24
+ selector: 'desy-input-group-select',
25
+ template: "<ng-template #label>\r\n <ng-content select=\"desy-label\"></ng-content>\r\n</ng-template>\r\n",
26
+ providers: [{ provide: InputGroupItemComponent, useExisting: forwardRef(() => InputGroupSelectComponent) }]
27
+ },] }
28
+ ];
29
+ InputGroupSelectComponent.propDecorators = {
30
+ id: [{ type: Input }],
31
+ name: [{ type: Input }],
32
+ value: [{ type: Input }],
33
+ valueChange: [{ type: Output }],
34
+ formGroupClasses: [{ type: Input }],
35
+ labelRef: [{ type: ViewChild, args: ['label', { static: true },] }],
36
+ selectItemComponentList: [{ type: ContentChildren, args: [OptionComponent,] }],
37
+ labelComponent: [{ type: ContentChildren, args: [LabelComponent,] }]
38
+ };
39
+ __decorate([
40
+ DesyContentChild()
41
+ ], InputGroupSelectComponent.prototype, "labelComponent", void 0);
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9pbnB1dC1ncm91cC9pbnB1dC1ncm91cC1zZWxlY3QvaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUN2RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDckUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDNUYsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBTzNELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx1QkFBdUI7SUFMdEU7O1FBT0UsYUFBUSxHQUFHLElBQUksQ0FBQztRQUtOLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQWlCbEQsQ0FBQztJQVJDLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLE1BQU0sS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDdEM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixNQUFNLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQzs7O1lBNUJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQywyR0FBa0Q7Z0JBQ2xELFNBQVMsRUFBRSxDQUFDLEVBQUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUMsRUFBQyxDQUFDO2FBQzFHOzs7aUJBS0UsS0FBSzttQkFDTCxLQUFLO29CQUNMLEtBQUs7MEJBQ0wsTUFBTTsrQkFDTixLQUFLO3VCQUVMLFNBQVMsU0FBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO3NDQUNuQyxlQUFlLFNBQUMsZUFBZTs2QkFHL0IsZUFBZSxTQUFDLGNBQWM7O0FBQUU7SUFEaEMsZ0JBQWdCLEVBQUU7aUVBQzZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlckNvbnRlbnRJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJbnB1dEdyb3VwSXRlbUNvbXBvbmVudH0gZnJvbSAnLi4vaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7T3B0aW9uQ29tcG9uZW50fSBmcm9tICcuLi8uLi9zZWxlY3Qvb3B0aW9uL29wdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xyXG5pbXBvcnQge0xhYmVsQ29tcG9uZW50fSBmcm9tICcuLi8uLi9sYWJlbC9sYWJlbC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LWlucHV0LWdyb3VwLXNlbGVjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LWdyb3VwLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IElucHV0R3JvdXBJdGVtQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50KX1dLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRHcm91cFNlbGVjdENvbXBvbmVudCBleHRlbmRzIElucHV0R3JvdXBJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XHJcblxyXG4gIGlzU2VsZWN0ID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgaWQ/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZhbHVlPzogYW55O1xyXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cENsYXNzZXM/OiBzdHJpbmc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2xhYmVsJywgeyBzdGF0aWM6IHRydWUgfSkgbGFiZWxSZWY6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZHJlbihPcHRpb25Db21wb25lbnQpIHNlbGVjdEl0ZW1Db21wb25lbnRMaXN0OiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PjtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oTGFiZWxDb21wb25lbnQpIGxhYmVsQ29tcG9uZW50OiBMYWJlbENvbXBvbmVudDtcclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLm5hbWUpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2l0ZW0gbmFtZSBpcyByZXF1aXJlZCcpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmxhYmVsQ29tcG9uZW50KSB7XHJcbiAgICAgIHRocm93IEVycm9yKCdpdGVtIGxhYmVsIGlzIHJlcXVpcmVkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==