desy-angular 5.2.0 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/bundles/desy-angular.umd.js +1435 -118
  2. package/bundles/desy-angular.umd.js.map +1 -1
  3. package/bundles/desy-angular.umd.min.js +1 -15
  4. package/bundles/desy-angular.umd.min.js.map +1 -1
  5. package/desy-angular.d.ts +39 -27
  6. package/desy-angular.metadata.json +1 -1
  7. package/esm2015/desy-angular.js +40 -28
  8. package/esm2015/lib/desy-buttons/components/button/button.component.js +4 -4
  9. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +2 -2
  10. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +8 -5
  11. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +2 -2
  12. package/esm2015/lib/desy-buttons/components/toggle/toggle.component.js +6 -3
  13. package/esm2015/lib/desy-commons/components/description/description.component.js +3 -2
  14. package/esm2015/lib/desy-commons/components/divider/divider.component.js +15 -0
  15. package/esm2015/lib/desy-commons/components/icon/icon.component.js +3 -2
  16. package/esm2015/lib/desy-commons/desy-commons.module.js +6 -3
  17. package/esm2015/lib/desy-commons/interfaces/description-data.js +1 -1
  18. package/esm2015/lib/desy-commons/interfaces/divider-data.js +2 -0
  19. package/esm2015/lib/desy-commons/interfaces/icon-data.js +1 -1
  20. package/esm2015/lib/desy-commons/interfaces/index.js +2 -1
  21. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +2 -2
  22. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +5 -4
  23. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +3 -3
  24. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +11 -4
  25. package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +11 -5
  26. package/esm2015/lib/desy-forms/components/input/input.component.js +16 -3
  27. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +2 -1
  28. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +2 -1
  29. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +2 -2
  30. package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +3 -3
  31. package/esm2015/lib/desy-forms/components/radios/radios.component.js +2 -2
  32. package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +7 -3
  33. package/esm2015/lib/desy-forms/components/select/select.component.js +2 -2
  34. package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +9 -4
  35. package/esm2015/lib/desy-forms/components/tree/tree-item/tree-item.component.js +2 -2
  36. package/esm2015/lib/desy-forms/components/tree/tree.component.js +3 -3
  37. package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +1 -1
  38. package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +3 -3
  39. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.js +20 -0
  40. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.js +19 -0
  41. package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +3 -3
  42. package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +3 -3
  43. package/esm2015/lib/desy-modals/components/modal/modal.component.js +15 -3
  44. package/esm2015/lib/desy-modals/desy-modals.module.js +7 -1
  45. package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +1 -1
  46. package/esm2015/lib/desy-nav/components/footer/footer.component.js +9 -2
  47. package/esm2015/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.js +11 -0
  48. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +2 -2
  49. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +2 -2
  50. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +2 -2
  51. package/esm2015/lib/desy-nav/components/header/header.component.js +10 -2
  52. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.js +35 -0
  53. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.js +31 -0
  54. package/esm2015/lib/desy-nav/components/menu-navigation/menu-navigation.component.js +568 -0
  55. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +33 -5
  56. package/esm2015/lib/desy-nav/desy-nav.module.js +15 -2
  57. package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +1 -1
  58. package/esm2015/lib/desy-nav/interfaces/index.js +4 -1
  59. package/esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.js +2 -0
  60. package/esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item.js +2 -0
  61. package/esm2015/lib/desy-nav/interfaces/menu-navigation.js +2 -0
  62. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +48 -5
  63. package/esm2015/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.js +15 -0
  64. package/esm2015/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.js +14 -0
  65. package/esm2015/lib/desy-pagination/desy-pagination.module.js +9 -3
  66. package/esm2015/lib/desy-pagination/interfaces/index.js +1 -1
  67. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +16 -3
  68. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.js +22 -0
  69. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +34 -3
  70. package/esm2015/lib/desy-tables/desy-tables.module.js +5 -2
  71. package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +1 -1
  72. package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +1 -1
  73. package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +12 -2
  74. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +32 -4
  75. package/esm2015/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.js +31 -0
  76. package/esm2015/lib/desy-views/components/accordion-history/accordion-history.component.js +15 -0
  77. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.js +14 -0
  78. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.js +14 -0
  79. package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +2 -2
  80. package/esm2015/lib/desy-views/components/item/item.component.js +23 -5
  81. package/esm2015/lib/desy-views/components/media-object/media-object.component.js +37 -4
  82. package/esm2015/lib/desy-views/components/spinner/spinner.component.js +33 -4
  83. package/esm2015/lib/desy-views/components/status/status.component.js +36 -5
  84. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +35 -4
  85. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +36 -5
  86. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +36 -5
  87. package/esm2015/lib/desy-views/desy-views.module.js +14 -2
  88. package/esm2015/public-api.js +5 -1
  89. package/fesm2015/desy-angular.js +1322 -91
  90. package/fesm2015/desy-angular.js.map +1 -1
  91. package/lib/desy-buttons/components/button/button.component.d.ts +2 -2
  92. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +5 -4
  93. package/lib/desy-buttons/components/toggle/toggle.component.d.ts +2 -0
  94. package/lib/desy-commons/components/description/description.component.d.ts +1 -0
  95. package/lib/desy-commons/components/divider/divider.component.d.ts +6 -0
  96. package/lib/desy-commons/components/icon/icon.component.d.ts +1 -0
  97. package/lib/desy-commons/interfaces/description-data.d.ts +1 -0
  98. package/lib/desy-commons/interfaces/divider-data.d.ts +4 -0
  99. package/lib/desy-commons/interfaces/icon-data.d.ts +1 -0
  100. package/lib/desy-commons/interfaces/index.d.ts +1 -0
  101. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +1 -1
  102. package/lib/desy-forms/components/date-input/date-input.component.d.ts +6 -3
  103. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +6 -2
  104. package/lib/desy-forms/components/input/input.component.d.ts +5 -2
  105. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +1 -0
  106. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +1 -0
  107. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +1 -1
  108. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +5 -3
  109. package/lib/desy-forms/components/textarea/textarea.component.d.ts +3 -1
  110. package/lib/desy-forms/components/tree/tree.component.d.ts +1 -1
  111. package/lib/desy-forms/interfaces/item-input-group-data.d.ts +1 -0
  112. package/lib/desy-modals/components/dialog/dialog.component.d.ts +1 -1
  113. package/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.d.ts +8 -0
  114. package/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.d.ts +7 -0
  115. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +3 -3
  116. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +3 -3
  117. package/lib/desy-modals/components/modal/modal.component.d.ts +8 -0
  118. package/lib/desy-modals/interfaces/modal-button-data.d.ts +16 -0
  119. package/lib/desy-nav/components/footer/footer.component.d.ts +5 -0
  120. package/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.d.ts +3 -0
  121. package/lib/desy-nav/components/header/header.component.d.ts +5 -0
  122. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.d.ts +22 -0
  123. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.d.ts +19 -0
  124. package/lib/desy-nav/components/menu-navigation/menu-navigation.component.d.ts +80 -0
  125. package/lib/desy-nav/components/menubar/menubar.component.d.ts +16 -2
  126. package/lib/desy-nav/interfaces/header-navigation-item-data.d.ts +1 -0
  127. package/lib/desy-nav/interfaces/index.d.ts +3 -0
  128. package/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.d.ts +14 -0
  129. package/lib/desy-nav/interfaces/menu-navigation-item-sub-item.d.ts +6 -0
  130. package/lib/desy-nav/interfaces/menu-navigation.d.ts +17 -0
  131. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +15 -4
  132. package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +7 -0
  133. package/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.d.ts +4 -0
  134. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +7 -0
  135. package/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.d.ts +9 -0
  136. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +8 -0
  137. package/lib/desy-tables/interfaces/head-cell-data.d.ts +3 -0
  138. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +4 -0
  139. package/lib/desy-views/components/accordion/accordion.component.d.ts +17 -3
  140. package/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.d.ts +9 -0
  141. package/lib/desy-views/components/accordion-history/accordion-history.component.d.ts +6 -0
  142. package/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.d.ts +4 -0
  143. package/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.d.ts +4 -0
  144. package/lib/desy-views/components/item/item.component.d.ts +8 -4
  145. package/lib/desy-views/components/media-object/media-object.component.d.ts +19 -3
  146. package/lib/desy-views/components/spinner/spinner.component.d.ts +17 -2
  147. package/lib/desy-views/components/status/status.component.d.ts +18 -2
  148. package/lib/desy-views/components/status-item/status-item.component.d.ts +18 -3
  149. package/lib/desy-views/components/tabs/tabs.component.d.ts +18 -3
  150. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +18 -3
  151. package/package.json +2 -2
  152. package/public-api.d.ts +4 -0
@@ -131,7 +131,7 @@ export class InputGroupComponent extends FormFieldComponent {
131
131
  InputGroupComponent.decorators = [
132
132
  { type: Component, args: [{
133
133
  selector: 'desy-input-group',
134
- template: "\r\n<!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso -->\r\n<ng-template #itemDivider let-item=\"item\">\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-template>\r\n\r\n<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 <!-- Reactive forms -->\r\n <div *ngIf=\"controlContainer && !ngModelGroup\"\r\n [formGroup]=\"controlContainer.control\"\r\n [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\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 </ng-template>\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 [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\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 </ng-template>\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 [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\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 </ng-template>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n\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 [headingLevel]=\"fieldsetData.headingLevel\"\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\r\n <ng-container *ngIf=\"!hasFieldset()\">\r\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n",
134
+ template: "\r\n<!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso -->\r\n<ng-template #itemDivider let-item=\"item\">\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-template>\r\n\r\n<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 <!-- Reactive forms -->\r\n <div *ngIf=\"controlContainer && !ngModelGroup\"\r\n [formGroup]=\"controlContainer.control\"\r\n [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n [disabled]=\"item.disabled\"\r\n\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\r\n [disabled]=\"item.disabled\"\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 </ng-template>\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 [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n [disabled]=\"item.disabled\"\r\n\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\r\n [disabled]=\"item.disabled\"\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 </ng-template>\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 [ngClass]=\"classes ? classes : 'flex'\"\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\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [items]=\"getItemSelectOptions(item)\"\r\n [disabled]=\"item.disabled\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\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-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [labelData]=\"getItemLabelData(item)\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [formGroupClasses]=\"item.formGroupClasses\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\r\n [type]=\"item.type ? item.type : 'text'\"\r\n [inputmode]=\"item.inputmode\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern\"\r\n [placeholder]=\"item.placeholder\"\r\n [disabled]=\"item.disabled\"\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 </ng-template>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n\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 [headingLevel]=\"fieldsetData.headingLevel\"\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\r\n <ng-container *ngIf=\"!hasFieldset()\">\r\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n",
135
135
  providers: [
136
136
  {
137
137
  provide: NG_VALUE_ACCESSOR,
@@ -176,4 +176,4 @@ __decorate([
176
176
  __decorate([
177
177
  DesyContentChild()
178
178
  ], InputGroupComponent.prototype, "legendComponent", void 0);
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0LWdyb3VwL2lucHV0LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTCxRQUFRLEVBQUUsTUFBTSxFQUVILFNBQVMsRUFFdkIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzVGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQWEvRCxNQUFNLE9BQU8sbUJB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QVcsU0FBQyxPQUFPOzJCQUU1QixLQUFLO2lCQUNMLEtBQUs7MkJBU0wsS0FBSzt3QkFDTCxLQUFLO3lCQUNMLEtBQUs7eUJBQ0wsS0FBSzs4QkFFTCxlQUFlLFNBQUMsdUJBQXVCO2dDQUd2QyxlQUFlLFNBQUMsaUJBQWlCOzhCQUdqQyxlQUFlLFNBQUMsZUFBZTt3QkFFL0IsU0FBUyxTQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0FBbkMvQjtJQURSLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO2tEQUNEO0FBSTVCO0lBRFIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7dURBQ1Y7QUEwQlE7SUFEbkMsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBQyxDQUFDOzhEQUNRO0FBR3ZDO0lBRGpDLGdCQUFnQixFQUFFOzREQUNnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dCxcclxuICBPcHRpb25hbCwgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLFxyXG4gIE9uQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0ZpZWxkc2V0RGF0YSwgTGVnZW5kRGF0YSwgSXRlbUlucHV0R3JvdXBEYXRhLCBMYWJlbERhdGEsIFNlbGVjdEl0ZW1EYXRhfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SW5wdXRHcm91cEl0ZW1Db21wb25lbnR9IGZyb20gJy4vaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGVzeU9uSW5wdXRDaGFuZ2V9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktb24taW5wdXQtY2hhbmdlLmRlY29yYXRvcic7XHJcbmltcG9ydCB7RGVzeUNvbnRlbnRDaGlsZH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XHJcbmltcG9ydCB7RmllbGRzZXRDb21wb25lbnR9IGZyb20gJy4uL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TWFrZUh0bWxMaXN0UGlwZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL21ha2UtaHRtbC1saXN0LnBpcGUnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBJbnB1dENvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1ncm91cC1pbnB1dC9pbnB1dC1ncm91cC1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtZ3JvdXAtc2VsZWN0L2lucHV0LWdyb3VwLXNlbGVjdC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBEaXZpZGVyQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWdyb3VwLWRpdmlkZXIvaW5wdXQtZ3JvdXAtZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0cmluZ1V0aWxzfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvc3RyaW5nLXV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1pbnB1dC1ncm91cCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LWdyb3VwLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0R3JvdXBDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0R3JvdXBDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0NoZWNrZWQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIG5nTW9kZWxHcm91cDogc3RyaW5nO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIGl0ZW1zOiBJdGVtSW5wdXRHcm91cERhdGFbXTtcclxuICBAT3V0cHV0KCkgaXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJdGVtSW5wdXRHcm91cERhdGFbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW1JbnB1dEdyb3VwRGF0YVtdPigpO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIG5hbWVQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcblxyXG4gIC8vICBmb3JtIGdyb3VwIGNsYXNzIC0gYXNpZ25hciBjbGFzZXMgYSBsYSBldGlxdWV0YSBkZXN5LWlucHV0LWdyb3VwXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jLWZvcm0tZ3JvdXAnKSBjZmcgPSB0cnVlO1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYy1mb3JtLWdyb3VwLS1lcnJvcicpIGNmZ3I6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGZvcm1Hcm91cENsYXNzZXM6IGFueTtcclxuXHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDIpIGluY2x1aXIgdGVtcGxhdGUgbGVnZW5kXHJcbiAgICogMykgaW5jbHVpciBsZWdlbmREYXRhIC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW5hIGxlZ2VuZGEgY29uIGxvcyBwYXJhbWV0cm9zIHBhc2Fkb3MgIChpbnRlcmZheiBleHB1ZXN0YSlcclxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgZmllbGRzZXREYXRhOiBGaWVsZHNldERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xyXG4gIEBJbnB1dCgpIGxlZ2VuZERhdGE6IExlZ2VuZERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kVGV4dDogc3RyaW5nO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKElucHV0R3JvdXBJdGVtQ29tcG9uZW50KSBpdGVtc0NvbXBvbmVudHM6IFF1ZXJ5TGlzdDxJbnB1dEdyb3VwSXRlbUNvbXBvbmVudD47XHJcblxyXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXHJcbiAgQENvbnRlbnRDaGlsZHJlbihGaWVsZHNldENvbXBvbmVudCkgZmllbGRzZXRDb21wb25lbnQ6IEZpZWxkc2V0Q29tcG9uZW50O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xyXG5cclxuICBAVmlld0NoaWxkKCdpbm5lckh0bWwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbm5lckh0bWw6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgY29udGVudEluaXQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2ZnciA9ICh0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSB8fCB0aGlzLmZvcm1Hcm91cENsYXNzZXMgPT09ICdjLWZvcm0tZ3JvdXAtLWVycm9yJyk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRlbnRJbml0ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SXRlbXMoKTtcclxuICAgICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgICBjb25zdCB2ID0gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXTtcclxuICAgICAgICBpdGVtLnZhbHVlID0gdiA/IHYgOiBudWxsO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uRXh0ZXJuYWxDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY29udGVudEluaXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXSA9IGl0ZW0udmFsdWUpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uSW50ZXJuYWxDaGFuZ2UoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhLCBpdGVtVmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgaXRlbU5hbWUgPSB0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB7fTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZVtpdGVtTmFtZV0gIT09IGl0ZW1WYWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlW2l0ZW1OYW1lXSA9IGl0ZW1WYWx1ZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuXHJcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cElucHV0Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50KSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZUNoYW5nZS5lbWl0KGl0ZW1WYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZSA9IGl0ZW1WYWx1ZTtcclxuICAgICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlRmllbGRzZXRQYXJhbXMoZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50KTogdm9pZCB7XHJcbiAgICBmaWVsZHNldC5jYWxsZXIgPSB0aGlzLmlubmVySHRtbDtcclxuICAgIGZpZWxkc2V0LmVycm9ySWQgPSB0aGlzLmdldEVycm9ySWQoKTtcclxuICAgIGZpZWxkc2V0LmRlc2NyaWJlZEJ5ID0gbmV3IE1ha2VIdG1sTGlzdFBpcGUoKS50cmFuc2Zvcm0oW3RoaXMuZ2V0SGludElkKCksIHRoaXMuZ2V0RXJyb3JJZCgpXSwgbnVsbCk7XHJcbiAgICBmaWVsZHNldC5yb2xlID0gJ2dyb3VwJztcclxuICAgIGZpZWxkc2V0LmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogTcOpdG9kb3MgcGFyYSBwcm9wb3JjaW9uYXIgZGF0b3NcclxuICAgKi9cclxuICBnZXRJdGVtcygpOiBJdGVtSW5wdXRHcm91cERhdGFbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtc0NvbXBvbmVudHMgJiYgdGhpcy5pdGVtc0NvbXBvbmVudHMubGVuZ3RoID8gdGhpcy5pdGVtc0NvbXBvbmVudHMudG9BcnJheSgpIDogdGhpcy5pdGVtcztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1MYWJlbFJlZihpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cElucHV0Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50ID8gaXRlbS5sYWJlbFJlZiA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTGFiZWxEYXRhKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IExhYmVsRGF0YSB7XHJcbiAgICByZXR1cm4gaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YSA6IHsgdGV4dDogaXRlbS5sYWJlbFRleHQgfTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSB8fCB0aGlzLmhhc0xlZ2VuZENvbXBvbmVudCgpIHx8IHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhXHJcbiAgICAgIHx8ICh0aGlzLmxlZ2VuZERhdGEgJiYgKHRoaXMubGVnZW5kRGF0YS50ZXh0IHx8IHRoaXMubGVnZW5kRGF0YS5odG1sKSkgfHwgdGhpcy5sZWdlbmRUZXh0KTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0Q29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5maWVsZHNldENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIGhhc0xlZ2VuZENvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMubGVnZW5kQ29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbU5hbWUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm5hbWVQcmVmaXggPyB0aGlzLm5hbWVQcmVmaXggKyAnLScgKyBpdGVtLm5hbWUgOiBpdGVtLm5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtU2VsZWN0T3B0aW9ucyhpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBTZWxlY3RJdGVtRGF0YVtdIHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cFNlbGVjdENvbXBvbmVudCA/XHJcbiAgICAgIGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QudG9BcnJheSgpIDogaXRlbS5zZWxlY3RJdGVtcztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1EaXZpZGVyVGVtcGxhdGUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyIGluc3RhbmNlb2YgSW5wdXRHcm91cERpdmlkZXJDb21wb25lbnQgPyBpdGVtLmRpdmlkZXIuZGl2aWRlckNvbnRlbnQgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbURpdmlkZXJIdG1sKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyLmh0bWwgPyBpdGVtLmRpdmlkZXIuaHRtbCA6IGA8cD4keyBTdHJpbmdVdGlscy5lc2NhcGVIdG1sKGl0ZW0uZGl2aWRlci50ZXh0KSB9PC9wPmA7XHJcbiAgfVxyXG5cclxuICBpc1NlbGVjdEl0ZW0oaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaGFzU2VsZWN0SXRlbXM7XHJcbiAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIElucHV0R3JvdXBTZWxlY3RDb21wb25lbnQpIHtcclxuICAgICAgaGFzU2VsZWN0SXRlbXMgPSBpdGVtLnNlbGVjdEl0ZW1Db21wb25lbnRMaXN0ICYmIGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QubGVuZ3RoID4gMDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGhhc1NlbGVjdEl0ZW1zID0gaXRlbS5zZWxlY3RJdGVtcztcclxuICAgIH1cclxuICAgIHJldHVybiBpdGVtLmlzU2VsZWN0ICYmIGhhc1NlbGVjdEl0ZW1zO1xyXG4gIH1cclxuXHJcbiAgaGFzSXRlbUxhYmVsKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKChpdGVtLmxhYmVsRGF0YSAmJiAoaXRlbS5sYWJlbERhdGEudGV4dCB8fCBpdGVtLmxhYmVsRGF0YS5odG1sKSkgfHwgaXRlbS5sYWJlbFRleHQpO1xyXG4gIH1cclxufVxyXG4iXX0=
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0LWdyb3VwL2lucHV0LWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTCxRQUFRLEVBQUUsTUFBTSxFQUVILFNBQVMsRUFFdkIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzVGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQWEvRCxNQUFNLE9BQU8sbUJB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QVcsU0FBQyxPQUFPOzJCQUU1QixLQUFLO2lCQUNMLEtBQUs7MkJBU0wsS0FBSzt3QkFDTCxLQUFLO3lCQUNMLEtBQUs7eUJBQ0wsS0FBSzs4QkFFTCxlQUFlLFNBQUMsdUJBQXVCO2dDQUd2QyxlQUFlLFNBQUMsaUJBQWlCOzhCQUdqQyxlQUFlLFNBQUMsZUFBZTt3QkFFL0IsU0FBUyxTQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0FBbkMvQjtJQURSLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO2tEQUNEO0FBSTVCO0lBRFIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7dURBQ1Y7QUEwQlE7SUFEbkMsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBQyxDQUFDOzhEQUNRO0FBR3ZDO0lBRGpDLGdCQUFnQixFQUFFOzREQUNnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dCxcclxuICBPcHRpb25hbCwgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLFxyXG4gIE9uQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0ZpZWxkc2V0RGF0YSwgTGVnZW5kRGF0YSwgSXRlbUlucHV0R3JvdXBEYXRhLCBMYWJlbERhdGEsIFNlbGVjdEl0ZW1EYXRhfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SW5wdXRHcm91cEl0ZW1Db21wb25lbnR9IGZyb20gJy4vaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGVzeU9uSW5wdXRDaGFuZ2V9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktb24taW5wdXQtY2hhbmdlLmRlY29yYXRvcic7XHJcbmltcG9ydCB7RGVzeUNvbnRlbnRDaGlsZH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XHJcbmltcG9ydCB7RmllbGRzZXRDb21wb25lbnR9IGZyb20gJy4uL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TWFrZUh0bWxMaXN0UGlwZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL21ha2UtaHRtbC1saXN0LnBpcGUnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBJbnB1dENvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1ncm91cC1pbnB1dC9pbnB1dC1ncm91cC1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtZ3JvdXAtc2VsZWN0L2lucHV0LWdyb3VwLXNlbGVjdC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0lucHV0R3JvdXBEaXZpZGVyQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWdyb3VwLWRpdmlkZXIvaW5wdXQtZ3JvdXAtZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1N0cmluZ1V0aWxzfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvc3RyaW5nLXV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1pbnB1dC1ncm91cCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LWdyb3VwLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0R3JvdXBDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0R3JvdXBDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0NoZWNrZWQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIG5nTW9kZWxHcm91cDogc3RyaW5nO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIGl0ZW1zOiBJdGVtSW5wdXRHcm91cERhdGFbXTtcclxuICBAT3V0cHV0KCkgaXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJdGVtSW5wdXRHcm91cERhdGFbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW1JbnB1dEdyb3VwRGF0YVtdPigpO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIG5hbWVQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcblxyXG4gIC8vICBmb3JtIGdyb3VwIGNsYXNzIC0gYXNpZ25hciBjbGFzZXMgYSBsYSBldGlxdWV0YSBkZXN5LWlucHV0LWdyb3VwXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jLWZvcm0tZ3JvdXAnKSBjZmcgPSB0cnVlO1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYy1mb3JtLWdyb3VwLS1lcnJvcicpIGNmZ3I6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGZvcm1Hcm91cENsYXNzZXM6IGFueTtcclxuXHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDIpIGluY2x1aXIgdGVtcGxhdGUgbGVnZW5kXHJcbiAgICogMykgaW5jbHVpciBsZWdlbmREYXRhIC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW5hIGxlZ2VuZGEgY29uIGxvcyBwYXJhbWV0cm9zIHBhc2Fkb3MgIChpbnRlcmZheiBleHB1ZXN0YSlcclxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgZmllbGRzZXREYXRhOiBGaWVsZHNldERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xyXG4gIEBJbnB1dCgpIGxlZ2VuZERhdGE6IExlZ2VuZERhdGE7XHJcbiAgQElucHV0KCkgbGVnZW5kVGV4dDogc3RyaW5nO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKElucHV0R3JvdXBJdGVtQ29tcG9uZW50KSBpdGVtc0NvbXBvbmVudHM6IFF1ZXJ5TGlzdDxJbnB1dEdyb3VwSXRlbUNvbXBvbmVudD47XHJcblxyXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXHJcbiAgQENvbnRlbnRDaGlsZHJlbihGaWVsZHNldENvbXBvbmVudCkgZmllbGRzZXRDb21wb25lbnQ6IEZpZWxkc2V0Q29tcG9uZW50O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xyXG5cclxuICBAVmlld0NoaWxkKCdpbm5lckh0bWwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbm5lckh0bWw6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgY29udGVudEluaXQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2ZnciA9ICh0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSB8fCB0aGlzLmZvcm1Hcm91cENsYXNzZXMgPT09ICdjLWZvcm0tZ3JvdXAtLWVycm9yJyk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRlbnRJbml0ID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SXRlbXMoKTtcclxuICAgICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgICBjb25zdCB2ID0gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXTtcclxuICAgICAgICBpdGVtLnZhbHVlID0gdiA/IHYgOiBudWxsO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uRXh0ZXJuYWxDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY29udGVudEluaXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXSA9IGl0ZW0udmFsdWUpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uSW50ZXJuYWxDaGFuZ2UoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhLCBpdGVtVmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgaXRlbU5hbWUgPSB0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB7fTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZVtpdGVtTmFtZV0gIT09IGl0ZW1WYWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlW2l0ZW1OYW1lXSA9IGl0ZW1WYWx1ZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuXHJcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cElucHV0Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50KSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZUNoYW5nZS5lbWl0KGl0ZW1WYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZSA9IGl0ZW1WYWx1ZTtcclxuICAgICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlRmllbGRzZXRQYXJhbXMoZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50KTogdm9pZCB7XHJcbiAgICBmaWVsZHNldC5jYWxsZXIgPSB0aGlzLmlubmVySHRtbDtcclxuICAgIGZpZWxkc2V0LmVycm9ySWQgPSB0aGlzLmdldEVycm9ySWQoKTtcclxuICAgIGZpZWxkc2V0LmRlc2NyaWJlZEJ5ID0gbmV3IE1ha2VIdG1sTGlzdFBpcGUoKS50cmFuc2Zvcm0oW3RoaXMuZ2V0SGludElkKCksIHRoaXMuZ2V0RXJyb3JJZCgpXSwgbnVsbCk7XHJcbiAgICBmaWVsZHNldC5yb2xlID0gJ2dyb3VwJztcclxuICAgIGZpZWxkc2V0LmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogTcOpdG9kb3MgcGFyYSBwcm9wb3JjaW9uYXIgZGF0b3NcclxuICAgKi9cclxuICBnZXRJdGVtcygpOiBJdGVtSW5wdXRHcm91cERhdGFbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtc0NvbXBvbmVudHMgJiYgdGhpcy5pdGVtc0NvbXBvbmVudHMubGVuZ3RoID8gdGhpcy5pdGVtc0NvbXBvbmVudHMudG9BcnJheSgpIDogdGhpcy5pdGVtcztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1MYWJlbFJlZihpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cElucHV0Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50ID8gaXRlbS5sYWJlbFJlZiA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTGFiZWxEYXRhKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IExhYmVsRGF0YSB7XHJcbiAgICByZXR1cm4gaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YSA6IHsgdGV4dDogaXRlbS5sYWJlbFRleHQgfTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSB8fCB0aGlzLmhhc0xlZ2VuZENvbXBvbmVudCgpIHx8IHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhXHJcbiAgICAgIHx8ICh0aGlzLmxlZ2VuZERhdGEgJiYgKHRoaXMubGVnZW5kRGF0YS50ZXh0IHx8IHRoaXMubGVnZW5kRGF0YS5odG1sKSkgfHwgdGhpcy5sZWdlbmRUZXh0KTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0Q29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5maWVsZHNldENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIGhhc0xlZ2VuZENvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMubGVnZW5kQ29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbU5hbWUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm5hbWVQcmVmaXggPyB0aGlzLm5hbWVQcmVmaXggKyAnLScgKyBpdGVtLm5hbWUgOiBpdGVtLm5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtU2VsZWN0T3B0aW9ucyhpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBTZWxlY3RJdGVtRGF0YVtdIHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cFNlbGVjdENvbXBvbmVudCA/XHJcbiAgICAgIGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QudG9BcnJheSgpIDogaXRlbS5zZWxlY3RJdGVtcztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1EaXZpZGVyVGVtcGxhdGUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyIGluc3RhbmNlb2YgSW5wdXRHcm91cERpdmlkZXJDb21wb25lbnQgPyBpdGVtLmRpdmlkZXIuZGl2aWRlckNvbnRlbnQgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbURpdmlkZXJIdG1sKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbS5kaXZpZGVyLmh0bWwgPyBpdGVtLmRpdmlkZXIuaHRtbCA6IGA8cD4keyBTdHJpbmdVdGlscy5lc2NhcGVIdG1sKGl0ZW0uZGl2aWRlci50ZXh0KSB9PC9wPmA7XHJcbiAgfVxyXG5cclxuICBpc1NlbGVjdEl0ZW0oaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaGFzU2VsZWN0SXRlbXM7XHJcbiAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIElucHV0R3JvdXBTZWxlY3RDb21wb25lbnQpIHtcclxuICAgICAgaGFzU2VsZWN0SXRlbXMgPSBpdGVtLnNlbGVjdEl0ZW1Db21wb25lbnRMaXN0ICYmIGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QubGVuZ3RoID4gMDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGhhc1NlbGVjdEl0ZW1zID0gaXRlbS5zZWxlY3RJdGVtcztcclxuICAgIH1cclxuICAgIHJldHVybiBpdGVtLmlzU2VsZWN0ICYmIGhhc1NlbGVjdEl0ZW1zO1xyXG4gIH1cclxuXHJcbiAgaGFzSXRlbUxhYmVsKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKChpdGVtLmxhYmVsRGF0YSAmJiAoaXRlbS5sYWJlbERhdGEudGV4dCB8fCBpdGVtLmxhYmVsRGF0YS5odG1sKSkgfHwgaXRlbS5sYWJlbFRleHQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -101,7 +101,7 @@ export class RadioItemComponent extends ContentBaseComponent {
101
101
  RadioItemComponent.decorators = [
102
102
  { type: Component, args: [{
103
103
  selector: 'desy-radio-item',
104
- template: "<div [ngClass]=\"{'border-t border-b border-neutral-base -mb-px': hasDividers()}\" [class]=\"classes\">\r\n <div *ngIf=\"divider\"><p>{{ divider }}</p></div>\r\n <div *ngIf=\"!divider\">\r\n <div class=\"relative flex items-start py-base\">\r\n <div class=\"flex items-center mx-sm\">\r\n <input #input class=\"w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base\"\r\n [attr.id]=\"radioId\"\r\n [attr.name]=\"name ? name : getNameRadio()\"\r\n type=\"radio\"\r\n [value]=\"value\" (change)=\"hasChanged()\"\r\n [checked]=\"checked\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.aria-controls]=\"conditionalContentList && conditionalContentList.length > 0 ? 'conditional-' + this.radioId : null\"\r\n [attr.aria-describedby]=\"[getDescribedBy(), getItemHintId()] | makeHtmlList:null\"\r\n [attr.aria-invalid]=\"hasError ? true : 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-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 </div>\r\n\r\n <div class=\"pt-0.5 leading-5\">\r\n <ng-container *ngIf=\"labelComponentList && labelComponentList.length > 0\">\r\n <ng-content select=\"desy-label\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!(labelComponentList && labelComponentList.length > 0)\">\r\n <desy-label [for]=\"radioId\">\r\n <ng-content></ng-content>\r\n </desy-label>\r\n </ng-container>\r\n\r\n <ng-content select=\"desy-hint\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"conditional && conditionalContentList && conditionalContentList.length > 0 && checked\" @displayConditional\r\n class=\"mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base\"\r\n [attr.id]=\"'conditional-' + this.radioId\">\r\n <ng-container *desyCustomInnerContent=\"{ component: conditionalContentList.first }\"></ng-container>\r\n </div>\r\n</div>\r\n",
104
+ template: "<div [ngClass]=\"{'border-t border-b border-neutral-base -mb-px': hasDividers()}\" [class]=\"classes\">\r\n <div *ngIf=\"divider\"><p>{{ divider }}</p></div>\r\n <div *ngIf=\"!divider\">\r\n <div class=\"relative flex items-start py-base\">\r\n <div class=\"flex items-center mx-sm\">\r\n <input #input class=\"w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base\"\r\n [attr.id]=\"radioId\"\r\n [attr.name]=\"name ? name : getNameRadio()\"\r\n type=\"radio\"\r\n [value]=\"value\" (change)=\"hasChanged()\"\r\n [checked]=\"checked\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.aria-controls]=\"conditionalContentList && conditionalContentList.length > 0 ? 'conditional-' + this.radioId : null\"\r\n [attr.aria-describedby]=\"[getDescribedBy(), getItemHintId()] | makeHtmlList:null\"\r\n [attr.aria-invalid]=\"hasError ? true : 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-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 </div>\r\n \r\n <div class=\"pt-0.5 leading-5\">\r\n <ng-container *ngIf=\"labelComponentList && labelComponentList.length > 0\">\r\n <ng-content select=\"desy-label\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!(labelComponentList && labelComponentList.length > 0)\">\r\n <desy-label [for]=\"radioId\">\r\n <ng-content></ng-content>\r\n </desy-label>\r\n </ng-container>\r\n \r\n <ng-content select=\"desy-hint\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"conditional && conditionalContentList && conditionalContentList.length > 0 && checked\" @displayConditional\r\n class=\"mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base\"\r\n [attr.id]=\"'conditional-' + this.radioId\">\r\n <ng-container *desyCustomInnerContent=\"{ component: conditionalContentList.first }\"></ng-container>\r\n </div>\r\n</div>\r\n\r\n",
105
105
  animations: [
106
106
  trigger('displayConditional', [
107
107
  state('void', style({
@@ -133,12 +133,12 @@ RadioItemComponent.propDecorators = {
133
133
  value: [{ type: Input }],
134
134
  conditional: [{ type: Input }],
135
135
  disabled: [{ type: Input }],
136
- classes: [{ type: Input }],
137
136
  divider: [{ type: Input }],
137
+ classes: [{ type: Input }],
138
138
  labelComponentList: [{ type: ContentChildren, args: [LabelComponent,] }],
139
139
  hintComponentList: [{ type: ContentChildren, args: [HintComponent,] }],
140
140
  conditionalContentList: [{ type: ContentChildren, args: [ContentComponent,] }],
141
141
  checked: [{ type: Input }],
142
142
  checkedChange: [{ type: Output }]
143
143
  };
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUVmLFlBQVksRUFDWixJQUFJLEVBQ0osS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBeUJ4RCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsb0JBQW9CO0lBd0IxRCxZQUE0QixNQUF1QixFQUFVLGlCQUFvQztRQUMvRixLQUFLLEVBQUUsQ0FBQztRQURrQixXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFQdkYsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVyRSxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBT1IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsTUFBTSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztTQUMvRDtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFFaEMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUN6QzthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ3hFLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUU1QixJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLHdCQUF3QixFQUFFLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWdCO1FBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFFSCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUUsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFjO1FBQzFCLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUN4QjthQUFNO1lBQ0wsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNoRixJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7YUFDekI7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLFFBQVEsSUFBSSxLQUFLLEVBQUUsQ0FBQzthQUN2QztTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNsRDtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQy9ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4RDtRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O01BRUU7SUFFRixXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3JFLENBQUM7OztZQXRKRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0Iscy9GQUEwQztnQkFDMUMsVUFBVSxFQUFFO29CQUNWLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTt3QkFDNUIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUM7NEJBQ2xCLE9BQU8sRUFBRSxLQUFLOzRCQUNkLFNBQVMsRUFBRSxhQUFhO3lCQUN6QixDQUFDLENBQUM7d0JBQ0gsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUM7NEJBQ2YsT0FBTyxFQUFFLEtBQUs7NEJBQ2QsU0FBUyxFQUFFLFlBQVk7eUJBQ3hCLENBQUMsQ0FBQzt3QkFDSCxVQUFVLENBQUMsUUFBUSxFQUFFOzRCQUNuQixPQUFPLENBQUMsZ0JBQWdCLENBQUM7eUJBQzFCLENBQUM7d0JBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTs0QkFDbkIsS0FBSyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQzt5QkFDOUMsQ0FBQztxQkFDSCxDQUFDO2lCQUNIO2FBQ0Y7OztZQTFCTyxlQUFlLHVCQW1EUixJQUFJO1lBcEVqQixpQkFBaUI7OzsyQkE4Q2hCLFNBQVMsU0FBQyxPQUFPO2lCQUVqQixLQUFLO21CQUNMLEtBQUs7b0JBQ0wsS0FBSzswQkFDTCxLQUFLO3VCQUNMLEtBQUs7c0JBQ0wsS0FBSztzQkFDTCxLQUFLO2lDQUVMLGVBQWUsU0FBQyxjQUFjO2dDQUM5QixlQUFlLFNBQUMsYUFBYTtxQ0FDN0IsZUFBZSxTQUFDLGdCQUFnQjtzQkFFaEMsS0FBSzs0QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBRdWVyeUxpc3QsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJdGVtUmFkaW9EYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtDb250ZW50QmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQge0xhYmVsQ29tcG9uZW50fSBmcm9tICcuLi8uLi9sYWJlbC9sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0NvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1JhZGlvc0NvbXBvbmVudH0gZnJvbSAnLi4vcmFkaW9zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7YW5pbWF0ZSwgYW5pbWF0ZUNoaWxkLCBxdWVyeSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHtIaW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi9oaW50L2hpbnQuY29tcG9uZW50JztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktcmFkaW8taXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2Rpc3BsYXlDb25kaXRpb25hbCcsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7XHJcbiAgICAgICAgb3BhY2l0eTogJzAuMCcsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMC45NSknXHJcbiAgICAgIH0pKSxcclxuICAgICAgc3RhdGUoJyonLCBzdHlsZSh7XHJcbiAgICAgICAgb3BhY2l0eTogJzEuMCcsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMS4wKSdcclxuICAgICAgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXHJcbiAgICAgICAgYW5pbWF0ZSgnMTAwbXMgZWFzZS1vdXQnKVxyXG4gICAgICBdKSxcclxuICAgICAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xyXG4gICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7b3B0aW9uYWw6IHRydWV9KVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb0l0ZW1Db21wb25lbnQgZXh0ZW5kcyBDb250ZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEl0ZW1SYWRpb0RhdGEge1xyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcclxuICBASW5wdXQoKSBjb25kaXRpb25hbDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZGl2aWRlcjogc3RyaW5nO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKExhYmVsQ29tcG9uZW50KSBsYWJlbENvbXBvbmVudExpc3Q6IFF1ZXJ5TGlzdDxMYWJlbENvbXBvbmVudD47XHJcbiAgQENvbnRlbnRDaGlsZHJlbihIaW50Q29tcG9uZW50KSBoaW50Q29tcG9uZW50TGlzdDogUXVlcnlMaXN0PEhpbnRDb21wb25lbnQ+O1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29uZGl0aW9uYWxDb250ZW50TGlzdDogUXVlcnlMaXN0PENvbnRlbnRDb21wb25lbnQ+O1xyXG5cclxuICBASW5wdXQoKSBjaGVja2VkOiBib29sZWFuO1xyXG4gIEBPdXRwdXQoKSBjaGVja2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBpbmRleCA9IDA7XHJcbiAgbGFzdENoZWNrZWQ7XHJcbiAgbGFzdFZhbHVlO1xyXG4gIHJhZGlvSWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgcHJpdmF0ZSByYWRpb3M6IFJhZGlvc0NvbXBvbmVudCwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICBpZiAoIXRoaXMucmFkaW9zKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCdSYWRpb3MgaXRlbXMgbXVzdCBiZSBpbnNpZGUgb2YgUmFkaW9zQ29tcG9uZW50Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmFkaW9zLm1hcmtGb3JVcGRhdGVDaGVja2JveElkcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJhZGlvcy5tYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHMoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5jaGVja2VkICE9PSB0aGlzLmxhc3RDaGVja2VkICYmIHRoaXMuaXNJbml0KCkpIHtcclxuICAgICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuY2hlY2tlZCk7XHJcbiAgICAgIHRoaXMucmFkaW9zLnVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXMoKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5sYXN0VmFsdWUgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmxhc3RWYWx1ZSAhPT0gdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnJhZGlvcy51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmxhc3RWYWx1ZSA9IHRoaXMudmFsdWU7XHJcblxyXG4gICAgaWYgKHRoaXMuaWQgIT09IHRoaXMucmFkaW9JZCkge1xyXG4gICAgICB0aGlzLnJhZGlvcy5tYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0Q2hlY2tlZCh0aGlzLmNoZWNrZWQpO1xyXG4gICAgdGhpcy5yYWRpb3MudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2hlY2tlZChjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoZWNrZWQgPSBjaGVja2VkO1xyXG4gICAgdGhpcy5sYXN0Q2hlY2tlZCA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLmNoZWNrZWRDaGFuZ2UuZW1pdChjaGVja2VkKTtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBGdW5jaW9uZXMgcGFyYSBhcG9ydGFyIGluZm9ybWFjacOzbiBkZXNkZSBlbCBjb21wb25lbnRlIGNoZWNrYm94ZXMgcXVlIGxvIGNvbnRpZW5lXHJcbiAgICovXHJcblxyXG4gIGdldEl0ZW1IaW50SWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmhpbnRDb21wb25lbnRMaXN0ICYmIHRoaXMuaGludENvbXBvbmVudExpc3QubGVuZ3RoID4gMCAmJiB0aGlzLnJhZGlvSWQgPyB0aGlzLnJhZGlvSWQgKyAnLWl0ZW0taGludCcgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgaGFzQ2hhbmdlZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0Q2hlY2tlZCh0aGlzLmlzSW5wdXRDaGVja2VkKCkpO1xyXG4gICAgdGhpcy5yYWRpb3MudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpO1xyXG4gIH1cclxuXHJcbiAgaXNJbml0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5pbnB1dEVsZW1lbnQ7XHJcbiAgfVxyXG5cclxuICBpc0lucHV0Q2hlY2tlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlucHV0RWxlbWVudCA/IHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA6IG51bGw7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVSYWRpb0lkKGluZGV4PzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pZCkge1xyXG4gICAgICB0aGlzLnJhZGlvSWQgPSB0aGlzLmlkO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaWRQcmVmaXggPSB0aGlzLnJhZGlvcy5pZFByZWZpeCA/IHRoaXMucmFkaW9zLmlkUHJlZml4IDogdGhpcy5yYWRpb3MubmFtZTtcclxuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XHJcbiAgICAgICAgdGhpcy5yYWRpb0lkID0gaWRQcmVmaXg7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5yYWRpb0lkID0gYCR7aWRQcmVmaXh9LSR7aW5kZXh9YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmxhYmVsQ29tcG9uZW50TGlzdCAmJiB0aGlzLmxhYmVsQ29tcG9uZW50TGlzdC5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMubGFiZWxDb21wb25lbnRMaXN0LmZpcnN0LmZvciA9IHRoaXMucmFkaW9JZDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5oaW50Q29tcG9uZW50TGlzdCAmJiB0aGlzLmhpbnRDb21wb25lbnRMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5oaW50Q29tcG9uZW50TGlzdC5maXJzdC5pZCA9IHRoaXMuZ2V0SXRlbUhpbnRJZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAqIEZ1bmNpb25lcyBwYXJhIGFwb3J0YXIgaW5mb3JtYWNpw7NuIGRlc2RlIGVsIGNvbXBvbmVudGUgY2hlY2tib3hlcyBxdWUgbG8gY29udGllbmVcclxuICAqL1xyXG5cclxuICBoYXNEaXZpZGVycygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnJhZGlvcy5oYXNEaXZpZGVycztcclxuICB9XHJcblxyXG4gIGhhc0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucmFkaW9zLmhhc0Vycm9yc01lc3NhZ2UoKTtcclxuICB9XHJcblxyXG4gIGdldE5hbWVSYWRpbygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucmFkaW9zLm5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXREZXNjcmliZWRCeSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICF0aGlzLnJhZGlvcy5oYXNGaWVsZHNldCgpID8gdGhpcy5yYWRpb3MuZGVzY3JpYmVkQnkgOiBudWxsO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvcmFkaW9zL3JhZGlvLWl0ZW0vcmFkaW8taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUVmLFlBQVksRUFDWixJQUFJLEVBQ0osS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBeUJ4RCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsb0JBQW9CO0lBd0IxRCxZQUE0QixNQUF1QixFQUFVLGlCQUFvQztRQUMvRixLQUFLLEVBQUUsQ0FBQztRQURrQixXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFQdkYsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVyRSxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBT1IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFD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RSxhQUFhO3lCQUN6QixDQUFDLENBQUM7d0JBQ0gsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUM7NEJBQ2YsT0FBTyxFQUFFLEtBQUs7NEJBQ2QsU0FBUyxFQUFFLFlBQVk7eUJBQ3hCLENBQUMsQ0FBQzt3QkFDSCxVQUFVLENBQUMsUUFBUSxFQUFFOzRCQUNuQixPQUFPLENBQUMsZ0JBQWdCLENBQUM7eUJBQzFCLENBQUM7d0JBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTs0QkFDbkIsS0FBSyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQzt5QkFDOUMsQ0FBQztxQkFDSCxDQUFDO2lCQUNIO2FBQ0Y7OztZQTFCTyxlQUFlLHVCQW1EUixJQUFJO1lBcEVqQixpQkFBaUI7OzsyQkE4Q2hCLFNBQVMsU0FBQyxPQUFPO2lCQUVqQixLQUFLO21CQUNMLEtBQUs7b0JBQ0wsS0FBSzswQkFDTCxLQUFLO3VCQUNMLEtBQUs7c0JBQ0wsS0FBSztzQkFDTCxLQUFLO2lDQUVMLGVBQWUsU0FBQyxjQUFjO2dDQUM5QixlQUFlLFNBQUMsYUFBYTtxQ0FDN0IsZUFBZSxTQUFDLGdCQUFnQjtzQkFFaEMsS0FBSzs0QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBRdWVyeUxpc3QsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJdGVtUmFkaW9EYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtDb250ZW50QmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQge0xhYmVsQ29tcG9uZW50fSBmcm9tICcuLi8uLi9sYWJlbC9sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0NvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1JhZGlvc0NvbXBvbmVudH0gZnJvbSAnLi4vcmFkaW9zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7YW5pbWF0ZSwgYW5pbWF0ZUNoaWxkLCBxdWVyeSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHtIaW50Q29tcG9uZW50fSBmcm9tICcuLi8uLi9oaW50L2hpbnQuY29tcG9uZW50JztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktcmFkaW8taXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2Rpc3BsYXlDb25kaXRpb25hbCcsIFtcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7XHJcbiAgICAgICAgb3BhY2l0eTogJzAuMCcsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMC45NSknXHJcbiAgICAgIH0pKSxcclxuICAgICAgc3RhdGUoJyonLCBzdHlsZSh7XHJcbiAgICAgICAgb3BhY2l0eTogJzEuMCcsXHJcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGUoMS4wKSdcclxuICAgICAgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXHJcbiAgICAgICAgYW5pbWF0ZSgnMTAwbXMgZWFzZS1vdXQnKVxyXG4gICAgICBdKSxcclxuICAgICAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xyXG4gICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7b3B0aW9uYWw6IHRydWV9KVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb0l0ZW1Db21wb25lbnQgZXh0ZW5kcyBDb250ZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEl0ZW1SYWRpb0RhdGEge1xyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcclxuICBASW5wdXQoKSBjb25kaXRpb25hbDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkaXZpZGVyOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY2xhc3Nlczogc3RyaW5nO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKExhYmVsQ29tcG9uZW50KSBsYWJlbENvbXBvbmVudExpc3Q6IFF1ZXJ5TGlzdDxMYWJlbENvbXBvbmVudD47XHJcbiAgQENvbnRlbnRDaGlsZHJlbihIaW50Q29tcG9uZW50KSBoaW50Q29tcG9uZW50TGlzdDogUXVlcnlMaXN0PEhpbnRDb21wb25lbnQ+O1xyXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29uZGl0aW9uYWxDb250ZW50TGlzdDogUXVlcnlMaXN0PENvbnRlbnRDb21wb25lbnQ+O1xyXG5cclxuICBASW5wdXQoKSBjaGVja2VkOiBib29sZWFuO1xyXG4gIEBPdXRwdXQoKSBjaGVja2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBpbmRleCA9IDA7XHJcbiAgbGFzdENoZWNrZWQ7XHJcbiAgbGFzdFZhbHVlO1xyXG4gIHJhZGlvSWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgcHJpdmF0ZSByYWRpb3M6IFJhZGlvc0NvbXBvbmVudCwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICBpZiAoIXRoaXMucmFkaW9zKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCdSYWRpb3MgaXRlbXMgbXVzdCBiZSBpbnNpZGUgb2YgUmFkaW9zQ29tcG9uZW50Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmFkaW9zLm1hcmtGb3JVcGRhdGVDaGVja2JveElkcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJhZGlvcy5tYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHMoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNoZWNrZWQgIT09IHRoaXMubGFzdENoZWNrZWQgJiYgdGhpcy5pc0luaXQoKSkge1xyXG4gICAgICB0aGlzLnNldENoZWNrZWQodGhpcy5jaGVja2VkKTtcclxuICAgICAgdGhpcy5yYWRpb3MudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmxhc3RWYWx1ZSAhPT0gdW5kZWZpbmVkICYmIHRoaXMubGFzdFZhbHVlICE9PSB0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMucmFkaW9zLnVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXMoKTtcclxuICAgIH1cclxuICAgIHRoaXMubGFzdFZhbHVlID0gdGhpcy52YWx1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5pZCAhPT0gdGhpcy5yYWRpb0lkKSB7XHJcbiAgICAgIHRoaXMucmFkaW9zLm1hcmtGb3JVcGRhdGVDaGVja2JveElkcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuY2hlY2tlZCk7XHJcbiAgICB0aGlzLnJhZGlvcy51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKCk7XHJcbiAgfVxyXG5cclxuICBzZXRDaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuY2hlY2tlZCA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLmxhc3RDaGVja2VkID0gY2hlY2tlZDtcclxuICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KGNoZWNrZWQpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIEZ1bmNpb25lcyBwYXJhIGFwb3J0YXIgaW5mb3JtYWNpw7NuIGRlc2RlIGVsIGNvbXBvbmVudGUgY2hlY2tib3hlcyBxdWUgbG8gY29udGllbmVcclxuICAgKi9cclxuXHJcbiAgZ2V0SXRlbUhpbnRJZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaGludENvbXBvbmVudExpc3QgJiYgdGhpcy5oaW50Q29tcG9uZW50TGlzdC5sZW5ndGggPiAwICYmIHRoaXMucmFkaW9JZCA/IHRoaXMucmFkaW9JZCArICctaXRlbS1oaW50JyA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBoYXNDaGFuZ2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRDaGVja2VkKHRoaXMuaXNJbnB1dENoZWNrZWQoKSk7XHJcbiAgICB0aGlzLnJhZGlvcy51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKCk7XHJcbiAgfVxyXG5cclxuICBpc0luaXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmlucHV0RWxlbWVudDtcclxuICB9XHJcblxyXG4gIGlzSW5wdXRDaGVja2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbGVtZW50ID8gdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5jaGVja2VkIDogbnVsbDtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVJhZGlvSWQoaW5kZXg/OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlkKSB7XHJcbiAgICAgIHRoaXMucmFkaW9JZCA9IHRoaXMuaWQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBpZFByZWZpeCA9IHRoaXMucmFkaW9zLmlkUHJlZml4ID8gdGhpcy5yYWRpb3MuaWRQcmVmaXggOiB0aGlzLnJhZGlvcy5uYW1lO1xyXG4gICAgICBpZiAoaW5kZXggPT09IDApIHtcclxuICAgICAgICB0aGlzLnJhZGlvSWQgPSBpZFByZWZpeDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJhZGlvSWQgPSBgJHtpZFByZWZpeH0tJHtpbmRleH1gO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMubGFiZWxDb21wb25lbnRMaXN0ICYmIHRoaXMubGFiZWxDb21wb25lbnRMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5sYWJlbENvbXBvbmVudExpc3QuZmlyc3QuZm9yID0gdGhpcy5yYWRpb0lkO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmhpbnRDb21wb25lbnRMaXN0ICYmIHRoaXMuaGludENvbXBvbmVudExpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmhpbnRDb21wb25lbnRMaXN0LmZpcnN0LmlkID0gdGhpcy5nZXRJdGVtSGludElkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICogRnVuY2lvbmVzIHBhcmEgYXBvcnRhciBpbmZvcm1hY2nDs24gZGVzZGUgZWwgY29tcG9uZW50ZSBjaGVja2JveGVzIHF1ZSBsbyBjb250aWVuZVxyXG4gICovXHJcblxyXG4gIGhhc0RpdmlkZXJzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucmFkaW9zLmhhc0RpdmlkZXJzO1xyXG4gIH1cclxuXHJcbiAgaGFzRXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5yYWRpb3MuaGFzRXJyb3JzTWVzc2FnZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TmFtZVJhZGlvKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5yYWRpb3MubmFtZTtcclxuICB9XHJcblxyXG4gIGdldERlc2NyaWJlZEJ5KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gIXRoaXMucmFkaW9zLmhhc0ZpZWxkc2V0KCkgPyB0aGlzLnJhZGlvcy5kZXNjcmliZWRCeSA6IG51bGw7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -188,7 +188,7 @@ export class RadiosComponent extends FormFieldComponent {
188
188
  RadiosComponent.decorators = [
189
189
  { type: Component, args: [{
190
190
  selector: 'desy-radios',
191
- template: "<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 [headingLevel]=\"fieldsetData.headingLevel\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n [role]=\"fieldsetData.role\"\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\"></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\"></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\"></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\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 <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\r\n <div class=\"c-radios\" [ngClass]=\"classes\"\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\r\n <ng-container *ngIf=\"radioComponentItems && radioComponentItems.length > 0\">\r\n <ng-content select=\"desy-radio-item\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!(radioComponentItems && radioComponentItems.length > 0) && items\">\r\n <desy-radio-item *ngFor=\"let item of items; index as i\"\r\n [id]=\"item.id\"\r\n [disabled]=\"item.disabled\"\r\n [classes]=\"item.classes\"\r\n [value]=\"item.value\"\r\n [(checked)]=\"item.checked\"\r\n [conditional]=\"item.conditional\"\r\n [divider]=\"item.divider\"\r\n\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\">\r\n <desy-label [text]=\"item.text\" [html]=\"item.html\"\r\n [classes]=\"item.labelData ? item.labelData.classes : null\"\r\n [role]=\"item.labelData ? item.labelData.role : null\"\r\n [ariaLabel]=\"item.labelData ? item.labelData.ariaLabel : null\"\r\n [ariaDescribedBy]=\"item.labelData ? item.labelData.ariaDescribedBy: null\"\r\n [ariaLabelledBy]=\"item.labelData ? item.labelData.ariaLabelledBy : null\"\r\n [ariaHidden]=\"item.labelData ? item.labelData.ariaHidden : null\"\r\n [ariaDisabled]=\"item.labelData ? item.labelData.ariaDisabled : null\"\r\n [ariaControls]=\"item.labelData ? item.labelData.ariaControls : null\"\r\n [ariaCurrent]=\"item.labelData ? item.labelData.ariaCurrent : null\"\r\n [ariaLive]=\"item.labelData ? item.labelData.ariaLive : null\"\r\n [ariaExpanded]=\"item.labelData ? item.labelData.ariaExpanded : null\"\r\n [ariaErrorMessage]=\"item.labelData ? item.labelData.ariaErrorMessage : null\"\r\n [ariaHasPopup]=\"item.labelData ? item.labelData.ariaHasPopup : null\"\r\n [tabindex]=\"tabindex ? item.labelData.tabindex : null\"></desy-label>\r\n <desy-hint *ngIf=\"item.hintData && (item.hintData.text || item.hintData.html)\"\r\n [text]=\"item.hintData.text\"\r\n [html]=\"item.hintData.html\"\r\n [classes]=\"item.hintData.classes\"\r\n [role]=\"item.hintData.role\"\r\n [ariaLabel]=\"item.hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"item.hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"item.hintData.ariaHidden\"\r\n [ariaDisabled]=\"item.hintData.ariaDisabled\"\r\n [ariaControls]=\"item.hintData.ariaControls\"\r\n [ariaCurrent]=\"item.hintData.ariaCurrent\"\r\n [ariaLive]=\"item.hintData.ariaLive\"\r\n [ariaExpanded]=\"item.hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.hintData.ariaHasPopup\"\r\n [tabindex]=\"item.hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!item.hintData && item.hintText\" [text]=\"item.hintText\"></desy-hint>\r\n <desy-content *ngIf=\"item.conditionalHtml\">\r\n <ng-container *ngTemplateOutlet=\"item.conditionalHtml\"></ng-container>\r\n </desy-content>\r\n </desy-radio-item>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n",
191
+ template: "<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 [headingLevel]=\"fieldsetData.headingLevel\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n [role]=\"fieldsetData.role\"\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\"></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\"></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\"></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\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 <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\r\n <div class=\"['c-radios', 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\r\n <ng-container *ngIf=\"radioComponentItems && radioComponentItems.length > 0\">\r\n <ng-content select=\"desy-radio-item\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!(radioComponentItems && radioComponentItems.length > 0) && items\">\r\n <desy-radio-item *ngFor=\"let item of items; index as i\"\r\n [id]=\"item.id\"\r\n [disabled]=\"item.disabled\"\r\n [classes]=\"item.classes\"\r\n [value]=\"item.value\"\r\n [(checked)]=\"item.checked\"\r\n [conditional]=\"item.conditional\"\r\n [divider]=\"item.divider\"\r\n\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\">\r\n <desy-label [text]=\"item.text\" [html]=\"item.html\"\r\n [classes]=\"item.labelData ? item.labelData.classes : null\"\r\n [role]=\"item.labelData ? item.labelData.role : null\"\r\n [ariaLabel]=\"item.labelData ? item.labelData.ariaLabel : null\"\r\n [ariaDescribedBy]=\"item.labelData ? item.labelData.ariaDescribedBy: null\"\r\n [ariaLabelledBy]=\"item.labelData ? item.labelData.ariaLabelledBy : null\"\r\n [ariaHidden]=\"item.labelData ? item.labelData.ariaHidden : null\"\r\n [ariaDisabled]=\"item.labelData ? item.labelData.ariaDisabled : null\"\r\n [ariaControls]=\"item.labelData ? item.labelData.ariaControls : null\"\r\n [ariaCurrent]=\"item.labelData ? item.labelData.ariaCurrent : null\"\r\n [ariaLive]=\"item.labelData ? item.labelData.ariaLive : null\"\r\n [ariaExpanded]=\"item.labelData ? item.labelData.ariaExpanded : null\"\r\n [ariaErrorMessage]=\"item.labelData ? item.labelData.ariaErrorMessage : null\"\r\n [ariaHasPopup]=\"item.labelData ? item.labelData.ariaHasPopup : null\"\r\n [tabindex]=\"tabindex ? item.labelData.tabindex : null\"></desy-label>\r\n <desy-hint *ngIf=\"item.hintData && (item.hintData.text || item.hintData.html)\"\r\n [text]=\"item.hintData.text\"\r\n [html]=\"item.hintData.html\"\r\n [classes]=\"item.hintData.classes\"\r\n [role]=\"item.hintData.role\"\r\n [ariaLabel]=\"item.hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"item.hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"item.hintData.ariaHidden\"\r\n [ariaDisabled]=\"item.hintData.ariaDisabled\"\r\n [ariaControls]=\"item.hintData.ariaControls\"\r\n [ariaCurrent]=\"item.hintData.ariaCurrent\"\r\n [ariaLive]=\"item.hintData.ariaLive\"\r\n [ariaExpanded]=\"item.hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.hintData.ariaHasPopup\"\r\n [tabindex]=\"item.hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!item.hintData && item.hintText\" [text]=\"item.hintText\"></desy-hint>\r\n <desy-content *ngIf=\"item.conditionalHtml\">\r\n <ng-container *ngTemplateOutlet=\"item.conditionalHtml\"></ng-container>\r\n </desy-content>\r\n </desy-radio-item>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n",
192
192
  providers: [
193
193
  {
194
194
  provide: NG_VALUE_ACCESSOR,
@@ -230,4 +230,4 @@ __decorate([
230
230
  __decorate([
231
231
  DesyContentChild()
232
232
  ], RadiosComponent.prototype, "legendComponent", void 0);
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW9zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9yYWRpb3MvcmFkaW9zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUVPLFNBQVMsRUFDdEIsWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUczRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUN6RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQWE1RixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxrQkFBdUI7SUFYNUQ7O1FBbUNZLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFtQnBELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0lBME05QixDQUFDO0lBeE1DLFNBQVM7UUFDUCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxD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aUJBQWlCLENBQUMsY0FBYyxDQUFDOzZDQUNaO0FBWWM7SUFEbkMsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBQyxDQUFDOzBEQUNRO0FBR3ZDO0lBRGpDLGdCQUFnQixFQUFFO3dEQUNnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIERvQ2hlY2ssXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLFxyXG4gIFZpZXdDaGlsZHJlblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge05HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7RmllbGRzZXREYXRhLCBJdGVtUmFkaW9EYXRhLCBMZWdlbmREYXRhfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtMZWdlbmRDb21wb25lbnR9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuaW1wb3J0IHtGb3JtRmllbGRDb21wb25lbnR9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1JhZGlvSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9yYWRpby1pdGVtL3JhZGlvLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtGaWVsZHNldENvbXBvbmVudH0gZnJvbSAnLi4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHtNYWtlSHRtbExpc3RQaXBlfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvcGlwZXMvbWFrZS1odG1sLWxpc3QucGlwZSc7XHJcbmltcG9ydCB7SGludENvbXBvbmVudH0gZnJvbSAnLi4vaGludC9oaW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RXJyb3JNZXNzYWdlQ29tcG9uZW50fSBmcm9tICcuLi9lcnJvci1tZXNzYWdlL2Vycm9yLW1lc3NhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1vbi1pbnB1dC1jaGFuZ2UuZGVjb3JhdG9yJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1yYWRpb3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpb3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmFkaW9zQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb3NDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyQ29udGVudEluaXQge1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIGNvbXBvbmVudGUgRmllbGRzZXRDb21wb25lbnRcclxuICAgKiAyKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDMpIGluY2x1aXIgY29tcG9uZW50ZSBMZWdlbmRDb21wb25lbnRcclxuICAgKiA0KSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxyXG4gICAqIDUpIGluY2x1aXIgbGVnZW5kRGF0YSAtIGluY2x1aXIgdW4gZmllbGRzZXQgY29uIHVuYSBsZWdlbmRhIGNvbiBsb3MgcGFyYW1ldHJvcyBwYXNhZG9zICAoaW50ZXJmYXogZXhwdWVzdGEpXHJcbiAgICogNikgaW5jbHVpciBsZWdlbmRUZXh0IC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW4gdGV4dG8gZW4gbGEgbGVnZW5kYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZpZWxkc2V0RGF0YTogRmllbGRzZXREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFJlZjogVGVtcGxhdGVSZWY8TGVnZW5kQ29tcG9uZW50PjtcclxuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFRleHQ6IHN0cmluZztcclxuXHJcbiAgQERlc3lPbklucHV0Q2hhbmdlKCdvbklkUHJlZml4Q2hhbmdlJylcclxuICBASW5wdXQoKSBpZFByZWZpeDogc3RyaW5nO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uTmFtZUNoYW5nZScpXHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBpdGVtczogSXRlbVJhZGlvRGF0YVtdO1xyXG4gIEBPdXRwdXQoKSBpdGVtc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbVJhZGlvRGF0YVtdPigpO1xyXG5cclxuICBASW5wdXQoKSBmb3JtR3JvdXBDbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaGFzRGl2aWRlcnM6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGFzRXJyb3I6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgY2xhc3Nlczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRlc2NyaWJlZEJ5OiBzdHJpbmc7XHJcblxyXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXHJcbiAgQENvbnRlbnRDaGlsZHJlbihGaWVsZHNldENvbXBvbmVudCkgZmllbGRzZXRDb21wb25lbnQ6IEZpZWxkc2V0Q29tcG9uZW50O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFJhZGlvSXRlbUNvbXBvbmVudCkgcmFkaW9Db21wb25lbnRJdGVtczogUXVlcnlMaXN0PFJhZGlvSXRlbUNvbXBvbmVudD47XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2lubmVySHRtbCcsIHsgc3RhdGljOiB0cnVlIH0pIGlubmVySHRtbDogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkcmVuKFJhZGlvSXRlbUNvbXBvbmVudCkgcmFkaW9Db21wb25lbnRJdGVtczI6IFF1ZXJ5TGlzdDxSYWRpb0l0ZW1Db21wb25lbnQ+O1xyXG5cclxuICBwcml2YXRlIG5leHRWYWx1ZSA9IG51bGw7XHJcbiAgcHJpdmF0ZSB1cGRhdGVDaGVrYm94SWRzID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBjb250ZW50SW5pdCA9IGZhbHNlO1xyXG5cclxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5uZXh0VmFsdWUgIT09IG51bGwgJiYgKHRoaXMubmV4dFZhbHVlICE9PSAnJyB8fCAodGhpcy52YWx1ZSAmJiB0aGlzLnZhbHVlICE9PSAnJykpKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLm5leHRWYWx1ZTtcclxuICAgICAgdGhpcy5uZXh0VmFsdWUgPSBudWxsO1xyXG4gICAgICBjb25zdCB1cGRhdGVJdGVtcyA9IHRoaXMudXBkYXRlUmFkaW9JdGVtc0NoZWNrZWQoKTtcclxuICAgICAgc2V0VGltZW91dCgoKSAgPT4ge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgaWYgKHVwZGF0ZUl0ZW1zICYmIHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy51cGRhdGVDaGVrYm94SWRzKSB7XHJcbiAgICAgIGNvbnN0IGNoZWNrYm94SXRlbXMgPSB0aGlzLmdldFJhZGlvSXRlbXMoKTtcclxuICAgICAgaWYgKGNoZWNrYm94SXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIGNoZWNrYm94SXRlbXMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IGl0ZW0udXBkYXRlUmFkaW9JZChpbmRleCkpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudXBkYXRlQ2hla2JveElkcyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG5cclxuICAgIHRoaXMuY29udGVudEluaXQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2Ugc29icmVzY3JpYmUgZWwgd3JpdGVWYWx1ZSBkZSBGb3JtRmllbGQgcGFyYSBnZXN0aW9uYXIgZW4gdW4gw7puaWNvIHB1bnRvIGVsIHZhbG9yIGRlIHZhbHVlXHJcbiAgICogQHBhcmFtIHZhbHVlIG51ZXZvIHZhbG9yIGEgZXN0YWJsZWNlclxyXG4gICAqL1xyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueVtdKTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5uZXh0VmFsdWUgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uSWRQcmVmaXhDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5jb250ZW50SW5pdCkge1xyXG4gICAgICB0aGlzLm1hcmtGb3JVcGRhdGVDaGVja2JveElkcygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVOZXdJZFByZWZpeFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgb25OYW1lQ2hhbmdlKCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLmNvbnRlbnRJbml0KSB7XHJcbiAgICAgIHRoaXMubWFya0ZvclVwZGF0ZUNoZWNrYm94SWRzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wcm9wYWdhdGVOZXdJZFByZWZpeFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3R1YWxpemEgbG9zIGNvbXBvbmVudGVzIGV4dGVybm9zIHF1ZSB0aWVuZW4gdmFsb3JlcyBkZXBlbmRpZW50ZXMgZGUgaWRQcmVmaXhcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgcHJvcGFnYXRlTmV3SWRQcmVmaXhWYWx1ZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhpbnRDb21wb25lbnQpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUhpbnRQYXJhbXModGhpcy5oaW50Q29tcG9uZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5lcnJvck1lc3NhZ2VDb21wb25lbnQpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUVycm9yTWVzc2FnZVBhcmFtcyh0aGlzLmVycm9yTWVzc2FnZUNvbXBvbmVudCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWwgaGFjZXIgZWwgb3ZlcnJpZGUgZGUgaGludCBvIGVycm9yIHlhIHNlIGFwbGljYSBzb2JyZSBlbCBmaWVsZHNldCwgcG9yIGxvIHF1ZSBzw7NsbyBlcyBuZWNlc2FyaW8gYXBsaWNhcmxvIGRpcmVjdGFtZW50ZVxyXG4gICAgLy8gc29icmUgZWwgZmllbGRzZXQgY3VhbmRvIG5pbmd1bm8gZGUgZXN0b3MgZXhpc3RlXHJcbiAgICBpZiAoIXRoaXMuaGludENvbXBvbmVudCAmJiAhdGhpcy5lcnJvck1lc3NhZ2VDb21wb25lbnQgJiYgdGhpcy5maWVsZHNldENvbXBvbmVudCkge1xyXG4gICAgICB0aGlzLm92ZXJyaWRlRmllbGRzZXRQYXJhbXModGhpcy5maWVsZHNldENvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZUNoZWtib3hJZHMgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWN0dWFsaXphIGVsIGVzdGFkbyBkZSBsb3MgaXRlbXMgc2Vnw7puIGVsIHZhbG9yIGFzaWduYWRvIGFsIGNvbXBvbmVudGVcclxuICAgKi9cclxuICBwcml2YXRlIHVwZGF0ZVJhZGlvSXRlbXNDaGVja2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGl0ZW1zVXBkYXRlZCA9IGZhbHNlO1xyXG4gICAgY29uc3QgY2hlY2tib3hJdGVtcyA9IHRoaXMuZ2V0UmFkaW9JdGVtcygpO1xyXG4gICAgaWYgKGNoZWNrYm94SXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICBjaGVja2JveEl0ZW1zLmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUgJiYgIWl0ZW0ubGFzdENoZWNrZWQpIHtcclxuICAgICAgICAgIGl0ZW0uc2V0Q2hlY2tlZCh0cnVlKTtcclxuICAgICAgICAgIGl0ZW1zVXBkYXRlZCA9IHRydWU7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpdGVtLnZhbHVlICE9PSB0aGlzLnZhbHVlICYmIGl0ZW0ubGFzdENoZWNrZWQpIHtcclxuICAgICAgICAgIGl0ZW0uc2V0Q2hlY2tlZChmYWxzZSk7XHJcbiAgICAgICAgICBpdGVtc1VwZGF0ZWQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXRlbXNVcGRhdGVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWN0dWFsaXphIGVsIHZhbG9yIGN1YW5kbyBzZSBwcm9kdWNlIHVuIGNhbWJpbyBlbiBsb3MgaXRlbXMsIHRhbnRvIGludGVybm8gY29tbyBleHRlcm5vXHJcbiAgICovXHJcbiAgdXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtcygpOiB2b2lkIHtcclxuXHJcbiAgICAvKlxyXG4gICAgICogU2UgcmVhbGl6YSBkZW50cm8gZGUgdW4gdGltZW91dCBwb3JxdWUsIGF1bnF1ZSBsb3MgY29tcG9uZW50ZXMgaXRlbXMgc2UgaGF5YW4gaW5pY2lhbGl6YWRvLCBlbiBlc3RlIGNvbXBvbmVudGUgcHVlZGUgc2VyIHF1ZSB0b2RhdsOtYVxyXG4gICAgICogbm8gc2UgZGV0ZWN0ZW4sIHkgcG9yIHRhbnRvIGVsIGdldENoZWNrYm94SXRlbXMgbm8gZGV2dWVsdmEgbGEgbGlzdGEgY29ycmVjdGEuXHJcbiAgICAgKi9cclxuICAgIHNldFRpbWVvdXQoICgpID0+IHtcclxuICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldFJhZGlvSXRlbXMoKTtcclxuICAgICAgaWYgKGl0ZW1zICYmIGl0ZW1zLmxlbmd0aCA+IDAgJiYgaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gIWl0ZW0uaXNJbml0KCkgJiYgIWl0ZW0uZGl2aWRlcikgPCAwKSB7XHJcbiAgICAgICAgY29uc3QgY2hlY2tlZEl0ZW0gPSBpdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5pc0lucHV0Q2hlY2tlZCgpICYmICFpdGVtLmRpdmlkZXIpO1xyXG4gICAgICAgIHRoaXMubmV4dFZhbHVlID0gY2hlY2tlZEl0ZW0gPyBjaGVja2VkSXRlbS52YWx1ZSA6IG51bGw7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmICh0aGlzLml0ZW1zICYmIHRoaXMuaXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIEZ1bmNpb25lcyBwYXJhIHJlZW1wbGF6YXIgZWwgY29udGVuaWRvIGRlbCBmaWVsZHNldCwgbGFiZWwsIGhpbnQgbyBlcnJvcm1lc3NhZ2VcclxuICAgKi9cclxuXHJcbiAgb3ZlcnJpZGVGaWVsZHNldFBhcmFtcyhmaWVsZHNldDogRmllbGRzZXRDb21wb25lbnQpOiB2b2lkIHtcclxuICAgIGZpZWxkc2V0LmNhbGxlciA9IHRoaXMuaW5uZXJIdG1sO1xyXG4gICAgZmllbGRzZXQuZXJyb3JJZCA9IHRoaXMuZ2V0RXJyb3JJZCgpO1xyXG4gICAgZmllbGRzZXQuZGVzY3JpYmVkQnkgPSBuZXcgTWFrZUh0bWxMaXN0UGlwZSgpLnRyYW5zZm9ybShbdGhpcy5nZXRIaW50SWQoKSwgdGhpcy5nZXRFcnJvcklkKCldLCBudWxsKTtcclxuICAgIGZpZWxkc2V0LmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlSGludFBhcmFtcyhoaW50OiBIaW50Q29tcG9uZW50KTogdm9pZCB7XHJcbiAgICBoaW50LmlkID0gdGhpcy5nZXRIaW50SWQoKTtcclxuICAgIGhpbnQuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGVFcnJvck1lc3NhZ2VQYXJhbXMoZXJyb3JNZXNzYWdlOiBFcnJvck1lc3NhZ2VDb21wb25lbnQpOiB2b2lkIHtcclxuICAgIGVycm9yTWVzc2FnZS5pZCA9IHRoaXMuZ2V0RXJyb3JJZCgpO1xyXG4gICAgZXJyb3JNZXNzYWdlLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5oYXNGaWVsZHNldENvbXBvbmVudCgpKSB7XHJcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRGVsZXRlSGludCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25EZWxldGVFcnJvck1lc3NhZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5oYXNGaWVsZHNldENvbXBvbmVudCgpKSB7XHJcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvKlxyXG4gICAqIEZ1bmNpb25lcyBwYXJhIHJlY3VwZXJhciB2YWxvcmVzIGNvbXVuZXNcclxuICAgKi9cclxuXHJcbiAgaGFzRmllbGRzZXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISEodGhpcy5oYXNGaWVsZHNldENvbXBvbmVudCgpIHx8IHRoaXMuaGFzTGVnZW5kQ29tcG9uZW50KCkgfHwgdGhpcy5sZWdlbmRSZWYgfHwgdGhpcy5maWVsZHNldERhdGEgfHxcclxuICAgICAgKHRoaXMubGVnZW5kRGF0YSAmJiAodGhpcy5sZWdlbmREYXRhLnRleHQgfHwgdGhpcy5sZWdlbmREYXRhLmh0bWwpKSB8fCB0aGlzLmxlZ2VuZFRleHQpO1xyXG4gIH1cclxuXHJcbiAgaGFzRmllbGRzZXRDb21wb25lbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmZpZWxkc2V0Q29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgaGFzTGVnZW5kQ29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5sZWdlbmRDb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRFcnJvcklkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5oYXNFcnJvcnNNZXNzYWdlKCkgPyB0aGlzLmdldElkUHJlZml4KCkgKyAnLWVycm9yJyA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBnZXRIaW50SWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmhhc0hpbnQoKSA/IHRoaXMuZ2V0SWRQcmVmaXgoKSArICctaGludCcgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0SWRQcmVmaXgoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6IHRoaXMubmFtZTtcclxuICB9XHJcblxyXG4gIGdldFJhZGlvSXRlbXMoKTogUmFkaW9JdGVtQ29tcG9uZW50W10ge1xyXG4gICAgbGV0IGNoZWNrYm94SXRlbXMgPSBbXTtcclxuICAgIGlmICh0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMgJiYgdGhpcy5yYWRpb0NvbXBvbmVudEl0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgY2hlY2tib3hJdGVtcyA9IHRoaXMucmFkaW9Db21wb25lbnRJdGVtcy50b0FycmF5KCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucmFkaW9Db21wb25lbnRJdGVtczIgJiYgdGhpcy5yYWRpb0NvbXBvbmVudEl0ZW1zMi5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGNoZWNrYm94SXRlbXMgPSB0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMyLnRvQXJyYXkoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBjaGVja2JveEl0ZW1zO1xyXG4gIH1cclxufVxyXG4iXX0=
233
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW9zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9yYWRpb3MvcmFkaW9zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUVPLFNBQVMsRUFDdEIsWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUczRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUN6RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQWE1RixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxrQkFBdUI7SUFYNUQ7O1FBa0NZLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFtQnBELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0lBME05QixDQUFDO0lBeE1DLFNBQVM7UUFDUCxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxD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aUJBQWlCLENBQUMsY0FBYyxDQUFDOzZDQUNaO0FBWWM7SUFEbkMsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBQyxDQUFDOzBEQUNRO0FBR3ZDO0lBRGpDLGdCQUFnQixFQUFFO3dEQUNnRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIERvQ2hlY2ssXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLFxyXG4gIFZpZXdDaGlsZHJlblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge05HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7RmllbGRzZXREYXRhLCBJdGVtUmFkaW9EYXRhLCBMZWdlbmREYXRhfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtMZWdlbmRDb21wb25lbnR9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuaW1wb3J0IHtGb3JtRmllbGRDb21wb25lbnR9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1JhZGlvSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9yYWRpby1pdGVtL3JhZGlvLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHtGaWVsZHNldENvbXBvbmVudH0gZnJvbSAnLi4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHtNYWtlSHRtbExpc3RQaXBlfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvcGlwZXMvbWFrZS1odG1sLWxpc3QucGlwZSc7XHJcbmltcG9ydCB7SGludENvbXBvbmVudH0gZnJvbSAnLi4vaGludC9oaW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RXJyb3JNZXNzYWdlQ29tcG9uZW50fSBmcm9tICcuLi9lcnJvci1tZXNzYWdlL2Vycm9yLW1lc3NhZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1vbi1pbnB1dC1jaGFuZ2UuZGVjb3JhdG9yJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1yYWRpb3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpb3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmFkaW9zQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSYWRpb3NDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyQ29udGVudEluaXQge1xyXG4gICAgXHJcbiAgLyoqXHJcbiAgICogZmllbGRzZXQsIGRpZmVyZW50ZXMgZm9ybWFzIGRlIGltcGxlbWVudGFyLCBlbnVtZXJhZGFzIHBvciBwcmlvcmlkYWRcclxuICAgKiAxKSBpbmNsdWlyIGNvbXBvbmVudGUgRmllbGRzZXRDb21wb25lbnRcclxuICAgKiAyKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxyXG4gICAqIDMpIGluY2x1aXIgY29tcG9uZW50ZSBMZWdlbmRDb21wb25lbnRcclxuICAgKiA0KSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxyXG4gICAqIDUpIGluY2x1aXIgbGVnZW5kRGF0YSAtIGluY2x1aXIgdW4gZmllbGRzZXQgY29uIHVuYSBsZWdlbmRhIGNvbiBsb3MgcGFyYW1ldHJvcyBwYXNhZG9zICAoaW50ZXJmYXogZXhwdWVzdGEpXHJcbiAgICogNikgaW5jbHVpciBsZWdlbmRUZXh0IC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW4gdGV4dG8gZW4gbGEgbGVnZW5kYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZpZWxkc2V0RGF0YTogRmllbGRzZXREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFJlZjogVGVtcGxhdGVSZWY8TGVnZW5kQ29tcG9uZW50PjtcclxuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFRleHQ6IHN0cmluZztcclxuICBcclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uSWRQcmVmaXhDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIGlkUHJlZml4OiBzdHJpbmc7XHJcbiAgXHJcbiAgQERlc3lPbklucHV0Q2hhbmdlKCdvbk5hbWVDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcclxuICBcclxuICBASW5wdXQoKSBpdGVtczogSXRlbVJhZGlvRGF0YVtdO1xyXG4gIEBPdXRwdXQoKSBpdGVtc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbVJhZGlvRGF0YVtdPigpO1xyXG4gIFxyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cENsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBoYXNEaXZpZGVyczogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoYXNFcnJvcjogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZGVzY3JpYmVkQnk6IHN0cmluZztcclxuICBcclxuICBARGVzeUNvbnRlbnRDaGlsZCh7IG9uU2V0Q2FsbGJhY2tOYW1lOiAnb3ZlcnJpZGVGaWVsZHNldFBhcmFtcyd9KVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oRmllbGRzZXRDb21wb25lbnQpIGZpZWxkc2V0Q29tcG9uZW50OiBGaWVsZHNldENvbXBvbmVudDtcclxuICBcclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xyXG4gIFxyXG4gIEBDb250ZW50Q2hpbGRyZW4oUmFkaW9JdGVtQ29tcG9uZW50KSByYWRpb0NvbXBvbmVudEl0ZW1zOiBRdWVyeUxpc3Q8UmFkaW9JdGVtQ29tcG9uZW50PjtcclxuICBcclxuICBAVmlld0NoaWxkKCdpbm5lckh0bWwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbm5lckh0bWw6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZHJlbihSYWRpb0l0ZW1Db21wb25lbnQpIHJhZGlvQ29tcG9uZW50SXRlbXMyOiBRdWVyeUxpc3Q8UmFkaW9JdGVtQ29tcG9uZW50PjtcclxuICBcclxuICBwcml2YXRlIG5leHRWYWx1ZSA9IG51bGw7XHJcbiAgcHJpdmF0ZSB1cGRhdGVDaGVrYm94SWRzID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBjb250ZW50SW5pdCA9IGZhbHNlO1xyXG4gIFxyXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm5leHRWYWx1ZSAhPT0gbnVsbCAmJiAodGhpcy5uZXh0VmFsdWUgIT09ICcnIHx8ICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUgIT09ICcnKSkpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMubmV4dFZhbHVlO1xyXG4gICAgICB0aGlzLm5leHRWYWx1ZSA9IG51bGw7XHJcbiAgICAgIGNvbnN0IHVwZGF0ZUl0ZW1zID0gdGhpcy51cGRhdGVSYWRpb0l0ZW1zQ2hlY2tlZCgpO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpICA9PiB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgICAgICBpZiAodXBkYXRlSXRlbXMgJiYgdGhpcy5pdGVtcyAmJiB0aGlzLml0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnVwZGF0ZUNoZWtib3hJZHMpIHtcclxuICAgICAgY29uc3QgY2hlY2tib3hJdGVtcyA9IHRoaXMuZ2V0UmFkaW9JdGVtcygpO1xyXG4gICAgICBpZiAoY2hlY2tib3hJdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgY2hlY2tib3hJdGVtcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4gaXRlbS51cGRhdGVSYWRpb0lkKGluZGV4KSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy51cGRhdGVDaGVrYm94SWRzID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgdGhpcy5jb250ZW50SW5pdCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZSBzb2JyZXNjcmliZSBlbCB3cml0ZVZhbHVlIGRlIEZvcm1GaWVsZCBwYXJhIGdlc3Rpb25hciBlbiB1biDDum5pY28gcHVudG8gZWwgdmFsb3IgZGUgdmFsdWVcclxuICAgKiBAcGFyYW0gdmFsdWUgbnVldm8gdmFsb3IgYSBlc3RhYmxlY2VyXHJcbiAgICovXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55W10pOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLm5leHRWYWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25JZFByZWZpeENoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbnRlbnRJbml0KSB7XHJcbiAgICAgIHRoaXMubWFya0ZvclVwZGF0ZUNoZWNrYm94SWRzKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnByb3BhZ2F0ZU5ld0lkUHJlZml4VmFsdWUoKTtcclxuICB9XHJcblxyXG5cclxuICBvbk5hbWVDaGFuZ2UoKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMuY29udGVudEluaXQpIHtcclxuICAgICAgdGhpcy5tYXJrRm9yVXBkYXRlQ2hlY2tib3hJZHMoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnByb3BhZ2F0ZU5ld0lkUHJlZml4VmFsdWUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdHVhbGl6YSBsb3MgY29tcG9uZW50ZXMgZXh0ZXJub3MgcXVlIHRpZW5lbiB2YWxvcmVzIGRlcGVuZGllbnRlcyBkZSBpZFByZWZpeFxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBwcm9wYWdhdGVOZXdJZFByZWZpeFZhbHVlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaGludENvbXBvbmVudCkge1xyXG4gICAgICB0aGlzLm92ZXJyaWRlSGludFBhcmFtcyh0aGlzLmhpbnRDb21wb25lbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmVycm9yTWVzc2FnZUNvbXBvbmVudCkge1xyXG4gICAgICB0aGlzLm92ZXJyaWRlRXJyb3JNZXNzYWdlUGFyYW1zKHRoaXMuZXJyb3JNZXNzYWdlQ29tcG9uZW50KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBBbCBoYWNlciBlbCBvdmVycmlkZSBkZSBoaW50IG8gZXJyb3IgeWEgc2UgYXBsaWNhIHNvYnJlIGVsIGZpZWxkc2V0LCBwb3IgbG8gcXVlIHPDs2xvIGVzIG5lY2VzYXJpbyBhcGxpY2FybG8gZGlyZWN0YW1lbnRlXHJcbiAgICAvLyBzb2JyZSBlbCBmaWVsZHNldCBjdWFuZG8gbmluZ3VubyBkZSBlc3RvcyBleGlzdGVcclxuICAgIGlmICghdGhpcy5oaW50Q29tcG9uZW50ICYmICF0aGlzLmVycm9yTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLmZpZWxkc2V0Q29tcG9uZW50KSB7XHJcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1hcmtGb3JVcGRhdGVDaGVja2JveElkcygpOiB2b2lkIHtcclxuICAgIHRoaXMudXBkYXRlQ2hla2JveElkcyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3R1YWxpemEgZWwgZXN0YWRvIGRlIGxvcyBpdGVtcyBzZWfDum4gZWwgdmFsb3IgYXNpZ25hZG8gYWwgY29tcG9uZW50ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgdXBkYXRlUmFkaW9JdGVtc0NoZWNrZWQoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXRlbXNVcGRhdGVkID0gZmFsc2U7XHJcbiAgICBjb25zdCBjaGVja2JveEl0ZW1zID0gdGhpcy5nZXRSYWRpb0l0ZW1zKCk7XHJcbiAgICBpZiAoY2hlY2tib3hJdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGNoZWNrYm94SXRlbXMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgICBpZiAoaXRlbS52YWx1ZSA9PT0gdGhpcy52YWx1ZSAmJiAhaXRlbS5sYXN0Q2hlY2tlZCkge1xyXG4gICAgICAgICAgaXRlbS5zZXRDaGVja2VkKHRydWUpO1xyXG4gICAgICAgICAgaXRlbXNVcGRhdGVkID0gdHJ1ZTtcclxuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0udmFsdWUgIT09IHRoaXMudmFsdWUgJiYgaXRlbS5sYXN0Q2hlY2tlZCkge1xyXG4gICAgICAgICAgaXRlbS5zZXRDaGVja2VkKGZhbHNlKTtcclxuICAgICAgICAgIGl0ZW1zVXBkYXRlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBpdGVtc1VwZGF0ZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3R1YWxpemEgZWwgdmFsb3IgY3VhbmRvIHNlIHByb2R1Y2UgdW4gY2FtYmlvIGVuIGxvcyBpdGVtcywgdGFudG8gaW50ZXJubyBjb21vIGV4dGVybm9cclxuICAgKi9cclxuICB1cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zKCk6IHZvaWQge1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiBTZSByZWFsaXphIGRlbnRybyBkZSB1biB0aW1lb3V0IHBvcnF1ZSwgYXVucXVlIGxvcyBjb21wb25lbnRlcyBpdGVtcyBzZSBoYXlhbiBpbmljaWFsaXphZG8sIGVuIGVzdGUgY29tcG9uZW50ZSBwdWVkZSBzZXIgcXVlIHRvZGF2w61hXHJcbiAgICAgKiBubyBzZSBkZXRlY3RlbiwgeSBwb3IgdGFudG8gZWwgZ2V0Q2hlY2tib3hJdGVtcyBubyBkZXZ1ZWx2YSBsYSBsaXN0YSBjb3JyZWN0YS5cclxuICAgICAqL1xyXG4gICAgc2V0VGltZW91dCggKCkgPT4ge1xyXG4gICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0UmFkaW9JdGVtcygpO1xyXG4gICAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMCAmJiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiAhaXRlbS5pc0luaXQoKSAmJiAhaXRlbS5kaXZpZGVyKSA8IDApIHtcclxuICAgICAgICBjb25zdCBjaGVja2VkSXRlbSA9IGl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlzSW5wdXRDaGVja2VkKCkgJiYgIWl0ZW0uZGl2aWRlcik7XHJcbiAgICAgICAgdGhpcy5uZXh0VmFsdWUgPSBjaGVja2VkSXRlbSA/IGNoZWNrZWRJdGVtLnZhbHVlIDogbnVsbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogRnVuY2lvbmVzIHBhcmEgcmVlbXBsYXphciBlbCBjb250ZW5pZG8gZGVsIGZpZWxkc2V0LCBsYWJlbCwgaGludCBvIGVycm9ybWVzc2FnZVxyXG4gICAqL1xyXG5cclxuICBvdmVycmlkZUZpZWxkc2V0UGFyYW1zKGZpZWxkc2V0OiBGaWVsZHNldENvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgZmllbGRzZXQuY2FsbGVyID0gdGhpcy5pbm5lckh0bWw7XHJcbiAgICBmaWVsZHNldC5lcnJvcklkID0gdGhpcy5nZXRFcnJvcklkKCk7XHJcbiAgICBmaWVsZHNldC5kZXNjcmliZWRCeSA9IG5ldyBNYWtlSHRtbExpc3RQaXBlKCkudHJhbnNmb3JtKFt0aGlzLmdldEhpbnRJZCgpLCB0aGlzLmdldEVycm9ySWQoKV0sIG51bGwpO1xyXG4gICAgZmllbGRzZXQuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGVIaW50UGFyYW1zKGhpbnQ6IEhpbnRDb21wb25lbnQpOiB2b2lkIHtcclxuICAgIGhpbnQuaWQgPSB0aGlzLmdldEhpbnRJZCgpO1xyXG4gICAgaGludC5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSkge1xyXG4gICAgICB0aGlzLm92ZXJyaWRlRmllbGRzZXRQYXJhbXModGhpcy5maWVsZHNldENvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZUVycm9yTWVzc2FnZVBhcmFtcyhlcnJvck1lc3NhZ2U6IEVycm9yTWVzc2FnZUNvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgZXJyb3JNZXNzYWdlLmlkID0gdGhpcy5nZXRFcnJvcklkKCk7XHJcbiAgICBlcnJvck1lc3NhZ2UuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25EZWxldGVIaW50KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSkge1xyXG4gICAgICB0aGlzLm92ZXJyaWRlRmllbGRzZXRQYXJhbXModGhpcy5maWVsZHNldENvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRlbGV0ZUVycm9yTWVzc2FnZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcclxuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8qXHJcbiAgICogRnVuY2lvbmVzIHBhcmEgcmVjdXBlcmFyIHZhbG9yZXMgY29tdW5lc1xyXG4gICAqL1xyXG5cclxuICBoYXNGaWVsZHNldCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhISh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkgfHwgdGhpcy5oYXNMZWdlbmRDb21wb25lbnQoKSB8fCB0aGlzLmxlZ2VuZFJlZiB8fCB0aGlzLmZpZWxkc2V0RGF0YSB8fFxyXG4gICAgICAodGhpcy5sZWdlbmREYXRhICYmICh0aGlzLmxlZ2VuZERhdGEudGV4dCB8fCB0aGlzLmxlZ2VuZERhdGEuaHRtbCkpIHx8IHRoaXMubGVnZW5kVGV4dCk7XHJcbiAgfVxyXG5cclxuICBoYXNGaWVsZHNldENvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuZmllbGRzZXRDb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBoYXNMZWdlbmRDb21wb25lbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmxlZ2VuZENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIGdldEVycm9ySWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSA/IHRoaXMuZ2V0SWRQcmVmaXgoKSArICctZXJyb3InIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGdldEhpbnRJZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFzSGludCgpID8gdGhpcy5nZXRJZFByZWZpeCgpICsgJy1oaW50JyA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWRQcmVmaXggPyB0aGlzLmlkUHJlZml4IDogdGhpcy5uYW1lO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmFkaW9JdGVtcygpOiBSYWRpb0l0ZW1Db21wb25lbnRbXSB7XHJcbiAgICBsZXQgY2hlY2tib3hJdGVtcyA9IFtdO1xyXG4gICAgaWYgKHRoaXMucmFkaW9Db21wb25lbnRJdGVtcyAmJiB0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICBjaGVja2JveEl0ZW1zID0gdGhpcy5yYWRpb0NvbXBvbmVudEl0ZW1zLnRvQXJyYXkoKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5yYWRpb0NvbXBvbmVudEl0ZW1zMiAmJiB0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMyLmxlbmd0aCA+IDApIHtcclxuICAgICAgY2hlY2tib3hJdGVtcyA9IHRoaXMucmFkaW9Db21wb25lbnRJdGVtczIudG9BcnJheSgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNoZWNrYm94SXRlbXM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output } from '@angular/core';
1
+ import { Component, ContentChildren, EventEmitter, forwardRef, HostBinding, Input, Output } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { FormFieldComponent } from '../form-field/form-field.component';
4
4
  import { ButtonComponent } from '../../../desy-buttons/components/button/button.component';
@@ -16,11 +16,14 @@ export class SearchBarComponent extends FormFieldComponent {
16
16
  hasButton() {
17
17
  return this.button && this.button.length > 0;
18
18
  }
19
+ ngDoCheck() {
20
+ this.hasButtonClass = this.hasButton() ? 'relative flex flex-wrap items-end' : 'relative';
21
+ }
19
22
  }
20
23
  SearchBarComponent.decorators = [
21
24
  { type: Component, args: [{
22
25
  selector: 'desy-search-bar',
23
- template: "<!-- searchbar -->\r\n<div class=\"relative\" [ngClass]=\"{'flex flex-wrap items-end': hasButton()}\">\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=\"sr-only\"\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\" classes=\"sr-only\" [for]=\"id\"></desy-label>\r\n <input type=\"search\"\r\n [class]=\"['c-input block mt-sm pr-12 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': hasErrorsMessage(),'w-full': !hasButton()}\"\r\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"id ? id : null\"\r\n [attr.aria-describedby]=\"[describedBy, getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.placeholder]=\"placeholder ? placeholder : null\"\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 <ng-container *ngIf=\"hasButton(); else defaultButton\">\r\n <ng-content select=\"desy-button\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\r\n (click)=\"onClick($event)\"\r\n [class]=\"['absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus', buttonClasses] | makeHtmlList\">\r\n <span class=\"sr-only\">Buscar</span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"1.375em\" height=\"1.375em\" aria-hidden=\"true\"><path d=\"M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z\" fill=\"currentColor\"/></svg>\r\n </button>\r\n </ng-template>\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</div>\r\n<!-- /searchbar -->\r\n",
26
+ template: "<!-- searchbar -->\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]=\"['sr-only', labelData.classes] | makeHtmlList\"\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\" classes=\"sr-only\" [for]=\"id\"></desy-label>\r\n <input type=\"search\"\r\n [class]=\"['c-input block pr-12 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': hasErrorsMessage(),'w-full': !hasButton()}\"\r\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"id ? id : null\"\r\n [attr.aria-describedby]=\"[describedBy, getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.placeholder]=\"placeholder ? placeholder : null\"\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 <ng-container *ngIf=\"hasButton(); else defaultButton\">\r\n <ng-content select=\"desy-button\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\r\n (click)=\"onClick($event)\"\r\n [class]=\"['absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus', buttonClasses] | makeHtmlList\">\r\n <span class=\"sr-only\">Buscar</span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"1.375em\" height=\"1.375em\" aria-hidden=\"true\"><path d=\"M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z\" fill=\"currentColor\"/></svg>\r\n </button>\r\n </ng-template>\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<!-- /searchbar -->\r\n",
24
27
  providers: [
25
28
  {
26
29
  provide: NG_VALUE_ACCESSOR,
@@ -33,9 +36,10 @@ SearchBarComponent.decorators = [
33
36
  SearchBarComponent.propDecorators = {
34
37
  button: [{ type: ContentChildren, args: [ButtonComponent,] }],
35
38
  describedBy: [{ type: Input }],
39
+ hasButtonClass: [{ type: HostBinding, args: ['class',] }],
36
40
  classes: [{ type: Input }],
37
41
  buttonClasses: [{ type: Input }],
38
42
  placeholder: [{ type: Input }],
39
43
  clickEvent: [{ type: Output }]
40
44
  };
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VhcmNoLWJhci9zZWFyY2gtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBYTNGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxrQkFBMEI7SUFYbEU7O1FBbUJZLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFDLFVBQUssR0FBRyxFQUFFLENBQUM7SUFZYixDQUFDO0lBVkMsT0FBTyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs7O1lBL0JGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixrakxBQTBDO2dCQUMxQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzt3QkFDakQsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O3FCQUdFLGVBQWUsU0FBQyxlQUFlOzBCQUUvQixLQUFLO3NCQUNMLEtBQUs7NEJBQ0wsS0FBSzswQkFDTCxLQUFLO3lCQUNMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LCBRdWVyeUxpc3RcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9kZXN5LWJ1dHRvbnMvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktc2VhcmNoLWJhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VhcmNoQmFyQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWFyY2hCYXJDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8c3RyaW5nPiB7XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQnV0dG9uQ29tcG9uZW50KSBidXR0b246IFF1ZXJ5TGlzdDxCdXR0b25Db21wb25lbnQ+O1xyXG5cclxuICBASW5wdXQoKSBkZXNjcmliZWRCeTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBidXR0b25DbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcclxuICBAT3V0cHV0KCkgY2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgdmFsdWUgPSAnJztcclxuXHJcbiAgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFzQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uICYmIHRoaXMuYnV0dG9uLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VhcmNoLWJhci9zZWFyY2gtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQWEzRixNQUFNLE9BQU8sa0JBQW1CLFNBQVEsa0JBQTBCO0lBWGxFOztRQW9CWSxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQyxVQUFLLEdBQUcsRUFBRSxDQUFDO0lBZWIsQ0FBQztJQWJDLE9BQU8sQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLG1DQUFtQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDNUYsQ0FBQzs7O1lBcENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQiw0OEtBQTBDO2dCQUMxQyxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzt3QkFDakQsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O3FCQUdFLGVBQWUsU0FBQyxlQUFlOzBCQUUvQixLQUFLOzZCQUNMLFdBQVcsU0FBQyxPQUFPO3NCQUNuQixLQUFLOzRCQUNMLEtBQUs7MEJBQ0wsS0FBSzt5QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIERvQ2hlY2ssXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXNcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9kZXN5LWJ1dHRvbnMvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktc2VhcmNoLWJhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VhcmNoQmFyQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWFyY2hCYXJDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8c3RyaW5nPiBpbXBsZW1lbnRzIERvQ2hlY2sgeyAgXHJcbiAgXHJcbiAgQENvbnRlbnRDaGlsZHJlbihCdXR0b25Db21wb25lbnQpIGJ1dHRvbjogUXVlcnlMaXN0PEJ1dHRvbkNvbXBvbmVudD47XHJcblxyXG4gIEBJbnB1dCgpIGRlc2NyaWJlZEJ5OiBzdHJpbmc7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGhhc0J1dHRvbkNsYXNzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY2xhc3NlczogYW55O1xyXG4gIEBJbnB1dCgpIGJ1dHRvbkNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG4gIEBPdXRwdXQoKSBjbGlja0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIFxyXG4gIHZhbHVlID0gJyc7XHJcbiAgXHJcbiAgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFzQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uICYmIHRoaXMuYnV0dG9uLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmhhc0J1dHRvbkNsYXNzID0gdGhpcy5oYXNCdXR0b24oKSA/ICdyZWxhdGl2ZSBmbGV4IGZsZXgtd3JhcCBpdGVtcy1lbmQnIDogJ3JlbGF0aXZlJztcclxuICB9IFxyXG59XHJcbiJdfQ==