desy-angular 2.0.1 → 5.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 (477) hide show
  1. package/README.md +22 -20
  2. package/bundles/desy-angular.umd.js +8742 -4678
  3. package/bundles/desy-angular.umd.js.map +1 -1
  4. package/bundles/desy-angular.umd.min.js +2 -2
  5. package/bundles/desy-angular.umd.min.js.map +1 -1
  6. package/desy-angular.d.ts +34 -21
  7. package/desy-angular.metadata.json +1 -1
  8. package/esm2015/desy-angular.js +35 -22
  9. package/esm2015/lib/desy-angular.module.js +38 -35
  10. package/esm2015/lib/desy-buttons/components/button/button.component.js +92 -103
  11. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +50 -45
  12. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +108 -49
  13. package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +26 -0
  14. package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +23 -0
  15. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +275 -0
  16. package/esm2015/lib/desy-buttons/components/pill/pill.component.js +64 -66
  17. package/esm2015/lib/desy-buttons/desy-buttons.module.js +44 -33
  18. package/esm2015/lib/desy-buttons/interfaces/listbox-item-data.js +2 -0
  19. package/esm2015/lib/desy-buttons/interfaces/listbox-label-data.js +2 -0
  20. package/esm2015/lib/desy-commons/components/content/content.component.js +14 -0
  21. package/esm2015/lib/desy-commons/components/description/description.component.js +14 -0
  22. package/esm2015/lib/desy-commons/components/icon/icon.component.js +14 -0
  23. package/esm2015/lib/desy-commons/components/title/title.component.js +14 -0
  24. package/esm2015/lib/desy-commons/desy-commons.module.js +33 -0
  25. package/esm2015/lib/desy-commons/interfaces/content-data.js +2 -0
  26. package/esm2015/lib/desy-commons/interfaces/description-data.js +2 -0
  27. package/esm2015/lib/desy-commons/interfaces/icon-data.js +2 -0
  28. package/esm2015/lib/desy-commons/interfaces/index.js +5 -0
  29. package/esm2015/lib/desy-commons/interfaces/title-data.js +2 -0
  30. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +124 -124
  31. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +190 -0
  32. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +235 -128
  33. package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +46 -0
  34. package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -0
  35. package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -0
  36. package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +46 -0
  37. package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +44 -0
  38. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +228 -123
  39. package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +28 -16
  40. package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +44 -21
  41. package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +16 -15
  42. package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +59 -59
  43. package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +103 -65
  44. package/esm2015/lib/desy-forms/components/hint/hint.component.js +27 -15
  45. package/esm2015/lib/desy-forms/components/input/input.component.js +58 -59
  46. package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -0
  47. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +46 -0
  48. package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -0
  49. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +42 -0
  50. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +190 -96
  51. package/esm2015/lib/desy-forms/components/label/label.component.js +30 -17
  52. package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +147 -0
  53. package/esm2015/lib/desy-forms/components/radios/radios.component.js +242 -56
  54. package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +57 -47
  55. package/esm2015/lib/desy-forms/components/select/option/option.component.js +17 -0
  56. package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -0
  57. package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -0
  58. package/esm2015/lib/desy-forms/components/select/select.component.js +74 -59
  59. package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +12 -12
  60. package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +67 -67
  61. package/esm2015/lib/desy-forms/desy-forms.module.js +116 -79
  62. package/esm2015/lib/desy-forms/directives/condition.directive.js +35 -35
  63. package/esm2015/lib/desy-forms/interfaces/accesibility-data.js +2 -2
  64. package/esm2015/lib/desy-forms/interfaces/error-message-data.js +2 -2
  65. package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +2 -2
  66. package/esm2015/lib/desy-forms/interfaces/hint-data.js +2 -2
  67. package/esm2015/lib/desy-forms/interfaces/index.js +13 -13
  68. package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +2 -2
  69. package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +2 -2
  70. package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -0
  71. package/esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js +2 -2
  72. package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +2 -2
  73. package/esm2015/lib/desy-forms/interfaces/item-radio-data.js +2 -2
  74. package/esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js +2 -2
  75. package/esm2015/lib/desy-forms/interfaces/label-data.js +2 -2
  76. package/esm2015/lib/desy-forms/interfaces/legend-data.js +2 -2
  77. package/esm2015/lib/desy-forms/interfaces/select-item-data.js +2 -2
  78. package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +127 -127
  79. package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +19 -0
  80. package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +19 -0
  81. package/esm2015/lib/desy-modals/components/modal/modal.component.js +144 -59
  82. package/esm2015/lib/desy-modals/desy-modals.module.js +35 -29
  83. package/esm2015/lib/desy-modals/interfaces/dialog-options.js +2 -2
  84. package/esm2015/lib/desy-modals/interfaces/index.js +8 -8
  85. package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +2 -2
  86. package/esm2015/lib/desy-modals/interfaces/modal-data.js +2 -2
  87. package/esm2015/lib/desy-modals/interfaces/modal-icon-data.js +2 -2
  88. package/esm2015/lib/desy-modals/interfaces/modal-options.js +2 -2
  89. package/esm2015/lib/desy-modals/interfaces/open-dialog-result.js +2 -2
  90. package/esm2015/lib/desy-modals/services/dialog.service.js +118 -118
  91. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +15 -0
  92. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +48 -46
  93. package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +15 -0
  94. package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +52 -31
  95. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -0
  96. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -0
  97. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -0
  98. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -0
  99. package/esm2015/lib/desy-nav/components/footer/footer.component.js +45 -22
  100. package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +34 -44
  101. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -0
  102. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +32 -25
  103. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +25 -0
  104. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -0
  105. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +88 -26
  106. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +37 -47
  107. package/esm2015/lib/desy-nav/components/header/header.component.js +58 -27
  108. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +28 -0
  109. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +81 -61
  110. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -0
  111. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -0
  112. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -0
  113. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +95 -142
  114. package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +36 -0
  115. package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +14 -0
  116. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +29 -0
  117. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +23 -0
  118. package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +37 -0
  119. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +656 -0
  120. package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +30 -0
  121. package/esm2015/lib/desy-nav/components/nav/nav.component.js +85 -63
  122. package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +18 -0
  123. package/esm2015/lib/desy-nav/components/notification/notification.component.js +110 -83
  124. package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +42 -23
  125. package/esm2015/lib/desy-nav/desy-nav.module.js +123 -57
  126. package/esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js +2 -2
  127. package/esm2015/lib/desy-nav/interfaces/error-summary-data.js +2 -2
  128. package/esm2015/lib/desy-nav/interfaces/footer-data.js +2 -2
  129. package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +2 -2
  130. package/esm2015/lib/desy-nav/interfaces/header-navigation-data.js +2 -2
  131. package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +2 -2
  132. package/esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js +2 -2
  133. package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +2 -2
  134. package/esm2015/lib/desy-nav/interfaces/index.js +17 -21
  135. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js +2 -2
  136. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js +2 -2
  137. package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +2 -2
  138. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js +2 -2
  139. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js +2 -2
  140. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js +2 -0
  141. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js +2 -0
  142. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub.js +2 -0
  143. package/esm2015/lib/desy-nav/interfaces/menubar-item.js +2 -0
  144. package/esm2015/lib/desy-nav/interfaces/nav-item-event.data.js +2 -2
  145. package/esm2015/lib/desy-nav/interfaces/nav-item.data.js +2 -2
  146. package/esm2015/lib/desy-nav/interfaces/notification-items-data.js +2 -2
  147. package/esm2015/lib/desy-nav/interfaces/notification-options.js +2 -2
  148. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +104 -139
  149. package/esm2015/lib/desy-pagination/desy-pagination.module.js +25 -25
  150. package/esm2015/lib/desy-pagination/interfaces/index.js +2 -2
  151. package/esm2015/lib/desy-pagination/interfaces/pagination-item.data.js +2 -2
  152. package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +14 -0
  153. package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +17 -0
  154. package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +14 -0
  155. package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +14 -0
  156. package/esm2015/lib/desy-tables/components/table/table.component.js +67 -34
  157. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +20 -0
  158. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +14 -0
  159. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +17 -0
  160. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +20 -0
  161. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +288 -264
  162. package/esm2015/lib/desy-tables/desy-tables.module.js +61 -33
  163. package/esm2015/lib/desy-tables/directives/cell.directive.js +26 -0
  164. package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +78 -74
  165. package/esm2015/lib/desy-tables/directives/row.directive.js +24 -0
  166. package/esm2015/lib/desy-tables/interfaces/cell-data.js +2 -2
  167. package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +7 -7
  168. package/esm2015/lib/desy-tables/interfaces/index.js +5 -4
  169. package/esm2015/lib/desy-tables/interfaces/recalculate-table-params.js +2 -0
  170. package/esm2015/lib/desy-tables/interfaces/row-data.js +2 -2
  171. package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -0
  172. package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +14 -0
  173. package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +33 -0
  174. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +136 -108
  175. package/esm2015/lib/desy-views/components/alert/alert.component.js +81 -76
  176. package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +62 -66
  177. package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +15 -0
  178. package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +26 -0
  179. package/esm2015/lib/desy-views/components/description-list/description-list.component.js +28 -38
  180. package/esm2015/lib/desy-views/components/description-list/term/term.component.js +15 -0
  181. package/esm2015/lib/desy-views/components/details/details.component.js +31 -31
  182. package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +14 -0
  183. package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +11 -0
  184. package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +11 -0
  185. package/esm2015/lib/desy-views/components/item/item.component.js +79 -46
  186. package/esm2015/lib/desy-views/components/media-object/media-object.component.js +29 -29
  187. package/esm2015/lib/desy-views/components/spinner/spinner.component.js +16 -16
  188. package/esm2015/lib/desy-views/components/status/status.component.js +35 -35
  189. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +63 -50
  190. package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -0
  191. package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -0
  192. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +131 -109
  193. package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +11 -0
  194. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +132 -0
  195. package/esm2015/lib/desy-views/desy-views.module.js +93 -53
  196. package/esm2015/lib/desy-views/interfaces/accordion-header.data.js +2 -2
  197. package/esm2015/lib/desy-views/interfaces/accordion-item.data.js +2 -2
  198. package/esm2015/lib/desy-views/interfaces/alert-options.js +2 -2
  199. package/esm2015/lib/desy-views/interfaces/description-item.data.js +2 -0
  200. package/esm2015/lib/desy-views/interfaces/index.js +11 -11
  201. package/esm2015/lib/desy-views/interfaces/open-alert-result.js +2 -2
  202. package/esm2015/lib/desy-views/interfaces/status-data.js +2 -2
  203. package/esm2015/lib/desy-views/interfaces/status-icon-data.js +2 -2
  204. package/esm2015/lib/desy-views/interfaces/status-item-title-data.js +2 -2
  205. package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +2 -2
  206. package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +2 -2
  207. package/esm2015/lib/desy-views/interfaces/term-definition.data.js +2 -0
  208. package/esm2015/lib/desy-views/services/alert.service.js +90 -90
  209. package/esm2015/lib/shared/components/accessibility/accessibility.component.js +29 -29
  210. package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +27 -0
  211. package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +26 -26
  212. package/esm2015/lib/shared/components/content-base/content-base.component.js +20 -0
  213. package/esm2015/lib/shared/components/index.js +6 -4
  214. package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +26 -26
  215. package/esm2015/lib/shared/decorators/desy-content-child.decorator.js +41 -0
  216. package/esm2015/lib/shared/decorators/desy-on-input-change.decorator.js +19 -0
  217. package/esm2015/lib/shared/directives/attribute-change.directive.js +43 -0
  218. package/esm2015/lib/shared/directives/click-outside.directive.js +35 -35
  219. package/esm2015/lib/shared/directives/content-change.directive.js +43 -0
  220. package/esm2015/lib/shared/directives/content-empty.directive.js +86 -0
  221. package/esm2015/lib/shared/directives/custom-inner-content.directive.js +62 -0
  222. package/esm2015/lib/shared/directives/inner-content.directive.js +34 -32
  223. package/esm2015/lib/shared/interfaces/accesibility-data.js +2 -2
  224. package/esm2015/lib/shared/pipes/external-href.pipe.js +28 -0
  225. package/esm2015/lib/shared/pipes/inner-html.pipe.js +19 -19
  226. package/esm2015/lib/shared/pipes/make-html-list.pipe.js +16 -16
  227. package/esm2015/lib/shared/shared.module.js +65 -46
  228. package/esm2015/lib/shared/utils/focus-utils.js +51 -51
  229. package/esm2015/lib/shared/utils/search-utils.js +57 -57
  230. package/esm2015/lib/shared/utils/string-utils.js +18 -0
  231. package/esm2015/public-api.js +189 -130
  232. package/fesm2015/desy-angular.js +7655 -3964
  233. package/fesm2015/desy-angular.js.map +1 -1
  234. package/lib/desy-angular.module.d.ts +2 -2
  235. package/lib/desy-buttons/components/button/button.component.d.ts +31 -32
  236. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +15 -14
  237. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +24 -19
  238. package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +12 -0
  239. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +8 -0
  240. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +54 -0
  241. package/lib/desy-buttons/components/pill/pill.component.d.ts +22 -22
  242. package/lib/desy-buttons/desy-buttons.module.d.ts +2 -2
  243. package/lib/desy-buttons/interfaces/listbox-item-data.d.ts +9 -0
  244. package/lib/{desy-nav/interfaces/notification-title-data.d.ts → desy-buttons/interfaces/listbox-label-data.d.ts} +5 -5
  245. package/lib/desy-commons/components/content/content.component.d.ts +5 -0
  246. package/lib/desy-commons/components/description/description.component.d.ts +5 -0
  247. package/lib/desy-commons/components/icon/icon.component.d.ts +5 -0
  248. package/lib/desy-commons/components/title/title.component.d.ts +5 -0
  249. package/lib/desy-commons/desy-commons.module.d.ts +2 -0
  250. package/lib/{desy-nav/interfaces/notification-content-data.d.ts → desy-commons/interfaces/content-data.d.ts} +5 -5
  251. package/lib/desy-commons/interfaces/description-data.d.ts +5 -0
  252. package/lib/desy-commons/interfaces/icon-data.d.ts +4 -0
  253. package/lib/desy-commons/interfaces/index.d.ts +4 -0
  254. package/lib/desy-commons/interfaces/title-data.d.ts +6 -0
  255. package/lib/desy-forms/components/character-count/character-count.component.d.ts +28 -28
  256. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +47 -0
  257. package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +75 -37
  258. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +22 -0
  259. package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -0
  260. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -0
  261. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +22 -0
  262. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +19 -0
  263. package/lib/desy-forms/components/date-input/date-input.component.d.ts +54 -37
  264. package/lib/desy-forms/components/error-message/error-message.component.d.ts +12 -6
  265. package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +28 -20
  266. package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +6 -5
  267. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +19 -19
  268. package/lib/desy-forms/components/form-field/form-field.component.d.ts +40 -51
  269. package/lib/desy-forms/components/hint/hint.component.d.ts +11 -5
  270. package/lib/desy-forms/components/input/input.component.d.ts +19 -19
  271. package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -0
  272. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -0
  273. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -0
  274. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -0
  275. package/lib/desy-forms/components/input-group/input-group.component.d.ts +54 -36
  276. package/lib/desy-forms/components/label/label.component.d.ts +14 -7
  277. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +43 -0
  278. package/lib/desy-forms/components/radios/radios.component.d.ts +75 -30
  279. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +17 -13
  280. package/lib/desy-forms/components/select/option/option.component.d.ts +7 -0
  281. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -0
  282. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -0
  283. package/lib/desy-forms/components/select/select.component.d.ts +21 -14
  284. package/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.d.ts +2 -2
  285. package/lib/desy-forms/components/textarea/textarea.component.d.ts +23 -23
  286. package/lib/desy-forms/desy-forms.module.d.ts +2 -2
  287. package/lib/desy-forms/directives/condition.directive.d.ts +15 -15
  288. package/lib/desy-forms/interfaces/accesibility-data.d.ts +15 -15
  289. package/lib/desy-forms/interfaces/error-message-data.d.ts +8 -8
  290. package/lib/desy-forms/interfaces/fieldset-data.d.ts +10 -9
  291. package/lib/desy-forms/interfaces/hint-data.d.ts +7 -7
  292. package/lib/desy-forms/interfaces/index.d.ts +12 -12
  293. package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +21 -20
  294. package/lib/desy-forms/interfaces/item-date-input-data.d.ts +17 -14
  295. package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -0
  296. package/lib/desy-forms/interfaces/item-divider-input-group-data.d.ts +5 -5
  297. package/lib/desy-forms/interfaces/item-input-group-data.d.ts +22 -23
  298. package/lib/desy-forms/interfaces/item-radio-data.d.ts +20 -17
  299. package/lib/desy-forms/interfaces/item-radio-with-template-data.d.ts +5 -5
  300. package/lib/desy-forms/interfaces/label-data.d.ts +9 -9
  301. package/lib/desy-forms/interfaces/legend-data.d.ts +6 -6
  302. package/lib/desy-forms/interfaces/select-item-data.d.ts +8 -7
  303. package/lib/desy-modals/components/dialog/dialog.component.d.ts +35 -35
  304. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +7 -0
  305. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +7 -0
  306. package/lib/desy-modals/components/modal/modal.component.d.ts +45 -20
  307. package/lib/desy-modals/desy-modals.module.d.ts +2 -2
  308. package/lib/desy-modals/interfaces/dialog-options.d.ts +9 -9
  309. package/lib/desy-modals/interfaces/index.d.ts +6 -6
  310. package/lib/desy-modals/interfaces/modal-button-data.d.ts +4 -4
  311. package/lib/desy-modals/interfaces/modal-data.d.ts +5 -5
  312. package/lib/desy-modals/interfaces/modal-icon-data.d.ts +4 -4
  313. package/lib/desy-modals/interfaces/modal-options.d.ts +16 -16
  314. package/lib/desy-modals/interfaces/open-dialog-result.d.ts +6 -6
  315. package/lib/desy-modals/services/dialog.service.d.ts +14 -14
  316. package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +6 -0
  317. package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +19 -16
  318. package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +6 -0
  319. package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +21 -13
  320. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -0
  321. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -0
  322. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -0
  323. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -0
  324. package/lib/desy-nav/components/footer/footer.component.d.ts +22 -10
  325. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +11 -7
  326. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -0
  327. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +13 -9
  328. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +6 -0
  329. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
  330. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +31 -10
  331. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +12 -9
  332. package/lib/desy-nav/components/header/header.component.d.ts +29 -18
  333. package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +15 -0
  334. package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +18 -17
  335. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -0
  336. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -0
  337. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -0
  338. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +19 -24
  339. package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +23 -0
  340. package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +4 -0
  341. package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +15 -0
  342. package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +10 -0
  343. package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +16 -0
  344. package/lib/desy-nav/components/menubar/menubar.component.d.ts +88 -0
  345. package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +17 -0
  346. package/lib/desy-nav/components/nav/nav.component.d.ts +18 -16
  347. package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +9 -0
  348. package/lib/desy-nav/components/notification/notification.component.d.ts +38 -24
  349. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +14 -7
  350. package/lib/desy-nav/desy-nav.module.d.ts +2 -2
  351. package/lib/desy-nav/interfaces/breadcrumbs.data.d.ts +7 -7
  352. package/lib/desy-nav/interfaces/error-summary-data.d.ts +7 -7
  353. package/lib/desy-nav/interfaces/footer-data.d.ts +24 -27
  354. package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +11 -7
  355. package/lib/desy-nav/interfaces/header-navigation-data.d.ts +5 -5
  356. package/lib/desy-nav/interfaces/header-navigation-item-data.d.ts +11 -11
  357. package/lib/desy-nav/interfaces/header-offcanvas-data.d.ts +8 -9
  358. package/lib/desy-nav/interfaces/header-subnav-data.d.ts +11 -6
  359. package/lib/desy-nav/interfaces/index.d.ts +16 -20
  360. package/lib/desy-nav/interfaces/menu-horizontal-item-data.d.ts +13 -13
  361. package/lib/desy-nav/interfaces/menu-horizontal-item-event-data.d.ts +5 -5
  362. package/lib/desy-nav/interfaces/menu-vertical-items-data.d.ts +19 -17
  363. package/lib/desy-nav/interfaces/menu-vertical-sub-data.d.ts +7 -8
  364. package/lib/desy-nav/interfaces/menu-vertical-sub-items-data.d.ts +16 -13
  365. package/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.d.ts +6 -0
  366. package/lib/desy-nav/interfaces/menubar-item-sub-item.d.ts +9 -0
  367. package/lib/desy-nav/interfaces/menubar-item-sub.d.ts +6 -0
  368. package/lib/desy-nav/interfaces/menubar-item.d.ts +18 -0
  369. package/lib/desy-nav/interfaces/nav-item-event.data.d.ts +5 -5
  370. package/lib/desy-nav/interfaces/nav-item.data.d.ts +15 -14
  371. package/lib/desy-nav/interfaces/notification-items-data.d.ts +10 -7
  372. package/lib/desy-nav/interfaces/notification-options.d.ts +15 -18
  373. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +33 -38
  374. package/lib/desy-pagination/desy-pagination.module.d.ts +2 -2
  375. package/lib/desy-pagination/interfaces/index.d.ts +1 -1
  376. package/lib/desy-pagination/interfaces/pagination-item.data.d.ts +4 -4
  377. package/lib/desy-tables/components/table/components/table-caption.component.d.ts +4 -0
  378. package/lib/desy-tables/components/table/components/table-cell.component.d.ts +8 -0
  379. package/lib/desy-tables/components/table/components/table-header.component.d.ts +5 -0
  380. package/lib/desy-tables/components/table/components/table-row.component.d.ts +5 -0
  381. package/lib/desy-tables/components/table/table.component.d.ts +25 -13
  382. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +13 -0
  383. package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +5 -0
  384. package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +8 -0
  385. package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +8 -0
  386. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +115 -88
  387. package/lib/desy-tables/desy-tables.module.d.ts +2 -2
  388. package/lib/desy-tables/directives/cell.directive.d.ts +14 -0
  389. package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +10 -10
  390. package/lib/desy-tables/directives/row.directive.d.ts +16 -0
  391. package/lib/desy-tables/interfaces/cell-data.d.ts +9 -9
  392. package/lib/desy-tables/interfaces/head-cell-data.d.ts +15 -15
  393. package/lib/desy-tables/interfaces/index.d.ts +4 -3
  394. package/lib/desy-tables/interfaces/recalculate-table-params.d.ts +11 -0
  395. package/lib/desy-tables/interfaces/row-data.d.ts +6 -5
  396. package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -0
  397. package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
  398. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +13 -0
  399. package/lib/desy-views/components/accordion/accordion.component.d.ts +36 -27
  400. package/lib/desy-views/components/alert/alert.component.d.ts +29 -27
  401. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +15 -17
  402. package/lib/desy-views/components/description-list/definition/definition.component.d.ts +6 -0
  403. package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +9 -0
  404. package/lib/desy-views/components/description-list/description-list.component.d.ts +12 -9
  405. package/lib/desy-views/components/description-list/term/term.component.d.ts +6 -0
  406. package/lib/desy-views/components/details/details.component.d.ts +14 -14
  407. package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +5 -0
  408. package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -0
  409. package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -0
  410. package/lib/desy-views/components/item/item.component.d.ts +36 -17
  411. package/lib/desy-views/components/media-object/media-object.component.d.ts +14 -14
  412. package/lib/desy-views/components/spinner/spinner.component.d.ts +6 -6
  413. package/lib/desy-views/components/status/status.component.d.ts +11 -11
  414. package/lib/desy-views/components/status-item/status-item.component.d.ts +31 -20
  415. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -0
  416. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -0
  417. package/lib/desy-views/components/tabs/tabs.component.d.ts +35 -23
  418. package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -0
  419. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +35 -0
  420. package/lib/desy-views/desy-views.module.d.ts +2 -2
  421. package/lib/desy-views/interfaces/accordion-header.data.d.ts +5 -5
  422. package/lib/desy-views/interfaces/accordion-item.data.d.ts +10 -10
  423. package/lib/desy-views/interfaces/alert-options.d.ts +8 -8
  424. package/lib/desy-views/interfaces/description-item.data.d.ts +8 -0
  425. package/lib/desy-views/interfaces/index.d.ts +10 -10
  426. package/lib/desy-views/interfaces/open-alert-result.d.ts +6 -6
  427. package/lib/desy-views/interfaces/status-data.d.ts +8 -8
  428. package/lib/desy-views/interfaces/status-icon-data.d.ts +4 -4
  429. package/lib/desy-views/interfaces/status-item-title-data.d.ts +5 -5
  430. package/lib/desy-views/interfaces/tabs-items-data.d.ts +9 -9
  431. package/lib/desy-views/interfaces/tabs-panel-data.d.ts +8 -8
  432. package/lib/desy-views/interfaces/term-definition.data.d.ts +7 -0
  433. package/lib/desy-views/services/alert.service.d.ts +14 -14
  434. package/lib/shared/components/accessibility/accessibility.component.d.ts +20 -20
  435. package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +26 -0
  436. package/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.d.ts +25 -25
  437. package/lib/shared/components/content-base/content-base.component.d.ts +9 -0
  438. package/lib/shared/components/index.d.ts +5 -3
  439. package/lib/shared/components/text-or-html-required/text-or-html-required.component.d.ts +16 -16
  440. package/lib/shared/decorators/desy-content-child.decorator.d.ts +15 -0
  441. package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +5 -0
  442. package/lib/shared/directives/attribute-change.directive.d.ts +10 -0
  443. package/lib/shared/directives/click-outside.directive.d.ts +9 -9
  444. package/lib/shared/directives/content-change.directive.d.ts +19 -0
  445. package/lib/shared/directives/content-empty.directive.d.ts +26 -0
  446. package/lib/shared/directives/custom-inner-content.directive.d.ts +22 -0
  447. package/lib/shared/directives/inner-content.directive.d.ts +9 -8
  448. package/lib/shared/interfaces/accesibility-data.d.ts +16 -16
  449. package/lib/shared/pipes/external-href.pipe.d.ts +8 -0
  450. package/lib/shared/pipes/inner-html.pipe.d.ts +7 -7
  451. package/lib/shared/pipes/make-html-list.pipe.d.ts +4 -4
  452. package/lib/shared/shared.module.d.ts +2 -2
  453. package/lib/shared/utils/focus-utils.d.ts +4 -4
  454. package/lib/shared/utils/search-utils.d.ts +14 -14
  455. package/lib/shared/utils/string-utils.d.ts +10 -0
  456. package/package.json +16 -11
  457. package/public-api.d.ts +160 -110
  458. package/esm2015/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.js +0 -100
  459. package/esm2015/lib/desy-forms/components/radios/item-radio/item-radio.component.js +0 -89
  460. package/esm2015/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.js +0 -62
  461. package/esm2015/lib/desy-nav/interfaces/notification-content-data.js +0 -2
  462. package/esm2015/lib/desy-nav/interfaces/notification-description-data.js +0 -2
  463. package/esm2015/lib/desy-nav/interfaces/notification-icon-data.js +0 -2
  464. package/esm2015/lib/desy-nav/interfaces/notification-title-data.js +0 -2
  465. package/esm2015/lib/desy-views/interfaces/description.data.js +0 -2
  466. package/esm2015/lib/desy-views/interfaces/item-data.js +0 -2
  467. package/esm2015/lib/desy-views/interfaces/item-description.data.js +0 -2
  468. package/esm2015/lib/shared/utils/navigation-utils.js +0 -18
  469. package/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.d.ts +0 -39
  470. package/lib/desy-forms/components/radios/item-radio/item-radio.component.d.ts +0 -36
  471. package/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.d.ts +0 -19
  472. package/lib/desy-nav/interfaces/notification-description-data.d.ts +0 -5
  473. package/lib/desy-nav/interfaces/notification-icon-data.d.ts +0 -3
  474. package/lib/desy-views/interfaces/description.data.d.ts +0 -7
  475. package/lib/desy-views/interfaces/item-data.d.ts +0 -19
  476. package/lib/desy-views/interfaces/item-description.data.d.ts +0 -8
  477. package/lib/shared/utils/navigation-utils.d.ts +0 -3
@@ -1,47 +1,57 @@
1
- import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { FormFieldComponent } from '../form-field/form-field.component';
4
- export class SearchBarComponent extends FormFieldComponent {
5
- constructor() {
6
- super(...arguments);
7
- this.value = '';
8
- this.clickEvent = new EventEmitter();
9
- }
10
- ngOnChanges(changes) {
11
- this.checkRequiredParams();
12
- }
13
- checkRequiredParams() {
14
- if (!this.id) {
15
- throw Error('id is required');
16
- }
17
- if (!this.hasLabel()) {
18
- throw Error('label is required');
19
- }
20
- }
21
- onClick(event) {
22
- if (!this.disabled) {
23
- this.clickEvent.emit(event);
24
- }
25
- }
26
- }
27
- SearchBarComponent.decorators = [
28
- { type: Component, args: [{
29
- selector: 'desy-search-bar',
30
- template: "<form class=\"relative\" (ngSubmit)=\"onClick($event)\">\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\"\n [isPageHeading]=\"labelData.isPageHeading\"\n for=\"searchbar\"\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=\"searchbar\"></desy-label>\n <input type=\"search\" name=\"searchbar\"\n [class]=\"['c-input block w-full mt-sm pr-12 border-black rounded font-semibold leading-normal 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()}\"\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\n [attr.id]=\"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 <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\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-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</form>\n",
31
- providers: [
32
- {
33
- provide: NG_VALUE_ACCESSOR,
34
- useExisting: forwardRef(() => SearchBarComponent),
35
- multi: true
36
- }
37
- ]
38
- },] }
39
- ];
40
- SearchBarComponent.propDecorators = {
41
- describedBy: [{ type: Input }],
42
- classes: [{ type: Input }],
43
- buttonClasses: [{ type: Input }],
44
- placeholder: [{ type: Input }],
45
- clickEvent: [{ type: Output }]
46
- };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VhcmNoLWJhci9zZWFyY2gtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFheEUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUEwQjtJQVhsRTs7UUFrQkUsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBcUI1QyxDQUFDO0lBbkJDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1osTUFBTSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUMvQjtRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDcEIsTUFBTSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7OztZQXZDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IscWxLQUEwQztnQkFDMUMsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7d0JBQ2pELEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGO2FBQ0Y7OzswQkFHRSxLQUFLO3NCQUNMLEtBQUs7NEJBQ0wsS0FBSzswQkFDTCxLQUFLO3lCQUlMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1zZWFyY2gtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlYXJjaEJhckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hCYXJDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8c3RyaW5nPiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgZGVzY3JpYmVkQnk6IHN0cmluZztcbiAgQElucHV0KCkgY2xhc3Nlczogc3RyaW5nO1xuICBASW5wdXQoKSBidXR0b25DbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgdmFsdWUgPSAnJztcblxuICBAT3V0cHV0KCkgY2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja1JlcXVpcmVkUGFyYW1zKCk7XG4gIH1cblxuICBjaGVja1JlcXVpcmVkUGFyYW1zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pZCkge1xuICAgICAgdGhyb3cgRXJyb3IoJ2lkIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5oYXNMYWJlbCgpKSB7XG4gICAgICB0aHJvdyBFcnJvcignbGFiZWwgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICBvbkNsaWNrKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuY2xpY2tFdmVudC5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cblxufVxuIl19
1
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Output } 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
+ export class SearchBarComponent extends FormFieldComponent {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.clickEvent = new EventEmitter();
9
+ this.value = '';
10
+ }
11
+ ngOnChanges(changes) {
12
+ this.checkRequiredParams();
13
+ }
14
+ checkRequiredParams() {
15
+ if (!this.id) {
16
+ throw Error('id is required');
17
+ }
18
+ if (!this.hasLabel()) {
19
+ throw Error('label is required');
20
+ }
21
+ }
22
+ ngAfterViewInit() {
23
+ if (this.button && this.button.length > 1) {
24
+ throw Error('only 1 button in content is allowed');
25
+ }
26
+ }
27
+ onClick(event) {
28
+ if (!this.disabled) {
29
+ this.clickEvent.emit(event);
30
+ }
31
+ }
32
+ hasButton() {
33
+ return this.button && this.button.length > 0;
34
+ }
35
+ }
36
+ SearchBarComponent.decorators = [
37
+ { type: Component, args: [{
38
+ selector: 'desy-search-bar',
39
+ template: "<!-- searchbar -->\r\n<div class=\"relative\" [ngClass]=\"{'flex flex-wrap items-end': hasButton()}\">\r\n <ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\r\n <desy-label *ngIf=\"!labelRef && labelData\"\r\n [text]=\"labelData.text\"\r\n [html]=\"labelData.html\"\r\n classes=\"sr-only\"\r\n [isPageHeading]=\"labelData.isPageHeading\"\r\n [for]=\"id\"\r\n [role]=\"labelData.role\"\r\n [ariaLabel]=\"labelData.ariaLabel\"\r\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\r\n [ariaHidden]=\"labelData.ariaHidden\"\r\n [ariaDisabled]=\"labelData.ariaDisabled\"\r\n [ariaControls]=\"labelData.ariaControls\"\r\n [ariaCurrent]=\"labelData.ariaCurrent\"\r\n [ariaLive]=\"labelData.ariaLive\"\r\n [ariaExpanded]=\"labelData.ariaExpanded\"\r\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\r\n [tabindex]=\"labelData.tabindex\"></desy-label>\r\n <desy-label *ngIf=\"!labelRef && !labelData && labelText\" [text]=\"labelText\" classes=\"sr-only\" [for]=\"id\"></desy-label>\r\n <input type=\"search\"\r\n [class]=\"['c-input block mt-sm pr-12 border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base', classes] | makeHtmlList\"\r\n [ngClass]=\"{'border-alert-base ring-2 ring-alert-base': hasErrorsMessage(),'w-full': !hasButton()}\"\r\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"id ? id : null\"\r\n [attr.aria-describedby]=\"[describedBy, getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\r\n [attr.disabled]=\"disabled ? true : null\"\r\n [attr.placeholder]=\"placeholder ? placeholder : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngIf=\"hasButton(); else defaultButton\">\r\n <ng-content select=\"desy-button\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button type=\"submit\" [attr.disabled]=\"disabled ? 'disabled' : null\" [attr.aria-disabled]=\"disabled ? 'true' : null\"\r\n (click)=\"onClick($event)\"\r\n [class]=\"['absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus', buttonClasses] | makeHtmlList\">\r\n <span class=\"sr-only\">Buscar</span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"1.375em\" height=\"1.375em\" aria-hidden=\"true\"><path d=\"M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z\" fill=\"currentColor\"/></svg>\r\n </button>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n</div>\r\n<!-- /searchbar -->\r\n",
40
+ providers: [
41
+ {
42
+ provide: NG_VALUE_ACCESSOR,
43
+ useExisting: forwardRef(() => SearchBarComponent),
44
+ multi: true
45
+ }
46
+ ]
47
+ },] }
48
+ ];
49
+ SearchBarComponent.propDecorators = {
50
+ button: [{ type: ContentChildren, args: [ButtonComponent,] }],
51
+ describedBy: [{ type: Input }],
52
+ classes: [{ type: Input }],
53
+ buttonClasses: [{ type: Input }],
54
+ placeholder: [{ type: Input }],
55
+ clickEvent: [{ type: Output }]
56
+ };
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvc2VhcmNoLWJhci9zZWFyY2gtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBYTNGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxrQkFBMEI7SUFYbEU7O1FBbUJZLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFDLFVBQUssR0FBRyxFQUFFLENBQUM7SUFnQ2IsQ0FBQztJQTdCQyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNaLE1BQU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDL0I7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDekMsTUFBTSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztTQUNwRDtJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUMvQyxDQUFDOzs7WUFuREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLGtqTEFBMEM7Z0JBQzFDLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO3dCQUNqRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjthQUNGOzs7cUJBR0UsZUFBZSxTQUFDLGVBQWU7MEJBRS9CLEtBQUs7c0JBQ0wsS0FBSzs0QkFDTCxLQUFLOzBCQUNMLEtBQUs7eUJBQ0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPdXRwdXQsIFF1ZXJ5TGlzdCxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1idXR0b25zL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LXNlYXJjaC1iYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlYXJjaEJhckNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoQmFyQ29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PHN0cmluZz4gaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKEJ1dHRvbkNvbXBvbmVudCkgYnV0dG9uOiBRdWVyeUxpc3Q8QnV0dG9uQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KCkgZGVzY3JpYmVkQnk6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgYnV0dG9uQ2xhc3Nlczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHZhbHVlID0gJyc7XHJcblxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWRQYXJhbXMoKTtcclxuICB9XHJcblxyXG4gIGNoZWNrUmVxdWlyZWRQYXJhbXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaWQpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2lkIGlzIHJlcXVpcmVkJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuaGFzTGFiZWwoKSkge1xyXG4gICAgICB0aHJvdyBFcnJvcignbGFiZWwgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmJ1dHRvbiAmJiB0aGlzLmJ1dHRvbi5sZW5ndGggPiAxKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCdvbmx5IDEgYnV0dG9uIGluIGNvbnRlbnQgaXMgYWxsb3dlZCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFzQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uICYmIHRoaXMuYnV0dG9uLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { Component, forwardRef, Input } from '@angular/core';
2
+ import { SelectItemComponent } from '../select-item/select-item.component';
3
+ export class OptionComponent extends SelectItemComponent {
4
+ }
5
+ OptionComponent.decorators = [
6
+ { type: Component, args: [{
7
+ selector: 'desy-option',
8
+ template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>',
9
+ providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionComponent) }]
10
+ },] }
11
+ ];
12
+ OptionComponent.propDecorators = {
13
+ value: [{ type: Input }],
14
+ selected: [{ type: Input }],
15
+ hidden: [{ type: Input }]
16
+ };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvb3B0aW9uL29wdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBT3pFLE1BQU0sT0FBTyxlQUFnQixTQUFRLG1CQUFtQjs7O1lBTHZELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsUUFBUSxFQUFFLHVFQUF1RTtnQkFDakYsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBQyxDQUFDO2FBQzVGOzs7b0JBR0UsS0FBSzt1QkFDTCxLQUFLO3FCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbGVjdEl0ZW1EYXRhfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtTZWxlY3RJdGVtQ29tcG9uZW50fSBmcm9tICcuLi9zZWxlY3QtaXRlbS9zZWxlY3QtaXRlbS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LW9wdGlvbicsXHJcbiAgdGVtcGxhdGU6ICc8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT4nLFxyXG4gIHByb3ZpZGVyczogW3twcm92aWRlOiBTZWxlY3RJdGVtQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPcHRpb25Db21wb25lbnQpfV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcHRpb25Db21wb25lbnQgZXh0ZW5kcyBTZWxlY3RJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgU2VsZWN0SXRlbURhdGEge1xyXG5cclxuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGhpZGRlbjogYm9vbGVhbjtcclxuXHJcbn1cclxuIl19
@@ -0,0 +1,17 @@
1
+ import { Component, ContentChildren, forwardRef, Input } from '@angular/core';
2
+ import { SelectItemComponent } from '../select-item/select-item.component';
3
+ import { OptionComponent } from '../option/option.component';
4
+ export class OptionGroupComponent extends SelectItemComponent {
5
+ }
6
+ OptionGroupComponent.decorators = [
7
+ { type: Component, args: [{
8
+ selector: 'desy-option-group',
9
+ template: "<p>option-group works!</p>\r\n",
10
+ providers: [{ provide: SelectItemComponent, useExisting: forwardRef(() => OptionGroupComponent) }]
11
+ },] }
12
+ ];
13
+ OptionGroupComponent.propDecorators = {
14
+ label: [{ type: Input }],
15
+ items: [{ type: ContentChildren, args: [OptionComponent,] }]
16
+ };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvb3B0aW9uLWdyb3VwL29wdGlvbi1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFPM0QsTUFBTSxPQUFPLG9CQUFxQixTQUFRLG1CQUFtQjs7O1lBTDVELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QiwwQ0FBNEM7Z0JBQzVDLFNBQVMsRUFBRSxDQUFDLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsRUFBQyxDQUFDO2FBQ2pHOzs7b0JBR0UsS0FBSztvQkFFTCxlQUFlLFNBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIGZvcndhcmRSZWYsIElucHV0LCBRdWVyeUxpc3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbGVjdEl0ZW1Db21wb25lbnR9IGZyb20gJy4uL3NlbGVjdC1pdGVtL3NlbGVjdC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7T3B0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktb3B0aW9uLWdyb3VwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vb3B0aW9uLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFt7cHJvdmlkZTogU2VsZWN0SXRlbUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3B0aW9uR3JvdXBDb21wb25lbnQpfV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcHRpb25Hcm91cENvbXBvbmVudCBleHRlbmRzIFNlbGVjdEl0ZW1Db21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKE9wdGlvbkNvbXBvbmVudCkgaXRlbXM6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ+O1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { ContentBaseComponent } from '../../../../shared/components';
3
+ export class SelectItemComponent extends ContentBaseComponent {
4
+ }
5
+ SelectItemComponent.decorators = [
6
+ { type: Component, args: [{
7
+ selector: 'desy-select-item',
8
+ template: "<p>select-item works!</p>\r\n"
9
+ },] }
10
+ ];
11
+ SelectItemComponent.propDecorators = {
12
+ disabled: [{ type: Input }]
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtaXRlbS9zZWxlY3QtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFNbkUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLG9CQUFvQjs7O1lBSjVELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1Qix5Q0FBMkM7YUFDNUM7Ozt1QkFHRSxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb250ZW50QmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LXNlbGVjdC1pdGVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LWl0ZW0uY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RJdGVtQ29tcG9uZW50IGV4dGVuZHMgQ29udGVudEJhc2VDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -1,59 +1,74 @@
1
- import { Component, forwardRef, Input } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { FormFieldComponent } from '../form-field/form-field.component';
4
- export class SelectComponent extends FormFieldComponent {
5
- ngOnInit() {
6
- this.checkRequiredParams();
7
- if (!this.value) {
8
- const itemSelected = this.items.find(item => item.selected);
9
- if (itemSelected) {
10
- setTimeout(() => this.writeValue(itemSelected.value), 10);
11
- }
12
- }
13
- }
14
- ngOnChanges(changes) {
15
- this.checkRequiredParams();
16
- }
17
- checkRequiredParams() {
18
- if (!this.id) {
19
- throw Error('id is required');
20
- }
21
- if (!this.name) {
22
- throw Error('name is required');
23
- }
24
- if (!this.items || this.items == null) {
25
- throw Error('items is required');
26
- }
27
- if (this.items) {
28
- this.items.forEach((item, index) => {
29
- if (!item.text) {
30
- throw Error('text is required in items[' + index + ']');
31
- }
32
- });
33
- }
34
- }
35
- isItemSelected(item) {
36
- return this.value ? this.value === item.value : item.selected;
37
- }
38
- }
39
- SelectComponent.decorators = [
40
- { type: Component, args: [{
41
- selector: 'desy-select',
42
- template: "<div [class]=\"['c-form-group', this.formGroupClasses] | makeHtmlList\"\n [ngClass]=\"{'c-form-group--error': hasErrorsMessage()}\">\n <ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\n <desy-label *ngIf=\"!labelRef && labelData\"\n [text]=\"labelData.text\"\n [html]=\"labelData.html\"\n [classes]=\"labelData.classes\"\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\" [for]=\"id\"></desy-label>\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 <select\n [class]=\"['c-select block mt-sm transition duration-150 ease-in-out border-black rounded font-semibold leading-normal 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 [value]=\"value\" (input)=\"onInput($event.target.value)\"\n [ngClass]=\"{'c-select--error border-alert-base ring-2 ring-alert-base': hasErrorsMessage()}\"\n [attr.id]=\"id ? id : null\"\n [attr.name]=\"name ? name : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"[describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : 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 [disabled]=disabled>\n <option *ngFor=\"let item of items\" [value]=\"item.value\" [disabled]=\"item.disabled\" [selected]=\"isItemSelected(item)\"\n [attr.role]=\"item.role ? item.role : null\"\n [attr.aria-label]=\"item.ariaLabel ? item.ariaLabel : null\"\n [attr.aria-describedby]=\"item.describedBy ? item.describedBy : ariaDescribedBy\"\n [attr.aria-labelledby]=\"item.ariaLabelledBy ? item.ariaLabelledBy : null\"\n [attr.aria-hidden]=\"item.ariaHidden ? item.ariaHidden : null\"\n [attr.aria-disabled]=\"item.ariaDisabled ? item.ariaDisabled : null\"\n [attr.aria-controls]=\"item.ariaControls ? item.ariaControls : null\"\n [attr.aria-current]=\"item.ariaCurrent ? item.ariaCurrent : null\"\n [attr.aria-live]=\"item.ariaLive ? item.ariaLive : null\"\n [attr.aria-expanded]=\"item.ariaExpanded ? item.ariaExpanded : null\"\n [attr.aria-errormessage]=\"item.ariaErrorMessage ? item.ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"item.ariaHasPopup ? item.ariaHasPopup : null\"\n [attr.tabindex]=\"item.tabindex ? item.tabindex : null\">\n {{item.text}}\n </option>\n </select>\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",
43
- providers: [
44
- {
45
- provide: NG_VALUE_ACCESSOR,
46
- useExisting: forwardRef(() => SelectComponent),
47
- multi: true
48
- }
49
- ]
50
- },] }
51
- ];
52
- SelectComponent.propDecorators = {
53
- name: [{ type: Input }],
54
- items: [{ type: Input }],
55
- describedBy: [{ type: Input }],
56
- formGroupClasses: [{ type: Input }],
57
- classes: [{ type: Input }]
58
- };
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBYXhFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGtCQUF1QjtJQVMxRCxRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1RCxJQUFJLFlBQVksRUFBRTtnQkFDaEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQzNEO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWixNQUFNLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxNQUFNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDckMsTUFBTSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUNsQztRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtvQkFDZCxNQUFNLEtBQUssQ0FBQyw0QkFBNEIsR0FBRyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUM7aUJBQ3pEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsSUFBb0I7UUFDakMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDaEUsQ0FBQzs7O1lBdkRGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsbS9NQUFzQztnQkFDdEMsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDO3dCQUM5QyxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjthQUNGOzs7bUJBR0UsS0FBSztvQkFDTCxLQUFLOzBCQUNMLEtBQUs7K0JBRUwsS0FBSztzQkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2VsZWN0SXRlbURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZXN5LXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGl0ZW1zOiBTZWxlY3RJdGVtRGF0YVtdO1xuICBASW5wdXQoKSBkZXNjcmliZWRCeT86IHN0cmluZztcblxuICBASW5wdXQoKSBmb3JtR3JvdXBDbGFzc2VzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWRQYXJhbXMoKTtcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcbiAgICAgIGNvbnN0IGl0ZW1TZWxlY3RlZCA9IHRoaXMuaXRlbXMuZmluZChpdGVtID0+IGl0ZW0uc2VsZWN0ZWQpO1xuICAgICAgaWYgKGl0ZW1TZWxlY3RlZCkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMud3JpdGVWYWx1ZShpdGVtU2VsZWN0ZWQudmFsdWUpLCAxMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2tSZXF1aXJlZFBhcmFtcygpO1xuICB9XG5cbiAgY2hlY2tSZXF1aXJlZFBhcmFtcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaWQpIHtcbiAgICAgIHRocm93IEVycm9yKCdpZCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMubmFtZSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ25hbWUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLml0ZW1zIHx8IHRoaXMuaXRlbXMgPT0gbnVsbCkge1xuICAgICAgdGhyb3cgRXJyb3IoJ2l0ZW1zIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLml0ZW1zKSB7XG4gICAgICB0aGlzLml0ZW1zLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgIGlmICghaXRlbS50ZXh0KSB7XG4gICAgICAgICAgdGhyb3cgRXJyb3IoJ3RleHQgaXMgcmVxdWlyZWQgaW4gaXRlbXNbJyArIGluZGV4ICsgJ10nKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgaXNJdGVtU2VsZWN0ZWQoaXRlbTogU2VsZWN0SXRlbURhdGEpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZSA/IHRoaXMudmFsdWUgPT09IGl0ZW0udmFsdWUgOiBpdGVtLnNlbGVjdGVkO1xuICB9XG59XG4iXX0=
1
+ import { Component, forwardRef, Input, ContentChildren } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { FormFieldComponent } from '../form-field/form-field.component';
4
+ import { OptionGroupComponent } from './option-group/option-group.component';
5
+ import { SelectItemComponent } from './select-item/select-item.component';
6
+ export class SelectComponent extends FormFieldComponent {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.contentInit = false;
10
+ }
11
+ ngOnInit() {
12
+ this.checkRequiredParams();
13
+ }
14
+ ngOnChanges(changes) {
15
+ this.checkRequiredParams();
16
+ }
17
+ ngAfterContentInit() {
18
+ this.contentInit = true;
19
+ if (!this.value) {
20
+ const items = this.getItems();
21
+ const itemSelected = items === null || items === void 0 ? void 0 : items.find(item => item.selected);
22
+ if (itemSelected) {
23
+ setTimeout(() => this.writeValue(itemSelected.value));
24
+ }
25
+ }
26
+ }
27
+ writeValue(value) {
28
+ this.value = value;
29
+ this.onChange(value);
30
+ }
31
+ getItems() {
32
+ const items = (this.itemComponents.length > 0) ? this.itemComponents.toArray() : this.items;
33
+ if (this.contentInit && (!items || items.length === 0)) {
34
+ throw new Error(`items are required`);
35
+ }
36
+ return items;
37
+ }
38
+ checkRequiredParams() {
39
+ if (!this.id) {
40
+ throw Error('id is required');
41
+ }
42
+ if (!this.name) {
43
+ throw Error('name is required');
44
+ }
45
+ }
46
+ isItemSelected(item) {
47
+ return this.value ? this.value === item.value : item.selected;
48
+ }
49
+ isOptionGroup(item) {
50
+ return item instanceof OptionGroupComponent;
51
+ }
52
+ }
53
+ SelectComponent.decorators = [
54
+ { type: Component, args: [{
55
+ selector: 'desy-select',
56
+ template: "<div [class]=\"['c-form-group', this.formGroupClasses] | makeHtmlList\"\r\n [ngClass]=\"{'c-form-group--error': hasErrorsMessage()}\">\r\n <ng-container *ngIf=\"labelComponent\">\r\n <ng-content select=\"desy-label\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"labelRef\"></ng-container>\r\n <desy-label *ngIf=\"!labelRef && labelData && !labelComponent\"\r\n [text]=\"labelData.text\"\r\n [html]=\"labelData.html\"\r\n [classes]=\"labelData.classes\"\r\n [isPageHeading]=\"labelData.isPageHeading\"\r\n [for]=\"id\"\r\n [role]=\"labelData.role\"\r\n [ariaLabel]=\"labelData.ariaLabel\"\r\n [ariaDescribedBy]=\"labelData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"labelData.ariaLabelledBy\"\r\n [ariaHidden]=\"labelData.ariaHidden\"\r\n [ariaDisabled]=\"labelData.ariaDisabled\"\r\n [ariaControls]=\"labelData.ariaControls\"\r\n [ariaCurrent]=\"labelData.ariaCurrent\"\r\n [ariaLive]=\"labelData.ariaLive\"\r\n [ariaExpanded]=\"labelData.ariaExpanded\"\r\n [ariaErrorMessage]=\"labelData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"labelData.ariaHasPopup\"\r\n [tabindex]=\"labelData.tabindex\"></desy-label>\r\n <desy-label *ngIf=\"!labelRef && !labelData && labelText && !labelComponent\" [text]=\"labelText\" [for]=\"id\"></desy-label>\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <ng-container *ngIf=\"hintComponent\">\r\n <ng-content select=\"desy-hint\"></ng-content>\r\n</ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData && !hintComponent\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText && !hintComponent\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n\r\n <ng-container *ngIf=\"errorMessageComponent\">\r\n <ng-content select=\"desy-error-message\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData && !errorMessageComponent\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && !errorMessageComponent && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n <select\r\n [class]=\"['c-select block mt-sm transition duration-150 ease-in-out border-black rounded font-semibold focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base',\r\n classes,\r\n hasErrorsMessage() ? 'c-select--error border-alert-base ring-2 ring-alert-base' : null] | makeHtmlList\"\r\n [value]=\"value\" (input)=\"onInput($event.target.value)\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.name]=\"name ? name : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"[describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n [attr.aria-errormessage]=\"hasErrorsMessage() ? getErrorId() : null\"\r\n [attr.aria-invalid]=\"hasErrorsMessage() ? true : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\"\r\n [disabled]=disabled>\r\n\r\n <ng-container *ngFor=\"let item of getItems()\">\r\n <optgroup *ngIf=\"isOptionGroup(item)\" [label]=\"item.label\" [attr.disabled]=\"item.disabled ? true : null\"\r\n [attr.role]=\"item?.role\"\r\n [attr.aria-label]=\"item?.ariaLabel\"\r\n [attr.aria-describedby]=\"item?.describedBy\"\r\n [attr.aria-labelledby]=\"item?.ariaLabelledBy\"\r\n [attr.aria-hidden]=\"item?.ariaHidden\"\r\n [attr.aria-disabled]=\"item?.ariaDisabled\"\r\n [attr.aria-controls]=\"item?.ariaControls\"\r\n [attr.aria-current]=\"item?.ariaCurrent\"\r\n [attr.aria-live]=\"item?.ariaLive\"\r\n [attr.aria-expanded]=\"item?.ariaExpanded\"\r\n [attr.aria-errormessage]=\"item?.ariaErrorMessage\"\r\n [attr.aria-haspopup]=\"item?.ariaHasPopup\"\r\n [attr.tabindex]=\"item?.tabindex\">>\r\n <option *ngFor=\"let subItem of item.items\"\r\n [value]=\"subItem.value\"\r\n [disabled]=\"subItem.disabled\"\r\n [selected]=\"isItemSelected(subItem)\"\r\n [attr.hidden]=\"subItem.hidden\"\r\n [attr.role]=\"subItem?.role\"\r\n [attr.aria-label]=\"subItem?.ariaLabel\"\r\n [attr.aria-describedby]=\"subItem?.describedBy\"\r\n [attr.aria-labelledby]=\"subItem?.ariaLabelledBy\"\r\n [attr.aria-hidden]=\"subItem?.ariaHidden\"\r\n [attr.aria-disabled]=\"subItem?.ariaDisabled\"\r\n [attr.aria-controls]=\"subItem?.ariaControls\"\r\n [attr.aria-current]=\"subItem?.ariaCurrent\"\r\n [attr.aria-live]=\"subItem?.ariaLive\"\r\n [attr.aria-expanded]=\"subItem?.ariaExpanded\"\r\n [attr.aria-errormessage]=\"subItem?.ariaErrorMessage\"\r\n [attr.aria-haspopup]=\"subItem?.ariaHasPopup\"\r\n [attr.tabindex]=\"subItem?.tabindex\">\r\n <ng-container *desyCustomInnerContent=\"{ component: subItem, text: subItem.text }\"></ng-container>\r\n </option>\r\n </optgroup>\r\n <option *ngIf=\"!isOptionGroup(item)\" [value]=\"item.value\" [disabled]=\"item.disabled ? true : null\" [selected]=\"isItemSelected(item)\"\r\n [attr.hidden]=\"item.hidden\"\r\n [attr.role]=\"item.role ? item.role : null\"\r\n [attr.aria-label]=\"item.ariaLabel ? item.ariaLabel : null\"\r\n [attr.aria-describedby]=\"item.describedBy ? item.describedBy : ariaDescribedBy\"\r\n [attr.aria-labelledby]=\"item.ariaLabelledBy ? item.ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"item.ariaHidden ? item.ariaHidden : null\"\r\n [attr.aria-disabled]=\"item.ariaDisabled ? item.ariaDisabled : null\"\r\n [attr.aria-controls]=\"item.ariaControls ? item.ariaControls : null\"\r\n [attr.aria-current]=\"item.ariaCurrent ? item.ariaCurrent : null\"\r\n [attr.aria-live]=\"item.ariaLive ? item.ariaLive : null\"\r\n [attr.aria-expanded]=\"item.ariaExpanded ? item.ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"item.ariaErrorMessage ? item.ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"item.ariaHasPopup ? item.ariaHasPopup : null\"\r\n [attr.tabindex]=\"item.tabindex ? item.tabindex : null\">\r\n <ng-container *desyCustomInnerContent=\"{ component: item, text: item.text }\"></ng-container>\r\n </option>\r\n </ng-container>\r\n </select>\r\n</div>\r\n",
57
+ providers: [
58
+ {
59
+ provide: NG_VALUE_ACCESSOR,
60
+ useExisting: forwardRef(() => SelectComponent),
61
+ multi: true
62
+ }
63
+ ]
64
+ },] }
65
+ ];
66
+ SelectComponent.propDecorators = {
67
+ name: [{ type: Input }],
68
+ items: [{ type: Input }],
69
+ describedBy: [{ type: Input }],
70
+ formGroupClasses: [{ type: Input }],
71
+ classes: [{ type: Input }],
72
+ itemComponents: [{ type: ContentChildren, args: [SelectItemComponent,] }]
73
+ };
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktZm9ybXMvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLGVBQWUsRUFBOEIsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFheEUsTUFBTSxPQUFPLGVBQWdCLFNBQVEsa0JBQXVCO0lBWDVEOztRQXFCRSxnQkFBVyxHQUFHLEtBQUssQ0FBQztJQW1EdEIsQ0FBQztJQWpEQyxRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzlCLE1BQU0sWUFBWSxHQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEQsSUFBSSxZQUFZLEVBQUU7Z0JBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ3ZEO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDN0YsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN0RCxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDdkM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWixNQUFNLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxNQUFNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFvQjtRQUNqQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNoRSxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQW9CO1FBQ2hDLE9BQU8sSUFBSSxZQUFZLG9CQUFvQixDQUFDO0lBQzlDLENBQUM7OztZQXRFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLG1qVEFBc0M7Z0JBQ3RDLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQzt3QkFDOUMsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O21CQUdFLEtBQUs7b0JBQ0wsS0FBSzswQkFDTCxLQUFLOytCQUVMLEtBQUs7c0JBQ0wsS0FBSzs2QkFFTCxlQUFlLFNBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgQ29udGVudENoaWxkcmVuLCBRdWVyeUxpc3QsIEFmdGVyQ29udGVudEluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IFNlbGVjdEl0ZW1EYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge09wdGlvbkdyb3VwQ29tcG9uZW50fSBmcm9tICcuL29wdGlvbi1ncm91cC9vcHRpb24tZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHtTZWxlY3RJdGVtQ29tcG9uZW50fSBmcm9tICcuL3NlbGVjdC1pdGVtL3NlbGVjdC1pdGVtLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktc2VsZWN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PGFueT4gaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcclxuICBASW5wdXQoKSBpdGVtczogU2VsZWN0SXRlbURhdGFbXTtcclxuICBASW5wdXQoKSBkZXNjcmliZWRCeT86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgZm9ybUdyb3VwQ2xhc3Nlczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuXHJcbiAgQENvbnRlbnRDaGlsZHJlbihTZWxlY3RJdGVtQ29tcG9uZW50KSBpdGVtQ29tcG9uZW50czogUXVlcnlMaXN0PFNlbGVjdEl0ZW1Db21wb25lbnQ+O1xyXG4gIGNvbnRlbnRJbml0ID0gZmFsc2U7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGVja1JlcXVpcmVkUGFyYW1zKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoZWNrUmVxdWlyZWRQYXJhbXMoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29udGVudEluaXQgPSB0cnVlO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xyXG4gICAgICBjb25zdCBpdGVtU2VsZWN0ZWQgPSBpdGVtcz8uZmluZChpdGVtID0+IGl0ZW0uc2VsZWN0ZWQpO1xyXG4gICAgICBpZiAoaXRlbVNlbGVjdGVkKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLndyaXRlVmFsdWUoaXRlbVNlbGVjdGVkLnZhbHVlKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtcygpOiBTZWxlY3RJdGVtRGF0YVtdIHtcclxuICAgIGNvbnN0IGl0ZW1zID0gICh0aGlzLml0ZW1Db21wb25lbnRzLmxlbmd0aCA+IDApID8gdGhpcy5pdGVtQ29tcG9uZW50cy50b0FycmF5KCkgOiB0aGlzLml0ZW1zO1xyXG4gICAgaWYgKHRoaXMuY29udGVudEluaXQgJiYgKCFpdGVtcyB8fCBpdGVtcy5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgaXRlbXMgYXJlIHJlcXVpcmVkYCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXRlbXM7XHJcbiAgfVxyXG5cclxuICBjaGVja1JlcXVpcmVkUGFyYW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlkKSB7XHJcbiAgICAgIHRocm93IEVycm9yKCdpZCBpcyByZXF1aXJlZCcpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLm5hbWUpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ25hbWUgaXMgcmVxdWlyZWQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlzSXRlbVNlbGVjdGVkKGl0ZW06IFNlbGVjdEl0ZW1EYXRhKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy52YWx1ZSA/IHRoaXMudmFsdWUgPT09IGl0ZW0udmFsdWUgOiBpdGVtLnNlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgaXNPcHRpb25Hcm91cChpdGVtOiBTZWxlY3RJdGVtRGF0YSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGl0ZW0gaW5zdGFuY2VvZiBPcHRpb25Hcm91cENvbXBvbmVudDtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,12 +1,12 @@
1
- import { Component } from '@angular/core';
2
- import { ControlContainer, NgForm } from '@angular/forms';
3
- export class TemplateDrivenWrapperComponent {
4
- }
5
- TemplateDrivenWrapperComponent.decorators = [
6
- { type: Component, args: [{
7
- selector: 'desy-template-driven-wrapper',
8
- template: "<ng-content></ng-content>\n",
9
- providers: [{ provide: ControlContainer, useExisting: NgForm, }]
10
- },] }
11
- ];
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtZHJpdmVuLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvIiwic291cmNlcyI6WyJsaWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RlbXBsYXRlLWRyaXZlbi13cmFwcGVyL3RlbXBsYXRlLWRyaXZlbi13cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU8xRCxNQUFNLE9BQU8sOEJBQThCOzs7WUFMMUMsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLHVDQUF1RDtnQkFDdkQsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sR0FBSSxDQUFFO2FBQ3BFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktdGVtcGxhdGUtZHJpdmVuLXdyYXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUtZHJpdmVuLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFsgeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogTmdGb3JtLCAgfSBdXG59KVxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlRHJpdmVuV3JhcHBlckNvbXBvbmVudCB7XG59XG4iXX0=
1
+ import { Component } from '@angular/core';
2
+ import { ControlContainer, NgForm } from '@angular/forms';
3
+ export class TemplateDrivenWrapperComponent {
4
+ }
5
+ TemplateDrivenWrapperComponent.decorators = [
6
+ { type: Component, args: [{
7
+ selector: 'desy-template-driven-wrapper',
8
+ template: "<ng-content></ng-content>\r\n",
9
+ providers: [{ provide: ControlContainer, useExisting: NgForm, }]
10
+ },] }
11
+ ];
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtZHJpdmVuLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1mb3Jtcy9jb21wb25lbnRzL3RlbXBsYXRlLWRyaXZlbi13cmFwcGVyL3RlbXBsYXRlLWRyaXZlbi13cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU8xRCxNQUFNLE9BQU8sOEJBQThCOzs7WUFMMUMsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLHlDQUF1RDtnQkFDdkQsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sR0FBSSxDQUFFO2FBQ3BFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS10ZW1wbGF0ZS1kcml2ZW4td3JhcHBlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RlbXBsYXRlLWRyaXZlbi13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFsgeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogTmdGb3JtLCAgfSBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZURyaXZlbldyYXBwZXJDb21wb25lbnQge1xyXG59XHJcbiJdfQ==