desy-angular 6.0.3 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (618) hide show
  1. package/esm2020/desy-angular.mjs +5 -0
  2. package/esm2020/lib/desy-angular.module.mjs +75 -0
  3. package/esm2020/lib/desy-buttons/components/button/button.component.mjs +115 -0
  4. package/esm2020/lib/desy-buttons/components/button-loader/button-loader.component.mjs +63 -0
  5. package/esm2020/lib/desy-buttons/components/dropdown/dropdown.component.mjs +126 -0
  6. package/esm2020/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +32 -0
  7. package/esm2020/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.mjs +14 -0
  8. package/esm2020/lib/desy-buttons/components/listbox/listbox.component.mjs +291 -0
  9. package/esm2020/lib/desy-buttons/components/pill/pill.component.mjs +80 -0
  10. package/esm2020/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.mjs +17 -0
  11. package/esm2020/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.mjs +17 -0
  12. package/esm2020/lib/desy-buttons/components/toggle/toggle.component.mjs +59 -0
  13. package/{esm2015/lib/desy-buttons/desy-buttons.module.js → esm2020/lib/desy-buttons/desy-buttons.module.mjs} +64 -35
  14. package/esm2020/lib/desy-commons/components/content/content.component.mjs +14 -0
  15. package/esm2020/lib/desy-commons/components/description/description.component.mjs +19 -0
  16. package/esm2020/lib/desy-commons/components/divider/divider.component.mjs +16 -0
  17. package/esm2020/lib/desy-commons/components/icon/icon.component.mjs +16 -0
  18. package/esm2020/lib/desy-commons/components/title/title.component.mjs +17 -0
  19. package/esm2020/lib/desy-commons/desy-commons.module.mjs +53 -0
  20. package/esm2020/lib/desy-forms/components/character-count/character-count.component.mjs +130 -0
  21. package/esm2020/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +240 -0
  22. package/esm2020/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +264 -0
  23. package/esm2020/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +52 -0
  24. package/esm2020/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +19 -0
  25. package/esm2020/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.mjs +16 -0
  26. package/esm2020/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +52 -0
  27. package/esm2020/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +48 -0
  28. package/esm2020/lib/desy-forms/components/date-input/date-input.component.mjs +266 -0
  29. package/esm2020/lib/desy-forms/components/error-message/error-message.component.mjs +31 -0
  30. package/esm2020/lib/desy-forms/components/fieldset/fieldset.component.mjs +56 -0
  31. package/esm2020/lib/desy-forms/components/fieldset/legend/legend.component.mjs +23 -0
  32. package/esm2020/lib/desy-forms/components/file-upload/file-upload.component.mjs +72 -0
  33. package/esm2020/lib/desy-forms/components/form-field/form-field.component.mjs +124 -0
  34. package/esm2020/lib/desy-forms/components/hint/hint.component.mjs +29 -0
  35. package/esm2020/lib/desy-forms/components/input/input.component.mjs +99 -0
  36. package/esm2020/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +20 -0
  37. package/esm2020/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +53 -0
  38. package/esm2020/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.mjs +16 -0
  39. package/esm2020/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +45 -0
  40. package/esm2020/lib/desy-forms/components/input-group/input-group.component.mjs +223 -0
  41. package/esm2020/lib/desy-forms/components/label/label.component.mjs +38 -0
  42. package/esm2020/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +185 -0
  43. package/esm2020/lib/desy-forms/components/radios/radios.component.mjs +270 -0
  44. package/esm2020/lib/desy-forms/components/search-bar/search-bar.component.mjs +66 -0
  45. package/esm2020/lib/desy-forms/components/select/option/option.component.mjs +22 -0
  46. package/esm2020/lib/desy-forms/components/select/option-group/option-group.component.mjs +18 -0
  47. package/esm2020/lib/desy-forms/components/select/select-item/select-item.component.mjs +14 -0
  48. package/esm2020/lib/desy-forms/components/select/select.component.mjs +93 -0
  49. package/esm2020/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.mjs +12 -0
  50. package/esm2020/lib/desy-forms/components/textarea/textarea.component.mjs +86 -0
  51. package/esm2020/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +167 -0
  52. package/esm2020/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +397 -0
  53. package/esm2020/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +25 -0
  54. package/esm2020/lib/desy-forms/components/tree/tree-sub/tree-sub.component.mjs +15 -0
  55. package/esm2020/lib/desy-forms/components/tree/tree.component.mjs +425 -0
  56. package/esm2020/lib/desy-forms/desy-forms.module.mjs +209 -0
  57. package/esm2020/lib/desy-forms/directives/condition.directive.mjs +34 -0
  58. package/{esm2015/lib/desy-forms/interfaces/select-item-data.js → esm2020/lib/desy-forms/interfaces/select-item-data.mjs} +1 -1
  59. package/esm2020/lib/desy-forms/models/checkbox-service-item.component.mjs +9 -0
  60. package/esm2020/lib/desy-forms/models/radio-service-item.component.mjs +9 -0
  61. package/esm2020/lib/desy-forms/services/checkbox.service.mjs +61 -0
  62. package/esm2020/lib/desy-forms/services/radio.service.mjs +53 -0
  63. package/esm2020/lib/desy-modals/components/dialog/dialog.component.mjs +130 -0
  64. package/esm2020/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +25 -0
  65. package/esm2020/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +23 -0
  66. package/esm2020/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +23 -0
  67. package/esm2020/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +23 -0
  68. package/esm2020/lib/desy-modals/components/modal/modal.component.mjs +178 -0
  69. package/esm2020/lib/desy-modals/desy-modals.module.mjs +62 -0
  70. package/esm2020/lib/desy-modals/services/dialog.service.mjs +114 -0
  71. package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.mjs +16 -0
  72. package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +47 -0
  73. package/esm2020/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.mjs +19 -0
  74. package/esm2020/lib/desy-nav/components/error-summary/error-summary.component.mjs +62 -0
  75. package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.mjs +21 -0
  76. package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +30 -0
  77. package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.mjs +21 -0
  78. package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +19 -0
  79. package/esm2020/lib/desy-nav/components/footer/footer.component.mjs +71 -0
  80. package/esm2020/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.mjs +15 -0
  81. package/esm2020/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +45 -0
  82. package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.mjs +27 -0
  83. package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +36 -0
  84. package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.mjs +20 -0
  85. package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.mjs +15 -0
  86. package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +95 -0
  87. package/esm2020/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +41 -0
  88. package/esm2020/lib/desy-nav/components/header/header.component.mjs +103 -0
  89. package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.mjs +40 -0
  90. package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +79 -0
  91. package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +49 -0
  92. package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.mjs +43 -0
  93. package/esm2020/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +616 -0
  94. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +45 -0
  95. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +18 -0
  96. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.mjs +34 -0
  97. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +113 -0
  98. package/esm2020/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +51 -0
  99. package/esm2020/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.mjs +14 -0
  100. package/esm2020/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +36 -0
  101. package/esm2020/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.mjs +27 -0
  102. package/esm2020/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +45 -0
  103. package/esm2020/lib/desy-nav/components/menubar/menubar.component.mjs +727 -0
  104. package/esm2020/lib/desy-nav/components/nav/nav-item/nav-item.component.mjs +41 -0
  105. package/esm2020/lib/desy-nav/components/nav/nav.component.mjs +116 -0
  106. package/esm2020/lib/desy-nav/components/notification/notification-item/notification-item.component.mjs +25 -0
  107. package/esm2020/lib/desy-nav/components/notification/notification.component.mjs +141 -0
  108. package/esm2020/lib/desy-nav/components/skip-link/skip-link.component.mjs +37 -0
  109. package/esm2020/lib/desy-nav/desy-nav.module.mjs +221 -0
  110. package/{esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js → esm2020/lib/desy-nav/interfaces/menu-horizontal-item-data.mjs} +1 -1
  111. package/{esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js → esm2020/lib/desy-nav/interfaces/menu-horizontal-item-event-data.mjs} +1 -1
  112. package/esm2020/lib/desy-nav/interfaces/menu-navigation-item-sub-item.mjs +2 -0
  113. package/esm2020/lib/desy-pagination/components/pagination/pagination.component.mjs +167 -0
  114. package/esm2020/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.mjs +19 -0
  115. package/esm2020/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.mjs +17 -0
  116. package/esm2020/lib/desy-pagination/desy-pagination.module.mjs +46 -0
  117. package/esm2020/lib/desy-tables/components/table/components/table-caption.component.mjs +17 -0
  118. package/esm2020/lib/desy-tables/components/table/components/table-cell.component.mjs +23 -0
  119. package/esm2020/lib/desy-tables/components/table/components/table-header.component.mjs +18 -0
  120. package/esm2020/lib/desy-tables/components/table/components/table-row.component.mjs +18 -0
  121. package/esm2020/lib/desy-tables/components/table/table.component.mjs +78 -0
  122. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +47 -0
  123. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +18 -0
  124. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.mjs +23 -0
  125. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +27 -0
  126. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +28 -0
  127. package/esm2020/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +342 -0
  128. package/esm2020/lib/desy-tables/desy-tables.module.mjs +102 -0
  129. package/esm2020/lib/desy-tables/directives/cell.directive.mjs +28 -0
  130. package/esm2020/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +81 -0
  131. package/esm2020/lib/desy-tables/directives/row.directive.mjs +29 -0
  132. package/esm2020/lib/desy-tables/interfaces/head-cell-data.mjs +7 -0
  133. package/esm2020/lib/desy-views/components/accordion/accordion-header/accordion-header.component.mjs +17 -0
  134. package/esm2020/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +57 -0
  135. package/esm2020/lib/desy-views/components/accordion/accordion.component.mjs +198 -0
  136. package/esm2020/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +39 -0
  137. package/esm2020/lib/desy-views/components/accordion-history/accordion-history.component.mjs +19 -0
  138. package/esm2020/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.mjs +17 -0
  139. package/esm2020/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.mjs +17 -0
  140. package/esm2020/lib/desy-views/components/alert/alert.component.mjs +81 -0
  141. package/esm2020/lib/desy-views/components/collapsible/collapsible.component.mjs +81 -0
  142. package/esm2020/lib/desy-views/components/description-list/definition/definition.component.mjs +19 -0
  143. package/esm2020/lib/desy-views/components/description-list/description-item/description-item.component.mjs +34 -0
  144. package/esm2020/lib/desy-views/components/description-list/description-list.component.mjs +28 -0
  145. package/esm2020/lib/desy-views/components/description-list/term/term.component.mjs +19 -0
  146. package/esm2020/lib/desy-views/components/details/details.component.mjs +31 -0
  147. package/esm2020/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.mjs +17 -0
  148. package/esm2020/lib/desy-views/components/item/item-content-right/item-content-right.component.mjs +15 -0
  149. package/esm2020/lib/desy-views/components/item/item-item/item-item.component.mjs +15 -0
  150. package/esm2020/lib/desy-views/components/item/item.component.mjs +121 -0
  151. package/esm2020/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.mjs +12 -0
  152. package/esm2020/lib/desy-views/components/media-object/media-object.component.mjs +115 -0
  153. package/esm2020/lib/desy-views/components/spinner/spinner.component.mjs +77 -0
  154. package/esm2020/lib/desy-views/components/status/status.component.mjs +97 -0
  155. package/esm2020/lib/desy-views/components/status-item/status-item.component.mjs +143 -0
  156. package/esm2020/lib/desy-views/components/tabs/panel/panel.component.mjs +19 -0
  157. package/esm2020/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +37 -0
  158. package/esm2020/lib/desy-views/components/tabs/tabs.component.mjs +199 -0
  159. package/esm2020/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.mjs +12 -0
  160. package/esm2020/lib/desy-views/components/tooltip/tooltip.component.mjs +202 -0
  161. package/esm2020/lib/desy-views/desy-views.module.mjs +175 -0
  162. package/{esm2015/lib/desy-views/interfaces/accordion-item.data.js → esm2020/lib/desy-views/interfaces/accordion-item.data.mjs} +1 -1
  163. package/esm2020/lib/desy-views/interfaces/tabs-items-data.mjs +2 -0
  164. package/esm2020/lib/desy-views/services/alert.service.mjs +88 -0
  165. package/esm2020/lib/shared/components/accessibility/accessibility.component.mjs +45 -0
  166. package/esm2020/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.mjs +44 -0
  167. package/esm2020/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.mjs +41 -0
  168. package/esm2020/lib/shared/components/content-base/content-base.component.mjs +24 -0
  169. package/esm2020/lib/shared/components/text-or-html-required/text-or-html-required.component.mjs +18 -0
  170. package/esm2020/lib/shared/directives/attribute-change.directive.mjs +45 -0
  171. package/esm2020/lib/shared/directives/click-outside.directive.mjs +40 -0
  172. package/esm2020/lib/shared/directives/content-change.directive.mjs +45 -0
  173. package/esm2020/lib/shared/directives/custom-inner-content.directive.mjs +60 -0
  174. package/esm2020/lib/shared/directives/inner-content.directive.mjs +37 -0
  175. package/esm2020/lib/shared/pipes/external-href.pipe.mjs +32 -0
  176. package/esm2020/lib/shared/pipes/inner-html.pipe.mjs +20 -0
  177. package/esm2020/lib/shared/pipes/make-html-list.pipe.mjs +20 -0
  178. package/esm2020/lib/shared/shared.module.mjs +99 -0
  179. package/esm2020/public-api.mjs +221 -0
  180. package/fesm2015/desy-angular.mjs +11752 -0
  181. package/fesm2015/desy-angular.mjs.map +1 -0
  182. package/fesm2020/desy-angular.mjs +11731 -0
  183. package/fesm2020/desy-angular.mjs.map +1 -0
  184. package/index.d.ts +5 -0
  185. package/lib/desy-angular.module.d.ts +12 -0
  186. package/lib/desy-buttons/components/button/button.component.d.ts +7 -2
  187. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +7 -1
  188. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +3 -0
  189. package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +3 -0
  190. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +3 -0
  191. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +5 -2
  192. package/lib/desy-buttons/components/pill/pill.component.d.ts +7 -2
  193. package/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.d.ts +3 -0
  194. package/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.d.ts +3 -0
  195. package/lib/desy-buttons/components/toggle/toggle.component.d.ts +3 -0
  196. package/lib/desy-buttons/desy-buttons.module.d.ts +18 -0
  197. package/lib/desy-commons/components/content/content.component.d.ts +3 -0
  198. package/lib/desy-commons/components/description/description.component.d.ts +3 -0
  199. package/lib/desy-commons/components/divider/divider.component.d.ts +3 -0
  200. package/lib/desy-commons/components/icon/icon.component.d.ts +3 -0
  201. package/lib/desy-commons/components/title/title.component.d.ts +3 -0
  202. package/lib/desy-commons/desy-commons.module.d.ts +12 -0
  203. package/lib/desy-forms/components/character-count/character-count.component.d.ts +3 -0
  204. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +6 -3
  205. package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +11 -10
  206. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +3 -0
  207. package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +3 -0
  208. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +3 -0
  209. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +3 -0
  210. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +3 -0
  211. package/lib/desy-forms/components/date-input/date-input.component.d.ts +8 -3
  212. package/lib/desy-forms/components/error-message/error-message.component.d.ts +3 -0
  213. package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +3 -0
  214. package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +7 -1
  215. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +4 -1
  216. package/lib/desy-forms/components/form-field/form-field.component.d.ts +3 -0
  217. package/lib/desy-forms/components/hint/hint.component.d.ts +3 -0
  218. package/lib/desy-forms/components/input/input.component.d.ts +4 -0
  219. package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +3 -0
  220. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +3 -0
  221. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +3 -0
  222. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +3 -0
  223. package/lib/desy-forms/components/input-group/input-group.component.d.ts +5 -1
  224. package/lib/desy-forms/components/label/label.component.d.ts +7 -2
  225. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +6 -3
  226. package/lib/desy-forms/components/radios/radios.component.d.ts +11 -10
  227. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +4 -0
  228. package/lib/desy-forms/components/select/option/option.component.d.ts +3 -0
  229. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +3 -0
  230. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +3 -0
  231. package/lib/desy-forms/components/select/select.component.d.ts +4 -0
  232. package/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.d.ts +3 -0
  233. package/lib/desy-forms/components/textarea/textarea.component.d.ts +4 -1
  234. package/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.d.ts +4 -1
  235. package/lib/desy-forms/components/tree/tree-item/tree-item.component.d.ts +9 -6
  236. package/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.d.ts +3 -0
  237. package/lib/desy-forms/components/tree/tree-sub/tree-sub.component.d.ts +3 -0
  238. package/lib/desy-forms/components/tree/tree.component.d.ts +3 -0
  239. package/lib/desy-forms/desy-forms.module.d.ts +45 -0
  240. package/lib/desy-forms/directives/condition.directive.d.ts +3 -0
  241. package/lib/desy-forms/interfaces/select-item-data.d.ts +3 -0
  242. package/lib/desy-forms/models/checkbox-service-item.component.d.ts +13 -0
  243. package/lib/desy-forms/models/radio-service-item.component.d.ts +12 -0
  244. package/lib/desy-forms/services/checkbox.service.d.ts +14 -0
  245. package/lib/desy-forms/services/radio.service.d.ts +13 -0
  246. package/lib/desy-modals/components/dialog/dialog.component.d.ts +5 -2
  247. package/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.d.ts +3 -0
  248. package/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.d.ts +3 -0
  249. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +3 -0
  250. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +3 -0
  251. package/lib/desy-modals/components/modal/modal.component.d.ts +3 -0
  252. package/lib/desy-modals/desy-modals.module.d.ts +14 -0
  253. package/lib/desy-modals/services/dialog.service.d.ts +3 -0
  254. package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +3 -0
  255. package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +3 -0
  256. package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +3 -0
  257. package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +3 -0
  258. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +3 -0
  259. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +3 -0
  260. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +3 -0
  261. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +3 -0
  262. package/lib/desy-nav/components/footer/footer.component.d.ts +3 -0
  263. package/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.d.ts +3 -0
  264. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +3 -0
  265. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +3 -0
  266. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +3 -0
  267. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +3 -0
  268. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
  269. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +3 -0
  270. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +3 -0
  271. package/lib/desy-nav/components/header/header.component.d.ts +3 -0
  272. package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +3 -0
  273. package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +3 -0
  274. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.d.ts +3 -0
  275. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.d.ts +3 -0
  276. package/lib/desy-nav/components/menu-navigation/menu-navigation.component.d.ts +3 -0
  277. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +3 -0
  278. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +3 -0
  279. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +3 -0
  280. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +3 -0
  281. package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +3 -0
  282. package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +3 -0
  283. package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +3 -0
  284. package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +3 -0
  285. package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +3 -0
  286. package/lib/desy-nav/components/menubar/menubar.component.d.ts +3 -0
  287. package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +3 -0
  288. package/lib/desy-nav/components/nav/nav.component.d.ts +6 -3
  289. package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +3 -0
  290. package/lib/desy-nav/components/notification/notification.component.d.ts +3 -0
  291. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +3 -0
  292. package/lib/desy-nav/desy-nav.module.d.ts +46 -0
  293. package/lib/desy-nav/interfaces/menu-horizontal-item-data.d.ts +1 -0
  294. package/lib/desy-nav/interfaces/menu-horizontal-item-event-data.d.ts +1 -0
  295. package/lib/desy-nav/interfaces/menu-navigation-item-sub-item.d.ts +8 -0
  296. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +3 -0
  297. package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +3 -0
  298. package/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.d.ts +3 -0
  299. package/lib/desy-pagination/desy-pagination.module.d.ts +11 -0
  300. package/lib/desy-tables/components/table/components/table-caption.component.d.ts +3 -0
  301. package/lib/desy-tables/components/table/components/table-cell.component.d.ts +3 -0
  302. package/lib/desy-tables/components/table/components/table-header.component.d.ts +3 -0
  303. package/lib/desy-tables/components/table/components/table-row.component.d.ts +3 -0
  304. package/lib/desy-tables/components/table/table.component.d.ts +4 -1
  305. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +3 -0
  306. package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +3 -0
  307. package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +3 -0
  308. package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +3 -0
  309. package/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.d.ts +3 -0
  310. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +6 -3
  311. package/lib/desy-tables/desy-tables.module.d.ts +23 -0
  312. package/lib/desy-tables/directives/cell.directive.d.ts +3 -0
  313. package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +3 -0
  314. package/lib/desy-tables/directives/row.directive.d.ts +3 -0
  315. package/lib/desy-tables/interfaces/head-cell-data.d.ts +2 -0
  316. package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +3 -0
  317. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +3 -0
  318. package/lib/desy-views/components/accordion/accordion.component.d.ts +3 -0
  319. package/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.d.ts +3 -0
  320. package/lib/desy-views/components/accordion-history/accordion-history.component.d.ts +3 -0
  321. package/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.d.ts +3 -0
  322. package/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.d.ts +3 -0
  323. package/lib/desy-views/components/alert/alert.component.d.ts +4 -1
  324. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +5 -1
  325. package/lib/desy-views/components/description-list/definition/definition.component.d.ts +3 -0
  326. package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +3 -0
  327. package/lib/desy-views/components/description-list/description-list.component.d.ts +3 -0
  328. package/lib/desy-views/components/description-list/term/term.component.d.ts +3 -0
  329. package/lib/desy-views/components/details/details.component.d.ts +7 -1
  330. package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +3 -0
  331. package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -0
  332. package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -0
  333. package/lib/desy-views/components/item/item.component.d.ts +4 -1
  334. package/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.d.ts +3 -0
  335. package/lib/desy-views/components/media-object/media-object.component.d.ts +3 -0
  336. package/lib/desy-views/components/spinner/spinner.component.d.ts +3 -0
  337. package/lib/desy-views/components/status/status.component.d.ts +7 -2
  338. package/lib/desy-views/components/status-item/status-item.component.d.ts +3 -0
  339. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +3 -0
  340. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +3 -0
  341. package/lib/desy-views/components/tabs/tabs.component.d.ts +9 -3
  342. package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -0
  343. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +3 -0
  344. package/lib/desy-views/desy-views.module.d.ts +37 -0
  345. package/lib/desy-views/interfaces/accordion-item.data.d.ts +1 -0
  346. package/lib/desy-views/interfaces/tabs-items-data.d.ts +2 -0
  347. package/lib/desy-views/services/alert.service.d.ts +3 -0
  348. package/lib/shared/components/accessibility/accessibility.component.d.ts +3 -0
  349. package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +4 -1
  350. package/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.d.ts +3 -0
  351. package/lib/shared/components/content-base/content-base.component.d.ts +3 -0
  352. package/lib/shared/components/text-or-html-required/text-or-html-required.component.d.ts +3 -0
  353. package/lib/shared/directives/attribute-change.directive.d.ts +3 -0
  354. package/lib/shared/directives/click-outside.directive.d.ts +3 -0
  355. package/lib/shared/directives/content-change.directive.d.ts +3 -0
  356. package/lib/shared/directives/custom-inner-content.directive.d.ts +3 -0
  357. package/lib/shared/directives/inner-content.directive.d.ts +3 -0
  358. package/lib/shared/pipes/external-href.pipe.d.ts +3 -0
  359. package/lib/shared/pipes/inner-html.pipe.d.ts +3 -0
  360. package/lib/shared/pipes/make-html-list.pipe.d.ts +3 -0
  361. package/lib/shared/shared.module.d.ts +19 -0
  362. package/package.json +33 -20
  363. package/public-api.d.ts +24 -0
  364. package/bundles/desy-angular.umd.js +0 -10918
  365. package/bundles/desy-angular.umd.js.map +0 -1
  366. package/bundles/desy-angular.umd.min.js +0 -2
  367. package/bundles/desy-angular.umd.min.js.map +0 -1
  368. package/desy-angular.d.ts +0 -51
  369. package/desy-angular.metadata.json +0 -1
  370. package/esm2015/desy-angular.js +0 -52
  371. package/esm2015/lib/desy-angular.module.js +0 -38
  372. package/esm2015/lib/desy-buttons/components/button/button.component.js +0 -92
  373. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +0 -50
  374. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +0 -111
  375. package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +0 -26
  376. package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +0 -14
  377. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +0 -265
  378. package/esm2015/lib/desy-buttons/components/pill/pill.component.js +0 -64
  379. package/esm2015/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.js +0 -15
  380. package/esm2015/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.js +0 -15
  381. package/esm2015/lib/desy-buttons/components/toggle/toggle.component.js +0 -44
  382. package/esm2015/lib/desy-commons/components/content/content.component.js +0 -14
  383. package/esm2015/lib/desy-commons/components/description/description.component.js +0 -15
  384. package/esm2015/lib/desy-commons/components/divider/divider.component.js +0 -15
  385. package/esm2015/lib/desy-commons/components/icon/icon.component.js +0 -15
  386. package/esm2015/lib/desy-commons/components/title/title.component.js +0 -14
  387. package/esm2015/lib/desy-commons/desy-commons.module.js +0 -36
  388. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +0 -109
  389. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +0 -188
  390. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +0 -226
  391. package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +0 -38
  392. package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +0 -19
  393. package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +0 -13
  394. package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +0 -38
  395. package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +0 -36
  396. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +0 -222
  397. package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +0 -28
  398. package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +0 -44
  399. package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +0 -16
  400. package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +0 -51
  401. package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +0 -103
  402. package/esm2015/lib/desy-forms/components/hint/hint.component.js +0 -27
  403. package/esm2015/lib/desy-forms/components/input/input.component.js +0 -67
  404. package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +0 -20
  405. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +0 -39
  406. package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +0 -13
  407. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +0 -35
  408. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +0 -179
  409. package/esm2015/lib/desy-forms/components/label/label.component.js +0 -30
  410. package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +0 -144
  411. package/esm2015/lib/desy-forms/components/radios/radios.component.js +0 -233
  412. package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +0 -45
  413. package/esm2015/lib/desy-forms/components/select/option/option.component.js +0 -17
  414. package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +0 -17
  415. package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +0 -14
  416. package/esm2015/lib/desy-forms/components/select/select.component.js +0 -64
  417. package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +0 -12
  418. package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +0 -60
  419. package/esm2015/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.js +0 -151
  420. package/esm2015/lib/desy-forms/components/tree/tree-item/tree-item.component.js +0 -370
  421. package/esm2015/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.js +0 -25
  422. package/esm2015/lib/desy-forms/components/tree/tree-sub/tree-sub.component.js +0 -14
  423. package/esm2015/lib/desy-forms/components/tree/tree.component.js +0 -408
  424. package/esm2015/lib/desy-forms/desy-forms.module.js +0 -130
  425. package/esm2015/lib/desy-forms/directives/condition.directive.js +0 -32
  426. package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +0 -121
  427. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.js +0 -20
  428. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.js +0 -19
  429. package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +0 -19
  430. package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +0 -19
  431. package/esm2015/lib/desy-modals/components/modal/modal.component.js +0 -145
  432. package/esm2015/lib/desy-modals/desy-modals.module.js +0 -41
  433. package/esm2015/lib/desy-modals/services/dialog.service.js +0 -117
  434. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +0 -15
  435. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +0 -42
  436. package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +0 -15
  437. package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +0 -46
  438. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +0 -16
  439. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +0 -23
  440. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +0 -16
  441. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +0 -16
  442. package/esm2015/lib/desy-nav/components/footer/footer.component.js +0 -52
  443. package/esm2015/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.js +0 -11
  444. package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +0 -36
  445. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +0 -19
  446. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +0 -29
  447. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +0 -22
  448. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +0 -11
  449. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +0 -88
  450. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +0 -34
  451. package/esm2015/lib/desy-nav/components/header/header.component.js +0 -66
  452. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +0 -28
  453. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +0 -68
  454. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.js +0 -35
  455. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.js +0 -31
  456. package/esm2015/lib/desy-nav/components/menu-navigation/menu-navigation.component.js +0 -568
  457. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +0 -32
  458. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +0 -16
  459. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +0 -24
  460. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +0 -89
  461. package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +0 -36
  462. package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +0 -14
  463. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +0 -29
  464. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +0 -23
  465. package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +0 -37
  466. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +0 -672
  467. package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +0 -30
  468. package/esm2015/lib/desy-nav/components/nav/nav.component.js +0 -105
  469. package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +0 -18
  470. package/esm2015/lib/desy-nav/components/notification/notification.component.js +0 -102
  471. package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +0 -33
  472. package/esm2015/lib/desy-nav/desy-nav.module.js +0 -136
  473. package/esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item.js +0 -2
  474. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +0 -138
  475. package/esm2015/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.js +0 -15
  476. package/esm2015/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.js +0 -14
  477. package/esm2015/lib/desy-pagination/desy-pagination.module.js +0 -31
  478. package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +0 -14
  479. package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +0 -17
  480. package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +0 -14
  481. package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +0 -14
  482. package/esm2015/lib/desy-tables/components/table/table.component.js +0 -55
  483. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +0 -33
  484. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +0 -14
  485. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +0 -17
  486. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +0 -20
  487. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.js +0 -22
  488. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +0 -316
  489. package/esm2015/lib/desy-tables/desy-tables.module.js +0 -64
  490. package/esm2015/lib/desy-tables/directives/cell.directive.js +0 -26
  491. package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +0 -78
  492. package/esm2015/lib/desy-tables/directives/row.directive.js +0 -24
  493. package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +0 -7
  494. package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +0 -14
  495. package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +0 -43
  496. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +0 -153
  497. package/esm2015/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.js +0 -31
  498. package/esm2015/lib/desy-views/components/accordion-history/accordion-history.component.js +0 -15
  499. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.js +0 -14
  500. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.js +0 -14
  501. package/esm2015/lib/desy-views/components/alert/alert.component.js +0 -75
  502. package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +0 -55
  503. package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +0 -15
  504. package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +0 -26
  505. package/esm2015/lib/desy-views/components/description-list/description-list.component.js +0 -22
  506. package/esm2015/lib/desy-views/components/description-list/term/term.component.js +0 -15
  507. package/esm2015/lib/desy-views/components/details/details.component.js +0 -20
  508. package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +0 -14
  509. package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +0 -11
  510. package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +0 -11
  511. package/esm2015/lib/desy-views/components/item/item.component.js +0 -87
  512. package/esm2015/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.js +0 -11
  513. package/esm2015/lib/desy-views/components/media-object/media-object.component.js +0 -67
  514. package/esm2015/lib/desy-views/components/spinner/spinner.component.js +0 -45
  515. package/esm2015/lib/desy-views/components/status/status.component.js +0 -58
  516. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +0 -86
  517. package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +0 -15
  518. package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +0 -28
  519. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +0 -150
  520. package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +0 -11
  521. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +0 -155
  522. package/esm2015/lib/desy-views/desy-views.module.js +0 -108
  523. package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +0 -2
  524. package/esm2015/lib/desy-views/services/alert.service.js +0 -89
  525. package/esm2015/lib/shared/components/accessibility/accessibility.component.js +0 -29
  526. package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +0 -27
  527. package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +0 -26
  528. package/esm2015/lib/shared/components/content-base/content-base.component.js +0 -20
  529. package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +0 -14
  530. package/esm2015/lib/shared/directives/attribute-change.directive.js +0 -43
  531. package/esm2015/lib/shared/directives/click-outside.directive.js +0 -35
  532. package/esm2015/lib/shared/directives/content-change.directive.js +0 -43
  533. package/esm2015/lib/shared/directives/custom-inner-content.directive.js +0 -62
  534. package/esm2015/lib/shared/directives/inner-content.directive.js +0 -34
  535. package/esm2015/lib/shared/pipes/external-href.pipe.js +0 -28
  536. package/esm2015/lib/shared/pipes/inner-html.pipe.js +0 -19
  537. package/esm2015/lib/shared/pipes/make-html-list.pipe.js +0 -16
  538. package/esm2015/lib/shared/shared.module.js +0 -62
  539. package/esm2015/public-api.js +0 -197
  540. package/fesm2015/desy-angular.js +0 -9650
  541. package/fesm2015/desy-angular.js.map +0 -1
  542. /package/{esm2015/lib/desy-buttons/interfaces/listbox-item-data.js → esm2020/lib/desy-buttons/interfaces/listbox-item-data.mjs} +0 -0
  543. /package/{esm2015/lib/desy-buttons/interfaces/listbox-label-data.js → esm2020/lib/desy-buttons/interfaces/listbox-label-data.mjs} +0 -0
  544. /package/{esm2015/lib/desy-commons/interfaces/content-data.js → esm2020/lib/desy-commons/interfaces/content-data.mjs} +0 -0
  545. /package/{esm2015/lib/desy-commons/interfaces/description-data.js → esm2020/lib/desy-commons/interfaces/description-data.mjs} +0 -0
  546. /package/{esm2015/lib/desy-commons/interfaces/divider-data.js → esm2020/lib/desy-commons/interfaces/divider-data.mjs} +0 -0
  547. /package/{esm2015/lib/desy-commons/interfaces/icon-data.js → esm2020/lib/desy-commons/interfaces/icon-data.mjs} +0 -0
  548. /package/{esm2015/lib/desy-commons/interfaces/index.js → esm2020/lib/desy-commons/interfaces/index.mjs} +0 -0
  549. /package/{esm2015/lib/desy-commons/interfaces/title-data.js → esm2020/lib/desy-commons/interfaces/title-data.mjs} +0 -0
  550. /package/{esm2015/lib/desy-forms/components/tree/interfaces/itree-item.js → esm2020/lib/desy-forms/components/tree/interfaces/itree-item.mjs} +0 -0
  551. /package/{esm2015/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.js → esm2020/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.mjs} +0 -0
  552. /package/{esm2015/lib/desy-forms/interfaces/accesibility-data.js → esm2020/lib/desy-forms/interfaces/accesibility-data.mjs} +0 -0
  553. /package/{esm2015/lib/desy-forms/interfaces/error-message-data.js → esm2020/lib/desy-forms/interfaces/error-message-data.mjs} +0 -0
  554. /package/{esm2015/lib/desy-forms/interfaces/fieldset-data.js → esm2020/lib/desy-forms/interfaces/fieldset-data.mjs} +0 -0
  555. /package/{esm2015/lib/desy-forms/interfaces/hint-data.js → esm2020/lib/desy-forms/interfaces/hint-data.mjs} +0 -0
  556. /package/{esm2015/lib/desy-forms/interfaces/index.js → esm2020/lib/desy-forms/interfaces/index.mjs} +0 -0
  557. /package/{esm2015/lib/desy-forms/interfaces/item-checkbox-data.js → esm2020/lib/desy-forms/interfaces/item-checkbox-data.mjs} +0 -0
  558. /package/{esm2015/lib/desy-forms/interfaces/item-date-input-data.js → esm2020/lib/desy-forms/interfaces/item-date-input-data.mjs} +0 -0
  559. /package/{esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js → esm2020/lib/desy-forms/interfaces/item-divider-date-input-data.mjs} +0 -0
  560. /package/{esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js → esm2020/lib/desy-forms/interfaces/item-divider-input-group-data.mjs} +0 -0
  561. /package/{esm2015/lib/desy-forms/interfaces/item-input-group-data.js → esm2020/lib/desy-forms/interfaces/item-input-group-data.mjs} +0 -0
  562. /package/{esm2015/lib/desy-forms/interfaces/item-radio-data.js → esm2020/lib/desy-forms/interfaces/item-radio-data.mjs} +0 -0
  563. /package/{esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js → esm2020/lib/desy-forms/interfaces/item-radio-with-template-data.mjs} +0 -0
  564. /package/{esm2015/lib/desy-forms/interfaces/label-data.js → esm2020/lib/desy-forms/interfaces/label-data.mjs} +0 -0
  565. /package/{esm2015/lib/desy-forms/interfaces/legend-data.js → esm2020/lib/desy-forms/interfaces/legend-data.mjs} +0 -0
  566. /package/{esm2015/lib/desy-modals/interfaces/dialog-options.js → esm2020/lib/desy-modals/interfaces/dialog-options.mjs} +0 -0
  567. /package/{esm2015/lib/desy-modals/interfaces/index.js → esm2020/lib/desy-modals/interfaces/index.mjs} +0 -0
  568. /package/{esm2015/lib/desy-modals/interfaces/modal-button-data.js → esm2020/lib/desy-modals/interfaces/modal-button-data.mjs} +0 -0
  569. /package/{esm2015/lib/desy-modals/interfaces/modal-data.js → esm2020/lib/desy-modals/interfaces/modal-data.mjs} +0 -0
  570. /package/{esm2015/lib/desy-modals/interfaces/modal-icon-data.js → esm2020/lib/desy-modals/interfaces/modal-icon-data.mjs} +0 -0
  571. /package/{esm2015/lib/desy-modals/interfaces/modal-options.js → esm2020/lib/desy-modals/interfaces/modal-options.mjs} +0 -0
  572. /package/{esm2015/lib/desy-modals/interfaces/open-dialog-result.js → esm2020/lib/desy-modals/interfaces/open-dialog-result.mjs} +0 -0
  573. /package/{esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js → esm2020/lib/desy-nav/interfaces/breadcrumbs.data.mjs} +0 -0
  574. /package/{esm2015/lib/desy-nav/interfaces/error-summary-data.js → esm2020/lib/desy-nav/interfaces/error-summary-data.mjs} +0 -0
  575. /package/{esm2015/lib/desy-nav/interfaces/footer-data.js → esm2020/lib/desy-nav/interfaces/footer-data.mjs} +0 -0
  576. /package/{esm2015/lib/desy-nav/interfaces/header-dropdown-data.js → esm2020/lib/desy-nav/interfaces/header-dropdown-data.mjs} +0 -0
  577. /package/{esm2015/lib/desy-nav/interfaces/header-navigation-data.js → esm2020/lib/desy-nav/interfaces/header-navigation-data.mjs} +0 -0
  578. /package/{esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js → esm2020/lib/desy-nav/interfaces/header-navigation-item-data.mjs} +0 -0
  579. /package/{esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js → esm2020/lib/desy-nav/interfaces/header-offcanvas-data.mjs} +0 -0
  580. /package/{esm2015/lib/desy-nav/interfaces/header-subnav-data.js → esm2020/lib/desy-nav/interfaces/header-subnav-data.mjs} +0 -0
  581. /package/{esm2015/lib/desy-nav/interfaces/index.js → esm2020/lib/desy-nav/interfaces/index.mjs} +0 -0
  582. /package/{esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.js → esm2020/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.mjs} +0 -0
  583. /package/{esm2015/lib/desy-nav/interfaces/menu-navigation.js → esm2020/lib/desy-nav/interfaces/menu-navigation.mjs} +0 -0
  584. /package/{esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js → esm2020/lib/desy-nav/interfaces/menu-vertical-items-data.mjs} +0 -0
  585. /package/{esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js → esm2020/lib/desy-nav/interfaces/menu-vertical-sub-data.mjs} +0 -0
  586. /package/{esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js → esm2020/lib/desy-nav/interfaces/menu-vertical-sub-items-data.mjs} +0 -0
  587. /package/{esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js → esm2020/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.mjs} +0 -0
  588. /package/{esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js → esm2020/lib/desy-nav/interfaces/menubar-item-sub-item.mjs} +0 -0
  589. /package/{esm2015/lib/desy-nav/interfaces/menubar-item-sub.js → esm2020/lib/desy-nav/interfaces/menubar-item-sub.mjs} +0 -0
  590. /package/{esm2015/lib/desy-nav/interfaces/menubar-item.js → esm2020/lib/desy-nav/interfaces/menubar-item.mjs} +0 -0
  591. /package/{esm2015/lib/desy-nav/interfaces/nav-item-event.data.js → esm2020/lib/desy-nav/interfaces/nav-item-event.data.mjs} +0 -0
  592. /package/{esm2015/lib/desy-nav/interfaces/nav-item.data.js → esm2020/lib/desy-nav/interfaces/nav-item.data.mjs} +0 -0
  593. /package/{esm2015/lib/desy-nav/interfaces/notification-items-data.js → esm2020/lib/desy-nav/interfaces/notification-items-data.mjs} +0 -0
  594. /package/{esm2015/lib/desy-nav/interfaces/notification-options.js → esm2020/lib/desy-nav/interfaces/notification-options.mjs} +0 -0
  595. /package/{esm2015/lib/desy-pagination/interfaces/index.js → esm2020/lib/desy-pagination/interfaces/index.mjs} +0 -0
  596. /package/{esm2015/lib/desy-pagination/interfaces/pagination-item.data.js → esm2020/lib/desy-pagination/interfaces/pagination-item.data.mjs} +0 -0
  597. /package/{esm2015/lib/desy-tables/interfaces/cell-data.js → esm2020/lib/desy-tables/interfaces/cell-data.mjs} +0 -0
  598. /package/{esm2015/lib/desy-tables/interfaces/index.js → esm2020/lib/desy-tables/interfaces/index.mjs} +0 -0
  599. /package/{esm2015/lib/desy-tables/interfaces/recalculate-table-params.js → esm2020/lib/desy-tables/interfaces/recalculate-table-params.mjs} +0 -0
  600. /package/{esm2015/lib/desy-tables/interfaces/row-data.js → esm2020/lib/desy-tables/interfaces/row-data.mjs} +0 -0
  601. /package/{esm2015/lib/desy-tables/interfaces/wrapper-data.js → esm2020/lib/desy-tables/interfaces/wrapper-data.mjs} +0 -0
  602. /package/{esm2015/lib/desy-views/interfaces/accordion-header.data.js → esm2020/lib/desy-views/interfaces/accordion-header.data.mjs} +0 -0
  603. /package/{esm2015/lib/desy-views/interfaces/alert-options.js → esm2020/lib/desy-views/interfaces/alert-options.mjs} +0 -0
  604. /package/{esm2015/lib/desy-views/interfaces/description-item.data.js → esm2020/lib/desy-views/interfaces/description-item.data.mjs} +0 -0
  605. /package/{esm2015/lib/desy-views/interfaces/index.js → esm2020/lib/desy-views/interfaces/index.mjs} +0 -0
  606. /package/{esm2015/lib/desy-views/interfaces/open-alert-result.js → esm2020/lib/desy-views/interfaces/open-alert-result.mjs} +0 -0
  607. /package/{esm2015/lib/desy-views/interfaces/status-data.js → esm2020/lib/desy-views/interfaces/status-data.mjs} +0 -0
  608. /package/{esm2015/lib/desy-views/interfaces/status-icon-data.js → esm2020/lib/desy-views/interfaces/status-icon-data.mjs} +0 -0
  609. /package/{esm2015/lib/desy-views/interfaces/status-item-title-data.js → esm2020/lib/desy-views/interfaces/status-item-title-data.mjs} +0 -0
  610. /package/{esm2015/lib/desy-views/interfaces/tabs-panel-data.js → esm2020/lib/desy-views/interfaces/tabs-panel-data.mjs} +0 -0
  611. /package/{esm2015/lib/desy-views/interfaces/term-definition.data.js → esm2020/lib/desy-views/interfaces/term-definition.data.mjs} +0 -0
  612. /package/{esm2015/lib/shared/components/index.js → esm2020/lib/shared/components/index.mjs} +0 -0
  613. /package/{esm2015/lib/shared/decorators/desy-content-child.decorator.js → esm2020/lib/shared/decorators/desy-content-child.decorator.mjs} +0 -0
  614. /package/{esm2015/lib/shared/decorators/desy-on-input-change.decorator.js → esm2020/lib/shared/decorators/desy-on-input-change.decorator.mjs} +0 -0
  615. /package/{esm2015/lib/shared/interfaces/accesibility-data.js → esm2020/lib/shared/interfaces/accesibility-data.mjs} +0 -0
  616. /package/{esm2015/lib/shared/utils/focus-utils.js → esm2020/lib/shared/utils/focus-utils.mjs} +0 -0
  617. /package/{esm2015/lib/shared/utils/search-utils.js → esm2020/lib/shared/utils/search-utils.mjs} +0 -0
  618. /package/{esm2015/lib/shared/utils/string-utils.js → esm2020/lib/shared/utils/string-utils.mjs} +0 -0
@@ -0,0 +1,16 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class InputGroupItemComponent {
4
+ }
5
+ InputGroupItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ InputGroupItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: InputGroupItemComponent, selector: "desy-input-group-item", inputs: { classes: "classes" }, ngImport: i0, template: '', isInline: true });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupItemComponent, decorators: [{
8
+ type: Component,
9
+ args: [{
10
+ selector: 'desy-input-group-item',
11
+ template: ''
12
+ }]
13
+ }], propDecorators: { classes: [{
14
+ type: Input
15
+ }] } });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvaW5wdXQtZ3JvdXAvaW5wdXQtZ3JvdXAtaXRlbS9pbnB1dC1ncm91cC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFPL0MsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLDZGQUZ4QixFQUFFOzJGQUVELHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUUsRUFBRTtpQkFDYjs4QkFFVSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJdGVtSW5wdXRHcm91cERhdGF9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LWlucHV0LWdyb3VwLWl0ZW0nLFxuICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRHcm91cEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBJdGVtSW5wdXRHcm91cERhdGEge1xuICBASW5wdXQoKSBjbGFzc2VzPzogc3RyaW5nO1xuXG59XG4iXX0=
@@ -0,0 +1,45 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output, ViewChild } from '@angular/core';
3
+ import { InputGroupItemComponent } from '../input-group-item/input-group-item.component';
4
+ import { OptionComponent } from '../../select/option/option.component';
5
+ import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
6
+ import { LabelComponent } from '../../label/label.component';
7
+ import * as i0 from "@angular/core";
8
+ export class InputGroupSelectComponent extends InputGroupItemComponent {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.isSelect = true;
12
+ this.valueChange = new EventEmitter();
13
+ }
14
+ }
15
+ InputGroupSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
16
+ InputGroupSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: InputGroupSelectComponent, selector: "desy-input-group-select", inputs: { id: "id", name: "name", value: "value", formGroupClasses: "formGroupClasses", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: InputGroupItemComponent, useExisting: forwardRef(() => InputGroupSelectComponent) }], queries: [{ propertyName: "selectItemComponentList", predicate: OptionComponent }, { propertyName: "labelComponent", predicate: LabelComponent }], viewQueries: [{ propertyName: "labelRef", first: true, predicate: ["label"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #label>\n <ng-content select=\"desy-label\"></ng-content>\n</ng-template>\n" });
17
+ __decorate([
18
+ DesyContentChild()
19
+ ], InputGroupSelectComponent.prototype, "labelComponent", void 0);
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupSelectComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'desy-input-group-select', providers: [{ provide: InputGroupItemComponent, useExisting: forwardRef(() => InputGroupSelectComponent) }], template: "<ng-template #label>\n <ng-content select=\"desy-label\"></ng-content>\n</ng-template>\n" }]
23
+ }], propDecorators: { id: [{
24
+ type: Input
25
+ }], name: [{
26
+ type: Input
27
+ }], value: [{
28
+ type: Input
29
+ }], valueChange: [{
30
+ type: Output
31
+ }], formGroupClasses: [{
32
+ type: Input
33
+ }], disabled: [{
34
+ type: Input
35
+ }], labelRef: [{
36
+ type: ViewChild,
37
+ args: ['label', { static: true }]
38
+ }], selectItemComponentList: [{
39
+ type: ContentChildren,
40
+ args: [OptionComponent]
41
+ }], labelComponent: [{
42
+ type: ContentChildren,
43
+ args: [LabelComponent]
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9pbnB1dC1ncm91cC9pbnB1dC1ncm91cC1zZWxlY3QvaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9pbnB1dC1ncm91cC9pbnB1dC1ncm91cC1zZWxlY3QvaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBR04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUM1RixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7O0FBTzNELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx1QkFBdUI7SUFMdEU7O1FBT0UsYUFBUSxHQUFHLElBQUksQ0FBQztRQUtOLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztLQVVqRDs7c0hBakJZLHlCQUF5QjswR0FBekIseUJBQXlCLDJNQUZ6QixDQUFDLEVBQUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUMsRUFBQyxDQUFDLGtFQWN4RixlQUFlLGlEQUdmLGNBQWMscUtDcENqQywyRkFHQTtBRGlDRTtJQURDLGdCQUFnQixFQUFFO2lFQUM2QzsyRkFmckQseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLHlCQUF5QixhQUV4QixDQUFDLEVBQUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDLEVBQUMsQ0FBQzs4QkFNaEcsRUFBRTtzQkFBVixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDRSxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFZ0MsUUFBUTtzQkFBN0MsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNGLHVCQUF1QjtzQkFBeEQsZUFBZTt1QkFBQyxlQUFlO2dCQUdDLGNBQWM7c0JBQTlDLGVBQWU7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SW5wdXRHcm91cEl0ZW1Db21wb25lbnR9IGZyb20gJy4uL2lucHV0LWdyb3VwLWl0ZW0vaW5wdXQtZ3JvdXAtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHtPcHRpb25Db21wb25lbnR9IGZyb20gJy4uLy4uL3NlbGVjdC9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xuaW1wb3J0IHtMYWJlbENvbXBvbmVudH0gZnJvbSAnLi4vLi4vbGFiZWwvbGFiZWwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1pbnB1dC1ncm91cC1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IElucHV0R3JvdXBJdGVtQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50KX1dLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgSW5wdXRHcm91cEl0ZW1Db21wb25lbnQge1xuXG4gIGlzU2VsZWN0ID0gdHJ1ZTtcblxuICBASW5wdXQoKSBpZD86IHN0cmluZztcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSB2YWx1ZT86IGFueTtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cENsYXNzZXM/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICBAVmlld0NoaWxkKCdsYWJlbCcsIHsgc3RhdGljOiB0cnVlIH0pIGxhYmVsUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAQ29udGVudENoaWxkcmVuKE9wdGlvbkNvbXBvbmVudCkgc2VsZWN0SXRlbUNvbXBvbmVudExpc3Q6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ+O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihMYWJlbENvbXBvbmVudCkgbGFiZWxDb21wb25lbnQ6IExhYmVsQ29tcG9uZW50O1xuXG59XG4iLCI8bmctdGVtcGxhdGUgI2xhYmVsPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJkZXN5LWxhYmVsXCI+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,223 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, HostBinding, Input, Optional, Output, ViewChild } from '@angular/core';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { LegendComponent } from '../fieldset/legend/legend.component';
5
+ import { FormFieldComponent } from '../form-field/form-field.component';
6
+ import { InputGroupItemComponent } from './input-group-item/input-group-item.component';
7
+ import { DesyOnInputChange } from '../../../shared/decorators/desy-on-input-change.decorator';
8
+ import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
9
+ import { FieldsetComponent } from '../fieldset/fieldset.component';
10
+ import { MakeHtmlListPipe } from '../../../shared/pipes/make-html-list.pipe';
11
+ import { InputGroupInputComponent } from './input-group-input/input-group-input.component';
12
+ import { InputGroupSelectComponent } from './input-group-select/input-group-select.component';
13
+ import { InputGroupDividerComponent } from './input-group-divider/input-group-divider.component';
14
+ import { StringUtils } from '../../../shared/utils/string-utils';
15
+ import * as i0 from "@angular/core";
16
+ import * as i1 from "@angular/forms";
17
+ import * as i2 from "@angular/common";
18
+ import * as i3 from "../../../shared/directives/custom-inner-content.directive";
19
+ import * as i4 from "../template-driven-wrapper/template-driven-wrapper.component";
20
+ import * as i5 from "../hint/hint.component";
21
+ import * as i6 from "../error-message/error-message.component";
22
+ import * as i7 from "../fieldset/fieldset.component";
23
+ import * as i8 from "../input/input.component";
24
+ import * as i9 from "../select/select.component";
25
+ import * as i10 from "../../../shared/pipes/make-html-list.pipe";
26
+ export class InputGroupComponent extends FormFieldComponent {
27
+ //public ogFormGroup: FormGroup;
28
+ constructor(controlContainer) {
29
+ super();
30
+ this.controlContainer = controlContainer;
31
+ this.itemsChange = new EventEmitter();
32
+ // form group class - asignar clases a la etiqueta desy-input-group
33
+ this.cfg = true;
34
+ this.contentInit = false;
35
+ }
36
+ ngOnChanges() {
37
+ this.cfgr = (this.hasErrorsMessage() || this.formGroupClasses === 'c-form-group--error');
38
+ }
39
+ get ogFormGroup() {
40
+ return this.controlContainer.control;
41
+ }
42
+ ngAfterContentInit() {
43
+ this.contentInit = true;
44
+ }
45
+ ngAfterViewChecked() {
46
+ const items = this.getItems();
47
+ }
48
+ writeValue(value) {
49
+ if (value) {
50
+ this.value = value;
51
+ const items = this.getItems();
52
+ items.forEach(item => {
53
+ const v = this.value[this.getItemName(item)];
54
+ item.value = v ? v : null;
55
+ });
56
+ if (this.items) {
57
+ this.itemsChange.emit(this.items);
58
+ }
59
+ }
60
+ this.onChange(value);
61
+ }
62
+ onExternalChange() {
63
+ if (!this.contentInit) {
64
+ return;
65
+ }
66
+ if (!this.value) {
67
+ this.value = {};
68
+ }
69
+ const items = this.getItems();
70
+ items.forEach(item => this.value[this.getItemName(item)] = item.value);
71
+ this.onChange(this.value);
72
+ }
73
+ onInternalChange(item, itemValue) {
74
+ const itemName = this.getItemName(item);
75
+ if (!this.value) {
76
+ this.value = {};
77
+ }
78
+ if (this.value[itemName] !== itemValue) {
79
+ this.value[itemName] = itemValue;
80
+ this.onChange(this.value);
81
+ if (item instanceof InputGroupInputComponent || item instanceof InputGroupSelectComponent) {
82
+ item.valueChange.emit(itemValue);
83
+ }
84
+ if (this.items) {
85
+ item.value = itemValue;
86
+ this.itemsChange.emit(this.items);
87
+ }
88
+ }
89
+ }
90
+ overrideFieldsetParams(fieldset) {
91
+ fieldset.caller = this.innerHtml;
92
+ fieldset.errorId = this.getErrorId();
93
+ fieldset.describedBy = new MakeHtmlListPipe().transform([this.getHintId(), this.getErrorId()], null);
94
+ fieldset.role = 'group';
95
+ fieldset.detectChanges();
96
+ }
97
+ /*
98
+ * Métodos para proporcionar datos
99
+ */
100
+ getItems() {
101
+ return this.itemsComponents && this.itemsComponents.length ? this.itemsComponents.toArray() : this.items;
102
+ }
103
+ getItemLabelRef(item) {
104
+ return item instanceof InputGroupInputComponent || item instanceof InputGroupSelectComponent ? item.labelRef : null;
105
+ }
106
+ getItemLabelData(item) {
107
+ return item.labelData ? item.labelData : { text: item.labelText };
108
+ }
109
+ hasFieldset() {
110
+ return !!(this.hasFieldsetComponent() || this.hasLegendComponent() || this.legendRef || this.fieldsetData
111
+ || (this.legendData && (this.legendData.text || this.legendData.html)) || this.legendText);
112
+ }
113
+ hasFieldsetComponent() {
114
+ return !!this.fieldsetComponent;
115
+ }
116
+ hasLegendComponent() {
117
+ return !!this.legendComponent;
118
+ }
119
+ getItemName(item) {
120
+ return this.namePrefix ? this.namePrefix + '-' + item.name : item.name;
121
+ }
122
+ getItemSelectOptions(item) {
123
+ return item instanceof InputGroupSelectComponent ?
124
+ item.selectItemComponentList.toArray() : item.selectItems;
125
+ }
126
+ getItemDividerTemplate(item) {
127
+ return item.divider instanceof InputGroupDividerComponent ? item.divider.dividerContent : null;
128
+ }
129
+ getItemDividerHtml(item) {
130
+ return item.divider.html ? item.divider.html : `<p>${StringUtils.escapeHtml(item.divider.text)}</p>`;
131
+ }
132
+ isSelectItem(item) {
133
+ let hasSelectItems;
134
+ if (item instanceof InputGroupSelectComponent) {
135
+ hasSelectItems = item.selectItemComponentList && item.selectItemComponentList.length > 0;
136
+ }
137
+ else {
138
+ hasSelectItems = item.selectItems;
139
+ }
140
+ return item.isSelect && hasSelectItems;
141
+ }
142
+ hasItemLabel(item) {
143
+ return !!((item.labelData && (item.labelData.text || item.labelData.html)) || item.labelText);
144
+ }
145
+ }
146
+ InputGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupComponent, deps: [{ token: i1.ControlContainer, optional: true }], target: i0.ɵɵFactoryTarget.Component });
147
+ InputGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: InputGroupComponent, selector: "desy-input-group", inputs: { ngModelGroup: "ngModelGroup", items: "items", namePrefix: "namePrefix", classes: "classes", formGroupClasses: "formGroupClasses", errorMessage: "errorMessage", id: "id", fieldsetData: "fieldsetData", legendRef: "legendRef", legendData: "legendData", legendText: "legendText" }, outputs: { itemsChange: "itemsChange" }, host: { properties: { "class.c-form-group": "this.cfg", "class.c-form-group--error": "this.cfgr", "class": "this.formGroupClasses" } }, providers: [
148
+ {
149
+ provide: NG_VALUE_ACCESSOR,
150
+ useExisting: forwardRef(() => InputGroupComponent),
151
+ multi: true
152
+ }
153
+ ], queries: [{ propertyName: "itemsComponents", predicate: InputGroupItemComponent }, { propertyName: "fieldsetComponent", predicate: FieldsetComponent }, { propertyName: "legendComponent", predicate: LegendComponent }], viewQueries: [{ propertyName: "innerHtml", first: true, predicate: ["innerHtml"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\n<!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso -->\n<ng-template #itemDivider let-item=\"item\">\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #innerHtml>\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\n <desy-hint *ngIf=\"!hintRef && hintData\"\n [id]=\"getHintId()\"\n [text]=\"hintData.text\"\n [html]=\"hintData.html\"\n [classes]=\"hintData.classes\"\n [role]=\"hintData.role\"\n [ariaLabel]=\"hintData.ariaLabel\"\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\n [ariaHidden]=\"hintData.ariaHidden\"\n [ariaDisabled]=\"hintData.ariaDisabled\"\n [ariaControls]=\"hintData.ariaControls\"\n [ariaCurrent]=\"hintData.ariaCurrent\"\n [ariaLive]=\"hintData.ariaLive\"\n [ariaExpanded]=\"hintData.ariaExpanded\"\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\n [tabindex]=\"hintData.tabindex\"></desy-hint>\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\n\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\n [id]=\"getErrorId()\"\n [text]=\"errorMessageData.text\"\n [html]=\"errorMessageData.html\"\n [classes]=\"errorMessageData.classes\"\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\n [role]=\"errorMessageData.role\"\n [ariaLabel]=\"errorMessageData.ariaLabel\"\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\n [ariaHidden]=\"errorMessageData.ariaHidden\"\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\n [ariaControls]=\"errorMessageData.ariaControls\"\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\n [ariaLive]=\"errorMessageData.ariaLive\"\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\n\n <!-- Reactive forms -->\n <div *ngIf=\"controlContainer && !ngModelGroup\"\n [formGroup]=\"ogFormGroup\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [formControlName]=\"getItemName(item)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [formControlName]=\"getItemName(item)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n\n <!-- Template-driven forms -->\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\n <div [ngModelGroup]=\"ngModelGroup\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n \n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n </desy-template-driven-wrapper>\n\n <!-- With ngModel-->\n <div *ngIf=\"!controlContainer\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n</ng-template>\n\n\n\n <ng-container *ngIf=\"hasFieldsetComponent()\">\n <ng-content select=\"desy-fieldset\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasFieldsetComponent()\">\n <desy-fieldset *ngIf=\"fieldsetData\"\n [classes]=\"fieldsetData.classes\"\n [id]=\"fieldsetData.id\"\n [legendData]=\"fieldsetData.legend\"\n [headingLevel]=\"fieldsetData.headingLevel\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"\n [ariaLabel]=\"fieldsetData.ariaLabel\"\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\n [ariaHidden]=\"fieldsetData.ariaHidden\"\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\n [ariaControls]=\"fieldsetData.ariaControls\"\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\n [ariaLive]=\"fieldsetData.ariaLive\"\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && hasLegendComponent()\"\n [legendRef]=\"legendTemplate\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\">\n <ng-template #legendTemplate>\n <ng-content select=\"desy-legend\"></ng-content>\n </ng-template>\n </desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && legendRef\"\n [legendRef]=\"legendRef\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && legendData\"\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText\"\n [legendText]=\"legendText\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n\n <ng-container *ngIf=\"!hasFieldset()\">\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\n </ng-container>\n </ng-container>\n\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgModelGroup, selector: "[ngModelGroup]", inputs: ["ngModelGroup"], exportAs: ["ngModelGroup"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "component", type: i4.TemplateDrivenWrapperComponent, selector: "desy-template-driven-wrapper" }, { kind: "component", type: i5.HintComponent, selector: "desy-hint", inputs: ["id", "classes", "html", "text"] }, { kind: "component", type: i6.ErrorMessageComponent, selector: "desy-error-message", inputs: ["id", "classes", "html", "text", "visuallyHiddenText"] }, { kind: "component", type: i7.FieldsetComponent, selector: "desy-fieldset", inputs: ["describedBy", "errorId", "legendRef", "legendData", "legendText", "classes", "caller", "id", "headingLevel"] }, { kind: "component", type: i8.InputComponent, selector: "desy-input", inputs: ["name", "type", "describedBy", "pattern", "inputmode", "placeholder", "formGroupClasses", "classes", "autocomplete", "maxlength", "errorId", "attributes"] }, { kind: "component", type: i9.SelectComponent, selector: "desy-select", inputs: ["name", "items", "describedBy", "formGroupClasses", "classes"] }, { kind: "pipe", type: i10.MakeHtmlListPipe, name: "makeHtmlList" }] });
154
+ __decorate([
155
+ DesyOnInputChange('onExternalChange')
156
+ ], InputGroupComponent.prototype, "items", void 0);
157
+ __decorate([
158
+ DesyOnInputChange('onExternalChange')
159
+ ], InputGroupComponent.prototype, "namePrefix", void 0);
160
+ __decorate([
161
+ DesyContentChild({ onSetCallbackName: 'overrideFieldsetParams' })
162
+ ], InputGroupComponent.prototype, "fieldsetComponent", void 0);
163
+ __decorate([
164
+ DesyContentChild()
165
+ ], InputGroupComponent.prototype, "legendComponent", void 0);
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: InputGroupComponent, decorators: [{
167
+ type: Component,
168
+ args: [{ selector: 'desy-input-group', providers: [
169
+ {
170
+ provide: NG_VALUE_ACCESSOR,
171
+ useExisting: forwardRef(() => InputGroupComponent),
172
+ multi: true
173
+ }
174
+ ], template: "\n<!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso -->\n<ng-template #itemDivider let-item=\"item\">\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #innerHtml>\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\n <desy-hint *ngIf=\"!hintRef && hintData\"\n [id]=\"getHintId()\"\n [text]=\"hintData.text\"\n [html]=\"hintData.html\"\n [classes]=\"hintData.classes\"\n [role]=\"hintData.role\"\n [ariaLabel]=\"hintData.ariaLabel\"\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\n [ariaHidden]=\"hintData.ariaHidden\"\n [ariaDisabled]=\"hintData.ariaDisabled\"\n [ariaControls]=\"hintData.ariaControls\"\n [ariaCurrent]=\"hintData.ariaCurrent\"\n [ariaLive]=\"hintData.ariaLive\"\n [ariaExpanded]=\"hintData.ariaExpanded\"\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\n [tabindex]=\"hintData.tabindex\"></desy-hint>\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\n\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\n [id]=\"getErrorId()\"\n [text]=\"errorMessageData.text\"\n [html]=\"errorMessageData.html\"\n [classes]=\"errorMessageData.classes\"\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\n [role]=\"errorMessageData.role\"\n [ariaLabel]=\"errorMessageData.ariaLabel\"\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\n [ariaHidden]=\"errorMessageData.ariaHidden\"\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\n [ariaControls]=\"errorMessageData.ariaControls\"\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\n [ariaLive]=\"errorMessageData.ariaLive\"\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\n\n <!-- Reactive forms -->\n <div *ngIf=\"controlContainer && !ngModelGroup\"\n [formGroup]=\"ogFormGroup\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [formControlName]=\"getItemName(item)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [formControlName]=\"getItemName(item)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n\n <!-- Template-driven forms -->\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\n <div [ngModelGroup]=\"ngModelGroup\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n \n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n </desy-template-driven-wrapper>\n\n <!-- With ngModel-->\n <div *ngIf=\"!controlContainer\"\n [ngClass]=\"classes ? classes : 'flex'\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngTemplateOutlet=\"isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}\"></ng-container>\n <ng-template #itemSelect>\n <desy-select [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [items]=\"getItemSelectOptions(item)\"\n [disabled]=\"item.disabled\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-select>\n </ng-template>\n <ng-template #itemInput>\n <desy-input [id]=\"item.id ? item.id : id + '-' + item.name\"\n [labelRef]=\"getItemLabelRef(item)\"\n [labelData]=\"getItemLabelData(item)\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [formGroupClasses]=\"item.formGroupClasses\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, $event)\"\n [type]=\"item.type ? item.type : 'text'\"\n [inputmode]=\"item.inputmode\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern\"\n [placeholder]=\"item.placeholder\"\n [disabled]=\"item.disabled\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </ng-template>\n </ng-container>\n </div>\n</ng-template>\n\n\n\n <ng-container *ngIf=\"hasFieldsetComponent()\">\n <ng-content select=\"desy-fieldset\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasFieldsetComponent()\">\n <desy-fieldset *ngIf=\"fieldsetData\"\n [classes]=\"fieldsetData.classes\"\n [id]=\"fieldsetData.id\"\n [legendData]=\"fieldsetData.legend\"\n [headingLevel]=\"fieldsetData.headingLevel\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"\n [ariaLabel]=\"fieldsetData.ariaLabel\"\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\n [ariaHidden]=\"fieldsetData.ariaHidden\"\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\n [ariaControls]=\"fieldsetData.ariaControls\"\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\n [ariaLive]=\"fieldsetData.ariaLive\"\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && hasLegendComponent()\"\n [legendRef]=\"legendTemplate\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\">\n <ng-template #legendTemplate>\n <ng-content select=\"desy-legend\"></ng-content>\n </ng-template>\n </desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && legendRef\"\n [legendRef]=\"legendRef\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && legendData\"\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText\"\n [legendText]=\"legendText\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n\n <ng-container *ngIf=\"!hasFieldset()\">\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\n </ng-container>\n </ng-container>\n\n" }]
175
+ }], ctorParameters: function () { return [{ type: i1.ControlContainer, decorators: [{
176
+ type: Optional
177
+ }] }]; }, propDecorators: { ngModelGroup: [{
178
+ type: Input
179
+ }], items: [{
180
+ type: Input
181
+ }], itemsChange: [{
182
+ type: Output
183
+ }], namePrefix: [{
184
+ type: Input
185
+ }], classes: [{
186
+ type: Input
187
+ }], cfg: [{
188
+ type: HostBinding,
189
+ args: ['class.c-form-group']
190
+ }], cfgr: [{
191
+ type: HostBinding,
192
+ args: ['class.c-form-group--error']
193
+ }], formGroupClasses: [{
194
+ type: Input
195
+ }, {
196
+ type: HostBinding,
197
+ args: ['class']
198
+ }], errorMessage: [{
199
+ type: Input
200
+ }], id: [{
201
+ type: Input
202
+ }], fieldsetData: [{
203
+ type: Input
204
+ }], legendRef: [{
205
+ type: Input
206
+ }], legendData: [{
207
+ type: Input
208
+ }], legendText: [{
209
+ type: Input
210
+ }], itemsComponents: [{
211
+ type: ContentChildren,
212
+ args: [InputGroupItemComponent]
213
+ }], fieldsetComponent: [{
214
+ type: ContentChildren,
215
+ args: [FieldsetComponent]
216
+ }], legendComponent: [{
217
+ type: ContentChildren,
218
+ args: [LegendComponent]
219
+ }], innerHtml: [{
220
+ type: ViewChild,
221
+ args: ['innerHtml', { static: true }]
222
+ }] } });
223
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2lucHV0LWdyb3VwL2lucHV0LWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9pbnB1dC1ncm91cC9pbnB1dC1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTCxRQUFRLEVBQUUsTUFBTSxFQUVILFNBQVMsRUFFdkIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUErQixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN0RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUM1RixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUN6RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMzRSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN6RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUM1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U0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPcHRpb25hbCwgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsXG4gIE9uQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RmllbGRzZXREYXRhLCBMZWdlbmREYXRhLCBJdGVtSW5wdXRHcm91cERhdGEsIExhYmVsRGF0YSwgU2VsZWN0SXRlbURhdGF9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgRm9ybUdyb3VwLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJbnB1dEdyb3VwSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1ncm91cC1pdGVtL2lucHV0LWdyb3VwLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7RGVzeU9uSW5wdXRDaGFuZ2V9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktb24taW5wdXQtY2hhbmdlLmRlY29yYXRvcic7XG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xuaW1wb3J0IHtGaWVsZHNldENvbXBvbmVudH0gZnJvbSAnLi4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcbmltcG9ydCB7TWFrZUh0bWxMaXN0UGlwZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL21ha2UtaHRtbC1saXN0LnBpcGUnO1xuaW1wb3J0IHtJbnB1dEdyb3VwSW5wdXRDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtZ3JvdXAtaW5wdXQvaW5wdXQtZ3JvdXAtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5wdXRHcm91cFNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1ncm91cC1zZWxlY3QvaW5wdXQtZ3JvdXAtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lucHV0R3JvdXBEaXZpZGVyQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWdyb3VwLWRpdmlkZXIvaW5wdXQtZ3JvdXAtZGl2aWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtTdHJpbmdVdGlsc30gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL3N0cmluZy11dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktaW5wdXQtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0R3JvdXBDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRHcm91cENvbXBvbmVudCBleHRlbmRzIEZvcm1GaWVsZENvbXBvbmVudDxhbnk+IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBuZ01vZGVsR3JvdXA6IHN0cmluZztcblxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxuICBASW5wdXQoKSBpdGVtczogSXRlbUlucHV0R3JvdXBEYXRhW107XG4gIEBPdXRwdXQoKSBpdGVtc0NoYW5nZTogRXZlbnRFbWl0dGVyPEl0ZW1JbnB1dEdyb3VwRGF0YVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbUlucHV0R3JvdXBEYXRhW10+KCk7XG5cbiAgQERlc3lPbklucHV0Q2hhbmdlKCdvbkV4dGVybmFsQ2hhbmdlJylcbiAgQElucHV0KCkgbmFtZVByZWZpeDogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG5cbiAgLy8gIGZvcm0gZ3JvdXAgY2xhc3MgLSBhc2lnbmFyIGNsYXNlcyBhIGxhIGV0aXF1ZXRhIGRlc3ktaW5wdXQtZ3JvdXBcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jLWZvcm0tZ3JvdXAnKSBjZmcgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmMtZm9ybS1ncm91cC0tZXJyb3InKSBjZmdyOiBib29sZWFuO1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZm9ybUdyb3VwQ2xhc3NlczogYW55O1xuXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZTogc3RyaW5nO1xuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBmaWVsZHNldCwgZGlmZXJlbnRlcyBmb3JtYXMgZGUgaW1wbGVtZW50YXIsIGVudW1lcmFkYXMgcG9yIHByaW9yaWRhZFxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxuICAgKiAyKSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxuICAgKiAzKSBpbmNsdWlyIGxlZ2VuZERhdGEgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1bmEgbGVnZW5kYSBjb24gbG9zIHBhcmFtZXRyb3MgcGFzYWRvcyAgKGludGVyZmF6IGV4cHVlc3RhKVxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXG4gICAqL1xuICBASW5wdXQoKSBmaWVsZHNldERhdGE6IEZpZWxkc2V0RGF0YTtcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xuICBASW5wdXQoKSBsZWdlbmRUZXh0OiBzdHJpbmc7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihJbnB1dEdyb3VwSXRlbUNvbXBvbmVudCkgaXRlbXNDb21wb25lbnRzOiBRdWVyeUxpc3Q8SW5wdXRHcm91cEl0ZW1Db21wb25lbnQ+O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXG4gIEBDb250ZW50Q2hpbGRyZW4oRmllbGRzZXRDb21wb25lbnQpIGZpZWxkc2V0Q29tcG9uZW50OiBGaWVsZHNldENvbXBvbmVudDtcblxuICBARGVzeUNvbnRlbnRDaGlsZCgpXG4gIEBDb250ZW50Q2hpbGRyZW4oTGVnZW5kQ29tcG9uZW50KSBsZWdlbmRDb21wb25lbnQ6IExlZ2VuZENvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKCdpbm5lckh0bWwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbm5lckh0bWw6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHJpdmF0ZSBjb250ZW50SW5pdCA9IGZhbHNlO1xuICAvL3B1YmxpYyBvZ0Zvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHB1YmxpYyBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuY2ZnciA9ICh0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSB8fCB0aGlzLmZvcm1Hcm91cENsYXNzZXMgPT09ICdjLWZvcm0tZ3JvdXAtLWVycm9yJyk7XG4gIH1cblxuICBnZXQgb2dGb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sQ29udGFpbmVyLmNvbnRyb2wgYXMgRm9ybUdyb3VwO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGVudEluaXQgPSB0cnVlO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SXRlbXMoKTtcbiAgICAgIGl0ZW1zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgIGNvbnN0IHYgPSB0aGlzLnZhbHVlW3RoaXMuZ2V0SXRlbU5hbWUoaXRlbSldO1xuICAgICAgICBpdGVtLnZhbHVlID0gdiA/IHYgOiBudWxsO1xuICAgICAgfSk7XG5cbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XG4gICAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gIH1cblxuICBvbkV4dGVybmFsQ2hhbmdlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb250ZW50SW5pdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHt9O1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xuICAgIGl0ZW1zLmZvckVhY2goaXRlbSA9PiB0aGlzLnZhbHVlW3RoaXMuZ2V0SXRlbU5hbWUoaXRlbSldID0gaXRlbS52YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIG9uSW50ZXJuYWxDaGFuZ2UoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhLCBpdGVtVmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW1OYW1lID0gdGhpcy5nZXRJdGVtTmFtZShpdGVtKTtcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB7fTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52YWx1ZVtpdGVtTmFtZV0gIT09IGl0ZW1WYWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZVtpdGVtTmFtZV0gPSBpdGVtVmFsdWU7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuXG4gICAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIElucHV0R3JvdXBJbnB1dENvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cFNlbGVjdENvbXBvbmVudCkge1xuICAgICAgICBpdGVtLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbVZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuaXRlbXMpIHtcbiAgICAgICAgaXRlbS52YWx1ZSA9IGl0ZW1WYWx1ZTtcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlRmllbGRzZXRQYXJhbXMoZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50KTogdm9pZCB7XG4gICAgZmllbGRzZXQuY2FsbGVyID0gdGhpcy5pbm5lckh0bWw7XG4gICAgZmllbGRzZXQuZXJyb3JJZCA9IHRoaXMuZ2V0RXJyb3JJZCgpO1xuICAgIGZpZWxkc2V0LmRlc2NyaWJlZEJ5ID0gbmV3IE1ha2VIdG1sTGlzdFBpcGUoKS50cmFuc2Zvcm0oW3RoaXMuZ2V0SGludElkKCksIHRoaXMuZ2V0RXJyb3JJZCgpXSwgbnVsbCk7XG4gICAgZmllbGRzZXQucm9sZSA9ICdncm91cCc7XG4gICAgZmllbGRzZXQuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLypcbiAgICogTcOpdG9kb3MgcGFyYSBwcm9wb3JjaW9uYXIgZGF0b3NcbiAgICovXG4gIGdldEl0ZW1zKCk6IEl0ZW1JbnB1dEdyb3VwRGF0YVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtc0NvbXBvbmVudHMgJiYgdGhpcy5pdGVtc0NvbXBvbmVudHMubGVuZ3RoID8gdGhpcy5pdGVtc0NvbXBvbmVudHMudG9BcnJheSgpIDogdGhpcy5pdGVtcztcbiAgfVxuXG4gIGdldEl0ZW1MYWJlbFJlZihpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICByZXR1cm4gaXRlbSBpbnN0YW5jZW9mIElucHV0R3JvdXBJbnB1dENvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgSW5wdXRHcm91cFNlbGVjdENvbXBvbmVudCA/IGl0ZW0ubGFiZWxSZWYgOiBudWxsO1xuICB9XG5cbiAgZ2V0SXRlbUxhYmVsRGF0YShpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBMYWJlbERhdGEge1xuICAgIHJldHVybiBpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhIDogeyB0ZXh0OiBpdGVtLmxhYmVsVGV4dCB9O1xuICB9XG5cbiAgaGFzRmllbGRzZXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSB8fCB0aGlzLmhhc0xlZ2VuZENvbXBvbmVudCgpIHx8IHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhXG4gICAgICB8fCAodGhpcy5sZWdlbmREYXRhICYmICh0aGlzLmxlZ2VuZERhdGEudGV4dCB8fCB0aGlzLmxlZ2VuZERhdGEuaHRtbCkpIHx8IHRoaXMubGVnZW5kVGV4dCk7XG4gIH1cblxuICBoYXNGaWVsZHNldENvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmZpZWxkc2V0Q29tcG9uZW50O1xuICB9XG5cbiAgaGFzTGVnZW5kQ29tcG9uZW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMubGVnZW5kQ29tcG9uZW50O1xuICB9XG5cbiAgZ2V0SXRlbU5hbWUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lUHJlZml4ID8gdGhpcy5uYW1lUHJlZml4ICsgJy0nICsgaXRlbS5uYW1lIDogaXRlbS5uYW1lO1xuICB9XG5cbiAgZ2V0SXRlbVNlbGVjdE9wdGlvbnMoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogU2VsZWN0SXRlbURhdGFbXSB7XG4gICAgcmV0dXJuIGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50ID9cbiAgICAgIGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QudG9BcnJheSgpIDogaXRlbS5zZWxlY3RJdGVtcztcbiAgfVxuXG4gIGdldEl0ZW1EaXZpZGVyVGVtcGxhdGUoaXRlbTogSXRlbUlucHV0R3JvdXBEYXRhKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgcmV0dXJuIGl0ZW0uZGl2aWRlciBpbnN0YW5jZW9mIElucHV0R3JvdXBEaXZpZGVyQ29tcG9uZW50ID8gaXRlbS5kaXZpZGVyLmRpdmlkZXJDb250ZW50IDogbnVsbDtcbiAgfVxuXG4gIGdldEl0ZW1EaXZpZGVySHRtbChpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtLmRpdmlkZXIuaHRtbCA/IGl0ZW0uZGl2aWRlci5odG1sIDogYDxwPiR7IFN0cmluZ1V0aWxzLmVzY2FwZUh0bWwoaXRlbS5kaXZpZGVyLnRleHQpIH08L3A+YDtcbiAgfVxuXG4gIGlzU2VsZWN0SXRlbShpdGVtOiBJdGVtSW5wdXRHcm91cERhdGEpOiBib29sZWFuIHtcbiAgICBsZXQgaGFzU2VsZWN0SXRlbXM7XG4gICAgaWYgKGl0ZW0gaW5zdGFuY2VvZiBJbnB1dEdyb3VwU2VsZWN0Q29tcG9uZW50KSB7XG4gICAgICBoYXNTZWxlY3RJdGVtcyA9IGl0ZW0uc2VsZWN0SXRlbUNvbXBvbmVudExpc3QgJiYgaXRlbS5zZWxlY3RJdGVtQ29tcG9uZW50TGlzdC5sZW5ndGggPiAwO1xuICAgIH0gZWxzZSB7XG4gICAgICBoYXNTZWxlY3RJdGVtcyA9IGl0ZW0uc2VsZWN0SXRlbXM7XG4gICAgfVxuICAgIHJldHVybiBpdGVtLmlzU2VsZWN0ICYmIGhhc1NlbGVjdEl0ZW1zO1xuICB9XG5cbiAgaGFzSXRlbUxhYmVsKGl0ZW06IEl0ZW1JbnB1dEdyb3VwRGF0YSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISgoaXRlbS5sYWJlbERhdGEgJiYgKGl0ZW0ubGFiZWxEYXRhLnRleHQgfHwgaXRlbS5sYWJlbERhdGEuaHRtbCkpIHx8IGl0ZW0ubGFiZWxUZXh0KTtcbiAgfVxuXG59XG4iLCJcbjwhLS0gRGl2aWRlciBubyBmb3JtYSBwYXJ0ZSBkZWwgZm9ybXVsYXJpbywgcG9yIGxvIHF1ZSBlcyByZXV0aWxpemFibGUgZW4gY3VhbHF1aWVyIGNhc28gLS0+XG48bmctdGVtcGxhdGUgI2l0ZW1EaXZpZGVyIGxldC1pdGVtPVwiaXRlbVwiPlxuICA8ZGl2IHJvbGU9XCJzZXBhcmF0b3JcIiBbbmdDbGFzc109XCJpdGVtLmRpdmlkZXIuY2xhc3Nlc1wiPlxuICAgIDxuZy1jb250YWluZXIgKmRlc3lDdXN0b21Jbm5lckNvbnRlbnQ9XCJ7IHRlbXBsYXRlOiBnZXRJdGVtRGl2aWRlclRlbXBsYXRlKGl0ZW0pLCBodG1sOiBnZXRJdGVtRGl2aWRlckh0bWwoaXRlbSkgfVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaW5uZXJIdG1sPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGludFJlZlwiPjwvbmctY29udGFpbmVyPlxuICA8ZGVzeS1oaW50ICpuZ0lmPVwiIWhpbnRSZWYgJiYgaGludERhdGFcIlxuICAgICAgICAgICAgIFtpZF09XCJnZXRIaW50SWQoKVwiXG4gICAgICAgICAgICAgW3RleHRdPVwiaGludERhdGEudGV4dFwiXG4gICAgICAgICAgICAgW2h0bWxdPVwiaGludERhdGEuaHRtbFwiXG4gICAgICAgICAgICAgW2NsYXNzZXNdPVwiaGludERhdGEuY2xhc3Nlc1wiXG4gICAgICAgICAgICAgW3JvbGVdPVwiaGludERhdGEucm9sZVwiXG4gICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJoaW50RGF0YS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiaGludERhdGEuYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiaGludERhdGEuYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgIFthcmlhSGlkZGVuXT1cImhpbnREYXRhLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiaGludERhdGEuYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cImhpbnREYXRhLmFyaWFDb250cm9sc1wiXG4gICAgICAgICAgICAgW2FyaWFDdXJyZW50XT1cImhpbnREYXRhLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiaGludERhdGEuYXJpYUxpdmVcIlxuICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiaGludERhdGEuYXJpYUV4cGFuZGVkXCJcbiAgICAgICAgICAgICBbYXJpYUVycm9yTWVzc2FnZV09XCJoaW50RGF0YS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICBbYXJpYUhhc1BvcHVwXT1cImhpbnREYXRhLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgW3RhYmluZGV4XT1cImhpbnREYXRhLnRhYmluZGV4XCI+PC9kZXN5LWhpbnQ+XG4gIDxkZXN5LWhpbnQgKm5nSWY9XCIhaGludFJlZiAmJiAhaGludERhdGEgJiYgaGludFRleHRcIiBbdGV4dF09XCJoaW50VGV4dFwiIFtpZF09XCJnZXRIaW50SWQoKVwiPjwvZGVzeS1oaW50PlxuXG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlcnJvck1lc3NhZ2VSZWZcIj48L25nLWNvbnRhaW5lcj5cbiAgPGRlc3ktZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFlcnJvck1lc3NhZ2VSZWYgJiYgZXJyb3JNZXNzYWdlRGF0YVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImdldEVycm9ySWQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiZXJyb3JNZXNzYWdlRGF0YS50ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCJlcnJvck1lc3NhZ2VEYXRhLmh0bWxcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cImVycm9yTWVzc2FnZURhdGEuY2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgW3Zpc3VhbGx5SGlkZGVuVGV4dF09XCJlcnJvck1lc3NhZ2VEYXRhLnZpc3VhbGx5SGlkZGVuVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiZXJyb3JNZXNzYWdlRGF0YS5yb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cImVycm9yTWVzc2FnZURhdGEuYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJlcnJvck1lc3NhZ2VEYXRhLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cImVycm9yTWVzc2FnZURhdGEudGFiaW5kZXhcIj48L2Rlc3ktZXJyb3ItbWVzc2FnZT5cbiAgPGRlc3ktZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFlcnJvck1lc3NhZ2VSZWYgJiYgIWVycm9yTWVzc2FnZURhdGEgJiYgZXJyb3JNZXNzYWdlVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiZXJyb3JNZXNzYWdlVGV4dFwiIFtpZF09XCJnZXRFcnJvcklkKClcIj48L2Rlc3ktZXJyb3ItbWVzc2FnZT5cblxuICA8IS0tIFJlYWN0aXZlIGZvcm1zIC0tPlxuICA8ZGl2ICpuZ0lmPVwiY29udHJvbENvbnRhaW5lciAmJiAhbmdNb2RlbEdyb3VwXCJcbiAgICAgICBbZm9ybUdyb3VwXT1cIm9nRm9ybUdyb3VwXCJcbiAgICAgICBbbmdDbGFzc109XCJjbGFzc2VzID8gY2xhc3NlcyA6ICdmbGV4J1wiXG4gICAgICAgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCA/IGFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5ID8gYXJpYURlc2NyaWJlZEJ5IDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJhcmlhSGlkZGVuID8gYXJpYUhpZGRlbiA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwiYXJpYUN1cnJlbnQgPyBhcmlhQ3VycmVudCA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWVycm9ybWVzc2FnZV09XCJhcmlhRXJyb3JNZXNzYWdlID8gYXJpYUVycm9yTWVzc2FnZSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXggPyB0YWJpbmRleCA6IG51bGxcIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0SXRlbXMoKTsgaW5kZXggYXMgaVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlzU2VsZWN0SXRlbShpdGVtKSA/IGl0ZW1TZWxlY3QgOiAoaXRlbS5kaXZpZGVyID8gaXRlbURpdmlkZXIgOiBpdGVtSW5wdXQpOyBjb250ZXh0OiB7aXRlbTogaXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVNlbGVjdD5cbiAgICAgICAgPGRlc3ktc2VsZWN0IFtpZF09XCJpdGVtLmlkID8gaXRlbS5pZCA6IGlkICsgJy0nICsgaXRlbS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgIFtsYWJlbFJlZl09XCJnZXRJdGVtTGFiZWxSZWYoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgW2xhYmVsRGF0YV09XCJnZXRJdGVtTGFiZWxEYXRhKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cIlsnbWItMCcsIGl0ZW0uY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIlxuICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cENsYXNzZXNdPVwiaXRlbS5mb3JtR3JvdXBDbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImdldEl0ZW1OYW1lKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZ2V0SXRlbU5hbWUoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cImdldEl0ZW1TZWxlY3RPcHRpb25zKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcblxuICAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiaXRlbS5yb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiaXRlbS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJpdGVtLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiaXRlbS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUhpZGRlbl09XCJpdGVtLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFEaXNhYmxlZF09XCJpdGVtLmFyaWFEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cIml0ZW0uYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhQ3VycmVudF09XCJpdGVtLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhTGl2ZV09XCJpdGVtLmFyaWFMaXZlXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiaXRlbS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFFcnJvck1lc3NhZ2VdPVwiaXRlbS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiaXRlbS5hcmlhSGFzUG9wdXBcIlxuICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cIml0ZW0udGFiaW5kZXhcIj48L2Rlc3ktc2VsZWN0PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjaXRlbUlucHV0PlxuICAgICAgICA8ZGVzeS1pbnB1dCBbaWRdPVwiaXRlbS5pZCA/IGl0ZW0uaWQgOiBpZCArICctJyArIGl0ZW0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbFJlZl09XCJnZXRJdGVtTGFiZWxSZWYoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxEYXRhXT1cImdldEl0ZW1MYWJlbERhdGEoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc109XCJbJ21iLTAnLCBpdGVtLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cENsYXNzZXNdPVwiaXRlbS5mb3JtR3JvdXBDbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiZ2V0SXRlbU5hbWUoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImdldEl0ZW1OYW1lKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiaXRlbS50eXBlID8gaXRlbS50eXBlIDogJ3RleHQnXCJcbiAgICAgICAgICAgICAgICAgICAgW2lucHV0bW9kZV09XCJpdGVtLmlucHV0bW9kZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdXRvY29tcGxldGVdPVwiaXRlbS5hdXRvY29tcGxldGVcIlxuICAgICAgICAgICAgICAgICAgICBbcGF0dGVybl09XCJpdGVtLnBhdHRlcm5cIlxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiaXRlbS5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcblxuICAgICAgICAgICAgICAgICAgICBbbWF4bGVuZ3RoXT1cIml0ZW0ubWF4bGVuZ3RoXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiaXRlbS5yb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJpdGVtLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiaXRlbS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiaXRlbS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhSGlkZGVuXT1cIml0ZW0uYXJpYUhpZGRlblwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiaXRlbS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cIml0ZW0uYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFDdXJyZW50XT1cIml0ZW0uYXJpYUN1cnJlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiaXRlbS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiaXRlbS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUVycm9yTWVzc2FnZV09XCJpdGVtLmFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUhhc1BvcHVwXT1cIml0ZW0uYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cIml0ZW0udGFiaW5kZXhcIj48L2Rlc3ktaW5wdXQ+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cblxuICA8IS0tIFRlbXBsYXRlLWRyaXZlbiBmb3JtcyAtLT5cbiAgPGRlc3ktdGVtcGxhdGUtZHJpdmVuLXdyYXBwZXIgKm5nSWY9XCJjb250cm9sQ29udGFpbmVyICYmIG5nTW9kZWxHcm91cFwiPlxuICAgIDxkaXYgW25nTW9kZWxHcm91cF09XCJuZ01vZGVsR3JvdXBcIlxuICAgICAgICAgW25nQ2xhc3NdPVwiY2xhc3NlcyA/IGNsYXNzZXMgOiAnZmxleCdcIlxuICAgICAgICAgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIucm9sZV09XCJyb2xlID8gcm9sZSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBhcmlhTGFiZWwgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5ID8gYXJpYURlc2NyaWJlZEJ5IDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnkgPyBhcmlhTGFiZWxsZWRCeSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImFyaWFDb250cm9scyA/IGFyaWFDb250cm9scyA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImFyaWFFeHBhbmRlZCA/IGFyaWFFeHBhbmRlZCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJpbmRleCA/IHRhYmluZGV4IDogbnVsbFwiPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldEl0ZW1zKCk7IGluZGV4IGFzIGlcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlzU2VsZWN0SXRlbShpdGVtKSA/IGl0ZW1TZWxlY3QgOiAoaXRlbS5kaXZpZGVyID8gaXRlbURpdmlkZXIgOiBpdGVtSW5wdXQpOyBjb250ZXh0OiB7aXRlbTogaXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNpdGVtU2VsZWN0PlxuICAgICAgICAgIDxkZXN5LXNlbGVjdCBbaWRdPVwiaXRlbS5pZCA/IGl0ZW0uaWQgOiBpZCArICctJyArIGl0ZW0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbFJlZl09XCJnZXRJdGVtTGFiZWxSZWYoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxEYXRhXT1cImdldEl0ZW1MYWJlbERhdGEoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc109XCJbJ21iLTAnLCBpdGVtLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cENsYXNzZXNdPVwiaXRlbS5mb3JtR3JvdXBDbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiZ2V0SXRlbU5hbWUoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJpdGVtLnZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25JbnRlcm5hbENoYW5nZShpdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cImdldEl0ZW1TZWxlY3RPcHRpb25zKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuXG4gICAgICAgICAgICAgICAgICAgICAgIFtyb2xlXT1cIml0ZW0ucm9sZVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiaXRlbS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cIml0ZW0uYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cIml0ZW0uYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUhpZGRlbl09XCJpdGVtLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cIml0ZW0uYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJpdGVtLmFyaWFDb250cm9sc1wiXG4gICAgICAgICAgICAgICAgICAgICAgIFthcmlhQ3VycmVudF09XCJpdGVtLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cIml0ZW0uYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cIml0ZW0uYXJpYUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFFcnJvck1lc3NhZ2VdPVwiaXRlbS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJpdGVtLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJpdGVtLnRhYmluZGV4XCI+PC9kZXN5LXNlbGVjdD5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNpdGVtSW5wdXQ+XG4gICAgICAgICAgPGRlc3ktaW5wdXQgW2lkXT1cIml0ZW0uaWQgPyBpdGVtLmlkIDogaWQgKyAnLScgKyBpdGVtLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbFJlZl09XCJnZXRJdGVtTGFiZWxSZWYoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbERhdGFdPVwiZ2V0SXRlbUxhYmVsRGF0YShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiWydtYi0wJywgaXRlbS5jbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cENsYXNzZXNdPVwiaXRlbS5mb3JtR3JvdXBDbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJnZXRJdGVtTmFtZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiaXRlbS52YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uSW50ZXJuYWxDaGFuZ2UoaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiaXRlbS50eXBlID8gaXRlbS50eXBlIDogJ3RleHQnXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaW5wdXRtb2RlXT1cIml0ZW0uaW5wdXRtb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIml0ZW0uYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbcGF0dGVybl09XCJpdGVtLnBhdHRlcm5cIlxuICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJpdGVtLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgW21heGxlbmd0aF09XCJpdGVtLm1heGxlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiaXRlbS5yb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIml0ZW0uYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cIml0ZW0uYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiaXRlbS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiaXRlbS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cIml0ZW0uYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cIml0ZW0uYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiaXRlbS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cIml0ZW0uYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiaXRlbS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0uYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJpdGVtLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cIml0ZW0udGFiaW5kZXhcIj48L2Rlc3ktaW5wdXQ+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kZXN5LXRlbXBsYXRlLWRyaXZlbi13cmFwcGVyPlxuXG4gIDwhLS0gV2l0aCBuZ01vZGVsLS0+XG4gIDxkaXYgKm5nSWY9XCIhY29udHJvbENvbnRhaW5lclwiXG4gICAgICAgW25nQ2xhc3NdPVwiY2xhc3NlcyA/IGNsYXNzZXMgOiAnZmxleCdcIlxuICAgICAgIFthdHRyLmlkXT1cImlkID8gaWQgOiBudWxsXCJcbiAgICAgICBbYXR0ci5yb2xlXT1cInJvbGUgPyByb2xlIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBhcmlhTGFiZWwgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeSA/IGFyaWFEZXNjcmliZWRCeSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzID8gYXJpYUNvbnRyb2xzIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWxpdmVdPVwiYXJpYUxpdmUgPyBhcmlhTGl2ZSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkID8gYXJpYUV4cGFuZGVkIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cCA/IGFyaWFIYXNQb3B1cCA6IG51bGxcIlxuICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldEl0ZW1zKCk7IGluZGV4IGFzIGlcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpc1NlbGVjdEl0ZW0oaXRlbSkgPyBpdGVtU2VsZWN0IDogKGl0ZW0uZGl2aWRlciA/IGl0ZW1EaXZpZGVyIDogaXRlbUlucHV0KTsgY29udGV4dDoge2l0ZW06IGl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2l0ZW1TZWxlY3Q+XG4gICAgICAgIDxkZXN5LXNlbGVjdCBbaWRdPVwiaXRlbS5pZCA/IGl0ZW0uaWQgOiBpZCArICctJyArIGl0ZW0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICBbbGFiZWxSZWZdPVwiZ2V0SXRlbUxhYmVsUmVmKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgIFtsYWJlbERhdGFdPVwiZ2V0SXRlbUxhYmVsRGF0YShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICBbY2xhc3Nlc109XCJbJ21iLTAnLCBpdGVtLmNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBDbGFzc2VzXT1cIml0ZW0uZm9ybUdyb3VwQ2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJnZXRJdGVtTmFtZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiZ2V0SXRlbVNlbGVjdE9wdGlvbnMoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiaXRlbS52YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uSW50ZXJuYWxDaGFuZ2UoaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICBbcm9sZV09XCJpdGVtLnJvbGVcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJpdGVtLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cIml0ZW0uYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJpdGVtLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhSGlkZGVuXT1cIml0ZW0uYXJpYUhpZGRlblwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cIml0ZW0uYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhQ29udHJvbHNdPVwiaXRlbS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFDdXJyZW50XT1cIml0ZW0uYXJpYUN1cnJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cIml0ZW0uYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFFeHBhbmRlZF09XCJpdGVtLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUVycm9yTWVzc2FnZV09XCJpdGVtLmFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJpdGVtLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaXRlbS50YWJpbmRleFwiPjwvZGVzeS1zZWxlY3Q+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICNpdGVtSW5wdXQ+XG4gICAgICAgIDxkZXN5LWlucHV0IFtpZF09XCJpdGVtLmlkID8gaXRlbS5pZCA6IGlkICsgJy0nICsgaXRlbS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsUmVmXT1cImdldEl0ZW1MYWJlbFJlZihpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbERhdGFdPVwiZ2V0SXRlbUxhYmVsRGF0YShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cIlsnbWItMCcsIGl0ZW0uY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIlxuICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwQ2xhc3Nlc109XCJpdGVtLmZvcm1Hcm91cENsYXNzZXNcIlxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJnZXRJdGVtTmFtZShpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cIml0ZW0udmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvbkludGVybmFsQ2hhbmdlKGl0ZW0sICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJpdGVtLnR5cGUgPyBpdGVtLnR5cGUgOiAndGV4dCdcIlxuICAgICAgICAgICAgICAgICAgICBbaW5wdXRtb2RlXT1cIml0ZW0uaW5wdXRtb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgW2F1dG9jb21wbGV0ZV09XCJpdGVtLmF1dG9jb21wbGV0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtwYXR0ZXJuXT1cIml0ZW0ucGF0dGVyblwiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJpdGVtLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuXG4gICAgICAgICAgICAgICAgICAgIFttYXhsZW5ndGhdPVwiaXRlbS5tYXhsZW5ndGhcIlxuICAgICAgICAgICAgICAgICAgICBbcm9sZV09XCJpdGVtLnJvbGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIml0ZW0uYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJpdGVtLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJpdGVtLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiaXRlbS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFEaXNhYmxlZF09XCJpdGVtLmFyaWFEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhQ29udHJvbHNdPVwiaXRlbS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiaXRlbS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhTGl2ZV09XCJpdGVtLmFyaWFMaXZlXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFFeHBhbmRlZF09XCJpdGVtLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0uYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiaXRlbS5hcmlhSGFzUG9wdXBcIlxuICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaXRlbS50YWJpbmRleFwiPjwvZGVzeS1pbnB1dD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuXG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc0ZpZWxkc2V0Q29tcG9uZW50KClcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkZXN5LWZpZWxkc2V0XCI+PC9uZy1jb250ZW50PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoYXNGaWVsZHNldENvbXBvbmVudCgpXCI+XG4gICAgPGRlc3ktZmllbGRzZXQgKm5nSWY9XCJmaWVsZHNldERhdGFcIlxuICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cImZpZWxkc2V0RGF0YS5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICBbaWRdPVwiZmllbGRzZXREYXRhLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbbGVnZW5kRGF0YV09XCJmaWVsZHNldERhdGEubGVnZW5kXCJcbiAgICAgICAgICAgICAgICAgICBbaGVhZGluZ0xldmVsXT1cImZpZWxkc2V0RGF0YS5oZWFkaW5nTGV2ZWxcIlxuICAgICAgICAgICAgICAgICAgIFtjYWxsZXJdPVwiaW5uZXJIdG1sXCJcbiAgICAgICAgICAgICAgICAgICBbZXJyb3JJZF09XCJnZXRFcnJvcklkKClcIlxuICAgICAgICAgICAgICAgICAgIFtkZXNjcmliZWRCeV09XCJbZmllbGRzZXREYXRhLmRlc2NyaWJlZEJ5LCBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCJcbiAgICAgICAgICAgICAgICAgICByb2xlPVwiZ3JvdXBcIlxuICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiZmllbGRzZXREYXRhLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImZpZWxkc2V0RGF0YS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiZmllbGRzZXREYXRhLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiZmllbGRzZXREYXRhLmFyaWFEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJmaWVsZHNldERhdGEuYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiZmllbGRzZXREYXRhLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiZmllbGRzZXREYXRhLmFyaWFMaXZlXCJcbiAgICAgICAgICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cImZpZWxkc2V0RGF0YS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiZmllbGRzZXREYXRhLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cImZpZWxkc2V0RGF0YS50YWJpbmRleFwiPjwvZGVzeS1maWVsZHNldD5cbiAgICA8ZGVzeS1maWVsZHNldCAqbmdJZj1cIiFmaWVsZHNldERhdGEgJiYgaGFzTGVnZW5kQ29tcG9uZW50KClcIlxuICAgICAgICAgICAgICAgICAgIFtsZWdlbmRSZWZdPVwibGVnZW5kVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgIFtjYWxsZXJdPVwiaW5uZXJIdG1sXCJcbiAgICAgICAgICAgICAgICAgICBbZXJyb3JJZF09XCJnZXRFcnJvcklkKClcIlxuICAgICAgICAgICAgICAgICAgIFtkZXNjcmliZWRCeV09XCJbIGdldEhpbnRJZCgpLCBnZXRFcnJvcklkKCldIHwgbWFrZUh0bWxMaXN0Om51bGxcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbGVnZW5kVGVtcGxhdGU+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRlc3ktbGVnZW5kXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rlc3ktZmllbGRzZXQ+XG4gICAgPGRlc3ktZmllbGRzZXQgKm5nSWY9XCIhZmllbGRzZXREYXRhICYmICFoYXNMZWdlbmRDb21wb25lbnQoKSAmJiBsZWdlbmRSZWZcIlxuICAgICAgICAgICAgICAgICAgIFtsZWdlbmRSZWZdPVwibGVnZW5kUmVmXCJcbiAgICAgICAgICAgICAgICAgICBbY2FsbGVyXT1cImlubmVySHRtbFwiXG4gICAgICAgICAgICAgICAgICAgW2Vycm9ySWRdPVwiZ2V0RXJyb3JJZCgpXCJcbiAgICAgICAgICAgICAgICAgICBbZGVzY3JpYmVkQnldPVwiWyBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCJcbiAgICAgICAgICAgICAgICAgICByb2xlPVwiZ3JvdXBcIj48L2Rlc3ktZmllbGRzZXQ+XG4gICAgPGRlc3ktZmllbGRzZXQgKm5nSWY9XCIhZmllbGRzZXREYXRhICYmICFoYXNMZWdlbmRDb21wb25lbnQoKSAmJiAhbGVnZW5kUmVmICYmIGxlZ2VuZERhdGFcIlxuICAgICAgICAgICAgICAgICAgIFtsZWdlbmREYXRhXT1cInt0ZXh0OiBsZWdlbmREYXRhLnRleHQsIGh0bWw6IGxlZ2VuZERhdGEuaHRtbCwgIGNsYXNzZXM6IGxlZ2VuZERhdGEuY2xhc3NlcywgaXNQYWdlSGVhZGluZzogbGVnZW5kRGF0YS5pc1BhZ2VIZWFkaW5nfVwiXG4gICAgICAgICAgICAgICAgICAgW2NhbGxlcl09XCJpbm5lckh0bWxcIlxuICAgICAgICAgICAgICAgICAgIFtlcnJvcklkXT1cImdldEVycm9ySWQoKVwiXG4gICAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlZEJ5XT1cIlsgZ2V0SGludElkKCksIGdldEVycm9ySWQoKV0gfCBtYWtlSHRtbExpc3Q6bnVsbFwiXG4gICAgICAgICAgICAgICAgICAgcm9sZT1cImdyb3VwXCI+PC9kZXN5LWZpZWxkc2V0PlxuICAgIDxkZXN5LWZpZWxkc2V0ICpuZ0lmPVwiIWZpZWxkc2V0RGF0YSAmJiAhaGFzTGVnZW5kQ29tcG9uZW50KCkgJiYgIWxlZ2VuZFJlZiAmJiAhbGVnZW5kRGF0YSAmJiBsZWdlbmRUZXh0XCJcbiAgICAgICAgICAgICAgICAgICBbbGVnZW5kVGV4dF09XCJsZWdlbmRUZXh0XCJcbiAgICAgICAgICAgICAgICAgICBbY2FsbGVyXT1cImlubmVySHRtbFwiXG4gICAgICAgICAgICAgICAgICAgW2Vycm9ySWRdPVwiZ2V0RXJyb3JJZCgpXCJcbiAgICAgICAgICAgICAgICAgICBbZGVzY3JpYmVkQnldPVwiWyBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCJcbiAgICAgICAgICAgICAgICAgICByb2xlPVwiZ3JvdXBcIj48L2Rlc3ktZmllbGRzZXQ+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0ZpZWxkc2V0KClcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lckh0bWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiJdfQ==
@@ -0,0 +1,38 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { AccessibilityComponent } from '../../../shared/components';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../../../shared/directives/inner-content.directive";
6
+ export class LabelComponent extends AccessibilityComponent {
7
+ constructor(changeDetectorRef) {
8
+ super();
9
+ this.changeDetectorRef = changeDetectorRef;
10
+ }
11
+ ngOnInit() {
12
+ this.isHtml = Boolean(this.html);
13
+ }
14
+ detectChanges() {
15
+ this.changeDetectorRef.detectChanges();
16
+ }
17
+ }
18
+ LabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: LabelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
19
+ LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: LabelComponent, selector: "desy-label", inputs: { id: "id", classes: "classes", html: "html", text: "text", isPageHeading: "isPageHeading", headingLevel: "headingLevel", for: "for" }, usesInheritance: true, ngImport: i0, template: "<ng-template #labelTemplate>\n <label [desyInnerContent]=\"html ? html : text\" [isHtml]=\"isHtml\" [deleteContentIfEmpty]=\"false\"\n [class]=\"'block' + (classes ? ' ' + classes : '')\"\n [attr.id]=\"id ? id : null\"\n [attr.for]=\"for ? for : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-content></ng-content></label>\n</ng-template>\n<!-- label -->\n<ng-container *ngIf=\"isPageHeading; else elseBlock\" class=\"block\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h5>\n <h1 *ngSwitchDefault class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h1>\n </ng-container>\n</ng-container>\n<ng-template #elseBlock>\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n</ng-template>\n<!-- /label -->\n\n\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.InnerContentDirective, selector: "[desyInnerContent]", inputs: ["desyInnerContent", "isHtml", "deleteContentIfEmpty"] }] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: LabelComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'desy-label', template: "<ng-template #labelTemplate>\n <label [desyInnerContent]=\"html ? html : text\" [isHtml]=\"isHtml\" [deleteContentIfEmpty]=\"false\"\n [class]=\"'block' + (classes ? ' ' + classes : '')\"\n [attr.id]=\"id ? id : null\"\n [attr.for]=\"for ? for : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-content></ng-content></label>\n</ng-template>\n<!-- label -->\n<ng-container *ngIf=\"isPageHeading; else elseBlock\" class=\"block\">\n <ng-container [ngSwitch]=\"headingLevel\">\n <h1 *ngSwitchCase=\"1\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h1>\n <h2 *ngSwitchCase=\"2\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h2>\n <h3 *ngSwitchCase=\"3\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h3>\n <h4 *ngSwitchCase=\"4\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h4>\n <h5 *ngSwitchCase=\"5\" class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h5>\n <h1 *ngSwitchDefault class=\"block\">\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n </h1>\n </ng-container>\n</ng-container>\n<ng-template #elseBlock>\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\n</ng-template>\n<!-- /label -->\n\n\n" }]
23
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { id: [{
24
+ type: Input
25
+ }], classes: [{
26
+ type: Input
27
+ }], html: [{
28
+ type: Input
29
+ }], text: [{
30
+ type: Input
31
+ }], isPageHeading: [{
32
+ type: Input
33
+ }], headingLevel: [{
34
+ type: Input
35
+ }], for: [{
36
+ type: Input
37
+ }] } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL2xhYmVsL2xhYmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9sYWJlbC9sYWJlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxLQUFLLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFPbEUsTUFBTSxPQUFPLGNBQWUsU0FBUSxzQkFBc0I7SUFZeEQsWUFBb0IsaUJBQW9DO1FBQ3RELEtBQUssRUFBRSxDQUFDO1FBRFUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUV4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7MkdBdEJVLGNBQWM7K0ZBQWQsY0FBYyx5TkNSM0IsMnBFQWlEQTsyRkR6Q2EsY0FBYztrQkFKMUIsU0FBUzsrQkFDRSxZQUFZO3dHQUtiLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWNjZXNzaWJpbGl0eUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktbGFiZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFiZWwuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIExhYmVsQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcblxuICBASW5wdXQoKSBpZDogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGh0bWw6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBpc1BhZ2VIZWFkaW5nOiBib29sZWFuO1xuICBASW5wdXQoKSBoZWFkaW5nTGV2ZWw6IG51bWJlcjtcbiAgQElucHV0KCkgZm9yOiBzdHJpbmc7XG5cbiAgaXNIdG1sOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaXNIdG1sID0gQm9vbGVhbih0aGlzLmh0bWwpO1xuICB9XG5cbiAgcHVibGljIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjbGFiZWxUZW1wbGF0ZT5cbiAgPGxhYmVsIFtkZXN5SW5uZXJDb250ZW50XT1cImh0bWwgPyBodG1sIDogdGV4dFwiIFtpc0h0bWxdPVwiaXNIdG1sXCIgW2RlbGV0ZUNvbnRlbnRJZkVtcHR5XT1cImZhbHNlXCJcbiAgICBbY2xhc3NdPVwiJ2Jsb2NrJyArIChjbGFzc2VzID8gJyAnICsgY2xhc3NlcyA6ICcnKVwiXG4gICAgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgIFthdHRyLmZvcl09XCJmb3IgPyBmb3IgOiBudWxsXCJcbiAgICBbYXR0ci5yb2xlXT1cInJvbGUgPyByb2xlIDogbnVsbFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgPyBhcmlhTGFiZWwgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeSA/IGFyaWFEZXNjcmliZWRCeSA6IG51bGxcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSA/IGFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImFyaWFEaXNhYmxlZCA/IGFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzID8gYXJpYUNvbnRyb2xzIDogbnVsbFwiXG4gICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWxpdmVdPVwiYXJpYUxpdmUgPyBhcmlhTGl2ZSA6IG51bGxcIlxuICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYXJpYUV4cGFuZGVkID8gYXJpYUV4cGFuZGVkIDogbnVsbFwiXG4gICAgW2F0dHIuYXJpYS1lcnJvcm1lc3NhZ2VdPVwiYXJpYUVycm9yTWVzc2FnZSA/IGFyaWFFcnJvck1lc3NhZ2UgOiBudWxsXCJcbiAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cImFyaWFIYXNQb3B1cCA/IGFyaWFIYXNQb3B1cCA6IG51bGxcIlxuICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD48L2xhYmVsPlxuPC9uZy10ZW1wbGF0ZT5cbjwhLS0gbGFiZWwgLS0+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaXNQYWdlSGVhZGluZzsgZWxzZSBlbHNlQmxvY2tcIiBjbGFzcz1cImJsb2NrXCI+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImhlYWRpbmdMZXZlbFwiPlxuICAgIDxoMSAqbmdTd2l0Y2hDYXNlPVwiMVwiIGNsYXNzPVwiYmxvY2tcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9oMT5cbiAgICA8aDIgKm5nU3dpdGNoQ2FzZT1cIjJcIiBjbGFzcz1cImJsb2NrXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGFiZWxUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvaDI+XG4gICAgPGgzICpuZ1N3aXRjaENhc2U9XCIzXCIgY2xhc3M9XCJibG9ja1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2gzPlxuICAgIDxoNCAqbmdTd2l0Y2hDYXNlPVwiNFwiIGNsYXNzPVwiYmxvY2tcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9oND5cbiAgICA8aDUgKm5nU3dpdGNoQ2FzZT1cIjVcIiBjbGFzcz1cImJsb2NrXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGFiZWxUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvaDU+XG4gICAgPGgxICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJibG9ja1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2gxPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNlbHNlQmxvY2s+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuPCEtLSAvbGFiZWwgLS0+XG5cblxuIl19