desy-angular 7.0.1 → 8.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 (539) hide show
  1. package/README.md +2 -2
  2. package/esm2022/desy-angular.mjs +2 -0
  3. package/{esm2020 → esm2022}/lib/desy-angular.module.mjs +37 -37
  4. package/esm2022/lib/desy-buttons/components/button/button.component.mjs +115 -0
  5. package/esm2022/lib/desy-buttons/components/button-loader/button-loader.component.mjs +63 -0
  6. package/esm2022/lib/desy-buttons/components/dropdown/dropdown.component.mjs +127 -0
  7. package/esm2022/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +39 -0
  8. package/{esm2020 → esm2022}/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.mjs +4 -4
  9. package/esm2022/lib/desy-buttons/components/listbox/listbox.component.mjs +334 -0
  10. package/esm2022/lib/desy-buttons/components/pill/pill.component.mjs +80 -0
  11. package/{esm2020 → esm2022}/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.mjs +4 -4
  13. package/esm2022/lib/desy-buttons/components/toggle/toggle.component.mjs +61 -0
  14. package/esm2022/lib/desy-buttons/desy-buttons.module.mjs +81 -0
  15. package/{esm2020 → esm2022}/lib/desy-commons/components/content/content.component.mjs +4 -4
  16. package/{esm2020 → esm2022}/lib/desy-commons/components/description/description.component.mjs +4 -4
  17. package/{esm2020 → esm2022}/lib/desy-commons/components/divider/divider.component.mjs +4 -4
  18. package/{esm2020 → esm2022}/lib/desy-commons/components/icon/icon.component.mjs +4 -4
  19. package/{esm2020 → esm2022}/lib/desy-commons/components/title/title.component.mjs +4 -4
  20. package/esm2022/lib/desy-commons/desy-commons.module.mjs +52 -0
  21. package/{esm2020 → esm2022}/lib/desy-forms/components/character-count/character-count.component.mjs +10 -10
  22. package/esm2022/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +222 -0
  23. package/esm2022/lib/desy-forms/components/checkboxes/checkboxes-parent.component.mjs +15 -0
  24. package/esm2022/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +268 -0
  25. package/esm2022/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +55 -0
  26. package/esm2022/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +19 -0
  27. package/{esm2020 → esm2022}/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.mjs +4 -4
  28. package/esm2022/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +55 -0
  29. package/esm2022/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +51 -0
  30. package/esm2022/lib/desy-forms/components/date-input/date-input.component.mjs +293 -0
  31. package/esm2022/lib/desy-forms/components/error-message/error-message.component.mjs +31 -0
  32. package/{esm2020 → esm2022}/lib/desy-forms/components/fieldset/fieldset.component.mjs +10 -8
  33. package/{esm2020 → esm2022}/lib/desy-forms/components/fieldset/legend/legend.component.mjs +4 -4
  34. package/esm2022/lib/desy-forms/components/file-upload/file-upload.component.mjs +67 -0
  35. package/esm2022/lib/desy-forms/components/form-field/form-field.component.mjs +120 -0
  36. package/esm2022/lib/desy-forms/components/hint/hint.component.mjs +29 -0
  37. package/esm2022/lib/desy-forms/components/input/input.component.mjs +98 -0
  38. package/esm2022/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +20 -0
  39. package/esm2022/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +59 -0
  40. package/{esm2020 → esm2022}/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.mjs +4 -4
  41. package/esm2022/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +51 -0
  42. package/esm2022/lib/desy-forms/components/input-group/input-group.component.mjs +228 -0
  43. package/esm2022/lib/desy-forms/components/label/label.component.mjs +38 -0
  44. package/esm2022/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +170 -0
  45. package/esm2022/lib/desy-forms/components/radios/radios-parent.component.mjs +15 -0
  46. package/esm2022/lib/desy-forms/components/radios/radios.component.mjs +281 -0
  47. package/esm2022/lib/desy-forms/components/search-bar/search-bar.component.mjs +60 -0
  48. package/{esm2020 → esm2022}/lib/desy-forms/components/select/option/option.component.mjs +4 -4
  49. package/esm2022/lib/desy-forms/components/select/option-group/option-group.component.mjs +18 -0
  50. package/{esm2020 → esm2022}/lib/desy-forms/components/select/select-item/select-item.component.mjs +4 -4
  51. package/esm2022/lib/desy-forms/components/select/select.component.mjs +92 -0
  52. package/{esm2020 → esm2022}/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.mjs +4 -4
  53. package/{esm2020 → esm2022}/lib/desy-forms/components/textarea/textarea.component.mjs +12 -13
  54. package/esm2022/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +173 -0
  55. package/esm2022/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +377 -0
  56. package/esm2022/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +25 -0
  57. package/{esm2020 → esm2022}/lib/desy-forms/components/tree/tree-sub/tree-sub.component.mjs +4 -4
  58. package/esm2022/lib/desy-forms/components/tree/tree.component.mjs +356 -0
  59. package/esm2022/lib/desy-forms/desy-forms.module.mjs +207 -0
  60. package/esm2022/lib/desy-forms/directives/condition.directive.mjs +34 -0
  61. package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-date-input-data.mjs +1 -1
  62. package/{esm2020 → esm2022}/lib/desy-forms/interfaces/select-item-data.mjs +1 -1
  63. package/esm2022/lib/desy-modals/components/dialog/dialog.component.mjs +150 -0
  64. package/esm2022/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +25 -0
  65. package/esm2022/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +23 -0
  66. package/esm2022/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +23 -0
  67. package/esm2022/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +23 -0
  68. package/esm2022/lib/desy-modals/components/modal/modal.component.mjs +182 -0
  69. package/esm2022/lib/desy-modals/desy-modals.module.mjs +61 -0
  70. package/{esm2020 → esm2022}/lib/desy-modals/interfaces/dialog-options.mjs +1 -1
  71. package/esm2022/lib/desy-modals/interfaces/index.mjs +7 -0
  72. package/esm2022/lib/desy-modals/services/dialog.service.mjs +114 -0
  73. package/{esm2020 → esm2022}/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.mjs +4 -4
  74. package/esm2022/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +48 -0
  75. package/{esm2020 → esm2022}/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.mjs +4 -4
  76. package/esm2022/lib/desy-nav/components/error-summary/error-summary.component.mjs +64 -0
  77. package/{esm2020 → esm2022}/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.mjs +4 -4
  78. package/esm2022/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +31 -0
  79. package/{esm2020 → esm2022}/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.mjs +4 -4
  80. package/esm2022/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +19 -0
  81. package/esm2022/lib/desy-nav/components/footer/footer.component.mjs +74 -0
  82. package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.mjs +4 -4
  83. package/esm2022/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +46 -0
  84. package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.mjs +4 -4
  85. package/esm2022/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +36 -0
  86. package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.mjs +4 -4
  87. package/{esm2020 → esm2022}/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.mjs +4 -4
  88. package/esm2022/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +93 -0
  89. package/esm2022/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +41 -0
  90. package/esm2022/lib/desy-nav/components/header/header.component.mjs +107 -0
  91. package/esm2022/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.mjs +40 -0
  92. package/esm2022/lib/desy-nav/components/links-list/links-list-item-sub/links-list-item-sub.component.mjs +14 -0
  93. package/esm2022/lib/desy-nav/components/links-list/links-list.component.mjs +42 -0
  94. package/{esm2020 → esm2022}/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.mjs +4 -4
  95. package/esm2022/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +78 -0
  96. package/esm2022/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +49 -0
  97. package/{esm2020 → esm2022}/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.mjs +4 -4
  98. package/esm2022/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +602 -0
  99. package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +46 -0
  100. package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +18 -0
  101. package/{esm2020 → esm2022}/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.mjs +4 -4
  102. package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +113 -0
  103. package/esm2022/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +51 -0
  104. package/{esm2020 → esm2022}/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.mjs +4 -4
  105. package/esm2022/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +36 -0
  106. package/{esm2020 → esm2022}/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.mjs +4 -4
  107. package/esm2022/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +45 -0
  108. package/esm2022/lib/desy-nav/components/menubar/menubar.component.mjs +713 -0
  109. package/{esm2020 → esm2022}/lib/desy-nav/components/nav/nav-item/nav-item.component.mjs +4 -4
  110. package/esm2022/lib/desy-nav/components/nav/nav.component.mjs +115 -0
  111. package/{esm2020 → esm2022}/lib/desy-nav/components/notification/notification-item/notification-item.component.mjs +4 -4
  112. package/esm2022/lib/desy-nav/components/notification/notification.component.mjs +143 -0
  113. package/esm2022/lib/desy-nav/components/skip-link/skip-link.component.mjs +43 -0
  114. package/esm2022/lib/desy-nav/desy-nav.module.mjs +240 -0
  115. package/esm2022/lib/desy-nav/interfaces/header-skiplink-data.mjs +2 -0
  116. package/esm2022/lib/desy-pagination/components/pagination/pagination.component.mjs +191 -0
  117. package/{esm2020 → esm2022}/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.mjs +4 -4
  118. package/{esm2020 → esm2022}/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.mjs +4 -4
  119. package/{esm2020 → esm2022}/lib/desy-pagination/desy-pagination.module.mjs +15 -15
  120. package/{esm2020 → esm2022}/lib/desy-tables/components/table/components/table-caption.component.mjs +4 -4
  121. package/{esm2020 → esm2022}/lib/desy-tables/components/table/components/table-cell.component.mjs +4 -4
  122. package/esm2022/lib/desy-tables/components/table/components/table-header.component.mjs +18 -0
  123. package/esm2022/lib/desy-tables/components/table/components/table-row.component.mjs +18 -0
  124. package/esm2022/lib/desy-tables/components/table/table.component.mjs +79 -0
  125. package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +50 -0
  126. package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +18 -0
  127. package/{esm2020 → esm2022}/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.mjs +4 -4
  128. package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +27 -0
  129. package/esm2022/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +28 -0
  130. package/esm2022/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +286 -0
  131. package/{esm2020 → esm2022}/lib/desy-tables/desy-tables.module.mjs +38 -38
  132. package/esm2022/lib/desy-tables/directives/cell.directive.mjs +25 -0
  133. package/esm2022/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +81 -0
  134. package/esm2022/lib/desy-tables/directives/row.directive.mjs +22 -0
  135. package/{esm2020 → esm2022}/lib/desy-views/components/accordion/accordion-header/accordion-header.component.mjs +4 -4
  136. package/esm2022/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +61 -0
  137. package/esm2022/lib/desy-views/components/accordion/accordion.component.mjs +199 -0
  138. package/esm2022/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +41 -0
  139. package/esm2022/lib/desy-views/components/accordion-history/accordion-history.component.mjs +19 -0
  140. package/{esm2020 → esm2022}/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.mjs +4 -4
  141. package/{esm2020 → esm2022}/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.mjs +4 -4
  142. package/esm2022/lib/desy-views/components/alert/alert.component.mjs +81 -0
  143. package/esm2022/lib/desy-views/components/collapsible/collapsible.component.mjs +81 -0
  144. package/{esm2020 → esm2022}/lib/desy-views/components/description-list/definition/definition.component.mjs +4 -4
  145. package/esm2022/lib/desy-views/components/description-list/description-item/description-item.component.mjs +36 -0
  146. package/esm2022/lib/desy-views/components/description-list/description-list.component.mjs +28 -0
  147. package/{esm2020 → esm2022}/lib/desy-views/components/description-list/term/term.component.mjs +4 -4
  148. package/{esm2020 → esm2022}/lib/desy-views/components/details/details.component.mjs +4 -4
  149. package/{esm2020 → esm2022}/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.mjs +4 -4
  150. package/{esm2020 → esm2022}/lib/desy-views/components/item/item-content-right/item-content-right.component.mjs +4 -4
  151. package/{esm2020 → esm2022}/lib/desy-views/components/item/item-item/item-item.component.mjs +4 -4
  152. package/esm2022/lib/desy-views/components/item/item.component.mjs +121 -0
  153. package/{esm2020 → esm2022}/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.mjs +4 -4
  154. package/esm2022/lib/desy-views/components/media-object/media-object.component.mjs +117 -0
  155. package/{esm2020 → esm2022}/lib/desy-views/components/spinner/spinner.component.mjs +4 -4
  156. package/esm2022/lib/desy-views/components/status/status.component.mjs +107 -0
  157. package/esm2022/lib/desy-views/components/status-item/status-item.component.mjs +148 -0
  158. package/{esm2020 → esm2022}/lib/desy-views/components/tabs/panel/panel.component.mjs +4 -4
  159. package/esm2022/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +39 -0
  160. package/esm2022/lib/desy-views/components/tabs/tabs.component.mjs +200 -0
  161. package/{esm2020 → esm2022}/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.mjs +4 -4
  162. package/esm2022/lib/desy-views/components/tooltip/tooltip.component.mjs +206 -0
  163. package/{esm2020 → esm2022}/lib/desy-views/desy-views.module.mjs +67 -67
  164. package/esm2022/lib/desy-views/services/alert.service.mjs +88 -0
  165. package/esm2022/lib/shared/components/accessibility/accessibility.component.mjs +42 -0
  166. package/{esm2020 → esm2022}/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.mjs +4 -4
  167. package/{esm2020 → esm2022}/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.mjs +4 -4
  168. package/esm2022/lib/shared/components/content-base/content-base.component.mjs +21 -0
  169. package/{esm2020 → esm2022}/lib/shared/components/text-or-html-required/text-or-html-required.component.mjs +4 -4
  170. package/esm2022/lib/shared/decorators/desy-content-child.decorator.mjs +30 -0
  171. package/esm2022/lib/shared/decorators/desy-on-input-change.decorator.mjs +15 -0
  172. package/esm2022/lib/shared/directives/attribute-change.directive.mjs +50 -0
  173. package/esm2022/lib/shared/directives/click-outside.directive.mjs +40 -0
  174. package/esm2022/lib/shared/directives/content-change.directive.mjs +41 -0
  175. package/esm2022/lib/shared/directives/custom-inner-content.directive.mjs +44 -0
  176. package/esm2022/lib/shared/directives/inner-content.directive.mjs +37 -0
  177. package/esm2022/lib/shared/pipes/external-href.pipe.mjs +28 -0
  178. package/esm2022/lib/shared/pipes/inner-html.pipe.mjs +21 -0
  179. package/{esm2020 → esm2022}/lib/shared/pipes/make-html-list.pipe.mjs +4 -4
  180. package/esm2022/lib/shared/shared.module.mjs +83 -0
  181. package/esm2022/lib/shared/utils/search-utils.mjs +66 -0
  182. package/esm2022/lib/shared/utils/string-utils.mjs +11 -0
  183. package/esm2022/public-api.mjs +197 -0
  184. package/{fesm2020 → fesm2022}/desy-angular.mjs +1964 -2068
  185. package/fesm2022/desy-angular.mjs.map +1 -0
  186. package/index.d.ts +0 -3
  187. package/lib/desy-buttons/components/button/button.component.d.ts +1 -1
  188. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -1
  189. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +1 -1
  190. package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +3 -1
  191. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +1 -1
  192. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +16 -5
  193. package/lib/desy-buttons/components/pill/pill.component.d.ts +1 -1
  194. package/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.d.ts +1 -1
  195. package/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.d.ts +1 -1
  196. package/lib/desy-buttons/components/toggle/toggle.component.d.ts +1 -1
  197. package/lib/desy-commons/components/content/content.component.d.ts +1 -1
  198. package/lib/desy-commons/components/description/description.component.d.ts +1 -1
  199. package/lib/desy-commons/components/divider/divider.component.d.ts +1 -1
  200. package/lib/desy-commons/components/icon/icon.component.d.ts +1 -1
  201. package/lib/desy-commons/components/title/title.component.d.ts +1 -1
  202. package/lib/desy-forms/components/character-count/character-count.component.d.ts +1 -1
  203. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +6 -4
  204. package/lib/desy-forms/components/checkboxes/checkboxes-parent.component.d.ts +13 -0
  205. package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +13 -31
  206. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +2 -1
  207. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +1 -1
  208. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +2 -1
  209. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +2 -1
  210. package/lib/desy-forms/components/date-input/date-input.component.d.ts +5 -8
  211. package/lib/desy-forms/components/error-message/error-message.component.d.ts +1 -1
  212. package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +1 -8
  213. package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +1 -1
  214. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +1 -6
  215. package/lib/desy-forms/components/form-field/form-field.component.d.ts +10 -10
  216. package/lib/desy-forms/components/hint/hint.component.d.ts +1 -1
  217. package/lib/desy-forms/components/input/input.component.d.ts +1 -1
  218. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +2 -1
  219. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +1 -1
  220. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +2 -1
  221. package/lib/desy-forms/components/input-group/input-group.component.d.ts +3 -8
  222. package/lib/desy-forms/components/label/label.component.d.ts +1 -1
  223. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +6 -5
  224. package/lib/desy-forms/components/radios/radios-parent.component.d.ts +13 -0
  225. package/lib/desy-forms/components/radios/radios.component.d.ts +14 -31
  226. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +3 -5
  227. package/lib/desy-forms/components/select/option/option.component.d.ts +2 -2
  228. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +1 -1
  229. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +1 -1
  230. package/lib/desy-forms/components/select/select.component.d.ts +1 -1
  231. package/lib/desy-forms/components/textarea/textarea.component.d.ts +1 -1
  232. package/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.d.ts +1 -1
  233. package/lib/desy-forms/components/tree/tree-item/tree-item.component.d.ts +2 -5
  234. package/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.d.ts +6 -2
  235. package/lib/desy-forms/components/tree/tree-sub/tree-sub.component.d.ts +1 -1
  236. package/lib/desy-forms/components/tree/tree.component.d.ts +2 -59
  237. package/lib/desy-forms/directives/condition.directive.d.ts +1 -6
  238. package/lib/desy-forms/interfaces/item-date-input-data.d.ts +1 -0
  239. package/lib/desy-forms/interfaces/select-item-data.d.ts +1 -1
  240. package/lib/desy-modals/components/dialog/dialog.component.d.ts +2 -1
  241. package/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.d.ts +1 -1
  242. package/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.d.ts +1 -1
  243. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +1 -1
  244. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +1 -1
  245. package/lib/desy-modals/components/modal/modal.component.d.ts +1 -1
  246. package/lib/desy-modals/interfaces/dialog-options.d.ts +1 -0
  247. package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +1 -1
  248. package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +1 -1
  249. package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +1 -1
  250. package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +1 -1
  251. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +1 -1
  252. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +1 -1
  253. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +1 -1
  254. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +1 -1
  255. package/lib/desy-nav/components/footer/footer.component.d.ts +1 -1
  256. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +1 -1
  257. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +1 -1
  258. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +1 -1
  259. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +1 -8
  260. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +1 -1
  261. package/lib/desy-nav/components/header/header.component.d.ts +3 -2
  262. package/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.d.ts +20 -0
  263. package/lib/desy-nav/components/links-list/links-list-item-sub/links-list-item-sub.component.d.ts +7 -0
  264. package/lib/desy-nav/components/links-list/links-list.component.d.ts +13 -0
  265. package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +1 -1
  266. package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +1 -1
  267. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.d.ts +1 -1
  268. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.d.ts +1 -1
  269. package/lib/desy-nav/components/menu-navigation/menu-navigation.component.d.ts +1 -1
  270. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +1 -1
  271. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +1 -1
  272. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +1 -1
  273. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +1 -1
  274. package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +1 -1
  275. package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +1 -1
  276. package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +1 -1
  277. package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +1 -1
  278. package/lib/desy-nav/components/menubar/menubar.component.d.ts +1 -8
  279. package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +1 -1
  280. package/lib/desy-nav/components/nav/nav.component.d.ts +1 -1
  281. package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +1 -1
  282. package/lib/desy-nav/components/notification/notification.component.d.ts +1 -1
  283. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +2 -1
  284. package/lib/desy-nav/desy-nav.module.d.ts +29 -26
  285. package/lib/desy-nav/interfaces/header-skiplink-data.d.ts +7 -0
  286. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +12 -7
  287. package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +1 -1
  288. package/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.d.ts +1 -1
  289. package/lib/desy-tables/components/table/components/table-caption.component.d.ts +1 -1
  290. package/lib/desy-tables/components/table/components/table-cell.component.d.ts +1 -1
  291. package/lib/desy-tables/components/table/table.component.d.ts +1 -1
  292. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +1 -1
  293. package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +1 -1
  294. package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +1 -1
  295. package/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.d.ts +1 -1
  296. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +1 -56
  297. package/lib/desy-tables/directives/cell.directive.d.ts +1 -4
  298. package/lib/desy-tables/directives/row.directive.d.ts +1 -8
  299. package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +1 -1
  300. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +1 -1
  301. package/lib/desy-views/components/accordion/accordion.component.d.ts +1 -1
  302. package/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.d.ts +1 -1
  303. package/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.d.ts +1 -1
  304. package/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.d.ts +1 -1
  305. package/lib/desy-views/components/alert/alert.component.d.ts +1 -1
  306. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +1 -1
  307. package/lib/desy-views/components/description-list/definition/definition.component.d.ts +1 -1
  308. package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +1 -1
  309. package/lib/desy-views/components/description-list/description-list.component.d.ts +1 -1
  310. package/lib/desy-views/components/description-list/term/term.component.d.ts +1 -1
  311. package/lib/desy-views/components/details/details.component.d.ts +1 -1
  312. package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +1 -1
  313. package/lib/desy-views/components/item/item.component.d.ts +2 -1
  314. package/lib/desy-views/components/media-object/media-object.component.d.ts +1 -1
  315. package/lib/desy-views/components/spinner/spinner.component.d.ts +1 -1
  316. package/lib/desy-views/components/status/status.component.d.ts +3 -1
  317. package/lib/desy-views/components/status-item/status-item.component.d.ts +1 -1
  318. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +1 -1
  319. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +1 -1
  320. package/lib/desy-views/components/tabs/tabs.component.d.ts +1 -1
  321. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +1 -1
  322. package/lib/shared/components/accessibility/accessibility.component.d.ts +1 -4
  323. package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +1 -9
  324. package/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.d.ts +1 -7
  325. package/lib/shared/components/content-base/content-base.component.d.ts +0 -3
  326. package/lib/shared/components/text-or-html-required/text-or-html-required.component.d.ts +1 -5
  327. package/lib/shared/decorators/desy-content-child.decorator.d.ts +0 -11
  328. package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +0 -4
  329. package/lib/shared/directives/attribute-change.directive.d.ts +2 -1
  330. package/lib/shared/directives/click-outside.directive.d.ts +1 -1
  331. package/lib/shared/directives/content-change.directive.d.ts +1 -5
  332. package/lib/shared/directives/custom-inner-content.directive.d.ts +1 -7
  333. package/lib/shared/directives/inner-content.directive.d.ts +1 -1
  334. package/lib/shared/pipes/external-href.pipe.d.ts +0 -4
  335. package/lib/shared/utils/search-utils.d.ts +0 -10
  336. package/lib/shared/utils/string-utils.d.ts +0 -7
  337. package/package.json +13 -19
  338. package/public-api.d.ts +4 -0
  339. package/esm2020/desy-angular.mjs +0 -5
  340. package/esm2020/lib/desy-buttons/components/button/button.component.mjs +0 -115
  341. package/esm2020/lib/desy-buttons/components/button-loader/button-loader.component.mjs +0 -63
  342. package/esm2020/lib/desy-buttons/components/dropdown/dropdown.component.mjs +0 -126
  343. package/esm2020/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.mjs +0 -32
  344. package/esm2020/lib/desy-buttons/components/listbox/listbox.component.mjs +0 -291
  345. package/esm2020/lib/desy-buttons/components/pill/pill.component.mjs +0 -80
  346. package/esm2020/lib/desy-buttons/components/toggle/toggle.component.mjs +0 -59
  347. package/esm2020/lib/desy-buttons/desy-buttons.module.mjs +0 -82
  348. package/esm2020/lib/desy-commons/desy-commons.module.mjs +0 -53
  349. package/esm2020/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.mjs +0 -240
  350. package/esm2020/lib/desy-forms/components/checkboxes/checkboxes.component.mjs +0 -264
  351. package/esm2020/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.mjs +0 -52
  352. package/esm2020/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.mjs +0 -19
  353. package/esm2020/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.mjs +0 -52
  354. package/esm2020/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.mjs +0 -48
  355. package/esm2020/lib/desy-forms/components/date-input/date-input.component.mjs +0 -266
  356. package/esm2020/lib/desy-forms/components/error-message/error-message.component.mjs +0 -31
  357. package/esm2020/lib/desy-forms/components/file-upload/file-upload.component.mjs +0 -72
  358. package/esm2020/lib/desy-forms/components/form-field/form-field.component.mjs +0 -124
  359. package/esm2020/lib/desy-forms/components/hint/hint.component.mjs +0 -29
  360. package/esm2020/lib/desy-forms/components/input/input.component.mjs +0 -99
  361. package/esm2020/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.mjs +0 -20
  362. package/esm2020/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.mjs +0 -53
  363. package/esm2020/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.mjs +0 -45
  364. package/esm2020/lib/desy-forms/components/input-group/input-group.component.mjs +0 -223
  365. package/esm2020/lib/desy-forms/components/label/label.component.mjs +0 -38
  366. package/esm2020/lib/desy-forms/components/radios/radio-item/radio-item.component.mjs +0 -185
  367. package/esm2020/lib/desy-forms/components/radios/radios.component.mjs +0 -270
  368. package/esm2020/lib/desy-forms/components/search-bar/search-bar.component.mjs +0 -66
  369. package/esm2020/lib/desy-forms/components/select/option-group/option-group.component.mjs +0 -18
  370. package/esm2020/lib/desy-forms/components/select/select.component.mjs +0 -93
  371. package/esm2020/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.mjs +0 -167
  372. package/esm2020/lib/desy-forms/components/tree/tree-item/tree-item.component.mjs +0 -397
  373. package/esm2020/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.mjs +0 -25
  374. package/esm2020/lib/desy-forms/components/tree/tree.component.mjs +0 -425
  375. package/esm2020/lib/desy-forms/desy-forms.module.mjs +0 -209
  376. package/esm2020/lib/desy-forms/directives/condition.directive.mjs +0 -34
  377. package/esm2020/lib/desy-forms/models/checkbox-service-item.component.mjs +0 -9
  378. package/esm2020/lib/desy-forms/models/radio-service-item.component.mjs +0 -9
  379. package/esm2020/lib/desy-forms/services/checkbox.service.mjs +0 -61
  380. package/esm2020/lib/desy-forms/services/radio.service.mjs +0 -53
  381. package/esm2020/lib/desy-modals/components/dialog/dialog.component.mjs +0 -130
  382. package/esm2020/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.mjs +0 -25
  383. package/esm2020/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.mjs +0 -23
  384. package/esm2020/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.mjs +0 -23
  385. package/esm2020/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.mjs +0 -23
  386. package/esm2020/lib/desy-modals/components/modal/modal.component.mjs +0 -178
  387. package/esm2020/lib/desy-modals/desy-modals.module.mjs +0 -62
  388. package/esm2020/lib/desy-modals/interfaces/index.mjs +0 -8
  389. package/esm2020/lib/desy-modals/services/dialog.service.mjs +0 -114
  390. package/esm2020/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +0 -47
  391. package/esm2020/lib/desy-nav/components/error-summary/error-summary.component.mjs +0 -62
  392. package/esm2020/lib/desy-nav/components/footer/footer-meta/footer-meta.component.mjs +0 -30
  393. package/esm2020/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +0 -19
  394. package/esm2020/lib/desy-nav/components/footer/footer.component.mjs +0 -71
  395. package/esm2020/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.mjs +0 -45
  396. package/esm2020/lib/desy-nav/components/header/header-navigation/header-navigation.component.mjs +0 -36
  397. package/esm2020/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.mjs +0 -95
  398. package/esm2020/lib/desy-nav/components/header/header-subnav/header-subnav.component.mjs +0 -41
  399. package/esm2020/lib/desy-nav/components/header/header.component.mjs +0 -103
  400. package/esm2020/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +0 -79
  401. package/esm2020/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.mjs +0 -49
  402. package/esm2020/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +0 -616
  403. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.mjs +0 -45
  404. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.mjs +0 -18
  405. package/esm2020/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +0 -113
  406. package/esm2020/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.mjs +0 -51
  407. package/esm2020/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.mjs +0 -36
  408. package/esm2020/lib/desy-nav/components/menubar/directives/menubaritem.directive.mjs +0 -45
  409. package/esm2020/lib/desy-nav/components/menubar/menubar.component.mjs +0 -727
  410. package/esm2020/lib/desy-nav/components/nav/nav.component.mjs +0 -116
  411. package/esm2020/lib/desy-nav/components/notification/notification.component.mjs +0 -141
  412. package/esm2020/lib/desy-nav/components/skip-link/skip-link.component.mjs +0 -37
  413. package/esm2020/lib/desy-nav/desy-nav.module.mjs +0 -221
  414. package/esm2020/lib/desy-pagination/components/pagination/pagination.component.mjs +0 -167
  415. package/esm2020/lib/desy-tables/components/table/components/table-header.component.mjs +0 -18
  416. package/esm2020/lib/desy-tables/components/table/components/table-row.component.mjs +0 -18
  417. package/esm2020/lib/desy-tables/components/table/table.component.mjs +0 -78
  418. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.mjs +0 -47
  419. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.mjs +0 -18
  420. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.mjs +0 -27
  421. package/esm2020/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.mjs +0 -28
  422. package/esm2020/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +0 -342
  423. package/esm2020/lib/desy-tables/directives/cell.directive.mjs +0 -28
  424. package/esm2020/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +0 -81
  425. package/esm2020/lib/desy-tables/directives/row.directive.mjs +0 -29
  426. package/esm2020/lib/desy-views/components/accordion/accordion-item/accordion-item.component.mjs +0 -57
  427. package/esm2020/lib/desy-views/components/accordion/accordion.component.mjs +0 -198
  428. package/esm2020/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.mjs +0 -39
  429. package/esm2020/lib/desy-views/components/accordion-history/accordion-history.component.mjs +0 -19
  430. package/esm2020/lib/desy-views/components/alert/alert.component.mjs +0 -81
  431. package/esm2020/lib/desy-views/components/collapsible/collapsible.component.mjs +0 -81
  432. package/esm2020/lib/desy-views/components/description-list/description-item/description-item.component.mjs +0 -34
  433. package/esm2020/lib/desy-views/components/description-list/description-list.component.mjs +0 -28
  434. package/esm2020/lib/desy-views/components/item/item.component.mjs +0 -121
  435. package/esm2020/lib/desy-views/components/media-object/media-object.component.mjs +0 -115
  436. package/esm2020/lib/desy-views/components/status/status.component.mjs +0 -97
  437. package/esm2020/lib/desy-views/components/status-item/status-item.component.mjs +0 -143
  438. package/esm2020/lib/desy-views/components/tabs/tab-item/tab-item.component.mjs +0 -37
  439. package/esm2020/lib/desy-views/components/tabs/tabs.component.mjs +0 -199
  440. package/esm2020/lib/desy-views/components/tooltip/tooltip.component.mjs +0 -202
  441. package/esm2020/lib/desy-views/services/alert.service.mjs +0 -88
  442. package/esm2020/lib/shared/components/accessibility/accessibility.component.mjs +0 -45
  443. package/esm2020/lib/shared/components/content-base/content-base.component.mjs +0 -24
  444. package/esm2020/lib/shared/decorators/desy-content-child.decorator.mjs +0 -41
  445. package/esm2020/lib/shared/decorators/desy-on-input-change.decorator.mjs +0 -19
  446. package/esm2020/lib/shared/directives/attribute-change.directive.mjs +0 -45
  447. package/esm2020/lib/shared/directives/click-outside.directive.mjs +0 -40
  448. package/esm2020/lib/shared/directives/content-change.directive.mjs +0 -45
  449. package/esm2020/lib/shared/directives/custom-inner-content.directive.mjs +0 -60
  450. package/esm2020/lib/shared/directives/inner-content.directive.mjs +0 -37
  451. package/esm2020/lib/shared/pipes/external-href.pipe.mjs +0 -32
  452. package/esm2020/lib/shared/pipes/inner-html.pipe.mjs +0 -20
  453. package/esm2020/lib/shared/shared.module.mjs +0 -99
  454. package/esm2020/lib/shared/utils/search-utils.mjs +0 -78
  455. package/esm2020/lib/shared/utils/string-utils.mjs +0 -18
  456. package/esm2020/public-api.mjs +0 -221
  457. package/fesm2015/desy-angular.mjs +0 -11752
  458. package/fesm2015/desy-angular.mjs.map +0 -1
  459. package/fesm2020/desy-angular.mjs.map +0 -1
  460. package/lib/desy-forms/models/checkbox-service-item.component.d.ts +0 -13
  461. package/lib/desy-forms/models/radio-service-item.component.d.ts +0 -12
  462. package/lib/desy-forms/services/checkbox.service.d.ts +0 -14
  463. package/lib/desy-forms/services/radio.service.d.ts +0 -13
  464. /package/{esm2020 → esm2022}/lib/desy-buttons/interfaces/listbox-item-data.mjs +0 -0
  465. /package/{esm2020 → esm2022}/lib/desy-buttons/interfaces/listbox-label-data.mjs +0 -0
  466. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/content-data.mjs +0 -0
  467. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/description-data.mjs +0 -0
  468. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/divider-data.mjs +0 -0
  469. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/icon-data.mjs +0 -0
  470. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/index.mjs +0 -0
  471. /package/{esm2020 → esm2022}/lib/desy-commons/interfaces/title-data.mjs +0 -0
  472. /package/{esm2020 → esm2022}/lib/desy-forms/components/tree/interfaces/itree-item.mjs +0 -0
  473. /package/{esm2020 → esm2022}/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.mjs +0 -0
  474. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/accesibility-data.mjs +0 -0
  475. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/error-message-data.mjs +0 -0
  476. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/fieldset-data.mjs +0 -0
  477. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/hint-data.mjs +0 -0
  478. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/index.mjs +0 -0
  479. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-checkbox-data.mjs +0 -0
  480. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-divider-date-input-data.mjs +0 -0
  481. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-divider-input-group-data.mjs +0 -0
  482. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-input-group-data.mjs +0 -0
  483. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-radio-data.mjs +0 -0
  484. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/item-radio-with-template-data.mjs +0 -0
  485. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/label-data.mjs +0 -0
  486. /package/{esm2020 → esm2022}/lib/desy-forms/interfaces/legend-data.mjs +0 -0
  487. /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-button-data.mjs +0 -0
  488. /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-data.mjs +0 -0
  489. /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-icon-data.mjs +0 -0
  490. /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/modal-options.mjs +0 -0
  491. /package/{esm2020 → esm2022}/lib/desy-modals/interfaces/open-dialog-result.mjs +0 -0
  492. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/breadcrumbs.data.mjs +0 -0
  493. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/error-summary-data.mjs +0 -0
  494. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/footer-data.mjs +0 -0
  495. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-dropdown-data.mjs +0 -0
  496. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-navigation-data.mjs +0 -0
  497. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-navigation-item-data.mjs +0 -0
  498. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-offcanvas-data.mjs +0 -0
  499. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/header-subnav-data.mjs +0 -0
  500. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/index.mjs +0 -0
  501. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-horizontal-item-data.mjs +0 -0
  502. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-horizontal-item-event-data.mjs +0 -0
  503. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.mjs +0 -0
  504. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation-item-sub-item.mjs +0 -0
  505. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-navigation.mjs +0 -0
  506. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-items-data.mjs +0 -0
  507. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-sub-data.mjs +0 -0
  508. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menu-vertical-sub-items-data.mjs +0 -0
  509. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.mjs +0 -0
  510. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub-item.mjs +0 -0
  511. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item-sub.mjs +0 -0
  512. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/menubar-item.mjs +0 -0
  513. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/nav-item-event.data.mjs +0 -0
  514. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/nav-item.data.mjs +0 -0
  515. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/notification-items-data.mjs +0 -0
  516. /package/{esm2020 → esm2022}/lib/desy-nav/interfaces/notification-options.mjs +0 -0
  517. /package/{esm2020 → esm2022}/lib/desy-pagination/interfaces/index.mjs +0 -0
  518. /package/{esm2020 → esm2022}/lib/desy-pagination/interfaces/pagination-item.data.mjs +0 -0
  519. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/cell-data.mjs +0 -0
  520. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/head-cell-data.mjs +0 -0
  521. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/index.mjs +0 -0
  522. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/recalculate-table-params.mjs +0 -0
  523. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/row-data.mjs +0 -0
  524. /package/{esm2020 → esm2022}/lib/desy-tables/interfaces/wrapper-data.mjs +0 -0
  525. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/accordion-header.data.mjs +0 -0
  526. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/accordion-item.data.mjs +0 -0
  527. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/alert-options.mjs +0 -0
  528. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/description-item.data.mjs +0 -0
  529. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/index.mjs +0 -0
  530. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/open-alert-result.mjs +0 -0
  531. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-data.mjs +0 -0
  532. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-icon-data.mjs +0 -0
  533. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/status-item-title-data.mjs +0 -0
  534. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/tabs-items-data.mjs +0 -0
  535. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/tabs-panel-data.mjs +0 -0
  536. /package/{esm2020 → esm2022}/lib/desy-views/interfaces/term-definition.data.mjs +0 -0
  537. /package/{esm2020 → esm2022}/lib/shared/components/index.mjs +0 -0
  538. /package/{esm2020 → esm2022}/lib/shared/interfaces/accesibility-data.mjs +0 -0
  539. /package/{esm2020 → esm2022}/lib/shared/utils/focus-utils.mjs +0 -0
@@ -0,0 +1,281 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output, QueryList, TemplateRef, ViewChild, ViewChildren } from '@angular/core';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { LegendComponent } from '../fieldset/legend/legend.component';
5
+ import { RadioItemComponent } from './radio-item/radio-item.component';
6
+ import { FieldsetComponent } from '../fieldset/fieldset.component';
7
+ import { MakeHtmlListPipe } from '../../../shared/pipes/make-html-list.pipe';
8
+ import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
9
+ import { DesyOnInputChange } from '../../../shared/decorators/desy-on-input-change.decorator';
10
+ import { RadiosParentComponent } from './radios-parent.component';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@angular/common";
13
+ import * as i2 from "../../../desy-commons/components/content/content.component";
14
+ import * as i3 from "../hint/hint.component";
15
+ import * as i4 from "../label/label.component";
16
+ import * as i5 from "../error-message/error-message.component";
17
+ import * as i6 from "../fieldset/fieldset.component";
18
+ import * as i7 from "./radio-item/radio-item.component";
19
+ import * as i8 from "../../../shared/pipes/make-html-list.pipe";
20
+ export class RadiosComponent extends RadiosParentComponent {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.itemsChange = new EventEmitter();
24
+ this.nextValue = null;
25
+ this.updateRadiosIdsFlag = false;
26
+ this.contentInitFlag = false;
27
+ this.updateValueFromRadioItemsFlag = false;
28
+ this.updateValueToRadioItemsFlag = false;
29
+ this.updateItemListFlag = false;
30
+ }
31
+ ngDoCheck() {
32
+ if (this.updateValueFromRadioItemsFlag && (this.nextValue === null || this.nextValue === undefined)) {
33
+ this.updateValueFromRadioItemsFlag = false;
34
+ if (!this.updateItemListFlag || (this.value === null || this.value === undefined)) {
35
+ const items = this.getRadioItems();
36
+ if (items && items.length > 0 && items.findIndex(item => !item.isInit() && !item.divider) < 0) {
37
+ const checkedItem = items.find(item => item.isInputChecked() && !item.divider);
38
+ this.nextValue = checkedItem ? checkedItem.value : null;
39
+ }
40
+ if (this.items && this.items.length > 0) {
41
+ this.itemsChange.emit(this.items);
42
+ }
43
+ }
44
+ }
45
+ if (this.nextValue !== null && (this.nextValue !== '' || (this.value && this.value !== ''))) {
46
+ this.value = this.nextValue;
47
+ this.nextValue = null;
48
+ this.updateValueToRadioItemsFlag = true;
49
+ setTimeout(() => {
50
+ this.onChange(this.value);
51
+ });
52
+ }
53
+ if (this.updateRadiosIdsFlag) {
54
+ const radiosItems = this.getRadioItems();
55
+ if (radiosItems.length > 0) {
56
+ radiosItems.forEach((item, index) => item.updateRadioId(index));
57
+ }
58
+ this.updateRadiosIdsFlag = false;
59
+ }
60
+ if (this.updateValueToRadioItemsFlag) {
61
+ const radioItems = this.getRadioItems();
62
+ if (radioItems.length > 0) {
63
+ this.updateValueToRadioItemsFlag = false;
64
+ const updateItems = this.updateRadioItemsChecked();
65
+ if (updateItems && this.items && this.items.length > 0) {
66
+ this.itemsChange.emit(this.items);
67
+ }
68
+ }
69
+ }
70
+ if (this.updateItemListFlag) {
71
+ this.updateItemListFlag = false;
72
+ }
73
+ }
74
+ ngAfterContentInit() {
75
+ this.contentInitFlag = true;
76
+ this.radioComponentItems.changes.subscribe(change => {
77
+ this.updateItemListFlag = true;
78
+ });
79
+ }
80
+ writeValue(value) {
81
+ if (value !== null && value !== undefined) {
82
+ this.nextValue = value;
83
+ }
84
+ }
85
+ onIdPrefixChange() {
86
+ if (this.contentInitFlag) {
87
+ this.markForUpdateRadiosIds();
88
+ }
89
+ this.propagateNewIdPrefixValue();
90
+ }
91
+ onNameChange() {
92
+ if (this.contentInitFlag) {
93
+ this.markForUpdateRadiosIds();
94
+ }
95
+ this.propagateNewIdPrefixValue();
96
+ }
97
+ propagateNewIdPrefixValue() {
98
+ if (this.hintComponent) {
99
+ this.overrideHintParams(this.hintComponent);
100
+ }
101
+ if (this.errorMessageComponent) {
102
+ this.overrideErrorMessageParams(this.errorMessageComponent);
103
+ }
104
+ if (!this.hintComponent && !this.errorMessageComponent && this.fieldsetComponent) {
105
+ this.overrideFieldsetParams(this.fieldsetComponent);
106
+ }
107
+ }
108
+ markForUpdateRadiosIds() {
109
+ this.updateRadiosIdsFlag = true;
110
+ }
111
+ updateRadioItemsChecked() {
112
+ let itemsUpdated = false;
113
+ const radiosItems = this.getRadioItems();
114
+ if (radiosItems.length > 0) {
115
+ radiosItems.forEach(item => {
116
+ if (item.value === this.value && !item.lastChecked) {
117
+ item.setChecked(true);
118
+ itemsUpdated = true;
119
+ }
120
+ else if (item.value !== this.value && item.lastChecked) {
121
+ item.setChecked(false);
122
+ itemsUpdated = true;
123
+ }
124
+ });
125
+ }
126
+ return itemsUpdated;
127
+ }
128
+ updateValueFromRadioItems() {
129
+ this.updateValueFromRadioItemsFlag = true;
130
+ }
131
+ setDisabledState(isDisabled) {
132
+ super.setDisabledState(isDisabled);
133
+ const items = this.getRadioItems();
134
+ if (items && items.length > 0) {
135
+ items.forEach(i => i.parentDisabled = isDisabled);
136
+ }
137
+ }
138
+ overrideFieldsetParams(fieldset) {
139
+ fieldset.caller = this.innerHtml;
140
+ fieldset.errorId = this.getErrorId();
141
+ fieldset.describedBy = new MakeHtmlListPipe().transform([this.getHintId(), this.getErrorId()], null);
142
+ fieldset.detectChanges();
143
+ }
144
+ overrideHintParams(hint) {
145
+ hint.id = this.getHintId();
146
+ hint.detectChanges();
147
+ if (this.hasFieldsetComponent()) {
148
+ this.overrideFieldsetParams(this.fieldsetComponent);
149
+ }
150
+ }
151
+ overrideErrorMessageParams(errorMessage) {
152
+ errorMessage.id = this.getErrorId();
153
+ errorMessage.detectChanges();
154
+ if (this.hasFieldsetComponent()) {
155
+ this.overrideFieldsetParams(this.fieldsetComponent);
156
+ }
157
+ }
158
+ onDeleteHint() {
159
+ if (this.hasFieldsetComponent()) {
160
+ this.overrideFieldsetParams(this.fieldsetComponent);
161
+ }
162
+ }
163
+ onDeleteErrorMessage() {
164
+ if (this.hasFieldsetComponent()) {
165
+ this.overrideFieldsetParams(this.fieldsetComponent);
166
+ }
167
+ }
168
+ hasFieldset() {
169
+ return !!(this.hasFieldsetComponent() || this.hasLegendComponent() || this.legendRef || this.fieldsetData ||
170
+ (this.legendData && (this.legendData.text || this.legendData.html)) || this.legendText);
171
+ }
172
+ hasFieldsetComponent() {
173
+ return !!this.fieldsetComponent;
174
+ }
175
+ hasLegendComponent() {
176
+ return !!this.legendComponent;
177
+ }
178
+ getErrorId() {
179
+ return this.hasErrorsMessage() ? this.getIdPrefix() + '-error' : null;
180
+ }
181
+ getHintId() {
182
+ return this.hasHint() ? this.getIdPrefix() + '-hint' : null;
183
+ }
184
+ getIdPrefix() {
185
+ return this.idPrefix ? this.idPrefix : this.name;
186
+ }
187
+ getRadioItems() {
188
+ let radiosItems = [];
189
+ if (this.radioComponentItems && this.radioComponentItems.length > 0) {
190
+ radiosItems = this.radioComponentItems.toArray();
191
+ }
192
+ else if (this.radioComponentItems2 && this.radioComponentItems2.length > 0) {
193
+ radiosItems = this.radioComponentItems2.toArray();
194
+ }
195
+ return radiosItems;
196
+ }
197
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: RadiosComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
198
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: RadiosComponent, selector: "desy-radios", inputs: { fieldsetData: "fieldsetData", legendRef: "legendRef", legendData: "legendData", legendText: "legendText", idPrefix: "idPrefix", name: "name", items: "items", formGroupClasses: "formGroupClasses", hasDividers: "hasDividers", hasError: "hasError", classes: "classes", describedBy: "describedBy" }, outputs: { itemsChange: "itemsChange" }, providers: [
199
+ {
200
+ provide: NG_VALUE_ACCESSOR,
201
+ useExisting: forwardRef(() => RadiosComponent),
202
+ multi: true
203
+ },
204
+ {
205
+ provide: RadiosParentComponent,
206
+ useExisting: RadiosComponent,
207
+ }
208
+ ], queries: [{ propertyName: "fieldsetComponent", predicate: FieldsetComponent }, { propertyName: "legendComponent", predicate: LegendComponent }, { propertyName: "radioComponentItems", predicate: RadioItemComponent }], viewQueries: [{ propertyName: "innerHtml", first: true, predicate: ["innerHtml"], descendants: true, static: true }, { propertyName: "radioComponentItems2", predicate: RadioItemComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div [class]=\"['c-form-group', formGroupClasses] | makeHtmlList\"\n [ngClass]=\"{'c-form-group--error': (hasErrorsMessage() || formGroupClasses === 'c-form-group--error') }\">\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]=\"fieldsetData.role\"\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\"></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\"></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\"></desy-fieldset>\n </ng-container>\n\n <ng-container *ngIf=\"!hasFieldset()\">\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #innerHtml>\n <ng-container *ngIf=\"hasHintComponent()\">\n <ng-content select=\"desy-hint\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasHintComponent()\">\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 </ng-container>\n\n <ng-container *ngIf=\"hasErrorMessageComponent()\">\n <ng-content select=\"desy-error-message\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasErrorMessageComponent()\">\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 </ng-container>\n\n\n <div [class]=\"['c-radios', classes] | makeHtmlList\"\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 *ngIf=\"radioComponentItems && radioComponentItems.length > 0\">\n <ng-content select=\"desy-radio-item\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!(radioComponentItems && radioComponentItems.length > 0) && items\">\n <desy-radio-item *ngFor=\"let item of items; index as i\"\n [id]=\"item.id\"\n [disabled]=\"item.disabled\"\n [classes]=\"item.classes\"\n [value]=\"item.value\"\n [name]=\"item.name\"\n [(checked)]=\"item.checked\"\n [conditional]=\"item.conditional\"\n [divider]=\"item.divider\"\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\">\n <desy-label [text]=\"item.text\" [html]=\"item.html\"\n [classes]=\"item.labelData ? item.labelData.classes : null\"\n [role]=\"item.labelData ? item.labelData.role : null\"\n [ariaLabel]=\"item.labelData ? item.labelData.ariaLabel : null\"\n [ariaDescribedBy]=\"item.labelData ? item.labelData.ariaDescribedBy: null\"\n [ariaLabelledBy]=\"item.labelData ? item.labelData.ariaLabelledBy : null\"\n [ariaHidden]=\"item.labelData ? item.labelData.ariaHidden : null\"\n [ariaDisabled]=\"item.labelData ? item.labelData.ariaDisabled : null\"\n [ariaControls]=\"item.labelData ? item.labelData.ariaControls : null\"\n [ariaCurrent]=\"item.labelData ? item.labelData.ariaCurrent : null\"\n [ariaLive]=\"item.labelData ? item.labelData.ariaLive : null\"\n [ariaExpanded]=\"item.labelData ? item.labelData.ariaExpanded : null\"\n [ariaErrorMessage]=\"item.labelData ? item.labelData.ariaErrorMessage : null\"\n [ariaHasPopup]=\"item.labelData ? item.labelData.ariaHasPopup : null\"\n [tabindex]=\"tabindex ? item.labelData.tabindex : null\"></desy-label>\n <desy-hint *ngIf=\"item.hintData && (item.hintData.text || item.hintData.html)\"\n [text]=\"item.hintData.text\"\n [html]=\"item.hintData.html\"\n [classes]=\"item.hintData.classes\"\n [role]=\"item.hintData.role\"\n [ariaLabel]=\"item.hintData.ariaLabel\"\n [ariaDescribedBy]=\"item.hintData.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.hintData.ariaLabelledBy\"\n [ariaHidden]=\"item.hintData.ariaHidden\"\n [ariaDisabled]=\"item.hintData.ariaDisabled\"\n [ariaControls]=\"item.hintData.ariaControls\"\n [ariaCurrent]=\"item.hintData.ariaCurrent\"\n [ariaLive]=\"item.hintData.ariaLive\"\n [ariaExpanded]=\"item.hintData.ariaExpanded\"\n [ariaErrorMessage]=\"item.hintData.ariaErrorMessage\"\n [ariaHasPopup]=\"item.hintData.ariaHasPopup\"\n [tabindex]=\"item.hintData.tabindex\"></desy-hint>\n <desy-hint *ngIf=\"!item.hintData && item.hintText\" [text]=\"item.hintText\"></desy-hint>\n <desy-content *ngIf=\"item.conditionalHtml\">\n <ng-container *ngTemplateOutlet=\"item.conditionalHtml\"></ng-container>\n </desy-content>\n </desy-radio-item>\n </ng-container>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ContentComponent, selector: "desy-content", inputs: ["classes"] }, { kind: "component", type: i3.HintComponent, selector: "desy-hint", inputs: ["id", "classes", "html", "text"] }, { kind: "component", type: i4.LabelComponent, selector: "desy-label", inputs: ["id", "classes", "html", "text", "isPageHeading", "headingLevel", "for"] }, { kind: "component", type: i5.ErrorMessageComponent, selector: "desy-error-message", inputs: ["id", "classes", "html", "text", "visuallyHiddenText"] }, { kind: "component", type: i6.FieldsetComponent, selector: "desy-fieldset", inputs: ["describedBy", "errorId", "legendRef", "legendData", "legendText", "classes", "caller", "id", "headingLevel"] }, { kind: "component", type: i7.RadioItemComponent, selector: "desy-radio-item", inputs: ["id", "name", "value", "conditional", "disabled", "divider", "classes", "checked"], outputs: ["checkedChange"] }, { kind: "pipe", type: i8.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
209
+ }
210
+ __decorate([
211
+ DesyOnInputChange('onIdPrefixChange'),
212
+ __metadata("design:type", String)
213
+ ], RadiosComponent.prototype, "idPrefix", void 0);
214
+ __decorate([
215
+ DesyOnInputChange('onNameChange'),
216
+ __metadata("design:type", String)
217
+ ], RadiosComponent.prototype, "name", void 0);
218
+ __decorate([
219
+ DesyContentChild({ onSetCallbackName: 'overrideFieldsetParams' }),
220
+ __metadata("design:type", FieldsetComponent)
221
+ ], RadiosComponent.prototype, "fieldsetComponent", void 0);
222
+ __decorate([
223
+ DesyContentChild(),
224
+ __metadata("design:type", LegendComponent)
225
+ ], RadiosComponent.prototype, "legendComponent", void 0);
226
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: RadiosComponent, decorators: [{
227
+ type: Component,
228
+ args: [{ selector: 'desy-radios', providers: [
229
+ {
230
+ provide: NG_VALUE_ACCESSOR,
231
+ useExisting: forwardRef(() => RadiosComponent),
232
+ multi: true
233
+ },
234
+ {
235
+ provide: RadiosParentComponent,
236
+ useExisting: RadiosComponent,
237
+ }
238
+ ], template: "<div [class]=\"['c-form-group', formGroupClasses] | makeHtmlList\"\n [ngClass]=\"{'c-form-group--error': (hasErrorsMessage() || formGroupClasses === 'c-form-group--error') }\">\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]=\"fieldsetData.role\"\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\"></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\"></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\"></desy-fieldset>\n </ng-container>\n\n <ng-container *ngIf=\"!hasFieldset()\">\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #innerHtml>\n <ng-container *ngIf=\"hasHintComponent()\">\n <ng-content select=\"desy-hint\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasHintComponent()\">\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 </ng-container>\n\n <ng-container *ngIf=\"hasErrorMessageComponent()\">\n <ng-content select=\"desy-error-message\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasErrorMessageComponent()\">\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 </ng-container>\n\n\n <div [class]=\"['c-radios', classes] | makeHtmlList\"\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 *ngIf=\"radioComponentItems && radioComponentItems.length > 0\">\n <ng-content select=\"desy-radio-item\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!(radioComponentItems && radioComponentItems.length > 0) && items\">\n <desy-radio-item *ngFor=\"let item of items; index as i\"\n [id]=\"item.id\"\n [disabled]=\"item.disabled\"\n [classes]=\"item.classes\"\n [value]=\"item.value\"\n [name]=\"item.name\"\n [(checked)]=\"item.checked\"\n [conditional]=\"item.conditional\"\n [divider]=\"item.divider\"\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\">\n <desy-label [text]=\"item.text\" [html]=\"item.html\"\n [classes]=\"item.labelData ? item.labelData.classes : null\"\n [role]=\"item.labelData ? item.labelData.role : null\"\n [ariaLabel]=\"item.labelData ? item.labelData.ariaLabel : null\"\n [ariaDescribedBy]=\"item.labelData ? item.labelData.ariaDescribedBy: null\"\n [ariaLabelledBy]=\"item.labelData ? item.labelData.ariaLabelledBy : null\"\n [ariaHidden]=\"item.labelData ? item.labelData.ariaHidden : null\"\n [ariaDisabled]=\"item.labelData ? item.labelData.ariaDisabled : null\"\n [ariaControls]=\"item.labelData ? item.labelData.ariaControls : null\"\n [ariaCurrent]=\"item.labelData ? item.labelData.ariaCurrent : null\"\n [ariaLive]=\"item.labelData ? item.labelData.ariaLive : null\"\n [ariaExpanded]=\"item.labelData ? item.labelData.ariaExpanded : null\"\n [ariaErrorMessage]=\"item.labelData ? item.labelData.ariaErrorMessage : null\"\n [ariaHasPopup]=\"item.labelData ? item.labelData.ariaHasPopup : null\"\n [tabindex]=\"tabindex ? item.labelData.tabindex : null\"></desy-label>\n <desy-hint *ngIf=\"item.hintData && (item.hintData.text || item.hintData.html)\"\n [text]=\"item.hintData.text\"\n [html]=\"item.hintData.html\"\n [classes]=\"item.hintData.classes\"\n [role]=\"item.hintData.role\"\n [ariaLabel]=\"item.hintData.ariaLabel\"\n [ariaDescribedBy]=\"item.hintData.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.hintData.ariaLabelledBy\"\n [ariaHidden]=\"item.hintData.ariaHidden\"\n [ariaDisabled]=\"item.hintData.ariaDisabled\"\n [ariaControls]=\"item.hintData.ariaControls\"\n [ariaCurrent]=\"item.hintData.ariaCurrent\"\n [ariaLive]=\"item.hintData.ariaLive\"\n [ariaExpanded]=\"item.hintData.ariaExpanded\"\n [ariaErrorMessage]=\"item.hintData.ariaErrorMessage\"\n [ariaHasPopup]=\"item.hintData.ariaHasPopup\"\n [tabindex]=\"item.hintData.tabindex\"></desy-hint>\n <desy-hint *ngIf=\"!item.hintData && item.hintText\" [text]=\"item.hintText\"></desy-hint>\n <desy-content *ngIf=\"item.conditionalHtml\">\n <ng-container *ngTemplateOutlet=\"item.conditionalHtml\"></ng-container>\n </desy-content>\n </desy-radio-item>\n </ng-container>\n </div>\n</ng-template>\n" }]
239
+ }], propDecorators: { fieldsetData: [{
240
+ type: Input
241
+ }], legendRef: [{
242
+ type: Input
243
+ }], legendData: [{
244
+ type: Input
245
+ }], legendText: [{
246
+ type: Input
247
+ }], idPrefix: [{
248
+ type: Input
249
+ }], name: [{
250
+ type: Input
251
+ }], items: [{
252
+ type: Input
253
+ }], itemsChange: [{
254
+ type: Output
255
+ }], formGroupClasses: [{
256
+ type: Input
257
+ }], hasDividers: [{
258
+ type: Input
259
+ }], hasError: [{
260
+ type: Input
261
+ }], classes: [{
262
+ type: Input
263
+ }], describedBy: [{
264
+ type: Input
265
+ }], fieldsetComponent: [{
266
+ type: ContentChildren,
267
+ args: [FieldsetComponent]
268
+ }], legendComponent: [{
269
+ type: ContentChildren,
270
+ args: [LegendComponent]
271
+ }], radioComponentItems: [{
272
+ type: ContentChildren,
273
+ args: [RadioItemComponent]
274
+ }], innerHtml: [{
275
+ type: ViewChild,
276
+ args: ['innerHtml', { static: true }]
277
+ }], radioComponentItems2: [{
278
+ type: ViewChildren,
279
+ args: [RadioItemComponent]
280
+ }] } });
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW9zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9yYWRpb3MvcmFkaW9zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9yYWRpb3MvcmFkaW9zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFBRSxTQUFTLEVBQ3RCLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHM0UsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDekYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDNUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7Ozs7QUFpQmxFLE1BQU0sT0FBTyxlQUFnQixTQUFRLHFCQUFxQjtJQWYxRDs7UUFzQ1ksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQW9CcEQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQix3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUFDNUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsa0NBQTZCLEdBQUcsS0FBSyxDQUFDO1FBQ3RDLGdDQUEyQixHQUFHLEtBQUssQ0FBQztRQUNwQyx1QkFBa0IsR0FBRyxLQUFLLENBQUM7S0E4T3BDO0lBNU9DLFNBQVM7UUFLUCxJQUFJLElBQUksQ0FBQyw2QkFBNkIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLEVBQUU7WUFDbkcsSUFBSSxDQUFDLDZCQUE2QixHQUFHLEtBQUssQ0FBQztZQU0zQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsRUFBRTtnQkFDakYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUNuQyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUM3RixNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUMvRSxJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2lCQUN6RDtnQkFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ25DO2FBQ0Y7U0FDRjtRQUdELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQzNGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN0QixJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDO1lBQ3hDLFVBQVUsQ0FBQyxHQUFJLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzVCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6QyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQixXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ2pFO1lBQ0QsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztTQUNsQztRQUVELElBQUksSUFBSSxDQUFDLDJCQUEyQixFQUFFO1lBQ3BDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4QyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUN6QixJQUFJLENBQUMsMkJBQTJCLEdBQUcsS0FBSyxDQUFDO2dCQUN6QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDbkM7YUFDRjtTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztTQUNqQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFNRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN6QyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDL0I7UUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBR0QsWUFBWTtRQUVWLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztTQUMvQjtRQUVELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFNTyx5QkFBeUI7UUFDL0IsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDN0M7UUFFRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM5QixJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDN0Q7UUFJRCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDaEYsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFLTyx1QkFBdUI7UUFDN0IsSUFBSSxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFCLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtvQkFDbEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDdEIsWUFBWSxHQUFHLElBQUksQ0FBQztpQkFDckI7cUJBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtvQkFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkIsWUFBWSxHQUFHLElBQUksQ0FBQztpQkFDckI7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUtELHlCQUF5QjtRQUN2QixJQUFJLENBQUMsNkJBQTZCLEdBQUcsSUFBSSxDQUFDO0lBQzVDLENBQUM7SUFLRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25DLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1NBQ25EO0lBQ0gsQ0FBQztJQU9ELHNCQUFzQixDQUFDLFFBQTJCO1FBQ2hELFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqQyxRQUFRLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxRQUFRLENBQUMsV0FBVyxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckcsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUFtQjtRQUNwQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDckQ7SUFDSCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsWUFBbUM7UUFDNUQsWUFBWSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEMsWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRTdCLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDckQ7SUFDSCxDQUFDO0lBT0QsV0FBVztRQUNULE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUN2RyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN4RSxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDOUQsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkQsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkUsV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNsRDthQUFNLElBQUksSUFBSSxDQUFDLG9CQUFvQixJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzVFLFdBQVcsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbkQ7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDOzhHQTdSVSxlQUFlO2tHQUFmLGVBQWUsaVlBWmY7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFDOUMsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxxQkFBcUI7Z0JBQzlCLFdBQVcsRUFBRSxlQUFlO2FBQzdCO1NBQ0YsNERBa0NnQixpQkFBaUIsa0RBR2pCLGVBQWUsc0RBRWYsa0JBQWtCLDZLQUdyQixrQkFBa0IsdUVDaEZsQyw4OVdBb01BOztBRDVJRTtJQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDOztpREFDSjtBQUVsQztJQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQzs7NkNBQ0o7QUFXOUI7SUFBQyxnQkFBZ0IsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixFQUFDLENBQUM7OEJBQ1YsaUJBQWlCOzBEQUFDO0FBRXpFO0lBQUMsZ0JBQWdCLEVBQUU7OEJBQ2dDLGVBQWU7d0RBQUM7MkZBbkN4RCxlQUFlO2tCQWYzQixTQUFTOytCQUNFLGFBQWEsYUFFWjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsV0FBVyxpQkFBaUI7eUJBQzdCO3FCQUNGOzhCQWFRLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR1csUUFBUTtzQkFBeEIsS0FBSztnQkFHVyxJQUFJO3NCQUFwQixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUVFLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDVyxXQUFXO3NCQUEzQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNXLFdBQVc7c0JBQTNCLEtBQUs7Z0JBRzhCLGlCQUFpQjtzQkFBcEQsZUFBZTt1QkFBQyxpQkFBaUI7Z0JBR0EsZUFBZTtzQkFBaEQsZUFBZTt1QkFBQyxlQUFlO2dCQUVLLG1CQUFtQjtzQkFBdkQsZUFBZTt1QkFBQyxrQkFBa0I7Z0JBRU8sU0FBUztzQkFBbEQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNOLG9CQUFvQjtzQkFBckQsWUFBWTt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRG9DaGVjayxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RmllbGRzZXREYXRhLCBJdGVtUmFkaW9EYXRhLCBMZWdlbmREYXRhfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7TGVnZW5kQ29tcG9uZW50fSBmcm9tICcuLi9maWVsZHNldC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XG5pbXBvcnQge1JhZGlvSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9yYWRpby1pdGVtL3JhZGlvLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7RmllbGRzZXRDb21wb25lbnR9IGZyb20gJy4uL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge01ha2VIdG1sTGlzdFBpcGV9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9waXBlcy9tYWtlLWh0bWwtbGlzdC5waXBlJztcbmltcG9ydCB7SGludENvbXBvbmVudH0gZnJvbSAnLi4vaGludC9oaW50LmNvbXBvbmVudCc7XG5pbXBvcnQge0Vycm9yTWVzc2FnZUNvbXBvbmVudH0gZnJvbSAnLi4vZXJyb3ItbWVzc2FnZS9lcnJvci1tZXNzYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1vbi1pbnB1dC1jaGFuZ2UuZGVjb3JhdG9yJztcbmltcG9ydCB7IFJhZGlvc1BhcmVudENvbXBvbmVudCB9IGZyb20gJy4vcmFkaW9zLXBhcmVudC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXJhZGlvcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpb3MuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJhZGlvc0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogUmFkaW9zUGFyZW50Q29tcG9uZW50LFxuICAgICAgdXNlRXhpc3Rpbmc6IFJhZGlvc0NvbXBvbmVudCxcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmFkaW9zQ29tcG9uZW50IGV4dGVuZHMgUmFkaW9zUGFyZW50Q29tcG9uZW50IGltcGxlbWVudHMgRG9DaGVjaywgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgXG4gIC8qKlxuICAgKiBmaWVsZHNldCwgZGlmZXJlbnRlcyBmb3JtYXMgZGUgaW1wbGVtZW50YXIsIGVudW1lcmFkYXMgcG9yIHByaW9yaWRhZFxuICAgKiAxKSBpbmNsdWlyIGNvbXBvbmVudGUgRmllbGRzZXRDb21wb25lbnRcbiAgICogMikgaW5jbHVpciBvYmpldG8gRmllbGRzZXREYXRhIChpbnRlcmZheiBleHB1ZXN0YSlcbiAgICogMykgaW5jbHVpciBjb21wb25lbnRlIExlZ2VuZENvbXBvbmVudFxuICAgKiA0KSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxuICAgKiA1KSBpbmNsdWlyIGxlZ2VuZERhdGEgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1bmEgbGVnZW5kYSBjb24gbG9zIHBhcmFtZXRyb3MgcGFzYWRvcyAgKGludGVyZmF6IGV4cHVlc3RhKVxuICAgKiA2KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXG4gICAqL1xuICBASW5wdXQoKSBmaWVsZHNldERhdGE6IEZpZWxkc2V0RGF0YTtcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xuICBASW5wdXQoKSBsZWdlbmRUZXh0OiBzdHJpbmc7XG4gIFxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uSWRQcmVmaXhDaGFuZ2UnKVxuICBASW5wdXQoKSBkZWNsYXJlIGlkUHJlZml4OiBzdHJpbmc7XG4gIFxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uTmFtZUNoYW5nZScpXG4gIEBJbnB1dCgpIGRlY2xhcmUgbmFtZTogc3RyaW5nO1xuICBcbiAgQElucHV0KCkgaXRlbXM6IEl0ZW1SYWRpb0RhdGFbXTtcbiAgQE91dHB1dCgpIGl0ZW1zQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJdGVtUmFkaW9EYXRhW10+KCk7XG4gIFxuICBASW5wdXQoKSBmb3JtR3JvdXBDbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRlY2xhcmUgaGFzRGl2aWRlcnM6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGhhc0Vycm9yOiBib29sZWFuO1xuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRlY2xhcmUgZGVzY3JpYmVkQnk6IHN0cmluZztcbiAgXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXG4gIEBDb250ZW50Q2hpbGRyZW4oRmllbGRzZXRDb21wb25lbnQpIGZpZWxkc2V0Q29tcG9uZW50OiBGaWVsZHNldENvbXBvbmVudDtcbiAgXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xuICBcbiAgQENvbnRlbnRDaGlsZHJlbihSYWRpb0l0ZW1Db21wb25lbnQpIHJhZGlvQ29tcG9uZW50SXRlbXM6IFF1ZXJ5TGlzdDxSYWRpb0l0ZW1Db21wb25lbnQ+O1xuICBcbiAgQFZpZXdDaGlsZCgnaW5uZXJIdG1sJywgeyBzdGF0aWM6IHRydWUgfSkgaW5uZXJIdG1sOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAVmlld0NoaWxkcmVuKFJhZGlvSXRlbUNvbXBvbmVudCkgcmFkaW9Db21wb25lbnRJdGVtczI6IFF1ZXJ5TGlzdDxSYWRpb0l0ZW1Db21wb25lbnQ+O1xuICBcbiAgLy8gRmxhZ3NcbiAgcHJpdmF0ZSBuZXh0VmFsdWUgPSBudWxsOyAgICAgICAgICAgICAgICAgICAgICAvLyBQcsOzeGltbyB2YWxvciBlbiBlbCBjb21wb25lbnRlXG4gIHByaXZhdGUgdXBkYXRlUmFkaW9zSWRzRmxhZyA9IGZhbHNlOyAgICAgICAgICAgLy8gSW5kaWNhIHF1ZSBzZSBoYW4gbW9kaWZpY2FkbyBsb3MgaWRzIGRlIGxvcyBpdGVtc1xuICBwcml2YXRlIGNvbnRlbnRJbml0RmxhZyA9IGZhbHNlOyAgICAgICAgICAgICAgIC8vIEluZGljYSBxdWUgc2UgaW5pY2lhbGl6YWRvIGVsIGNvbmVuaWRvXG4gIHByaXZhdGUgdXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtc0ZsYWcgPSBmYWxzZTsgLy8gSW5kaWNhIHF1ZSBzZSBoYSBzZWxlY2Npb25hZG8vZGVzZWxlY2Npb25hZG8gdW4gaXRlbVxuICBwcml2YXRlIHVwZGF0ZVZhbHVlVG9SYWRpb0l0ZW1zRmxhZyA9IGZhbHNlOyAgIC8vIEluZGljYSBxdWUgc2UgZGViZSBzZWxlY2Npb25hci9kZXNlbGVjY2lvbmFyIHVuIGl0ZW1cbiAgcHJpdmF0ZSB1cGRhdGVJdGVtTGlzdEZsYWcgPSBmYWxzZTsgICAgICAgICAgICAvLyBJbmRpY2EgcXVlIHNlIGhhIGNyZWFkby9tb2RpZmljYWRvIGVsIGxpc3RhZG8gZGUgaXRlbXNcblxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG5cbiAgICBcbiAgICAvLyBUT0RPIEVzdGEgZ2VzdGnDs24gcmVzdWx0YSBlbmdvcnJvc2EgeSBkaWZpY2lsIGRlIHNlZ3Vpci4gRXN0dWRpYXIgc2kgZXMgbWVqb3JhYmxlIHV0aWxpemFuZG8gc2lnbmFscyBhIHBhcnRpciBkZSBhbmd1bGFyIDE2XG4gICAgXG4gICAgaWYgKHRoaXMudXBkYXRlVmFsdWVGcm9tUmFkaW9JdGVtc0ZsYWcgJiYgKHRoaXMubmV4dFZhbHVlID09PSBudWxsIHx8IHRoaXMubmV4dFZhbHVlID09PSB1bmRlZmluZWQpKSB7XG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXNGbGFnID0gZmFsc2U7XG5cbiAgICAgIC8qXG4gICAgICAgKiBTZSBtb2RpZmljYSBlbCB2YWxvciBkZXNkZSBsb3MgaXRlbXMsIGEgbm8gc2VyIHF1ZSBsYSBsaXN0YSBzZSBhY2FiZSBkZSBjcmVhclxuICAgICAgICogeSB5YSB0ZW5nYSB1biB2YWxvci4gRW4gZXNlIGNhc28sIHByZXZhbGVjZSBlbCB2YWxvciBleGlzdGVudGUuXG4gICAgICAgKi9cbiAgICAgIGlmICghdGhpcy51cGRhdGVJdGVtTGlzdEZsYWcgfHwgKHRoaXMudmFsdWUgPT09IG51bGwgfHwgdGhpcy52YWx1ZSA9PT0gdW5kZWZpbmVkKSkge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0UmFkaW9JdGVtcygpO1xuICAgICAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMCAmJiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiAhaXRlbS5pc0luaXQoKSAmJiAhaXRlbS5kaXZpZGVyKSA8IDApIHtcbiAgICAgICAgICBjb25zdCBjaGVja2VkSXRlbSA9IGl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlzSW5wdXRDaGVja2VkKCkgJiYgIWl0ZW0uZGl2aWRlcik7XG4gICAgICAgICAgdGhpcy5uZXh0VmFsdWUgPSBjaGVja2VkSXRlbSA/IGNoZWNrZWRJdGVtLnZhbHVlIDogbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLml0ZW1zICYmIHRoaXMuaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIFxuICAgIGlmICh0aGlzLm5leHRWYWx1ZSAhPT0gbnVsbCAmJiAodGhpcy5uZXh0VmFsdWUgIT09ICcnIHx8ICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUgIT09ICcnKSkpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLm5leHRWYWx1ZTtcbiAgICAgIHRoaXMubmV4dFZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWVUb1JhZGlvSXRlbXNGbGFnID0gdHJ1ZTtcbiAgICAgIHNldFRpbWVvdXQoKCkgID0+IHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnVwZGF0ZVJhZGlvc0lkc0ZsYWcpIHtcbiAgICAgIGNvbnN0IHJhZGlvc0l0ZW1zID0gdGhpcy5nZXRSYWRpb0l0ZW1zKCk7XG4gICAgICBpZiAocmFkaW9zSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICByYWRpb3NJdGVtcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4gaXRlbS51cGRhdGVSYWRpb0lkKGluZGV4KSk7XG4gICAgICB9XG4gICAgICB0aGlzLnVwZGF0ZVJhZGlvc0lkc0ZsYWcgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy51cGRhdGVWYWx1ZVRvUmFkaW9JdGVtc0ZsYWcpIHtcbiAgICAgIGNvbnN0IHJhZGlvSXRlbXMgPSB0aGlzLmdldFJhZGlvSXRlbXMoKTtcbiAgICAgIGlmIChyYWRpb0l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZVRvUmFkaW9JdGVtc0ZsYWcgPSBmYWxzZTtcbiAgICAgICAgY29uc3QgdXBkYXRlSXRlbXMgPSB0aGlzLnVwZGF0ZVJhZGlvSXRlbXNDaGVja2VkKCk7XG4gICAgICAgIGlmICh1cGRhdGVJdGVtcyAmJiB0aGlzLml0ZW1zICYmIHRoaXMuaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnVwZGF0ZUl0ZW1MaXN0RmxhZykge1xuICAgICAgdGhpcy51cGRhdGVJdGVtTGlzdEZsYWcgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50SW5pdEZsYWcgPSB0cnVlO1xuICAgIHRoaXMucmFkaW9Db21wb25lbnRJdGVtcy5jaGFuZ2VzLnN1YnNjcmliZShjaGFuZ2UgPT4ge1xuICAgICAgdGhpcy51cGRhdGVJdGVtTGlzdEZsYWcgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlIHNvYnJlc2NyaWJlIGVsIHdyaXRlVmFsdWUgZGUgRm9ybUZpZWxkIHBhcmEgZ2VzdGlvbmFyIGVuIHVuIMO6bmljbyBwdW50byBlbCB2YWxvciBkZSB2YWx1ZVxuICAgKiBAcGFyYW0gdmFsdWUgbnVldm8gdmFsb3IgYSBlc3RhYmxlY2VyXG4gICAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5uZXh0VmFsdWUgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBvbklkUHJlZml4Q2hhbmdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbnRlbnRJbml0RmxhZykge1xuICAgICAgdGhpcy5tYXJrRm9yVXBkYXRlUmFkaW9zSWRzKCk7XG4gICAgfVxuICAgIHRoaXMucHJvcGFnYXRlTmV3SWRQcmVmaXhWYWx1ZSgpO1xuICB9XG5cblxuICBvbk5hbWVDaGFuZ2UoKTogdm9pZCB7XG5cbiAgICBpZiAodGhpcy5jb250ZW50SW5pdEZsYWcpIHtcbiAgICAgIHRoaXMubWFya0ZvclVwZGF0ZVJhZGlvc0lkcygpO1xuICAgIH1cblxuICAgIHRoaXMucHJvcGFnYXRlTmV3SWRQcmVmaXhWYWx1ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjdHVhbGl6YSBsb3MgY29tcG9uZW50ZXMgZXh0ZXJub3MgcXVlIHRpZW5lbiB2YWxvcmVzIGRlcGVuZGllbnRlcyBkZSBpZFByZWZpeFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBwcm9wYWdhdGVOZXdJZFByZWZpeFZhbHVlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhpbnRDb21wb25lbnQpIHtcbiAgICAgIHRoaXMub3ZlcnJpZGVIaW50UGFyYW1zKHRoaXMuaGludENvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXJyb3JNZXNzYWdlQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLm92ZXJyaWRlRXJyb3JNZXNzYWdlUGFyYW1zKHRoaXMuZXJyb3JNZXNzYWdlQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICAvLyBBbCBoYWNlciBlbCBvdmVycmlkZSBkZSBoaW50IG8gZXJyb3IgeWEgc2UgYXBsaWNhIHNvYnJlIGVsIGZpZWxkc2V0LCBwb3IgbG8gcXVlIHPDs2xvIGVzIG5lY2VzYXJpbyBhcGxpY2FybG8gZGlyZWN0YW1lbnRlXG4gICAgLy8gc29icmUgZWwgZmllbGRzZXQgY3VhbmRvIG5pbmd1bm8gZGUgZXN0b3MgZXhpc3RlXG4gICAgaWYgKCF0aGlzLmhpbnRDb21wb25lbnQgJiYgIXRoaXMuZXJyb3JNZXNzYWdlQ29tcG9uZW50ICYmIHRoaXMuZmllbGRzZXRDb21wb25lbnQpIHtcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcbiAgICB9XG4gIH1cblxuICBtYXJrRm9yVXBkYXRlUmFkaW9zSWRzKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlUmFkaW9zSWRzRmxhZyA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQWN0dWFsaXphIGVsIGVzdGFkbyBkZSBsb3MgaXRlbXMgc2Vnw7puIGVsIHZhbG9yIGFzaWduYWRvIGFsIGNvbXBvbmVudGVcbiAgICovXG4gIHByaXZhdGUgdXBkYXRlUmFkaW9JdGVtc0NoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgbGV0IGl0ZW1zVXBkYXRlZCA9IGZhbHNlO1xuICAgIGNvbnN0IHJhZGlvc0l0ZW1zID0gdGhpcy5nZXRSYWRpb0l0ZW1zKCk7XG4gICAgaWYgKHJhZGlvc0l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHJhZGlvc0l0ZW1zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgIGlmIChpdGVtLnZhbHVlID09PSB0aGlzLnZhbHVlICYmICFpdGVtLmxhc3RDaGVja2VkKSB7XG4gICAgICAgICAgaXRlbS5zZXRDaGVja2VkKHRydWUpO1xuICAgICAgICAgIGl0ZW1zVXBkYXRlZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbS52YWx1ZSAhPT0gdGhpcy52YWx1ZSAmJiBpdGVtLmxhc3RDaGVja2VkKSB7XG4gICAgICAgICAgaXRlbS5zZXRDaGVja2VkKGZhbHNlKTtcbiAgICAgICAgICBpdGVtc1VwZGF0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGl0ZW1zVXBkYXRlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY3R1YWxpemEgZWwgdmFsb3IgY3VhbmRvIHNlIHByb2R1Y2UgdW4gY2FtYmlvIGVuIGxvcyBpdGVtcywgdGFudG8gaW50ZXJubyBjb21vIGV4dGVybm9cbiAgICovXG4gIHVwZGF0ZVZhbHVlRnJvbVJhZGlvSXRlbXMoKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZUZyb21SYWRpb0l0ZW1zRmxhZyA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogUmVlbXBsYXpvIGRlIGZ1bmNpb25lcyBkZSBGb3JtRmllbGRcbiAgICovXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZCk7XG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldFJhZGlvSXRlbXMoKTtcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgaXRlbXMuZm9yRWFjaChpID0+IGkucGFyZW50RGlzYWJsZWQgPSBpc0Rpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuXG4gIC8qXG4gICAqIEZ1bmNpb25lcyBwYXJhIHJlZW1wbGF6YXIgZWwgY29udGVuaWRvIGRlbCBmaWVsZHNldCwgbGFiZWwsIGhpbnQgbyBlcnJvcm1lc3NhZ2VcbiAgICovXG5cbiAgb3ZlcnJpZGVGaWVsZHNldFBhcmFtcyhmaWVsZHNldDogRmllbGRzZXRDb21wb25lbnQpOiB2b2lkIHtcbiAgICBmaWVsZHNldC5jYWxsZXIgPSB0aGlzLmlubmVySHRtbDtcbiAgICBmaWVsZHNldC5lcnJvcklkID0gdGhpcy5nZXRFcnJvcklkKCk7XG4gICAgZmllbGRzZXQuZGVzY3JpYmVkQnkgPSBuZXcgTWFrZUh0bWxMaXN0UGlwZSgpLnRyYW5zZm9ybShbdGhpcy5nZXRIaW50SWQoKSwgdGhpcy5nZXRFcnJvcklkKCldLCBudWxsKTtcbiAgICBmaWVsZHNldC5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBvdmVycmlkZUhpbnRQYXJhbXMoaGludDogSGludENvbXBvbmVudCk6IHZvaWQge1xuICAgIGhpbnQuaWQgPSB0aGlzLmdldEhpbnRJZCgpO1xuICAgIGhpbnQuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSkge1xuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlRXJyb3JNZXNzYWdlUGFyYW1zKGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlQ29tcG9uZW50KTogdm9pZCB7XG4gICAgZXJyb3JNZXNzYWdlLmlkID0gdGhpcy5nZXRFcnJvcklkKCk7XG4gICAgZXJyb3JNZXNzYWdlLmRldGVjdENoYW5nZXMoKTtcblxuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcbiAgICB9XG4gIH1cblxuICBvbkRlbGV0ZUhpbnQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSkge1xuICAgICAgdGhpcy5vdmVycmlkZUZpZWxkc2V0UGFyYW1zKHRoaXMuZmllbGRzZXRDb21wb25lbnQpO1xuICAgIH1cbiAgfVxuXG4gIG9uRGVsZXRlRXJyb3JNZXNzYWdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkpIHtcbiAgICAgIHRoaXMub3ZlcnJpZGVGaWVsZHNldFBhcmFtcyh0aGlzLmZpZWxkc2V0Q29tcG9uZW50KTtcbiAgICB9XG4gIH1cblxuXG4gIC8qXG4gICAqIEZ1bmNpb25lcyBwYXJhIHJlY3VwZXJhciB2YWxvcmVzIGNvbXVuZXNcbiAgICovXG5cbiAgaGFzRmllbGRzZXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSB8fCB0aGlzLmhhc0xlZ2VuZENvbXBvbmVudCgpIHx8IHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhIHx8XG4gICAgICAodGhpcy5sZWdlbmREYXRhICYmICh0aGlzLmxlZ2VuZERhdGEudGV4dCB8fCB0aGlzLmxlZ2VuZERhdGEuaHRtbCkpIHx8IHRoaXMubGVnZW5kVGV4dCk7XG4gIH1cblxuICBoYXNGaWVsZHNldENvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmZpZWxkc2V0Q29tcG9uZW50O1xuICB9XG5cbiAgaGFzTGVnZW5kQ29tcG9uZW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMubGVnZW5kQ29tcG9uZW50O1xuICB9XG5cbiAgZ2V0RXJyb3JJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSA/IHRoaXMuZ2V0SWRQcmVmaXgoKSArICctZXJyb3InIDogbnVsbDtcbiAgfVxuXG4gIGdldEhpbnRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmhhc0hpbnQoKSA/IHRoaXMuZ2V0SWRQcmVmaXgoKSArICctaGludCcgOiBudWxsO1xuICB9XG5cbiAgZ2V0SWRQcmVmaXgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pZFByZWZpeCA/IHRoaXMuaWRQcmVmaXggOiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRSYWRpb0l0ZW1zKCk6IFJhZGlvSXRlbUNvbXBvbmVudFtdIHtcbiAgICBsZXQgcmFkaW9zSXRlbXMgPSBbXTtcbiAgICBpZiAodGhpcy5yYWRpb0NvbXBvbmVudEl0ZW1zICYmIHRoaXMucmFkaW9Db21wb25lbnRJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICByYWRpb3NJdGVtcyA9IHRoaXMucmFkaW9Db21wb25lbnRJdGVtcy50b0FycmF5KCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMyICYmIHRoaXMucmFkaW9Db21wb25lbnRJdGVtczIubGVuZ3RoID4gMCkge1xuICAgICAgcmFkaW9zSXRlbXMgPSB0aGlzLnJhZGlvQ29tcG9uZW50SXRlbXMyLnRvQXJyYXkoKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhZGlvc0l0ZW1zO1xuICB9XG59XG4iLCI8ZGl2IFtjbGFzc109XCJbJ2MtZm9ybS1ncm91cCcsIGZvcm1Hcm91cENsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgW25nQ2xhc3NdPVwieydjLWZvcm0tZ3JvdXAtLWVycm9yJzogKGhhc0Vycm9yc01lc3NhZ2UoKSB8fCBmb3JtR3JvdXBDbGFzc2VzID09PSAnYy1mb3JtLWdyb3VwLS1lcnJvcicpIH1cIj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzRmllbGRzZXRDb21wb25lbnQoKVwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRlc3ktZmllbGRzZXRcIj48L25nLWNvbnRlbnQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0ZpZWxkc2V0Q29tcG9uZW50KClcIj5cbiAgICA8ZGVzeS1maWVsZHNldCAqbmdJZj1cImZpZWxkc2V0RGF0YVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cImZpZWxkc2V0RGF0YS5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkc2V0RGF0YS5pZFwiXG4gICAgICAgICAgICAgICAgICAgIFtsZWdlbmREYXRhXT1cImZpZWxkc2V0RGF0YS5sZWdlbmRcIlxuICAgICAgICAgICAgICAgICAgICBbaGVhZGluZ0xldmVsXT1cImZpZWxkc2V0RGF0YS5oZWFkaW5nTGV2ZWxcIlxuICAgICAgICAgICAgICAgICAgICBbY2FsbGVyXT1cImlubmVySHRtbFwiXG4gICAgICAgICAgICAgICAgICAgIFtlcnJvcklkXT1cImdldEVycm9ySWQoKVwiXG4gICAgICAgICAgICAgICAgICAgIFtkZXNjcmliZWRCeV09XCJbZmllbGRzZXREYXRhLmRlc2NyaWJlZEJ5LCBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiZmllbGRzZXREYXRhLnJvbGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImZpZWxkc2V0RGF0YS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiZmllbGRzZXREYXRhLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiZmllbGRzZXREYXRhLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cImZpZWxkc2V0RGF0YS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cImZpZWxkc2V0RGF0YS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiZmllbGRzZXREYXRhLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cImZpZWxkc2V0RGF0YS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiZmllbGRzZXREYXRhLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiZmllbGRzZXREYXRhLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJmaWVsZHNldERhdGEudGFiaW5kZXhcIj48L2Rlc3ktZmllbGRzZXQ+XG4gICAgPGRlc3ktZmllbGRzZXQgKm5nSWY9XCIhZmllbGRzZXREYXRhICYmIGhhc0xlZ2VuZENvbXBvbmVudCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2xlZ2VuZFJlZl09XCJsZWdlbmRUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjYWxsZXJdPVwiaW5uZXJIdG1sXCJcbiAgICAgICAgICAgICAgICAgICAgW2Vycm9ySWRdPVwiZ2V0RXJyb3JJZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlZEJ5XT1cIlsgZ2V0SGludElkKCksIGdldEVycm9ySWQoKV0gfCBtYWtlSHRtbExpc3Q6bnVsbFwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNsZWdlbmRUZW1wbGF0ZT5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGVzeS1sZWdlbmRcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGVzeS1maWVsZHNldD5cbiAgICA8ZGVzeS1maWVsZHNldCAqbmdJZj1cIiFmaWVsZHNldERhdGEgJiYgIWhhc0xlZ2VuZENvbXBvbmVudCgpICYmIGxlZ2VuZFJlZlwiXG4gICAgICAgICAgICAgICAgICAgIFtsZWdlbmRSZWZdPVwibGVnZW5kUmVmXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhbGxlcl09XCJpbm5lckh0bWxcIlxuICAgICAgICAgICAgICAgICAgICBbZXJyb3JJZF09XCJnZXRFcnJvcklkKClcIlxuICAgICAgICAgICAgICAgICAgICBbZGVzY3JpYmVkQnldPVwiWyBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCI+PC9kZXN5LWZpZWxkc2V0PlxuICAgIDxkZXN5LWZpZWxkc2V0ICpuZ0lmPVwiIWZpZWxkc2V0RGF0YSAmJiAhaGFzTGVnZW5kQ29tcG9uZW50KCkgJiYgIWxlZ2VuZFJlZiAmJiBsZWdlbmREYXRhXCJcbiAgICAgICAgICAgICAgICAgICAgW2xlZ2VuZERhdGFdPVwie3RleHQ6IGxlZ2VuZERhdGEudGV4dCwgaHRtbDogbGVnZW5kRGF0YS5odG1sLCAgY2xhc3NlczogbGVnZW5kRGF0YS5jbGFzc2VzLCBpc1BhZ2VIZWFkaW5nOiBsZWdlbmREYXRhLmlzUGFnZUhlYWRpbmd9XCJcbiAgICAgICAgICAgICAgICAgICAgW2NhbGxlcl09XCJpbm5lckh0bWxcIlxuICAgICAgICAgICAgICAgICAgICBbZXJyb3JJZF09XCJnZXRFcnJvcklkKClcIlxuICAgICAgICAgICAgICAgICAgICBbZGVzY3JpYmVkQnldPVwiWyBnZXRIaW50SWQoKSwgZ2V0RXJyb3JJZCgpXSB8IG1ha2VIdG1sTGlzdDpudWxsXCI+PC9kZXN5LWZpZWxkc2V0PlxuICAgIDxkZXN5LWZpZWxkc2V0ICpuZ0lmPVwiIWZpZWxkc2V0RGF0YSAmJiAhaGFzTGVnZW5kQ29tcG9uZW50KCkgJiYgIWxlZ2VuZFJlZiAmJiAhbGVnZW5kRGF0YSAmJiBsZWdlbmRUZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgW2xlZ2VuZFRleHRdPVwibGVnZW5kVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIFtjYWxsZXJdPVwiaW5uZXJIdG1sXCJcbiAgICAgICAgICAgICAgICAgICAgW2Vycm9ySWRdPVwiZ2V0RXJyb3JJZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlZEJ5XT1cIlsgZ2V0SGludElkKCksIGdldEVycm9ySWQoKV0gfCBtYWtlSHRtbExpc3Q6bnVsbFwiPjwvZGVzeS1maWVsZHNldD5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoYXNGaWVsZHNldCgpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlubmVySHRtbFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2lubmVySHRtbD5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc0hpbnRDb21wb25lbnQoKVwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRlc3ktaGludFwiPjwvbmctY29udGVudD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaGFzSGludENvbXBvbmVudCgpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhpbnRSZWZcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8ZGVzeS1oaW50ICpuZ0lmPVwiIWhpbnRSZWYgJiYgaGludERhdGFcIlxuICAgICAgICAgICAgICAgW2lkXT1cImdldEhpbnRJZCgpXCJcbiAgICAgICAgICAgICAgIFt0ZXh0XT1cImhpbnREYXRhLnRleHRcIlxuICAgICAgICAgICAgICAgW2h0bWxdPVwiaGludERhdGEuaHRtbFwiXG4gICAgICAgICAgICAgICBbY2xhc3Nlc109XCJoaW50RGF0YS5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgIFtyb2xlXT1cImhpbnREYXRhLnJvbGVcIlxuICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJoaW50RGF0YS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJoaW50RGF0YS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImhpbnREYXRhLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgIFthcmlhSGlkZGVuXT1cImhpbnREYXRhLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgW2FyaWFEaXNhYmxlZF09XCJoaW50RGF0YS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJoaW50RGF0YS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgW2FyaWFDdXJyZW50XT1cImhpbnREYXRhLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgIFthcmlhTGl2ZV09XCJoaW50RGF0YS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cImhpbnREYXRhLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICBbYXJpYUVycm9yTWVzc2FnZV09XCJoaW50RGF0YS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiaGludERhdGEuYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJoaW50RGF0YS50YWJpbmRleFwiPjwvZGVzeS1oaW50PlxuICAgIDxkZXN5LWhpbnQgKm5nSWY9XCIhaGludFJlZiAmJiAhaGludERhdGEgJiYgaGludFRleHRcIiBbdGV4dF09XCJoaW50VGV4dFwiIFtpZF09XCJnZXRIaW50SWQoKVwiPjwvZGVzeS1oaW50PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzRXJyb3JNZXNzYWdlQ29tcG9uZW50KClcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkZXN5LWVycm9yLW1lc3NhZ2VcIj48L25nLWNvbnRlbnQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0Vycm9yTWVzc2FnZUNvbXBvbmVudCgpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVycm9yTWVzc2FnZVJlZlwiPjwvbmctY29udGFpbmVyPlxuICAgIDxkZXN5LWVycm9yLW1lc3NhZ2UgKm5nSWY9XCIhZXJyb3JNZXNzYWdlUmVmICYmIGVycm9yTWVzc2FnZURhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImdldEVycm9ySWQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJlcnJvck1lc3NhZ2VEYXRhLnRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2h0bWxdPVwiZXJyb3JNZXNzYWdlRGF0YS5odG1sXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cImVycm9yTWVzc2FnZURhdGEuY2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmlzdWFsbHlIaWRkZW5UZXh0XT1cImVycm9yTWVzc2FnZURhdGEudmlzdWFsbHlIaWRkZW5UZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb2xlXT1cImVycm9yTWVzc2FnZURhdGEucm9sZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJlcnJvck1lc3NhZ2VEYXRhLmFyaWFDb250cm9sc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUhhc1BvcHVwXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJlcnJvck1lc3NhZ2VEYXRhLnRhYmluZGV4XCI+PC9kZXN5LWVycm9yLW1lc3NhZ2U+XG4gICAgPGRlc3ktZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFlcnJvck1lc3NhZ2VSZWYgJiYgIWVycm9yTWVzc2FnZURhdGEgJiYgZXJyb3JNZXNzYWdlVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJlcnJvck1lc3NhZ2VUZXh0XCIgW2lkXT1cImdldEVycm9ySWQoKVwiPjwvZGVzeS1lcnJvci1tZXNzYWdlPlxuICA8L25nLWNvbnRhaW5lcj5cblxuXG4gIDxkaXYgW2NsYXNzXT1cIlsnYy1yYWRpb3MnLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbCA/IGFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5ID8gYXJpYURlc2NyaWJlZEJ5IDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5ID8gYXJpYUxhYmVsbGVkQnkgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJhcmlhSGlkZGVuID8gYXJpYUhpZGRlbiA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJhcmlhQ29udHJvbHMgPyBhcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwiYXJpYUN1cnJlbnQgPyBhcmlhQ3VycmVudCA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJhcmlhRXhwYW5kZWQgPyBhcmlhRXhwYW5kZWQgOiBudWxsXCJcbiAgICAgICBbYXR0ci5hcmlhLWVycm9ybWVzc2FnZV09XCJhcmlhRXJyb3JNZXNzYWdlID8gYXJpYUVycm9yTWVzc2FnZSA6IG51bGxcIlxuICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiYXJpYUhhc1BvcHVwID8gYXJpYUhhc1BvcHVwIDogbnVsbFwiXG4gICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXggPyB0YWJpbmRleCA6IG51bGxcIj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJhZGlvQ29tcG9uZW50SXRlbXMgJiYgcmFkaW9Db21wb25lbnRJdGVtcy5sZW5ndGggPiAwXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRlc3ktcmFkaW8taXRlbVwiPjwvbmctY29udGVudD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEocmFkaW9Db21wb25lbnRJdGVtcyAmJiByYWRpb0NvbXBvbmVudEl0ZW1zLmxlbmd0aCA+IDApICYmIGl0ZW1zXCI+XG4gICAgICAgIDxkZXN5LXJhZGlvLWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGluZGV4IGFzIGlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJpdGVtLmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiaXRlbS5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiaXRlbS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKGNoZWNrZWQpXT1cIml0ZW0uY2hlY2tlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmRpdGlvbmFsXT1cIml0ZW0uY29uZGl0aW9uYWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXZpZGVyXT1cIml0ZW0uZGl2aWRlclwiXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICBbcm9sZV09XCJpdGVtLnJvbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiaXRlbS5hcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiaXRlbS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJpdGVtLmFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUhpZGRlbl09XCJpdGVtLmFyaWFIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiaXRlbS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhQ29udHJvbHNdPVwiaXRlbS5hcmlhQ29udHJvbHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhQ3VycmVudF09XCJpdGVtLmFyaWFDdXJyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiaXRlbS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFFeHBhbmRlZF09XCJpdGVtLmFyaWFFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWFFcnJvck1lc3NhZ2VdPVwiaXRlbS5hcmlhRXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYUhhc1BvcHVwXT1cIml0ZW0uYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaXRlbS50YWJpbmRleFwiPlxuICAgICAgICAgIDxkZXN5LWxhYmVsIFt0ZXh0XT1cIml0ZW0udGV4dFwiIFtodG1sXT1cIml0ZW0uaHRtbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5jbGFzc2VzIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5yb2xlIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhLmFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5hcmlhRGVzY3JpYmVkQnk6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhLmFyaWFMYWJlbGxlZEJ5IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5hcmlhSGlkZGVuIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFEaXNhYmxlZF09XCJpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhLmFyaWFEaXNhYmxlZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhQ29udHJvbHNdPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5hcmlhQ29udHJvbHMgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5hcmlhQ3VycmVudCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhTGl2ZV09XCJpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhLmFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFFeHBhbmRlZF09XCJpdGVtLmxhYmVsRGF0YSA/IGl0ZW0ubGFiZWxEYXRhLmFyaWFFeHBhbmRlZCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0ubGFiZWxEYXRhID8gaXRlbS5sYWJlbERhdGEuYXJpYUVycm9yTWVzc2FnZSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhSGFzUG9wdXBdPVwiaXRlbS5sYWJlbERhdGEgPyBpdGVtLmxhYmVsRGF0YS5hcmlhSGFzUG9wdXAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwidGFiaW5kZXggPyBpdGVtLmxhYmVsRGF0YS50YWJpbmRleCA6IG51bGxcIj48L2Rlc3ktbGFiZWw+XG4gICAgICAgICAgPGRlc3ktaGludCAqbmdJZj1cIml0ZW0uaGludERhdGEgJiYgKGl0ZW0uaGludERhdGEudGV4dCB8fCBpdGVtLmhpbnREYXRhLmh0bWwpXCJcbiAgICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cIml0ZW0uaGludERhdGEudGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCJpdGVtLmhpbnREYXRhLmh0bWxcIlxuICAgICAgICAgICAgICAgICAgICAgW2NsYXNzZXNdPVwiaXRlbS5oaW50RGF0YS5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgICAgICAgIFtyb2xlXT1cIml0ZW0uaGludERhdGEucm9sZVwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIml0ZW0uaGludERhdGEuYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiaXRlbS5oaW50RGF0YS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cIml0ZW0uaGludERhdGEuYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiaXRlbS5oaW50RGF0YS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhRGlzYWJsZWRdPVwiaXRlbS5oaW50RGF0YS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJpdGVtLmhpbnREYXRhLmFyaWFDb250cm9sc1wiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiaXRlbS5oaW50RGF0YS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUxpdmVdPVwiaXRlbS5oaW50RGF0YS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cIml0ZW0uaGludERhdGEuYXJpYUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cIml0ZW0uaGludERhdGEuYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICBbYXJpYUhhc1BvcHVwXT1cIml0ZW0uaGludERhdGEuYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCJpdGVtLmhpbnREYXRhLnRhYmluZGV4XCI+PC9kZXN5LWhpbnQ+XG4gICAgICAgICAgPGRlc3ktaGludCAqbmdJZj1cIiFpdGVtLmhpbnREYXRhICYmIGl0ZW0uaGludFRleHRcIiBbdGV4dF09XCJpdGVtLmhpbnRUZXh0XCI+PC9kZXN5LWhpbnQ+XG4gICAgICAgICAgPGRlc3ktY29udGVudCAqbmdJZj1cIml0ZW0uY29uZGl0aW9uYWxIdG1sXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbS5jb25kaXRpb25hbEh0bWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2Rlc3ktY29udGVudD5cbiAgICAgICAgPC9kZXN5LXJhZGlvLWl0ZW0+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,60 @@
1
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output, QueryList } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { FormFieldComponent } from '../form-field/form-field.component';
4
+ import { ButtonComponent } from '../../../desy-buttons/components/button/button.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "../label/label.component";
8
+ import * as i3 from "../error-message/error-message.component";
9
+ import * as i4 from "../../../shared/pipes/make-html-list.pipe";
10
+ export class SearchBarComponent extends FormFieldComponent {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.clickEvent = new EventEmitter();
14
+ this.value = '';
15
+ }
16
+ onClick(event) {
17
+ if (!this.disabled) {
18
+ this.clickEvent.emit(event);
19
+ }
20
+ }
21
+ hasButton() {
22
+ return this.button && this.button.length > 0;
23
+ }
24
+ onInput(event) {
25
+ this.value = event.target.value;
26
+ this.onChange(this.value);
27
+ }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: SearchBarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: SearchBarComponent, selector: "desy-search-bar", inputs: { describedBy: "describedBy", classes: "classes", buttonClasses: "buttonClasses", placeholder: "placeholder" }, outputs: { clickEvent: "clickEvent" }, providers: [
30
+ {
31
+ provide: NG_VALUE_ACCESSOR,
32
+ useExisting: forwardRef(() => SearchBarComponent),
33
+ multi: true
34
+ }
35
+ ], queries: [{ propertyName: "button", predicate: ButtonComponent }], usesInheritance: true, ngImport: i0, template: "<!-- searchbar -->\n<div class=\"relative\" [ngClass]=\"{'flex flex-wrap items-end gap-sm': hasButton()}\">\n<ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\n<desy-label *ngIf=\"!labelRef && labelData\"\n [text]=\"labelData.text\"\n [html]=\"labelData.html\"\n [classes]=\"['sr-only', labelData.classes] | makeHtmlList\"\n [isPageHeading]=\"labelData.isPageHeading\"\n [for]=\"id\"\n [role]=\"labelData.role\"\n [ariaLabel]=\"labelData.ariaLabel\"\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\n [ariaHidden]=\"labelData.ariaHidden\"\n [ariaDisabled]=\"labelData.ariaDisabled\"\n [ariaControls]=\"labelData.ariaControls\"\n [ariaCurrent]=\"labelData.ariaCurrent\"\n [ariaLive]=\"labelData.ariaLive\"\n [ariaExpanded]=\"labelData.ariaExpanded\"\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\n [tabindex]=\"labelData.tabindex\"></desy-label>\n<desy-label *ngIf=\"!labelRef && !labelData && labelText\" [text]=\"labelText\" classes=\"sr-only\" [for]=\"id\"></desy-label>\n <input type=\"search\"\n [class]=\"['c-input block pr-12 border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base', classes] | makeHtmlList\"\n [ngClass]=\"{'border-alert-base ring-2 ring-alert-base': hasErrorsMessage(),'w-full': !hasButton()}\"\n [value]=\"value\" (input)=\"onInput($event)\"\n [attr.id]=\"id ? id : null\"\n [attr.name]=\"id ? id : null\"\n [attr.aria-describedby]=\"[describedBy, getErrorId()] | makeHtmlList:null\"\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\n [attr.disabled]=\"disabled ? true : null\"\n [attr.placeholder]=\"placeholder ? placeholder : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : 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-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-container *ngIf=\"hasButton(); else defaultButton\">\n <ng-content select=\"desy-button\"></ng-content>\n </ng-container>\n <ng-template #defaultButton>\n <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\n (click)=\"onClick($event)\"\n [class]=\"['absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus', buttonClasses] | makeHtmlList\">\n <span class=\"sr-only\">Buscar</span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"1.375em\" height=\"1.375em\" aria-hidden=\"true\"><path d=\"M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z\" fill=\"currentColor\"/></svg>\n </button>\n </ng-template>\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</div>\n<!-- /searchbar -->\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.LabelComponent, selector: "desy-label", inputs: ["id", "classes", "html", "text", "isPageHeading", "headingLevel", "for"] }, { kind: "component", type: i3.ErrorMessageComponent, selector: "desy-error-message", inputs: ["id", "classes", "html", "text", "visuallyHiddenText"] }, { kind: "pipe", type: i4.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: SearchBarComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'desy-search-bar', providers: [
40
+ {
41
+ provide: NG_VALUE_ACCESSOR,
42
+ useExisting: forwardRef(() => SearchBarComponent),
43
+ multi: true
44
+ }
45
+ ], template: "<!-- searchbar -->\n<div class=\"relative\" [ngClass]=\"{'flex flex-wrap items-end gap-sm': hasButton()}\">\n<ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\n<desy-label *ngIf=\"!labelRef && labelData\"\n [text]=\"labelData.text\"\n [html]=\"labelData.html\"\n [classes]=\"['sr-only', labelData.classes] | makeHtmlList\"\n [isPageHeading]=\"labelData.isPageHeading\"\n [for]=\"id\"\n [role]=\"labelData.role\"\n [ariaLabel]=\"labelData.ariaLabel\"\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\n [ariaHidden]=\"labelData.ariaHidden\"\n [ariaDisabled]=\"labelData.ariaDisabled\"\n [ariaControls]=\"labelData.ariaControls\"\n [ariaCurrent]=\"labelData.ariaCurrent\"\n [ariaLive]=\"labelData.ariaLive\"\n [ariaExpanded]=\"labelData.ariaExpanded\"\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\n [tabindex]=\"labelData.tabindex\"></desy-label>\n<desy-label *ngIf=\"!labelRef && !labelData && labelText\" [text]=\"labelText\" classes=\"sr-only\" [for]=\"id\"></desy-label>\n <input type=\"search\"\n [class]=\"['c-input block pr-12 border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base', classes] | makeHtmlList\"\n [ngClass]=\"{'border-alert-base ring-2 ring-alert-base': hasErrorsMessage(),'w-full': !hasButton()}\"\n [value]=\"value\" (input)=\"onInput($event)\"\n [attr.id]=\"id ? id : null\"\n [attr.name]=\"id ? id : null\"\n [attr.aria-describedby]=\"[describedBy, getErrorId()] | makeHtmlList:null\"\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\n [attr.disabled]=\"disabled ? true : null\"\n [attr.placeholder]=\"placeholder ? placeholder : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : 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-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-container *ngIf=\"hasButton(); else defaultButton\">\n <ng-content select=\"desy-button\"></ng-content>\n </ng-container>\n <ng-template #defaultButton>\n <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\n (click)=\"onClick($event)\"\n [class]=\"['absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus', buttonClasses] | makeHtmlList\">\n <span class=\"sr-only\">Buscar</span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"1.375em\" height=\"1.375em\" aria-hidden=\"true\"><path d=\"M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z\" fill=\"currentColor\"/></svg>\n </button>\n </ng-template>\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</div>\n<!-- /searchbar -->\n" }]
46
+ }], propDecorators: { button: [{
47
+ type: ContentChildren,
48
+ args: [ButtonComponent]
49
+ }], describedBy: [{
50
+ type: Input
51
+ }], classes: [{
52
+ type: Input
53
+ }], buttonClasses: [{
54
+ type: Input
55
+ }], placeholder: [{
56
+ type: Input
57
+ }], clickEvent: [{
58
+ type: Output
59
+ }] } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VhcmNoLWJhci9zZWFyY2gtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWFyY2gtYmFyL3NlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUFFLFNBQVMsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7Ozs7QUFhM0YsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUEwQjtJQVhsRTs7UUFtQlksZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUMsVUFBSyxHQUFHLEVBQUUsQ0FBQztLQWdCWjtJQWRDLE9BQU8sQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFJLEtBQUssQ0FBQyxNQUEyQixDQUFDLEtBQUssQ0FBQztRQUN0RCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQXpCVSxrQkFBa0I7a0dBQWxCLGtCQUFrQix5TUFSbEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaURBSWdCLGVBQWUsb0RDekJsQywwM0tBZ0ZBOzsyRkR6RGEsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLGlCQUFpQixhQUVoQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBSWlDLE1BQU07c0JBQXZDLGVBQWU7dUJBQUMsZUFBZTtnQkFFdkIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LCBRdWVyeUxpc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1idXR0b25zL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXNlYXJjaC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VhcmNoQmFyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEJhckNvbXBvbmVudCBleHRlbmRzIEZvcm1GaWVsZENvbXBvbmVudDxzdHJpbmc+eyAgXG4gIFxuICBAQ29udGVudENoaWxkcmVuKEJ1dHRvbkNvbXBvbmVudCkgYnV0dG9uOiBRdWVyeUxpc3Q8QnV0dG9uQ29tcG9uZW50PjtcblxuICBASW5wdXQoKSBkZXNjcmliZWRCeTogc3RyaW5nO1xuICBASW5wdXQoKSBjbGFzc2VzOiBhbnk7XG4gIEBJbnB1dCgpIGJ1dHRvbkNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIFxuICB2YWx1ZSA9ICcnO1xuICBcbiAgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNsaWNrRXZlbnQuZW1pdChldmVudCk7XG4gICAgfVxuICB9XG5cbiAgaGFzQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmJ1dHRvbiAmJiB0aGlzLmJ1dHRvbi5sZW5ndGggPiAwO1xuICB9XG5cbiAgb25JbnB1dChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxufVxuIiwiPCEtLSBzZWFyY2hiYXIgLS0+XG48ZGl2IGNsYXNzPVwicmVsYXRpdmVcIiBbbmdDbGFzc109XCJ7J2ZsZXggZmxleC13cmFwIGl0ZW1zLWVuZCBnYXAtc20nOiBoYXNCdXR0b24oKX1cIj5cbjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFJlZlwiPjwvbmctY29udGFpbmVyPlxuPGRlc3ktbGFiZWwgKm5nSWY9XCIhbGFiZWxSZWYgJiYgbGFiZWxEYXRhXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cImxhYmVsRGF0YS50ZXh0XCJcbiAgICAgICAgICAgIFtodG1sXT1cImxhYmVsRGF0YS5odG1sXCJcbiAgICAgICAgICAgIFtjbGFzc2VzXT1cIlsnc3Itb25seScsIGxhYmVsRGF0YS5jbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgICAgICBbaXNQYWdlSGVhZGluZ109XCJsYWJlbERhdGEuaXNQYWdlSGVhZGluZ1wiXG4gICAgICAgICAgICBbZm9yXT1cImlkXCJcbiAgICAgICAgICAgIFtyb2xlXT1cImxhYmVsRGF0YS5yb2xlXCJcbiAgICAgICAgICAgIFthcmlhTGFiZWxdPVwibGFiZWxEYXRhLmFyaWFMYWJlbFwiXG4gICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cImxhYmVsRGF0YS5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImxhYmVsRGF0YS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICBbYXJpYUhpZGRlbl09XCJsYWJlbERhdGEuYXJpYUhpZGRlblwiXG4gICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cImxhYmVsRGF0YS5hcmlhRGlzYWJsZWRcIlxuICAgICAgICAgICAgW2FyaWFDb250cm9sc109XCJsYWJlbERhdGEuYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgIFthcmlhQ3VycmVudF09XCJsYWJlbERhdGEuYXJpYUN1cnJlbnRcIlxuICAgICAgICAgICAgW2FyaWFMaXZlXT1cImxhYmVsRGF0YS5hcmlhTGl2ZVwiXG4gICAgICAgICAgICBbYXJpYUV4cGFuZGVkXT1cImxhYmVsRGF0YS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgW2FyaWFFcnJvck1lc3NhZ2VdPVwibGFiZWxEYXRhLmFyaWFFcnJvck1lc3NhZ2VcIlxuICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJsYWJlbERhdGEuYXJpYUhhc1BvcHVwXCJcbiAgICAgICAgICAgIFt0YWJpbmRleF09XCJsYWJlbERhdGEudGFiaW5kZXhcIj48L2Rlc3ktbGFiZWw+XG48ZGVzeS1sYWJlbCAqbmdJZj1cIiFsYWJlbFJlZiAmJiAhbGFiZWxEYXRhICYmIGxhYmVsVGV4dFwiIFt0ZXh0XT1cImxhYmVsVGV4dFwiIGNsYXNzZXM9XCJzci1vbmx5XCIgW2Zvcl09XCJpZFwiPjwvZGVzeS1sYWJlbD5cbiAgPGlucHV0IHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAgW2NsYXNzXT1cIlsnYy1pbnB1dCBibG9jayBwci0xMiBib3JkZXItYmxhY2sgcm91bmRlZCBmb250LXNlbWlib2xkIHBsYWNlaG9sZGVyLW5ldXRyYWwtZGFyayBmb2N1czpib3JkZXItYmxhY2sgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMtaW5wdXQgZm9jdXM6cmluZy00IGZvY3VzOnJpbmctd2FybmluZy1iYXNlIGRpc2FibGVkOmJnLW5ldXRyYWwtbGlnaHQgZGlzYWJsZWQ6Ym9yZGVyLW5ldXRyYWwtYmFzZScsIGNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsnYm9yZGVyLWFsZXJ0LWJhc2UgcmluZy0yIHJpbmctYWxlcnQtYmFzZSc6IGhhc0Vycm9yc01lc3NhZ2UoKSwndy1mdWxsJzogIWhhc0J1dHRvbigpfVwiXG4gICAgICAgICBbdmFsdWVdPVwidmFsdWVcIiAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgIFthdHRyLmlkXT1cImlkID8gaWQgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLm5hbWVdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJbZGVzY3JpYmVkQnksIGdldEVycm9ySWQoKV0gfCBtYWtlSHRtbExpc3Q6bnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWVycm9ybWVzc2FnZV09XCJoYXNFcnJvcnNNZXNzYWdlKCkgPyBnZXRFcnJvcklkKCkgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJoYXNFcnJvcnNNZXNzYWdlKCkgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnJvbGVdPVwicm9sZSA/IHJvbGUgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsID8gYXJpYUxhYmVsIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnkgPyBhcmlhTGFiZWxsZWRCeSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiYXJpYUhpZGRlbiA/IGFyaWFIaWRkZW4gOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiYXJpYURpc2FibGVkID8gYXJpYURpc2FibGVkIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImFyaWFDb250cm9scyA/IGFyaWFDb250cm9scyA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFyaWFDdXJyZW50ID8gYXJpYUN1cnJlbnQgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLmFyaWEtbGl2ZV09XCJhcmlhTGl2ZSA/IGFyaWFMaXZlIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImFyaWFFeHBhbmRlZCA/IGFyaWFFeHBhbmRlZCA6IG51bGxcIlxuICAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJhcmlhSGFzUG9wdXAgPyBhcmlhSGFzUG9wdXAgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4ID8gdGFiaW5kZXggOiBudWxsXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNCdXR0b24oKTsgZWxzZSBkZWZhdWx0QnV0dG9uXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGVzeS1idXR0b25cIj48L25nLWNvbnRlbnQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2RlZmF1bHRCdXR0b24+XG4gICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogbnVsbFwiIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAndHJ1ZScgOiBudWxsXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIlsnYWJzb2x1dGUgdG9wLTAgcmlnaHQtMCBtLXNtIHAtMC41IHRleHQtcHJpbWFyeS1iYXNlIGhvdmVyOnRleHQtcHJpbWFyeS1kYXJrIGZvY3VzOmJnLXdhcm5pbmctYmFzZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMnLCBidXR0b25DbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+QnVzY2FyPC9zcGFuPlxuICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIHdpZHRoPVwiMS4zNzVlbVwiIGhlaWdodD1cIjEuMzc1ZW1cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48cGF0aCBkPVwiTTIzLjQ5OCAyMy40ODdhMS43MTMgMS43MTMgMCAwMDAtMi40MjFsLTQuNTcyLTQuNTc1YS40My40MyAwIDAxLS4wNjItLjUzOSAxMC4yODMgMTAuMjgzIDAgMTAtMi45MTEgMi45MTEuNDMuNDMgMCAwMS41MzkuMDU1bDQuNTc0IDQuNTc0YTEuNzEyIDEuNzEyIDAgMDAyLjQzMy0uMDA1ek0zLjQ1MSAxMC4yODlhNi44NSA2Ljg1IDAgMTE2Ljg1IDYuODUgNi44NSA2Ljg1IDAgMDEtNi44NS02Ljg1elwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIi8+PC9zdmc+XG4gICAgPC9idXR0b24+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlcnJvck1lc3NhZ2VSZWZcIj48L25nLWNvbnRhaW5lcj5cbiAgPGRlc3ktZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFlcnJvck1lc3NhZ2VSZWYgJiYgZXJyb3JNZXNzYWdlRGF0YVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImdldEVycm9ySWQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiZXJyb3JNZXNzYWdlRGF0YS50ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCJlcnJvck1lc3NhZ2VEYXRhLmh0bWxcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc2VzXT1cImVycm9yTWVzc2FnZURhdGEuY2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgW3Zpc3VhbGx5SGlkZGVuVGV4dF09XCJlcnJvck1lc3NhZ2VEYXRhLnZpc3VhbGx5SGlkZGVuVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3JvbGVdPVwiZXJyb3JNZXNzYWdlRGF0YS5yb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURlc2NyaWJlZEJ5XT1cImVycm9yTWVzc2FnZURhdGEuYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsbGVkQnldPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIaWRkZW5dPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhSGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYURpc2FibGVkXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYURpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUNvbnRyb2xzXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUNvbnRyb2xzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXJpYUN1cnJlbnRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhQ3VycmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFMaXZlXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUxpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXhwYW5kZWRdPVwiZXJyb3JNZXNzYWdlRGF0YS5hcmlhRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthcmlhRXJyb3JNZXNzYWdlXT1cImVycm9yTWVzc2FnZURhdGEuYXJpYUVycm9yTWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FyaWFIYXNQb3B1cF09XCJlcnJvck1lc3NhZ2VEYXRhLmFyaWFIYXNQb3B1cFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cImVycm9yTWVzc2FnZURhdGEudGFiaW5kZXhcIj48L2Rlc3ktZXJyb3ItbWVzc2FnZT5cbiAgPGRlc3ktZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFlcnJvck1lc3NhZ2VSZWYgJiYgIWVycm9yTWVzc2FnZURhdGEgJiYgZXJyb3JNZXNzYWdlVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3RleHRdPVwiZXJyb3JNZXNzYWdlVGV4dFwiIFtpZF09XCJnZXRFcnJvcklkKClcIj48L2Rlc3ktZXJyb3ItbWVzc2FnZT5cbjwvZGl2PlxuPCEtLSAvc2VhcmNoYmFyIC0tPlxuIl19
@@ -2,10 +2,10 @@ import { Component, forwardRef, Input } from '@angular/core';
2
2
  import { SelectItemComponent } from '../select-item/select-item.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class OptionComponent extends SelectItemComponent {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: OptionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: OptionComponent, selector: "desy-option", inputs: { value: "value", selected: "selected", hidden: "hidden" }, providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionComponent) }], usesInheritance: true, ngImport: i0, template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>', isInline: true }); }
5
7
  }
6
- OptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: OptionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
7
- OptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: OptionComponent, selector: "desy-option", inputs: { value: "value", selected: "selected", hidden: "hidden" }, providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionComponent) }], usesInheritance: true, ngImport: i0, template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>', isInline: true });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: OptionComponent, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: OptionComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{
11
11
  selector: 'desy-option',
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
19
19
  }], hidden: [{
20
20
  type: Input
21
21
  }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvb3B0aW9uL29wdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDOztBQU96RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxtQkFBbUI7OzRHQUEzQyxlQUFlO2dHQUFmLGVBQWUsMEdBRmYsQ0FBQyxFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFDLENBQUMsaURBRGpGLHVFQUF1RTsyRkFHdEUsZUFBZTtrQkFMM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLHVFQUF1RTtvQkFDakYsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUMsRUFBQyxDQUFDO2lCQUM1Rjs4QkFHVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTZWxlY3RJdGVtRGF0YX0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1NlbGVjdEl0ZW1Db21wb25lbnR9IGZyb20gJy4uL3NlbGVjdC1pdGVtL3NlbGVjdC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktb3B0aW9uJyxcbiAgdGVtcGxhdGU6ICc8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT4nLFxuICBwcm92aWRlcnM6IFt7cHJvdmlkZTogU2VsZWN0SXRlbUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3B0aW9uQ29tcG9uZW50KX1dLFxufSlcbmV4cG9ydCBjbGFzcyBPcHRpb25Db21wb25lbnQgZXh0ZW5kcyBTZWxlY3RJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgU2VsZWN0SXRlbURhdGEge1xuXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNlbGVjdGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBoaWRkZW46IGJvb2xlYW47XG5cbn1cbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvb3B0aW9uL29wdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDOztBQU96RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxtQkFBbUI7OEdBQTNDLGVBQWU7a0dBQWYsZUFBZSwwR0FGZixDQUFDLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUMsQ0FBQyxpREFEakYsdUVBQXVFOzsyRkFHdEUsZUFBZTtrQkFMM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLHVFQUF1RTtvQkFDakYsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUMsRUFBQyxDQUFDO2lCQUM1Rjs4QkFHVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTZWxlY3RJdGVtRGF0YX0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1NlbGVjdEl0ZW1Db21wb25lbnR9IGZyb20gJy4uL3NlbGVjdC1pdGVtL3NlbGVjdC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktb3B0aW9uJyxcbiAgdGVtcGxhdGU6ICc8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT4nLFxuICBwcm92aWRlcnM6IFt7cHJvdmlkZTogU2VsZWN0SXRlbUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3B0aW9uQ29tcG9uZW50KX1dLFxufSlcbmV4cG9ydCBjbGFzcyBPcHRpb25Db21wb25lbnQgZXh0ZW5kcyBTZWxlY3RJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgU2VsZWN0SXRlbURhdGEge1xuXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCBudW1iZXI7XG4gIEBJbnB1dCgpIHNlbGVjdGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBoaWRkZW46IGJvb2xlYW47XG5cbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Component, ContentChildren, forwardRef, Input, QueryList } from '@angular/core';
2
+ import { SelectItemComponent } from '../select-item/select-item.component';
3
+ import { OptionComponent } from '../option/option.component';
4
+ import * as i0 from "@angular/core";
5
+ export class OptionGroupComponent extends SelectItemComponent {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: OptionGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: OptionGroupComponent, selector: "desy-option-group", inputs: { label: "label" }, providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionGroupComponent) }], queries: [{ propertyName: "items", predicate: OptionComponent }], usesInheritance: true, ngImport: i0, template: "<p>option-group works!</p>\n" }); }
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: OptionGroupComponent, decorators: [{
10
+ type: Component,
11
+ args: [{ selector: 'desy-option-group', providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionGroupComponent) }], template: "<p>option-group works!</p>\n" }]
12
+ }], propDecorators: { label: [{
13
+ type: Input
14
+ }], items: [{
15
+ type: ContentChildren,
16
+ args: [OptionComponent]
17
+ }] } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvb3B0aW9uLWdyb3VwL29wdGlvbi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VsZWN0L29wdGlvbi1ncm91cC9vcHRpb24tZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDekUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDRCQUE0QixDQUFDOztBQU8zRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsbUJBQW1COzhHQUFoRCxvQkFBb0I7a0dBQXBCLG9CQUFvQix3RUFGcEIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEVBQUMsQ0FBQyxnREFNL0UsZUFBZSxvRENibEMsOEJBQ0E7OzJGRFFhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxtQkFBbUIsYUFFbEIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQyxFQUFDLENBQUM7OEJBSXZGLEtBQUs7c0JBQWIsS0FBSztnQkFFNEIsS0FBSztzQkFBdEMsZUFBZTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgZm9yd2FyZFJlZiwgSW5wdXQsIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NlbGVjdEl0ZW1Db21wb25lbnR9IGZyb20gJy4uL3NlbGVjdC1pdGVtL3NlbGVjdC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQge09wdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vb3B0aW9uL29wdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LW9wdGlvbi1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9vcHRpb24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFt7cHJvdmlkZTogU2VsZWN0SXRlbUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3B0aW9uR3JvdXBDb21wb25lbnQpfV0sXG59KVxuZXhwb3J0IGNsYXNzIE9wdGlvbkdyb3VwQ29tcG9uZW50IGV4dGVuZHMgU2VsZWN0SXRlbUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuICBAQ29udGVudENoaWxkcmVuKE9wdGlvbkNvbXBvbmVudCkgaXRlbXM6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ+O1xufVxuIiwiPHA+b3B0aW9uLWdyb3VwIHdvcmtzITwvcD5cbiJdfQ==