desy-angular 6.0.0 → 6.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/README.md +21 -21
  2. package/bundles/desy-angular.umd.js +10693 -10672
  3. package/bundles/desy-angular.umd.js.map +1 -1
  4. package/bundles/desy-angular.umd.min.js +1 -1
  5. package/bundles/desy-angular.umd.min.js.map +1 -1
  6. package/desy-angular.d.ts +51 -50
  7. package/desy-angular.metadata.json +1 -1
  8. package/esm2015/desy-angular.js +52 -51
  9. package/esm2015/lib/desy-angular.module.js +38 -38
  10. package/esm2015/lib/desy-buttons/components/button/button.component.js +92 -92
  11. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +50 -50
  12. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +111 -111
  13. package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +26 -26
  14. package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +14 -14
  15. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +265 -265
  16. package/esm2015/lib/desy-buttons/components/pill/pill.component.js +64 -64
  17. package/esm2015/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.js +15 -15
  18. package/esm2015/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.js +15 -15
  19. package/esm2015/lib/desy-buttons/components/toggle/toggle.component.js +44 -44
  20. package/esm2015/lib/desy-buttons/desy-buttons.module.js +53 -53
  21. package/esm2015/lib/desy-buttons/interfaces/listbox-item-data.js +2 -2
  22. package/esm2015/lib/desy-buttons/interfaces/listbox-label-data.js +2 -2
  23. package/esm2015/lib/desy-commons/components/content/content.component.js +14 -14
  24. package/esm2015/lib/desy-commons/components/description/description.component.js +15 -15
  25. package/esm2015/lib/desy-commons/components/divider/divider.component.js +15 -15
  26. package/esm2015/lib/desy-commons/components/icon/icon.component.js +15 -15
  27. package/esm2015/lib/desy-commons/components/title/title.component.js +14 -14
  28. package/esm2015/lib/desy-commons/desy-commons.module.js +36 -36
  29. package/esm2015/lib/desy-commons/interfaces/content-data.js +2 -2
  30. package/esm2015/lib/desy-commons/interfaces/description-data.js +2 -2
  31. package/esm2015/lib/desy-commons/interfaces/divider-data.js +2 -2
  32. package/esm2015/lib/desy-commons/interfaces/icon-data.js +2 -2
  33. package/esm2015/lib/desy-commons/interfaces/index.js +6 -6
  34. package/esm2015/lib/desy-commons/interfaces/title-data.js +2 -2
  35. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +109 -109
  36. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +188 -188
  37. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +226 -226
  38. package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +38 -38
  39. package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -19
  40. package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -13
  41. package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +38 -38
  42. package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +36 -36
  43. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +222 -222
  44. package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +28 -28
  45. package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +44 -44
  46. package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +16 -16
  47. package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +51 -51
  48. package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +103 -103
  49. package/esm2015/lib/desy-forms/components/hint/hint.component.js +27 -27
  50. package/esm2015/lib/desy-forms/components/input/input.component.js +67 -67
  51. package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -20
  52. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +39 -39
  53. package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -13
  54. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +35 -35
  55. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +179 -179
  56. package/esm2015/lib/desy-forms/components/label/label.component.js +30 -30
  57. package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +144 -144
  58. package/esm2015/lib/desy-forms/components/radios/radios.component.js +233 -233
  59. package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +45 -45
  60. package/esm2015/lib/desy-forms/components/select/option/option.component.js +17 -17
  61. package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -17
  62. package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -14
  63. package/esm2015/lib/desy-forms/components/select/select.component.js +64 -64
  64. package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +12 -12
  65. package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +60 -60
  66. package/esm2015/lib/desy-forms/components/tree/interfaces/itree-item.js +3 -3
  67. package/esm2015/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.js +2 -2
  68. package/esm2015/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.js +151 -151
  69. package/esm2015/lib/desy-forms/components/tree/tree-item/tree-item.component.js +370 -370
  70. package/esm2015/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.js +25 -25
  71. package/esm2015/lib/desy-forms/components/tree/tree-sub/tree-sub.component.js +14 -14
  72. package/esm2015/lib/desy-forms/components/tree/tree.component.js +408 -408
  73. package/esm2015/lib/desy-forms/desy-forms.module.js +130 -130
  74. package/esm2015/lib/desy-forms/directives/condition.directive.js +32 -32
  75. package/esm2015/lib/desy-forms/interfaces/accesibility-data.js +2 -2
  76. package/esm2015/lib/desy-forms/interfaces/error-message-data.js +2 -2
  77. package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +2 -2
  78. package/esm2015/lib/desy-forms/interfaces/hint-data.js +2 -2
  79. package/esm2015/lib/desy-forms/interfaces/index.js +13 -13
  80. package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +2 -2
  81. package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +2 -2
  82. package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -2
  83. package/esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js +2 -2
  84. package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +2 -2
  85. package/esm2015/lib/desy-forms/interfaces/item-radio-data.js +2 -2
  86. package/esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js +2 -2
  87. package/esm2015/lib/desy-forms/interfaces/label-data.js +2 -2
  88. package/esm2015/lib/desy-forms/interfaces/legend-data.js +2 -2
  89. package/esm2015/lib/desy-forms/interfaces/select-item-data.js +2 -2
  90. package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +121 -121
  91. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.js +20 -20
  92. package/esm2015/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.js +19 -19
  93. package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +19 -19
  94. package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +19 -19
  95. package/esm2015/lib/desy-modals/components/modal/modal.component.js +145 -145
  96. package/esm2015/lib/desy-modals/desy-modals.module.js +41 -41
  97. package/esm2015/lib/desy-modals/interfaces/dialog-options.js +2 -2
  98. package/esm2015/lib/desy-modals/interfaces/index.js +8 -8
  99. package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +2 -2
  100. package/esm2015/lib/desy-modals/interfaces/modal-data.js +2 -2
  101. package/esm2015/lib/desy-modals/interfaces/modal-icon-data.js +2 -2
  102. package/esm2015/lib/desy-modals/interfaces/modal-options.js +2 -2
  103. package/esm2015/lib/desy-modals/interfaces/open-dialog-result.js +2 -2
  104. package/esm2015/lib/desy-modals/services/dialog.service.js +117 -117
  105. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +15 -15
  106. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +42 -42
  107. package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +15 -15
  108. package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +46 -46
  109. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -16
  110. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -23
  111. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -16
  112. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -16
  113. package/esm2015/lib/desy-nav/components/footer/footer.component.js +52 -52
  114. package/esm2015/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.js +11 -0
  115. package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +36 -36
  116. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -19
  117. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +29 -29
  118. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +22 -22
  119. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -11
  120. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +88 -88
  121. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +34 -34
  122. package/esm2015/lib/desy-nav/components/header/header.component.js +66 -61
  123. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +28 -28
  124. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +68 -68
  125. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.js +35 -35
  126. package/esm2015/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.js +31 -31
  127. package/esm2015/lib/desy-nav/components/menu-navigation/menu-navigation.component.js +568 -568
  128. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -32
  129. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -16
  130. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -24
  131. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +89 -89
  132. package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +36 -36
  133. package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +14 -14
  134. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +29 -29
  135. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +23 -23
  136. package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +37 -37
  137. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +672 -672
  138. package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +30 -30
  139. package/esm2015/lib/desy-nav/components/nav/nav.component.js +105 -105
  140. package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +18 -18
  141. package/esm2015/lib/desy-nav/components/notification/notification.component.js +102 -102
  142. package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +33 -33
  143. package/esm2015/lib/desy-nav/desy-nav.module.js +136 -133
  144. package/esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js +2 -2
  145. package/esm2015/lib/desy-nav/interfaces/error-summary-data.js +2 -2
  146. package/esm2015/lib/desy-nav/interfaces/footer-data.js +2 -2
  147. package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +2 -2
  148. package/esm2015/lib/desy-nav/interfaces/header-navigation-data.js +2 -2
  149. package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +2 -2
  150. package/esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js +2 -2
  151. package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +2 -2
  152. package/esm2015/lib/desy-nav/interfaces/index.js +20 -20
  153. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js +2 -2
  154. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js +2 -2
  155. package/esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.js +2 -2
  156. package/esm2015/lib/desy-nav/interfaces/menu-navigation-item-sub-item.js +2 -2
  157. package/esm2015/lib/desy-nav/interfaces/menu-navigation.js +2 -2
  158. package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +2 -2
  159. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js +2 -2
  160. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js +2 -2
  161. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js +2 -2
  162. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js +2 -2
  163. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub.js +2 -2
  164. package/esm2015/lib/desy-nav/interfaces/menubar-item.js +2 -2
  165. package/esm2015/lib/desy-nav/interfaces/nav-item-event.data.js +2 -2
  166. package/esm2015/lib/desy-nav/interfaces/nav-item.data.js +2 -2
  167. package/esm2015/lib/desy-nav/interfaces/notification-items-data.js +2 -2
  168. package/esm2015/lib/desy-nav/interfaces/notification-options.js +2 -2
  169. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +138 -138
  170. package/esm2015/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.js +15 -15
  171. package/esm2015/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.js +14 -14
  172. package/esm2015/lib/desy-pagination/desy-pagination.module.js +31 -31
  173. package/esm2015/lib/desy-pagination/interfaces/index.js +1 -1
  174. package/esm2015/lib/desy-pagination/interfaces/pagination-item.data.js +2 -2
  175. package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +14 -14
  176. package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +17 -17
  177. package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +14 -14
  178. package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +14 -14
  179. package/esm2015/lib/desy-tables/components/table/table.component.js +55 -55
  180. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +33 -33
  181. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +14 -14
  182. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +17 -17
  183. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +20 -20
  184. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.js +22 -22
  185. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +316 -316
  186. package/esm2015/lib/desy-tables/desy-tables.module.js +64 -64
  187. package/esm2015/lib/desy-tables/directives/cell.directive.js +26 -26
  188. package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +78 -78
  189. package/esm2015/lib/desy-tables/directives/row.directive.js +24 -24
  190. package/esm2015/lib/desy-tables/interfaces/cell-data.js +2 -2
  191. package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +7 -7
  192. package/esm2015/lib/desy-tables/interfaces/index.js +5 -5
  193. package/esm2015/lib/desy-tables/interfaces/recalculate-table-params.js +2 -2
  194. package/esm2015/lib/desy-tables/interfaces/row-data.js +2 -2
  195. package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -2
  196. package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +14 -14
  197. package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +43 -43
  198. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +153 -153
  199. package/esm2015/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.js +31 -31
  200. package/esm2015/lib/desy-views/components/accordion-history/accordion-history.component.js +15 -15
  201. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.js +14 -14
  202. package/esm2015/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.js +14 -14
  203. package/esm2015/lib/desy-views/components/alert/alert.component.js +75 -75
  204. package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +55 -55
  205. package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +15 -15
  206. package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +26 -26
  207. package/esm2015/lib/desy-views/components/description-list/description-list.component.js +22 -22
  208. package/esm2015/lib/desy-views/components/description-list/term/term.component.js +15 -15
  209. package/esm2015/lib/desy-views/components/details/details.component.js +20 -20
  210. package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +14 -14
  211. package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +11 -11
  212. package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +11 -11
  213. package/esm2015/lib/desy-views/components/item/item.component.js +87 -87
  214. package/esm2015/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.js +11 -11
  215. package/esm2015/lib/desy-views/components/media-object/media-object.component.js +67 -67
  216. package/esm2015/lib/desy-views/components/spinner/spinner.component.js +45 -45
  217. package/esm2015/lib/desy-views/components/status/status.component.js +58 -58
  218. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +86 -86
  219. package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -15
  220. package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -28
  221. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +150 -150
  222. package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +11 -11
  223. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +155 -155
  224. package/esm2015/lib/desy-views/desy-views.module.js +108 -108
  225. package/esm2015/lib/desy-views/interfaces/accordion-header.data.js +2 -2
  226. package/esm2015/lib/desy-views/interfaces/accordion-item.data.js +2 -2
  227. package/esm2015/lib/desy-views/interfaces/alert-options.js +2 -2
  228. package/esm2015/lib/desy-views/interfaces/description-item.data.js +2 -2
  229. package/esm2015/lib/desy-views/interfaces/index.js +11 -11
  230. package/esm2015/lib/desy-views/interfaces/open-alert-result.js +2 -2
  231. package/esm2015/lib/desy-views/interfaces/status-data.js +2 -2
  232. package/esm2015/lib/desy-views/interfaces/status-icon-data.js +2 -2
  233. package/esm2015/lib/desy-views/interfaces/status-item-title-data.js +2 -2
  234. package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +2 -2
  235. package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +2 -2
  236. package/esm2015/lib/desy-views/interfaces/term-definition.data.js +2 -2
  237. package/esm2015/lib/desy-views/services/alert.service.js +89 -89
  238. package/esm2015/lib/shared/components/accessibility/accessibility.component.js +29 -29
  239. package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +27 -27
  240. package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +26 -26
  241. package/esm2015/lib/shared/components/content-base/content-base.component.js +20 -20
  242. package/esm2015/lib/shared/components/index.js +6 -6
  243. package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +14 -14
  244. package/esm2015/lib/shared/decorators/desy-content-child.decorator.js +41 -41
  245. package/esm2015/lib/shared/decorators/desy-on-input-change.decorator.js +19 -19
  246. package/esm2015/lib/shared/directives/attribute-change.directive.js +43 -43
  247. package/esm2015/lib/shared/directives/click-outside.directive.js +35 -35
  248. package/esm2015/lib/shared/directives/content-change.directive.js +43 -43
  249. package/esm2015/lib/shared/directives/custom-inner-content.directive.js +62 -62
  250. package/esm2015/lib/shared/directives/inner-content.directive.js +34 -34
  251. package/esm2015/lib/shared/interfaces/accesibility-data.js +2 -2
  252. package/esm2015/lib/shared/pipes/external-href.pipe.js +28 -28
  253. package/esm2015/lib/shared/pipes/inner-html.pipe.js +19 -19
  254. package/esm2015/lib/shared/pipes/make-html-list.pipe.js +16 -16
  255. package/esm2015/lib/shared/shared.module.js +62 -62
  256. package/esm2015/lib/shared/utils/focus-utils.js +51 -51
  257. package/esm2015/lib/shared/utils/search-utils.js +78 -78
  258. package/esm2015/lib/shared/utils/string-utils.js +18 -18
  259. package/esm2015/public-api.js +197 -197
  260. package/fesm2015/desy-angular.js +9589 -9574
  261. package/fesm2015/desy-angular.js.map +1 -1
  262. package/lib/desy-angular.module.d.ts +2 -2
  263. package/lib/desy-buttons/components/button/button.component.d.ts +31 -31
  264. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +15 -15
  265. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +22 -22
  266. package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +12 -12
  267. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +4 -4
  268. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +53 -53
  269. package/lib/desy-buttons/components/pill/pill.component.d.ts +22 -22
  270. package/lib/desy-buttons/components/toggle/toggle-off-state/toggle-off-state.component.d.ts +5 -5
  271. package/lib/desy-buttons/components/toggle/toggle-on-state/toggle-on-state.component.d.ts +5 -5
  272. package/lib/desy-buttons/components/toggle/toggle.component.d.ts +17 -17
  273. package/lib/desy-buttons/desy-buttons.module.d.ts +2 -2
  274. package/lib/desy-buttons/interfaces/listbox-item-data.d.ts +9 -9
  275. package/lib/desy-buttons/interfaces/listbox-label-data.d.ts +5 -5
  276. package/lib/desy-commons/components/content/content.component.d.ts +5 -5
  277. package/lib/desy-commons/components/description/description.component.d.ts +6 -6
  278. package/lib/desy-commons/components/divider/divider.component.d.ts +6 -6
  279. package/lib/desy-commons/components/icon/icon.component.d.ts +6 -6
  280. package/lib/desy-commons/components/title/title.component.d.ts +5 -5
  281. package/lib/desy-commons/desy-commons.module.d.ts +2 -2
  282. package/lib/desy-commons/interfaces/content-data.d.ts +5 -5
  283. package/lib/desy-commons/interfaces/description-data.d.ts +6 -6
  284. package/lib/desy-commons/interfaces/divider-data.d.ts +4 -4
  285. package/lib/desy-commons/interfaces/icon-data.d.ts +5 -5
  286. package/lib/desy-commons/interfaces/index.d.ts +5 -5
  287. package/lib/desy-commons/interfaces/title-data.d.ts +6 -6
  288. package/lib/desy-forms/components/character-count/character-count.component.d.ts +27 -27
  289. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +47 -47
  290. package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +75 -75
  291. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +21 -21
  292. package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -7
  293. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -4
  294. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +21 -21
  295. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +18 -18
  296. package/lib/desy-forms/components/date-input/date-input.component.d.ts +55 -55
  297. package/lib/desy-forms/components/error-message/error-message.component.d.ts +12 -12
  298. package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +28 -28
  299. package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +6 -6
  300. package/lib/desy-forms/components/file-upload/file-upload.component.d.ts +20 -20
  301. package/lib/desy-forms/components/form-field/form-field.component.d.ts +40 -40
  302. package/lib/desy-forms/components/hint/hint.component.d.ts +11 -11
  303. package/lib/desy-forms/components/input/input.component.d.ts +23 -23
  304. package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -8
  305. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -20
  306. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -4
  307. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -16
  308. package/lib/desy-forms/components/input-group/input-group.component.d.ts +56 -56
  309. package/lib/desy-forms/components/label/label.component.d.ts +14 -14
  310. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +43 -43
  311. package/lib/desy-forms/components/radios/radios.component.d.ts +75 -75
  312. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +16 -16
  313. package/lib/desy-forms/components/select/option/option.component.d.ts +7 -7
  314. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -7
  315. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -4
  316. package/lib/desy-forms/components/select/select.component.d.ts +21 -21
  317. package/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.d.ts +2 -2
  318. package/lib/desy-forms/components/textarea/textarea.component.d.ts +24 -24
  319. package/lib/desy-forms/components/tree/interfaces/itree-item.d.ts +5 -5
  320. package/lib/desy-forms/components/tree/interfaces/quit-tree-item-focus-options.d.ts +5 -5
  321. package/lib/desy-forms/components/tree/tree-checkbox/tree-checkbox.component.d.ts +43 -43
  322. package/lib/desy-forms/components/tree/tree-item/tree-item.component.d.ts +87 -87
  323. package/lib/desy-forms/components/tree/tree-items-generator/tree-items-generator.component.d.ts +10 -10
  324. package/lib/desy-forms/components/tree/tree-sub/tree-sub.component.d.ts +6 -6
  325. package/lib/desy-forms/components/tree/tree.component.d.ts +112 -112
  326. package/lib/desy-forms/desy-forms.module.d.ts +2 -2
  327. package/lib/desy-forms/directives/condition.directive.d.ts +15 -15
  328. package/lib/desy-forms/interfaces/accesibility-data.d.ts +15 -15
  329. package/lib/desy-forms/interfaces/error-message-data.d.ts +8 -8
  330. package/lib/desy-forms/interfaces/fieldset-data.d.ts +10 -10
  331. package/lib/desy-forms/interfaces/hint-data.d.ts +7 -7
  332. package/lib/desy-forms/interfaces/index.d.ts +12 -12
  333. package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +21 -21
  334. package/lib/desy-forms/interfaces/item-date-input-data.d.ts +17 -17
  335. package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -5
  336. package/lib/desy-forms/interfaces/item-divider-input-group-data.d.ts +5 -5
  337. package/lib/desy-forms/interfaces/item-input-group-data.d.ts +23 -23
  338. package/lib/desy-forms/interfaces/item-radio-data.d.ts +20 -20
  339. package/lib/desy-forms/interfaces/item-radio-with-template-data.d.ts +5 -5
  340. package/lib/desy-forms/interfaces/label-data.d.ts +9 -9
  341. package/lib/desy-forms/interfaces/legend-data.d.ts +6 -6
  342. package/lib/desy-forms/interfaces/select-item-data.d.ts +8 -8
  343. package/lib/desy-modals/components/dialog/dialog.component.d.ts +35 -35
  344. package/lib/desy-modals/components/modal/modal-button-loader-primary/modal-button-loader-primary.component.d.ts +8 -8
  345. package/lib/desy-modals/components/modal/modal-button-loader-secondary/modal-button-loader-secondary.component.d.ts +7 -7
  346. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +7 -7
  347. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +7 -7
  348. package/lib/desy-modals/components/modal/modal.component.d.ts +51 -51
  349. package/lib/desy-modals/desy-modals.module.d.ts +2 -2
  350. package/lib/desy-modals/interfaces/dialog-options.d.ts +9 -9
  351. package/lib/desy-modals/interfaces/index.d.ts +6 -6
  352. package/lib/desy-modals/interfaces/modal-button-data.d.ts +20 -20
  353. package/lib/desy-modals/interfaces/modal-data.d.ts +5 -5
  354. package/lib/desy-modals/interfaces/modal-icon-data.d.ts +4 -4
  355. package/lib/desy-modals/interfaces/modal-options.d.ts +16 -16
  356. package/lib/desy-modals/interfaces/open-dialog-result.d.ts +6 -6
  357. package/lib/desy-modals/services/dialog.service.d.ts +14 -14
  358. package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +6 -6
  359. package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +18 -18
  360. package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +6 -6
  361. package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +20 -20
  362. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -7
  363. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -10
  364. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -7
  365. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -8
  366. package/lib/desy-nav/components/footer/footer.component.d.ts +27 -27
  367. package/lib/desy-nav/components/header/header-custom-navigation/header-custom-navigation.component.d.ts +3 -0
  368. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +12 -12
  369. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -10
  370. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +13 -13
  371. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +5 -5
  372. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -3
  373. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +30 -30
  374. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +11 -11
  375. package/lib/desy-nav/components/header/header.component.d.ts +34 -32
  376. package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +15 -15
  377. package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +16 -16
  378. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-item/menu-navigation-item.component.d.ts +22 -22
  379. package/lib/desy-nav/components/menu-navigation/components/menu-navigation-subitem/menu-navigation-subitem.component.d.ts +19 -19
  380. package/lib/desy-nav/components/menu-navigation/menu-navigation.component.d.ts +80 -80
  381. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -18
  382. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -8
  383. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -15
  384. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +18 -18
  385. package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +23 -23
  386. package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +4 -4
  387. package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +15 -15
  388. package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +10 -10
  389. package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +16 -16
  390. package/lib/desy-nav/components/menubar/menubar.component.d.ts +101 -101
  391. package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +17 -17
  392. package/lib/desy-nav/components/nav/nav.component.d.ts +20 -20
  393. package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +9 -9
  394. package/lib/desy-nav/components/notification/notification.component.d.ts +36 -36
  395. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +13 -13
  396. package/lib/desy-nav/desy-nav.module.d.ts +2 -2
  397. package/lib/desy-nav/interfaces/breadcrumbs.data.d.ts +7 -7
  398. package/lib/desy-nav/interfaces/error-summary-data.d.ts +7 -7
  399. package/lib/desy-nav/interfaces/footer-data.d.ts +24 -24
  400. package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +11 -11
  401. package/lib/desy-nav/interfaces/header-navigation-data.d.ts +5 -5
  402. package/lib/desy-nav/interfaces/header-navigation-item-data.d.ts +12 -12
  403. package/lib/desy-nav/interfaces/header-offcanvas-data.d.ts +8 -8
  404. package/lib/desy-nav/interfaces/header-subnav-data.d.ts +11 -11
  405. package/lib/desy-nav/interfaces/index.d.ts +19 -19
  406. package/lib/desy-nav/interfaces/menu-horizontal-item-data.d.ts +13 -13
  407. package/lib/desy-nav/interfaces/menu-horizontal-item-event-data.d.ts +5 -5
  408. package/lib/desy-nav/interfaces/menu-navigation-item-sub-item-sub-item.d.ts +14 -14
  409. package/lib/desy-nav/interfaces/menu-navigation-item-sub-item.d.ts +6 -6
  410. package/lib/desy-nav/interfaces/menu-navigation.d.ts +17 -17
  411. package/lib/desy-nav/interfaces/menu-vertical-items-data.d.ts +19 -19
  412. package/lib/desy-nav/interfaces/menu-vertical-sub-data.d.ts +7 -7
  413. package/lib/desy-nav/interfaces/menu-vertical-sub-items-data.d.ts +16 -16
  414. package/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.d.ts +6 -6
  415. package/lib/desy-nav/interfaces/menubar-item-sub-item.d.ts +9 -9
  416. package/lib/desy-nav/interfaces/menubar-item-sub.d.ts +6 -6
  417. package/lib/desy-nav/interfaces/menubar-item.d.ts +18 -18
  418. package/lib/desy-nav/interfaces/nav-item-event.data.d.ts +5 -5
  419. package/lib/desy-nav/interfaces/nav-item.data.d.ts +15 -15
  420. package/lib/desy-nav/interfaces/notification-items-data.d.ts +10 -10
  421. package/lib/desy-nav/interfaces/notification-options.d.ts +15 -15
  422. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +44 -44
  423. package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +7 -7
  424. package/lib/desy-pagination/components/pagination-listbox-label/pagination-listbox-label.component.d.ts +4 -4
  425. package/lib/desy-pagination/desy-pagination.module.d.ts +2 -2
  426. package/lib/desy-pagination/interfaces/index.d.ts +1 -1
  427. package/lib/desy-pagination/interfaces/pagination-item.data.d.ts +4 -4
  428. package/lib/desy-tables/components/table/components/table-caption.component.d.ts +4 -4
  429. package/lib/desy-tables/components/table/components/table-cell.component.d.ts +8 -8
  430. package/lib/desy-tables/components/table/components/table-header.component.d.ts +5 -5
  431. package/lib/desy-tables/components/table/components/table-row.component.d.ts +5 -5
  432. package/lib/desy-tables/components/table/table.component.d.ts +24 -24
  433. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +20 -20
  434. package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +5 -5
  435. package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +8 -8
  436. package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +8 -8
  437. package/lib/desy-tables/components/table-advanced/components/table-advanced-select.component.d.ts +9 -9
  438. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +122 -122
  439. package/lib/desy-tables/desy-tables.module.d.ts +2 -2
  440. package/lib/desy-tables/directives/cell.directive.d.ts +14 -14
  441. package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +10 -10
  442. package/lib/desy-tables/directives/row.directive.d.ts +16 -16
  443. package/lib/desy-tables/interfaces/cell-data.d.ts +9 -9
  444. package/lib/desy-tables/interfaces/head-cell-data.d.ts +18 -18
  445. package/lib/desy-tables/interfaces/index.d.ts +4 -4
  446. package/lib/desy-tables/interfaces/recalculate-table-params.d.ts +11 -11
  447. package/lib/desy-tables/interfaces/row-data.d.ts +6 -6
  448. package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -4
  449. package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +5 -5
  450. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +17 -17
  451. package/lib/desy-views/components/accordion/accordion.component.d.ts +48 -48
  452. package/lib/desy-views/components/accordion-history/accordion-history-item/accordion-history-item.component.d.ts +9 -9
  453. package/lib/desy-views/components/accordion-history/accordion-history.component.d.ts +6 -6
  454. package/lib/desy-views/components/accordion-history/accordion-item-hide-button/accordion-item-hide-button.component.d.ts +4 -4
  455. package/lib/desy-views/components/accordion-history/accordion-item-show-button/accordion-item-show-button.component.d.ts +4 -4
  456. package/lib/desy-views/components/alert/alert.component.d.ts +29 -29
  457. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +14 -14
  458. package/lib/desy-views/components/description-list/definition/definition.component.d.ts +6 -6
  459. package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +9 -9
  460. package/lib/desy-views/components/description-list/description-list.component.d.ts +11 -11
  461. package/lib/desy-views/components/description-list/term/term.component.d.ts +6 -6
  462. package/lib/desy-views/components/details/details.component.d.ts +10 -10
  463. package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +5 -5
  464. package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -3
  465. package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -3
  466. package/lib/desy-views/components/item/item.component.d.ts +37 -37
  467. package/lib/desy-views/components/media-object/media-object-figure/media-object-figure.component.d.ts +3 -3
  468. package/lib/desy-views/components/media-object/media-object.component.d.ts +33 -33
  469. package/lib/desy-views/components/spinner/spinner.component.d.ts +21 -21
  470. package/lib/desy-views/components/status/status.component.d.ts +25 -25
  471. package/lib/desy-views/components/status-item/status-item.component.d.ts +44 -44
  472. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -6
  473. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -12
  474. package/lib/desy-views/components/tabs/tabs.component.d.ts +48 -48
  475. package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -3
  476. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +48 -48
  477. package/lib/desy-views/desy-views.module.d.ts +2 -2
  478. package/lib/desy-views/interfaces/accordion-header.data.d.ts +5 -5
  479. package/lib/desy-views/interfaces/accordion-item.data.d.ts +10 -10
  480. package/lib/desy-views/interfaces/alert-options.d.ts +8 -8
  481. package/lib/desy-views/interfaces/description-item.data.d.ts +8 -8
  482. package/lib/desy-views/interfaces/index.d.ts +10 -10
  483. package/lib/desy-views/interfaces/open-alert-result.d.ts +6 -6
  484. package/lib/desy-views/interfaces/status-data.d.ts +8 -8
  485. package/lib/desy-views/interfaces/status-icon-data.d.ts +4 -4
  486. package/lib/desy-views/interfaces/status-item-title-data.d.ts +5 -5
  487. package/lib/desy-views/interfaces/tabs-items-data.d.ts +9 -9
  488. package/lib/desy-views/interfaces/tabs-panel-data.d.ts +8 -8
  489. package/lib/desy-views/interfaces/term-definition.data.d.ts +7 -7
  490. package/lib/desy-views/services/alert.service.d.ts +14 -14
  491. package/lib/shared/components/accessibility/accessibility.component.d.ts +20 -20
  492. package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +26 -26
  493. package/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.d.ts +23 -23
  494. package/lib/shared/components/content-base/content-base.component.d.ts +9 -9
  495. package/lib/shared/components/index.d.ts +5 -5
  496. package/lib/shared/components/text-or-html-required/text-or-html-required.component.d.ts +8 -8
  497. package/lib/shared/decorators/desy-content-child.decorator.d.ts +15 -15
  498. package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +5 -5
  499. package/lib/shared/directives/attribute-change.directive.d.ts +10 -10
  500. package/lib/shared/directives/click-outside.directive.d.ts +9 -9
  501. package/lib/shared/directives/content-change.directive.d.ts +19 -19
  502. package/lib/shared/directives/custom-inner-content.directive.d.ts +22 -22
  503. package/lib/shared/directives/inner-content.directive.d.ts +9 -9
  504. package/lib/shared/interfaces/accesibility-data.d.ts +16 -16
  505. package/lib/shared/pipes/external-href.pipe.d.ts +8 -8
  506. package/lib/shared/pipes/inner-html.pipe.d.ts +7 -7
  507. package/lib/shared/pipes/make-html-list.pipe.d.ts +4 -4
  508. package/lib/shared/shared.module.d.ts +2 -2
  509. package/lib/shared/utils/focus-utils.d.ts +4 -4
  510. package/lib/shared/utils/search-utils.d.ts +14 -14
  511. package/lib/shared/utils/string-utils.d.ts +10 -10
  512. package/package.json +1 -1
  513. package/public-api.d.ts +168 -168
@@ -1,222 +1,222 @@
1
- import { __decorate } from "tslib";
2
- import { Component, ContentChildren, EventEmitter, forwardRef, Input, Optional, Output, ViewChild, HostBinding } from '@angular/core';
3
- import { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import { FormFieldComponent } from '../form-field/form-field.component';
5
- import { LegendComponent } from '../fieldset/legend/legend.component';
6
- import { FieldsetComponent } from '../fieldset/fieldset.component';
7
- import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
8
- import { DateInputDayComponent } from './date-input-day/date-input-day.component';
9
- import { DateInputMonthComponent } from './date-input-month/date-input-month.component';
10
- import { DateInputYearComponent } from './date-input-year/date-input-year.component';
11
- import { MakeHtmlListPipe } from '../../../shared/pipes/make-html-list.pipe';
12
- import { DesyOnInputChange } from '../../../shared/decorators/desy-on-input-change.decorator';
13
- import { DateInputDividerComponent } from './date-input-divider/date-input-divider.component';
14
- import { StringUtils } from '../../../shared/utils/string-utils';
15
- import { DateInputItemComponent } from './date-input-item/date-input-item.component';
16
- export class DateInputComponent extends FormFieldComponent {
17
- constructor(controlContainer) {
18
- super();
19
- this.controlContainer = controlContainer;
20
- this.itemsChange = new EventEmitter();
21
- // form group class - asignar clases a la etiqueta desy-input
22
- this.cfg = true;
23
- this.contentInit = false;
24
- }
25
- ngOnChanges(changes) {
26
- this.cfgr = (this.hasErrorsMessage() || this.formGroupClasses === 'c-form-group--error');
27
- }
28
- ngAfterContentInit() {
29
- this.contentInit = true;
30
- }
31
- initDefaultItems() {
32
- if (!this.items) {
33
- this.items = [
34
- {
35
- name: 'día',
36
- classes: 'w-14',
37
- maxlength: 2
38
- },
39
- {
40
- name: 'mes',
41
- classes: 'w-14',
42
- maxlength: 2
43
- },
44
- {
45
- name: 'año',
46
- classes: 'w-20',
47
- maxlength: 4
48
- }
49
- ];
50
- }
51
- }
52
- writeValue(value) {
53
- this.value = value;
54
- if (this.value) {
55
- const items = this.getItems();
56
- items.forEach(item => item.value = this.value[this.getItemName(item)]);
57
- if (this.items) {
58
- this.itemsChange.emit(this.items);
59
- }
60
- }
61
- this.onChange(value);
62
- }
63
- overrideFieldsetParams(fieldset) {
64
- fieldset.caller = this.innerHtml;
65
- fieldset.errorId = this.getErrorId();
66
- fieldset.describedBy = new MakeHtmlListPipe().transform([this.getHintId(), this.getErrorId()], null);
67
- fieldset.role = 'group';
68
- fieldset.detectChanges();
69
- }
70
- onExternalChange() {
71
- if (!this.contentInit) {
72
- return;
73
- }
74
- if (!this.value) {
75
- this.value = {};
76
- }
77
- const items = this.getItems();
78
- items.forEach(item => this.value[this.getItemName(item)] = item.value);
79
- const newVal = {};
80
- Object.assign(newVal, this.value);
81
- this.onChange(newVal);
82
- }
83
- onInternalChange(item, itemValue) {
84
- const itemName = this.getItemName(item);
85
- if (!this.value) {
86
- this.value = {};
87
- }
88
- if (this.value[itemName] !== itemValue) {
89
- this.value[itemName] = itemValue ? +itemValue : undefined;
90
- const newVal = {};
91
- Object.assign(newVal, this.value);
92
- this.onChange(newVal);
93
- if (item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent) {
94
- item.valueChange.emit(itemValue);
95
- }
96
- if (this.items) {
97
- item.value = itemValue;
98
- this.itemsChange.emit(this.items);
99
- }
100
- }
101
- }
102
- hasFieldset() {
103
- return !!(this.hasFieldsetComponent() || this.hasLegendComponent() || this.legendRef || this.fieldsetData
104
- || (this.legendData && (this.legendData.text || this.legendData.html)) || this.legendText);
105
- }
106
- hasFieldsetComponent() {
107
- return !!this.fieldsetComponent;
108
- }
109
- hasLegendComponent() {
110
- return !!this.legendComponent;
111
- }
112
- hasErrorMessageComponent() {
113
- return !!this.errorMessageComponent;
114
- }
115
- getItemName(item) {
116
- return this.namePrefix ? this.namePrefix + '-' + item.name : item.name;
117
- }
118
- getItemLabel(item) {
119
- let labelData;
120
- if (item.labelData && (item.labelData.text || item.labelData.html)) {
121
- labelData = item.labelData;
122
- }
123
- else {
124
- labelData = {
125
- text: item.labelText ? item.labelText : (item.name ? item.name.toUpperCase() : null)
126
- };
127
- }
128
- return labelData;
129
- }
130
- getItemLabelRef(item) {
131
- return item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent ?
132
- item.labelRef : null;
133
- }
134
- getItems() {
135
- let items;
136
- if (this.dateInputItemComponents && this.dateInputItemComponents.length > 0) {
137
- items = this.dateInputItemComponents.toArray();
138
- }
139
- else if (this.items) {
140
- items = this.items;
141
- }
142
- else if (this.contentInit) {
143
- items = DateInputComponent.defaultItems;
144
- }
145
- else {
146
- items = [];
147
- }
148
- return items;
149
- }
150
- getItemDividerTemplate(item) {
151
- return item.divider instanceof DateInputDividerComponent ? item.divider.dividerContent : null;
152
- }
153
- getItemDividerHtml(item) {
154
- return item.divider.html ? item.divider.html : `<p>${StringUtils.escapeHtml(item.divider.text)}</p>`;
155
- }
156
- }
157
- DateInputComponent.defaultItems = [
158
- {
159
- name: 'day',
160
- classes: 'w-14',
161
- maxlength: 2
162
- },
163
- {
164
- name: 'month',
165
- classes: 'w-14',
166
- maxlength: 2
167
- },
168
- {
169
- name: 'year',
170
- classes: 'w-20',
171
- maxlength: 4
172
- }
173
- ];
174
- DateInputComponent.decorators = [
175
- { type: Component, args: [{
176
- selector: 'desy-date-input',
177
- template: "<ng-template #innerHtml>\r\n <ng-container *ngIf=\"hasHintComponent()\">\r\n <ng-content select=\"desy-hint\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!hasHintComponent()\">\r\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\r\n <desy-hint *ngIf=\"!hintRef && hintData\"\r\n [id]=\"getHintId()\"\r\n [text]=\"hintData.text\"\r\n [html]=\"hintData.html\"\r\n [classes]=\"hintData.classes\"\r\n [role]=\"hintData.role\"\r\n [ariaLabel]=\"hintData.ariaLabel\"\r\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\r\n [ariaHidden]=\"hintData.ariaHidden\"\r\n [ariaDisabled]=\"hintData.ariaDisabled\"\r\n [ariaControls]=\"hintData.ariaControls\"\r\n [ariaCurrent]=\"hintData.ariaCurrent\"\r\n [ariaLive]=\"hintData.ariaLive\"\r\n [ariaExpanded]=\"hintData.ariaExpanded\"\r\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\r\n [tabindex]=\"hintData.tabindex\"></desy-hint>\r\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\r\n </ng-container>\r\n\r\n\r\n <ng-container *ngIf=\"hasErrorMessageComponent()\">\r\n <ng-content select=\"desy-error-message\"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf=\"!hasErrorMessageComponent()\">\r\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\r\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\r\n [id]=\"getErrorId()\"\r\n [text]=\"errorMessageData.text\"\r\n [html]=\"errorMessageData.html\"\r\n [classes]=\"errorMessageData.classes\"\r\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\r\n [role]=\"errorMessageData.role\"\r\n [ariaLabel]=\"errorMessageData.ariaLabel\"\r\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\r\n [ariaHidden]=\"errorMessageData.ariaHidden\"\r\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\r\n [ariaControls]=\"errorMessageData.ariaControls\"\r\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\r\n [ariaLive]=\"errorMessageData.ariaLive\"\r\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\r\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\r\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\r\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\r\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\r\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\r\n </ng-container>\r\n\r\n <!-- With reactive forms -->\r\n <div *ngIf=\"controlContainer && !ngModelGroup\"\r\n [formGroup]=\"controlContainer.control\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [formControlName]=\"getItemName(item)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <!-- Template-driven forms -->\r\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\r\n <div [ngModelGroup]=\"ngModelGroup\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n \r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n <!-- With ngModel-->\r\n <div *ngIf=\"!controlContainer\"\r\n [class]=\"['flex', classes] | makeHtmlList\"\r\n [attr.id]=\"id ? id : null\"\r\n [attr.role]=\"role ? role : null\"\r\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\r\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\r\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\r\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\r\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\r\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\r\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\r\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\r\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\r\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\r\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\r\n [attr.tabindex]=\"tabindex ? tabindex : null\">\r\n <ng-container *ngFor=\"let item of getItems(); index as i\">\r\n \r\n <ng-container *ngIf=\"item.divider\">\r\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\r\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"!item.divider\">\r\n <div class=\"mr-base\">\r\n <desy-input [labelData]=\"getItemLabel(item)\"\r\n [labelRef]=\"getItemLabelRef(item)\"\r\n [id]=\"item.id ? item.id : id + '-' + item.name\"\r\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\r\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\r\n [name]=\"getItemName(item)\"\r\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\r\n [type]=\"'text'\"\r\n [inputmode]=\"'numeric'\"\r\n [autocomplete]=\"item.autocomplete\"\r\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\r\n [disabled]=\"disabled ? true : null\"\r\n\r\n [maxlength]=\"item.maxlength\"\r\n [role]=\"item.role\"\r\n [ariaLabel]=\"item.ariaLabel\"\r\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\r\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\r\n [ariaHidden]=\"item.ariaHidden\"\r\n [ariaDisabled]=\"item.ariaDisabled\"\r\n [ariaControls]=\"item.ariaControls\"\r\n [ariaCurrent]=\"item.ariaCurrent\"\r\n [ariaLive]=\"item.ariaLive\"\r\n [ariaExpanded]=\"item.ariaExpanded\"\r\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\r\n [ariaHasPopup]=\"item.ariaHasPopup\"\r\n [tabindex]=\"item.tabindex\"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n</ng-template>\r\n\r\n<ng-container *ngIf=\"hasFieldsetComponent()\">\r\n <ng-content select=\"desy-fieldset\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"!hasFieldsetComponent()\">\r\n <desy-fieldset *ngIf=\"fieldsetData\"\r\n [classes]=\"fieldsetData.classes\"\r\n [id]=\"fieldsetData.id\"\r\n [legendData]=\"fieldsetData.legend\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"\r\n [ariaLabel]=\"fieldsetData.ariaLabel\"\r\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\r\n [ariaHidden]=\"fieldsetData.ariaHidden\"\r\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\r\n [ariaControls]=\"fieldsetData.ariaControls\"\r\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\r\n [ariaLive]=\"fieldsetData.ariaLive\"\r\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\r\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\r\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && hasLegendComponent()\"\r\n [legendRef]=\"legendTemplate\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\">\r\n <ng-template #legendTemplate>\r\n <ng-content select=\"desy-legend\"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && legendRef\"\r\n [legendRef]=\"legendRef\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && legendData\"\r\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText\"\r\n [legendText]=\"legendText\"\r\n [caller]=\"innerHtml\"\r\n [errorId]=\"getErrorId()\"\r\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\r\n role=\"group\"></desy-fieldset>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"!hasFieldset()\">\r\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\r\n</ng-container>\r\n",
178
- providers: [
179
- {
180
- provide: NG_VALUE_ACCESSOR,
181
- useExisting: forwardRef(() => DateInputComponent),
182
- multi: true
183
- }
184
- ]
185
- },] }
186
- ];
187
- DateInputComponent.ctorParameters = () => [
188
- { type: ControlContainer, decorators: [{ type: Optional }] }
189
- ];
190
- DateInputComponent.propDecorators = {
191
- ngModelGroup: [{ type: Input }],
192
- items: [{ type: Input }],
193
- itemsChange: [{ type: Output }],
194
- namePrefix: [{ type: Input }],
195
- classes: [{ type: Input }],
196
- errorMessage: [{ type: Input }],
197
- id: [{ type: Input }],
198
- cfg: [{ type: HostBinding, args: ['class.c-form-group',] }],
199
- cfgr: [{ type: HostBinding, args: ['class.c-form-group--error',] }],
200
- formGroupClasses: [{ type: Input }, { type: HostBinding, args: ['class',] }],
201
- fieldsetComponent: [{ type: ContentChildren, args: [FieldsetComponent,] }],
202
- legendComponent: [{ type: ContentChildren, args: [LegendComponent,] }],
203
- dateInputItemComponents: [{ type: ContentChildren, args: [DateInputItemComponent,] }],
204
- fieldsetData: [{ type: Input }],
205
- legendRef: [{ type: Input }],
206
- legendData: [{ type: Input }],
207
- legendText: [{ type: Input }],
208
- innerHtml: [{ type: ViewChild, args: ['innerHtml', { static: true },] }]
209
- };
210
- __decorate([
211
- DesyOnInputChange('onExternalChange')
212
- ], DateInputComponent.prototype, "items", void 0);
213
- __decorate([
214
- DesyOnInputChange('onExternalChange')
215
- ], DateInputComponent.prototype, "namePrefix", void 0);
216
- __decorate([
217
- DesyContentChild({ onSetCallbackName: 'overrideFieldsetParams' })
218
- ], DateInputComponent.prototype, "fieldsetComponent", void 0);
219
- __decorate([
220
- DesyContentChild()
221
- ], DateInputComponent.prototype, "legendComponent", void 0);
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsS0FBSyxFQUVMLFFBQVEsRUFBRSxNQUFNLEVBR2hCLFNBQVMsRUFDVCxXQUFXLEVBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNC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QixDQUFDLGtCQUFrQixDQUFDO2lEQUNGO0FBSTNCO0lBRFIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7c0RBQ1Y7QUFVUTtJQURuQyxnQkFBZ0IsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixFQUFDLENBQUM7NkRBQ1E7QUFHdkM7SUFEakMsZ0JBQWdCLEVBQUU7MkRBQ2dEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlckNvbnRlbnRJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPcHRpb25hbCwgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgU2ltcGxlQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpZWxkc2V0RGF0YSwgTGVnZW5kRGF0YSwgSXRlbURhdGVJbnB1dERhdGEsIExhYmVsRGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBMZWdlbmRDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHNldC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpZWxkc2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGVzeUNvbnRlbnRDaGlsZCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xyXG5pbXBvcnQgeyBEYXRlSW5wdXREYXlDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtaW5wdXQtZGF5L2RhdGUtaW5wdXQtZGF5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVJbnB1dE1vbnRoQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LW1vbnRoL2RhdGUtaW5wdXQtbW9udGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0ZUlucHV0WWVhckNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS1pbnB1dC15ZWFyL2RhdGUtaW5wdXQteWVhci5jb21wb25lbnQnO1xyXG5pbXBvcnQge01ha2VIdG1sTGlzdFBpcGV9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9waXBlcy9tYWtlLWh0bWwtbGlzdC5waXBlJztcclxuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1vbi1pbnB1dC1jaGFuZ2UuZGVjb3JhdG9yJztcclxuaW1wb3J0IHsgRGF0ZUlucHV0RGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS1pbnB1dC1kaXZpZGVyL2RhdGUtaW5wdXQtZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdHJpbmdVdGlscyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscy9zdHJpbmctdXRpbHMnO1xyXG5pbXBvcnQgeyBEYXRlSW5wdXRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LWl0ZW0vZGF0ZS1pbnB1dC1pdGVtLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktZGF0ZS1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZUlucHV0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRlSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRDb21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGRlZmF1bHRJdGVtcyA9IFtcclxuICAgIHtcclxuICAgICAgbmFtZTogJ2RheScsXHJcbiAgICAgIGNsYXNzZXM6ICd3LTE0JyxcclxuICAgICAgbWF4bGVuZ3RoOiAyXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnbW9udGgnLFxyXG4gICAgICBjbGFzc2VzOiAndy0xNCcsXHJcbiAgICAgIG1heGxlbmd0aDogMlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogJ3llYXInLFxyXG4gICAgICBjbGFzc2VzOiAndy0yMCcsXHJcbiAgICAgIG1heGxlbmd0aDogNFxyXG4gICAgfVxyXG4gIF07XHJcblxyXG4gIEBJbnB1dCgpIG5nTW9kZWxHcm91cDogc3RyaW5nO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIGl0ZW1zOiBJdGVtRGF0ZUlucHV0RGF0YVtdO1xyXG4gIEBPdXRwdXQoKSBpdGVtc0NoYW5nZTogRXZlbnRFbWl0dGVyPEl0ZW1EYXRlSW5wdXREYXRhW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxJdGVtRGF0ZUlucHV0RGF0YVtdPigpO1xyXG5cclxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxyXG4gIEBJbnB1dCgpIG5hbWVQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcclxuICAvLyAgZm9ybSBncm91cCBjbGFzcyAtIGFzaWduYXIgY2xhc2VzIGEgbGEgZXRpcXVldGEgZGVzeS1pbnB1dFxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYy1mb3JtLWdyb3VwJykgY2ZnID0gdHJ1ZTtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmMtZm9ybS1ncm91cC0tZXJyb3InKSBjZmdyOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MnKSBmb3JtR3JvdXBDbGFzc2VzOiBhbnk7XHJcblxyXG4gIEBEZXN5Q29udGVudENoaWxkKHsgb25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZUZpZWxkc2V0UGFyYW1zJ30pXHJcbiAgQENvbnRlbnRDaGlsZHJlbihGaWVsZHNldENvbXBvbmVudCkgZmllbGRzZXRDb21wb25lbnQ6IEZpZWxkc2V0Q29tcG9uZW50O1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCgpXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMZWdlbmRDb21wb25lbnQpIGxlZ2VuZENvbXBvbmVudDogTGVnZW5kQ29tcG9uZW50O1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKERhdGVJbnB1dEl0ZW1Db21wb25lbnQpIGRhdGVJbnB1dEl0ZW1Db21wb25lbnRzOiBRdWVyeUxpc3Q8RGF0ZUlucHV0SXRlbUNvbXBvbmVudD47XHJcblxyXG4gIC8qKlxyXG4gICAqIGZpZWxkc2V0LCBkaWZlcmVudGVzIGZvcm1hcyBkZSBpbXBsZW1lbnRhciwgZW51bWVyYWRhcyBwb3IgcHJpb3JpZGFkXHJcbiAgICogMSkgaW5jbHVpciBvYmpldG8gRmllbGRzZXREYXRhIChpbnRlcmZheiBleHB1ZXN0YSlcclxuICAgKiAyKSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxyXG4gICAqIDMpIGluY2x1aXIgbGVnZW5kRGF0YSAtIGluY2x1aXIgdW4gZmllbGRzZXQgY29uIHVuYSBsZWdlbmRhIGNvbiBsb3MgcGFyYW1ldHJvcyBwYXNhZG9zICAoaW50ZXJmYXogZXhwdWVzdGEpXHJcbiAgICogNCkgaW5jbHVpciBsZWdlbmRUZXh0IC0gaW5jbHVpciB1biBmaWVsZHNldCBjb24gdW4gdGV4dG8gZW4gbGEgbGVnZW5kYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZpZWxkc2V0RGF0YTogRmllbGRzZXREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFJlZjogVGVtcGxhdGVSZWY8TGVnZW5kQ29tcG9uZW50PjtcclxuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xyXG4gIEBJbnB1dCgpIGxlZ2VuZFRleHQ6IHN0cmluZztcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5uZXJIdG1sJywgeyBzdGF0aWM6IHRydWUgfSkgaW5uZXJIdG1sOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBwcml2YXRlIGNvbnRlbnRJbml0ID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHB1YmxpYyBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmNmZ3IgPSAodGhpcy5oYXNFcnJvcnNNZXNzYWdlKCkgfHwgdGhpcy5mb3JtR3JvdXBDbGFzc2VzID09PSAnYy1mb3JtLWdyb3VwLS1lcnJvcicpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50SW5pdCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBpbml0RGVmYXVsdEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLml0ZW1zKSB7XHJcbiAgICAgIHRoaXMuaXRlbXMgPSBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2TDrWEnLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMTQnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiAyXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBuYW1lOiAnbWVzJyxcclxuICAgICAgICAgIGNsYXNzZXM6ICd3LTE0JyxcclxuICAgICAgICAgIG1heGxlbmd0aDogMlxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2HDsW8nLFxyXG4gICAgICAgICAgY2xhc3NlczogJ3ctMjAnLFxyXG4gICAgICAgICAgbWF4bGVuZ3RoOiA0XHJcbiAgICAgICAgfVxyXG4gICAgICBdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkge1xyXG4gICAgICBjb25zdCBpdGVtcyA9IHRoaXMuZ2V0SXRlbXMoKTtcclxuICAgICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IGl0ZW0udmFsdWUgPSB0aGlzLnZhbHVlW3RoaXMuZ2V0SXRlbU5hbWUoaXRlbSldKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlRmllbGRzZXRQYXJhbXMoZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50KTogdm9pZCB7XHJcbiAgICBmaWVsZHNldC5jYWxsZXIgPSB0aGlzLmlubmVySHRtbDtcclxuICAgIGZpZWxkc2V0LmVycm9ySWQgPSB0aGlzLmdldEVycm9ySWQoKTtcclxuICAgIGZpZWxkc2V0LmRlc2NyaWJlZEJ5ID0gbmV3IE1ha2VIdG1sTGlzdFBpcGUoKS50cmFuc2Zvcm0oW3RoaXMuZ2V0SGludElkKCksIHRoaXMuZ2V0RXJyb3JJZCgpXSwgbnVsbCk7XHJcbiAgICBmaWVsZHNldC5yb2xlID0gJ2dyb3VwJztcclxuICAgIGZpZWxkc2V0LmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uRXh0ZXJuYWxDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY29udGVudEluaXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XHJcbiAgICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4gdGhpcy52YWx1ZVt0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pXSA9IGl0ZW0udmFsdWUpO1xyXG4gICAgY29uc3QgbmV3VmFsID0ge307XHJcbiAgICBPYmplY3QuYXNzaWduKG5ld1ZhbCwgdGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlKG5ld1ZhbCk7XHJcbiAgfVxyXG5cclxuICBvbkludGVybmFsQ2hhbmdlKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhLCBpdGVtVmFsdWU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgY29uc3QgaXRlbU5hbWUgPSB0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pO1xyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB7fTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZVtpdGVtTmFtZV0gIT09IGl0ZW1WYWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlW2l0ZW1OYW1lXSA9IGl0ZW1WYWx1ZSA/ICtpdGVtVmFsdWUgOiB1bmRlZmluZWQ7XHJcbiAgICAgIGNvbnN0IG5ld1ZhbCA9IHt9O1xyXG4gICAgICBPYmplY3QuYXNzaWduKG5ld1ZhbCwgdGhpcy52YWx1ZSk7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UobmV3VmFsKTtcclxuICAgICAgaWYgKGl0ZW0gaW5zdGFuY2VvZiBEYXRlSW5wdXREYXlDb21wb25lbnQgfHwgaXRlbSBpbnN0YW5jZW9mIERhdGVJbnB1dE1vbnRoQ29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBEYXRlSW5wdXRZZWFyQ29tcG9uZW50KSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZUNoYW5nZS5lbWl0KGl0ZW1WYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgaXRlbS52YWx1ZSA9IGl0ZW1WYWx1ZTtcclxuICAgICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKHRoaXMuaGFzRmllbGRzZXRDb21wb25lbnQoKSB8fCB0aGlzLmhhc0xlZ2VuZENvbXBvbmVudCgpIHx8IHRoaXMubGVnZW5kUmVmIHx8IHRoaXMuZmllbGRzZXREYXRhXHJcbiAgICAgIHx8ICh0aGlzLmxlZ2VuZERhdGEgJiYgKHRoaXMubGVnZW5kRGF0YS50ZXh0IHx8IHRoaXMubGVnZW5kRGF0YS5odG1sKSkgfHwgdGhpcy5sZWdlbmRUZXh0KTtcclxuICB9XHJcblxyXG4gIGhhc0ZpZWxkc2V0Q29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5maWVsZHNldENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIGhhc0xlZ2VuZENvbXBvbmVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMubGVnZW5kQ29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgaGFzRXJyb3JNZXNzYWdlQ29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5lcnJvck1lc3NhZ2VDb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTmFtZShpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5uYW1lUHJlZml4ID8gdGhpcy5uYW1lUHJlZml4ICsgJy0nICsgaXRlbS5uYW1lIDogaXRlbS5uYW1lO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbUxhYmVsKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogTGFiZWxEYXRhIHtcclxuICAgIGxldCBsYWJlbERhdGE6IExhYmVsRGF0YTtcclxuICAgIGlmIChpdGVtLmxhYmVsRGF0YSAmJiAoaXRlbS5sYWJlbERhdGEudGV4dCB8fCBpdGVtLmxhYmVsRGF0YS5odG1sKSkge1xyXG4gICAgICBsYWJlbERhdGEgPSBpdGVtLmxhYmVsRGF0YTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxhYmVsRGF0YSA9IHtcclxuICAgICAgICB0ZXh0OiBpdGVtLmxhYmVsVGV4dCA/IGl0ZW0ubGFiZWxUZXh0IDogKGl0ZW0ubmFtZSA/IGl0ZW0ubmFtZS50b1VwcGVyQ2FzZSgpIDogbnVsbClcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHJldHVybiBsYWJlbERhdGE7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTGFiZWxSZWYoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcclxuICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0RGF5Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBEYXRlSW5wdXRNb250aENvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0WWVhckNvbXBvbmVudCA/XHJcbiAgICAgIGl0ZW0ubGFiZWxSZWYgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbXMoKTogSXRlbURhdGVJbnB1dERhdGFbXSB7XHJcbiAgICBsZXQgaXRlbXM7XHJcbiAgICBpZiAodGhpcy5kYXRlSW5wdXRJdGVtQ29tcG9uZW50cyAmJiB0aGlzLmRhdGVJbnB1dEl0ZW1Db21wb25lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgaXRlbXMgPSB0aGlzLmRhdGVJbnB1dEl0ZW1Db21wb25lbnRzLnRvQXJyYXkoKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pdGVtcykge1xyXG4gICAgICBpdGVtcyA9IHRoaXMuaXRlbXM7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29udGVudEluaXQpIHtcclxuICAgICAgaXRlbXMgPSBEYXRlSW5wdXRDb21wb25lbnQuZGVmYXVsdEl0ZW1zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaXRlbXMgPSBbXTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcmV0dXJuIGl0ZW1zO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbURpdmlkZXJUZW1wbGF0ZShpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIGl0ZW0uZGl2aWRlciBpbnN0YW5jZW9mIERhdGVJbnB1dERpdmlkZXJDb21wb25lbnQgPyBpdGVtLmRpdmlkZXIuZGl2aWRlckNvbnRlbnQgOiBudWxsO1xyXG4gIH1cclxuICBnZXRJdGVtRGl2aWRlckh0bWwoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGl0ZW0uZGl2aWRlci5odG1sID8gaXRlbS5kaXZpZGVyLmh0bWwgOiBgPHA+JHsgU3RyaW5nVXRpbHMuZXNjYXBlSHRtbChpdGVtLmRpdmlkZXIudGV4dCkgfTwvcD5gO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, EventEmitter, forwardRef, Input, Optional, Output, ViewChild, HostBinding } from '@angular/core';
3
+ import { ControlContainer, NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { FormFieldComponent } from '../form-field/form-field.component';
5
+ import { LegendComponent } from '../fieldset/legend/legend.component';
6
+ import { FieldsetComponent } from '../fieldset/fieldset.component';
7
+ import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
8
+ import { DateInputDayComponent } from './date-input-day/date-input-day.component';
9
+ import { DateInputMonthComponent } from './date-input-month/date-input-month.component';
10
+ import { DateInputYearComponent } from './date-input-year/date-input-year.component';
11
+ import { MakeHtmlListPipe } from '../../../shared/pipes/make-html-list.pipe';
12
+ import { DesyOnInputChange } from '../../../shared/decorators/desy-on-input-change.decorator';
13
+ import { DateInputDividerComponent } from './date-input-divider/date-input-divider.component';
14
+ import { StringUtils } from '../../../shared/utils/string-utils';
15
+ import { DateInputItemComponent } from './date-input-item/date-input-item.component';
16
+ export class DateInputComponent extends FormFieldComponent {
17
+ constructor(controlContainer) {
18
+ super();
19
+ this.controlContainer = controlContainer;
20
+ this.itemsChange = new EventEmitter();
21
+ // form group class - asignar clases a la etiqueta desy-input
22
+ this.cfg = true;
23
+ this.contentInit = false;
24
+ }
25
+ ngOnChanges(changes) {
26
+ this.cfgr = (this.hasErrorsMessage() || this.formGroupClasses === 'c-form-group--error');
27
+ }
28
+ ngAfterContentInit() {
29
+ this.contentInit = true;
30
+ }
31
+ initDefaultItems() {
32
+ if (!this.items) {
33
+ this.items = [
34
+ {
35
+ name: 'día',
36
+ classes: 'w-14',
37
+ maxlength: 2
38
+ },
39
+ {
40
+ name: 'mes',
41
+ classes: 'w-14',
42
+ maxlength: 2
43
+ },
44
+ {
45
+ name: 'año',
46
+ classes: 'w-20',
47
+ maxlength: 4
48
+ }
49
+ ];
50
+ }
51
+ }
52
+ writeValue(value) {
53
+ this.value = value;
54
+ if (this.value) {
55
+ const items = this.getItems();
56
+ items.forEach(item => item.value = this.value[this.getItemName(item)]);
57
+ if (this.items) {
58
+ this.itemsChange.emit(this.items);
59
+ }
60
+ }
61
+ this.onChange(value);
62
+ }
63
+ overrideFieldsetParams(fieldset) {
64
+ fieldset.caller = this.innerHtml;
65
+ fieldset.errorId = this.getErrorId();
66
+ fieldset.describedBy = new MakeHtmlListPipe().transform([this.getHintId(), this.getErrorId()], null);
67
+ fieldset.role = 'group';
68
+ fieldset.detectChanges();
69
+ }
70
+ onExternalChange() {
71
+ if (!this.contentInit) {
72
+ return;
73
+ }
74
+ if (!this.value) {
75
+ this.value = {};
76
+ }
77
+ const items = this.getItems();
78
+ items.forEach(item => this.value[this.getItemName(item)] = item.value);
79
+ const newVal = {};
80
+ Object.assign(newVal, this.value);
81
+ this.onChange(newVal);
82
+ }
83
+ onInternalChange(item, itemValue) {
84
+ const itemName = this.getItemName(item);
85
+ if (!this.value) {
86
+ this.value = {};
87
+ }
88
+ if (this.value[itemName] !== itemValue) {
89
+ this.value[itemName] = itemValue ? +itemValue : undefined;
90
+ const newVal = {};
91
+ Object.assign(newVal, this.value);
92
+ this.onChange(newVal);
93
+ if (item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent) {
94
+ item.valueChange.emit(itemValue);
95
+ }
96
+ if (this.items) {
97
+ item.value = itemValue;
98
+ this.itemsChange.emit(this.items);
99
+ }
100
+ }
101
+ }
102
+ hasFieldset() {
103
+ return !!(this.hasFieldsetComponent() || this.hasLegendComponent() || this.legendRef || this.fieldsetData
104
+ || (this.legendData && (this.legendData.text || this.legendData.html)) || this.legendText);
105
+ }
106
+ hasFieldsetComponent() {
107
+ return !!this.fieldsetComponent;
108
+ }
109
+ hasLegendComponent() {
110
+ return !!this.legendComponent;
111
+ }
112
+ hasErrorMessageComponent() {
113
+ return !!this.errorMessageComponent;
114
+ }
115
+ getItemName(item) {
116
+ return this.namePrefix ? this.namePrefix + '-' + item.name : item.name;
117
+ }
118
+ getItemLabel(item) {
119
+ let labelData;
120
+ if (item.labelData && (item.labelData.text || item.labelData.html)) {
121
+ labelData = item.labelData;
122
+ }
123
+ else {
124
+ labelData = {
125
+ text: item.labelText ? item.labelText : (item.name ? item.name.toUpperCase() : null)
126
+ };
127
+ }
128
+ return labelData;
129
+ }
130
+ getItemLabelRef(item) {
131
+ return item instanceof DateInputDayComponent || item instanceof DateInputMonthComponent || item instanceof DateInputYearComponent ?
132
+ item.labelRef : null;
133
+ }
134
+ getItems() {
135
+ let items;
136
+ if (this.dateInputItemComponents && this.dateInputItemComponents.length > 0) {
137
+ items = this.dateInputItemComponents.toArray();
138
+ }
139
+ else if (this.items) {
140
+ items = this.items;
141
+ }
142
+ else if (this.contentInit) {
143
+ items = DateInputComponent.defaultItems;
144
+ }
145
+ else {
146
+ items = [];
147
+ }
148
+ return items;
149
+ }
150
+ getItemDividerTemplate(item) {
151
+ return item.divider instanceof DateInputDividerComponent ? item.divider.dividerContent : null;
152
+ }
153
+ getItemDividerHtml(item) {
154
+ return item.divider.html ? item.divider.html : `<p>${StringUtils.escapeHtml(item.divider.text)}</p>`;
155
+ }
156
+ }
157
+ DateInputComponent.defaultItems = [
158
+ {
159
+ name: 'day',
160
+ classes: 'w-14',
161
+ maxlength: 2
162
+ },
163
+ {
164
+ name: 'month',
165
+ classes: 'w-14',
166
+ maxlength: 2
167
+ },
168
+ {
169
+ name: 'year',
170
+ classes: 'w-20',
171
+ maxlength: 4
172
+ }
173
+ ];
174
+ DateInputComponent.decorators = [
175
+ { type: Component, args: [{
176
+ selector: 'desy-date-input',
177
+ template: "<ng-template #innerHtml>\n <ng-container *ngIf=\"hasHintComponent()\">\n <ng-content select=\"desy-hint\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasHintComponent()\">\n <ng-container *ngTemplateOutlet=\"hintRef\"></ng-container>\n <desy-hint *ngIf=\"!hintRef && hintData\"\n [id]=\"getHintId()\"\n [text]=\"hintData.text\"\n [html]=\"hintData.html\"\n [classes]=\"hintData.classes\"\n [role]=\"hintData.role\"\n [ariaLabel]=\"hintData.ariaLabel\"\n [ariaDescribedBy]=\"hintData.ariaDescribedBy\"\n [ariaLabelledBy]=\"hintData.ariaLabelledBy\"\n [ariaHidden]=\"hintData.ariaHidden\"\n [ariaDisabled]=\"hintData.ariaDisabled\"\n [ariaControls]=\"hintData.ariaControls\"\n [ariaCurrent]=\"hintData.ariaCurrent\"\n [ariaLive]=\"hintData.ariaLive\"\n [ariaExpanded]=\"hintData.ariaExpanded\"\n [ariaErrorMessage]=\"hintData.ariaErrorMessage\"\n [ariaHasPopup]=\"hintData.ariaHasPopup\"\n [tabindex]=\"hintData.tabindex\"></desy-hint>\n <desy-hint *ngIf=\"!hintRef && !hintData && hintText\" [text]=\"hintText\" [id]=\"getHintId()\"></desy-hint>\n </ng-container>\n\n\n <ng-container *ngIf=\"hasErrorMessageComponent()\">\n <ng-content select=\"desy-error-message\"></ng-content>\n </ng-container>\n <ng-container *ngIf=\"!hasErrorMessageComponent()\">\n <ng-container *ngTemplateOutlet=\"errorMessageRef\"></ng-container>\n <desy-error-message *ngIf=\"!errorMessageRef && errorMessageData\"\n [id]=\"getErrorId()\"\n [text]=\"errorMessageData.text\"\n [html]=\"errorMessageData.html\"\n [classes]=\"errorMessageData.classes\"\n [visuallyHiddenText]=\"errorMessageData.visuallyHiddenText\"\n [role]=\"errorMessageData.role\"\n [ariaLabel]=\"errorMessageData.ariaLabel\"\n [ariaDescribedBy]=\"errorMessageData.ariaDescribedBy\"\n [ariaLabelledBy]=\"errorMessageData.ariaLabelledBy\"\n [ariaHidden]=\"errorMessageData.ariaHidden\"\n [ariaDisabled]=\"errorMessageData.ariaDisabled\"\n [ariaControls]=\"errorMessageData.ariaControls\"\n [ariaCurrent]=\"errorMessageData.ariaCurrent\"\n [ariaLive]=\"errorMessageData.ariaLive\"\n [ariaExpanded]=\"errorMessageData.ariaExpanded\"\n [ariaErrorMessage]=\"errorMessageData.ariaErrorMessage\"\n [ariaHasPopup]=\"errorMessageData.ariaHasPopup\"\n [tabindex]=\"errorMessageData.tabindex\"></desy-error-message>\n <desy-error-message *ngIf=\"!errorMessageRef && !errorMessageData && errorMessageText\"\n [text]=\"errorMessageText\" [id]=\"getErrorId()\"></desy-error-message>\n </ng-container>\n\n <!-- With reactive forms -->\n <div *ngIf=\"controlContainer && !ngModelGroup\"\n [formGroup]=\"controlContainer.control\"\n [class]=\"['flex', classes] | makeHtmlList\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n <ng-container *ngIf=\"item.divider\">\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!item.divider\">\n <div class=\"mr-base\">\n <desy-input [labelData]=\"getItemLabel(item)\"\n [labelRef]=\"getItemLabelRef(item)\"\n [id]=\"item.id ? item.id : id + '-' + item.name\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\n [name]=\"getItemName(item)\"\n [formControlName]=\"getItemName(item)\"\n [type]=\"'text'\"\n [inputmode]=\"'numeric'\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </div>\n </ng-container>\n </ng-container>\n </div>\n\n <!-- Template-driven forms -->\n <desy-template-driven-wrapper *ngIf=\"controlContainer && ngModelGroup\">\n <div [ngModelGroup]=\"ngModelGroup\"\n [class]=\"['flex', classes] | makeHtmlList\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n \n <ng-container *ngIf=\"item.divider\">\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!item.divider\">\n <div class=\"mr-base\">\n <desy-input [labelData]=\"getItemLabel(item)\"\n [labelRef]=\"getItemLabelRef(item)\"\n [id]=\"item.id ? item.id : id + '-' + item.name\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\n [type]=\"'text'\"\n [inputmode]=\"'numeric'\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\n [disabled]=\"disabled ? true : null\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </div>\n </ng-container>\n </ng-container>\n </div>\n </desy-template-driven-wrapper>\n\n <!-- With ngModel-->\n <div *ngIf=\"!controlContainer\"\n [class]=\"['flex', classes] | makeHtmlList\"\n [attr.id]=\"id ? id : null\"\n [attr.role]=\"role ? role : null\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : null\"\n [attr.aria-describedby]=\"ariaDescribedBy ? ariaDescribedBy : null\"\n [attr.aria-labelledby]=\"ariaLabelledBy ? ariaLabelledBy : null\"\n [attr.aria-hidden]=\"ariaHidden ? ariaHidden : null\"\n [attr.aria-disabled]=\"ariaDisabled ? ariaDisabled : null\"\n [attr.aria-controls]=\"ariaControls ? ariaControls : null\"\n [attr.aria-current]=\"ariaCurrent ? ariaCurrent : null\"\n [attr.aria-live]=\"ariaLive ? ariaLive : null\"\n [attr.aria-expanded]=\"ariaExpanded ? ariaExpanded : null\"\n [attr.aria-errormessage]=\"ariaErrorMessage ? ariaErrorMessage : null\"\n [attr.aria-haspopup]=\"ariaHasPopup ? ariaHasPopup : null\"\n [attr.tabindex]=\"tabindex ? tabindex : null\">\n <ng-container *ngFor=\"let item of getItems(); index as i\">\n \n <ng-container *ngIf=\"item.divider\">\n <div role=\"separator\" [ngClass]=\"item.divider.classes\">\n <ng-container *desyCustomInnerContent=\"{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!item.divider\">\n <div class=\"mr-base\">\n <desy-input [labelData]=\"getItemLabel(item)\"\n [labelRef]=\"getItemLabelRef(item)\"\n [id]=\"item.id ? item.id : id + '-' + item.name\"\n [classes]=\"['mb-0', item.classes] | makeHtmlList\"\n [errorId]=\"item.hasErrors ? getErrorId() : null\"\n [name]=\"getItemName(item)\"\n [ngModel]=\"item.value\" (ngModelChange)=\"onInternalChange(item, +$event)\"\n [type]=\"'text'\"\n [inputmode]=\"'numeric'\"\n [autocomplete]=\"item.autocomplete\"\n [pattern]=\"item.pattern ? item.pattern : '[0-9]*'\"\n [disabled]=\"disabled ? true : null\"\n\n [maxlength]=\"item.maxlength\"\n [role]=\"item.role\"\n [ariaLabel]=\"item.ariaLabel\"\n [ariaDescribedBy]=\"item.ariaDescribedBy\"\n [ariaLabelledBy]=\"item.ariaLabelledBy\"\n [ariaHidden]=\"item.ariaHidden\"\n [ariaDisabled]=\"item.ariaDisabled\"\n [ariaControls]=\"item.ariaControls\"\n [ariaCurrent]=\"item.ariaCurrent\"\n [ariaLive]=\"item.ariaLive\"\n [ariaExpanded]=\"item.ariaExpanded\"\n [ariaErrorMessage]=\"item.ariaErrorMessage\"\n [ariaHasPopup]=\"item.ariaHasPopup\"\n [tabindex]=\"item.tabindex\"></desy-input>\n </div>\n </ng-container>\n </ng-container>\n</div>\n</ng-template>\n\n<ng-container *ngIf=\"hasFieldsetComponent()\">\n <ng-content select=\"desy-fieldset\"></ng-content>\n</ng-container>\n<ng-container *ngIf=\"!hasFieldsetComponent()\">\n <desy-fieldset *ngIf=\"fieldsetData\"\n [classes]=\"fieldsetData.classes\"\n [id]=\"fieldsetData.id\"\n [legendData]=\"fieldsetData.legend\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"\n [ariaLabel]=\"fieldsetData.ariaLabel\"\n [ariaLabelledBy]=\"fieldsetData.ariaLabelledBy\"\n [ariaHidden]=\"fieldsetData.ariaHidden\"\n [ariaDisabled]=\"fieldsetData.ariaDisabled\"\n [ariaControls]=\"fieldsetData.ariaControls\"\n [ariaCurrent]=\"fieldsetData.ariaCurrent\"\n [ariaLive]=\"fieldsetData.ariaLive\"\n [ariaExpanded]=\"fieldsetData.ariaExpanded\"\n [ariaHasPopup]=\"fieldsetData.ariaHasPopup\"\n [tabindex]=\"fieldsetData.tabindex\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && hasLegendComponent()\"\n [legendRef]=\"legendTemplate\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\">\n <ng-template #legendTemplate>\n <ng-content select=\"desy-legend\"></ng-content>\n </ng-template>\n </desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && legendRef\"\n [legendRef]=\"legendRef\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && legendData\"\n [legendData]=\"{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n <desy-fieldset *ngIf=\"!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText\"\n [legendText]=\"legendText\"\n [caller]=\"innerHtml\"\n [errorId]=\"getErrorId()\"\n [describedBy]=\"[ getHintId(), getErrorId()] | makeHtmlList:null\"\n role=\"group\"></desy-fieldset>\n</ng-container>\n\n<ng-container *ngIf=\"!hasFieldset()\">\n <ng-container *ngTemplateOutlet=\"innerHtml\"></ng-container>\n</ng-container>\n",
178
+ providers: [
179
+ {
180
+ provide: NG_VALUE_ACCESSOR,
181
+ useExisting: forwardRef(() => DateInputComponent),
182
+ multi: true
183
+ }
184
+ ]
185
+ },] }
186
+ ];
187
+ DateInputComponent.ctorParameters = () => [
188
+ { type: ControlContainer, decorators: [{ type: Optional }] }
189
+ ];
190
+ DateInputComponent.propDecorators = {
191
+ ngModelGroup: [{ type: Input }],
192
+ items: [{ type: Input }],
193
+ itemsChange: [{ type: Output }],
194
+ namePrefix: [{ type: Input }],
195
+ classes: [{ type: Input }],
196
+ errorMessage: [{ type: Input }],
197
+ id: [{ type: Input }],
198
+ cfg: [{ type: HostBinding, args: ['class.c-form-group',] }],
199
+ cfgr: [{ type: HostBinding, args: ['class.c-form-group--error',] }],
200
+ formGroupClasses: [{ type: Input }, { type: HostBinding, args: ['class',] }],
201
+ fieldsetComponent: [{ type: ContentChildren, args: [FieldsetComponent,] }],
202
+ legendComponent: [{ type: ContentChildren, args: [LegendComponent,] }],
203
+ dateInputItemComponents: [{ type: ContentChildren, args: [DateInputItemComponent,] }],
204
+ fieldsetData: [{ type: Input }],
205
+ legendRef: [{ type: Input }],
206
+ legendData: [{ type: Input }],
207
+ legendText: [{ type: Input }],
208
+ innerHtml: [{ type: ViewChild, args: ['innerHtml', { static: true },] }]
209
+ };
210
+ __decorate([
211
+ DesyOnInputChange('onExternalChange')
212
+ ], DateInputComponent.prototype, "items", void 0);
213
+ __decorate([
214
+ DesyOnInputChange('onExternalChange')
215
+ ], DateInputComponent.prototype, "namePrefix", void 0);
216
+ __decorate([
217
+ DesyContentChild({ onSetCallbackName: 'overrideFieldsetParams' })
218
+ ], DateInputComponent.prototype, "fieldsetComponent", void 0);
219
+ __decorate([
220
+ DesyContentChild()
221
+ ], DateInputComponent.prototype, "legendComponent", void 0);
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LWZvcm1zL2NvbXBvbmVudHMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQUUsWUFBWSxFQUM3QixVQUFVLEVBQ1YsS0FBSyxFQUVMLFFBQVEsRUFBRSxNQUFNLEVBR2hCLFNBQVMsRUFDVCxXQUFXLEVBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNC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QixDQUFDLGtCQUFrQixDQUFDO2lEQUNGO0FBSTNCO0lBRFIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7c0RBQ1Y7QUFVUTtJQURuQyxnQkFBZ0IsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixFQUFDLENBQUM7NkRBQ1E7QUFHdkM7SUFEakMsZ0JBQWdCLEVBQUU7MkRBQ2dEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3B0aW9uYWwsIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBIb3N0QmluZGluZyxcbiAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZHNldERhdGEsIExlZ2VuZERhdGEsIEl0ZW1EYXRlSW5wdXREYXRhLCBMYWJlbERhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IExlZ2VuZENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkc2V0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkc2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcbmltcG9ydCB7IERlc3lDb250ZW50Q2hpbGQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcbmltcG9ydCB7IERhdGVJbnB1dERheUNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS1pbnB1dC1kYXkvZGF0ZS1pbnB1dC1kYXkuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVJbnB1dE1vbnRoQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LW1vbnRoL2RhdGUtaW5wdXQtbW9udGguY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVJbnB1dFllYXJDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtaW5wdXQteWVhci9kYXRlLWlucHV0LXllYXIuY29tcG9uZW50JztcbmltcG9ydCB7TWFrZUh0bWxMaXN0UGlwZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL21ha2UtaHRtbC1saXN0LnBpcGUnO1xuaW1wb3J0IHtEZXN5T25JbnB1dENoYW5nZX0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1vbi1pbnB1dC1jaGFuZ2UuZGVjb3JhdG9yJztcbmltcG9ydCB7IERhdGVJbnB1dERpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtaW5wdXQtZGl2aWRlci9kYXRlLWlucHV0LWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFN0cmluZ1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL3N0cmluZy11dGlscyc7XG5pbXBvcnQgeyBEYXRlSW5wdXRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWlucHV0LWl0ZW0vZGF0ZS1pbnB1dC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktZGF0ZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0ZUlucHV0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQ29tcG9uZW50PGFueT4gaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMge1xuXG4gIHByaXZhdGUgc3RhdGljIGRlZmF1bHRJdGVtcyA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnZGF5JyxcbiAgICAgIGNsYXNzZXM6ICd3LTE0JyxcbiAgICAgIG1heGxlbmd0aDogMlxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ21vbnRoJyxcbiAgICAgIGNsYXNzZXM6ICd3LTE0JyxcbiAgICAgIG1heGxlbmd0aDogMlxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3llYXInLFxuICAgICAgY2xhc3NlczogJ3ctMjAnLFxuICAgICAgbWF4bGVuZ3RoOiA0XG4gICAgfVxuICBdO1xuXG4gIEBJbnB1dCgpIG5nTW9kZWxHcm91cDogc3RyaW5nO1xuXG4gIEBEZXN5T25JbnB1dENoYW5nZSgnb25FeHRlcm5hbENoYW5nZScpXG4gIEBJbnB1dCgpIGl0ZW1zOiBJdGVtRGF0ZUlucHV0RGF0YVtdO1xuICBAT3V0cHV0KCkgaXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJdGVtRGF0ZUlucHV0RGF0YVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbURhdGVJbnB1dERhdGFbXT4oKTtcblxuICBARGVzeU9uSW5wdXRDaGFuZ2UoJ29uRXh0ZXJuYWxDaGFuZ2UnKVxuICBASW5wdXQoKSBuYW1lUHJlZml4OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XG4gIC8vICBmb3JtIGdyb3VwIGNsYXNzIC0gYXNpZ25hciBjbGFzZXMgYSBsYSBldGlxdWV0YSBkZXN5LWlucHV0XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYy1mb3JtLWdyb3VwJykgY2ZnID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jLWZvcm0tZ3JvdXAtLWVycm9yJykgY2ZncjogYm9vbGVhbjtcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGZvcm1Hcm91cENsYXNzZXM6IGFueTtcblxuICBARGVzeUNvbnRlbnRDaGlsZCh7IG9uU2V0Q2FsbGJhY2tOYW1lOiAnb3ZlcnJpZGVGaWVsZHNldFBhcmFtcyd9KVxuICBAQ29udGVudENoaWxkcmVuKEZpZWxkc2V0Q29tcG9uZW50KSBmaWVsZHNldENvbXBvbmVudDogRmllbGRzZXRDb21wb25lbnQ7XG5cbiAgQERlc3lDb250ZW50Q2hpbGQoKVxuICBAQ29udGVudENoaWxkcmVuKExlZ2VuZENvbXBvbmVudCkgbGVnZW5kQ29tcG9uZW50OiBMZWdlbmRDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihEYXRlSW5wdXRJdGVtQ29tcG9uZW50KSBkYXRlSW5wdXRJdGVtQ29tcG9uZW50czogUXVlcnlMaXN0PERhdGVJbnB1dEl0ZW1Db21wb25lbnQ+O1xuXG4gIC8qKlxuICAgKiBmaWVsZHNldCwgZGlmZXJlbnRlcyBmb3JtYXMgZGUgaW1wbGVtZW50YXIsIGVudW1lcmFkYXMgcG9yIHByaW9yaWRhZFxuICAgKiAxKSBpbmNsdWlyIG9iamV0byBGaWVsZHNldERhdGEgKGludGVyZmF6IGV4cHVlc3RhKVxuICAgKiAyKSBpbmNsdWlyIHRlbXBsYXRlIGxlZ2VuZFxuICAgKiAzKSBpbmNsdWlyIGxlZ2VuZERhdGEgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1bmEgbGVnZW5kYSBjb24gbG9zIHBhcmFtZXRyb3MgcGFzYWRvcyAgKGludGVyZmF6IGV4cHVlc3RhKVxuICAgKiA0KSBpbmNsdWlyIGxlZ2VuZFRleHQgLSBpbmNsdWlyIHVuIGZpZWxkc2V0IGNvbiB1biB0ZXh0byBlbiBsYSBsZWdlbmRhXG4gICAqL1xuICBASW5wdXQoKSBmaWVsZHNldERhdGE6IEZpZWxkc2V0RGF0YTtcbiAgQElucHV0KCkgbGVnZW5kUmVmOiBUZW1wbGF0ZVJlZjxMZWdlbmRDb21wb25lbnQ+O1xuICBASW5wdXQoKSBsZWdlbmREYXRhOiBMZWdlbmREYXRhO1xuICBASW5wdXQoKSBsZWdlbmRUZXh0OiBzdHJpbmc7XG5cbiAgQFZpZXdDaGlsZCgnaW5uZXJIdG1sJywgeyBzdGF0aWM6IHRydWUgfSkgaW5uZXJIdG1sOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByaXZhdGUgY29udGVudEluaXQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcikge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuY2ZnciA9ICh0aGlzLmhhc0Vycm9yc01lc3NhZ2UoKSB8fCB0aGlzLmZvcm1Hcm91cENsYXNzZXMgPT09ICdjLWZvcm0tZ3JvdXAtLWVycm9yJyk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50SW5pdCA9IHRydWU7XG4gIH1cblxuICBpbml0RGVmYXVsdEl0ZW1zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pdGVtcykge1xuICAgICAgdGhpcy5pdGVtcyA9IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdkw61hJyxcbiAgICAgICAgICBjbGFzc2VzOiAndy0xNCcsXG4gICAgICAgICAgbWF4bGVuZ3RoOiAyXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnbWVzJyxcbiAgICAgICAgICBjbGFzc2VzOiAndy0xNCcsXG4gICAgICAgICAgbWF4bGVuZ3RoOiAyXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnYcOxbycsXG4gICAgICAgICAgY2xhc3NlczogJ3ctMjAnLFxuICAgICAgICAgIG1heGxlbmd0aDogNFxuICAgICAgICB9XG4gICAgICBdO1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLmdldEl0ZW1zKCk7XG4gICAgICBpdGVtcy5mb3JFYWNoKGl0ZW0gPT4gaXRlbS52YWx1ZSA9IHRoaXMudmFsdWVbdGhpcy5nZXRJdGVtTmFtZShpdGVtKV0pO1xuXG4gICAgICBpZiAodGhpcy5pdGVtcykge1xuICAgICAgICB0aGlzLml0ZW1zQ2hhbmdlLmVtaXQodGhpcy5pdGVtcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICB9XG5cbiAgb3ZlcnJpZGVGaWVsZHNldFBhcmFtcyhmaWVsZHNldDogRmllbGRzZXRDb21wb25lbnQpOiB2b2lkIHtcbiAgICBmaWVsZHNldC5jYWxsZXIgPSB0aGlzLmlubmVySHRtbDtcbiAgICBmaWVsZHNldC5lcnJvcklkID0gdGhpcy5nZXRFcnJvcklkKCk7XG4gICAgZmllbGRzZXQuZGVzY3JpYmVkQnkgPSBuZXcgTWFrZUh0bWxMaXN0UGlwZSgpLnRyYW5zZm9ybShbdGhpcy5nZXRIaW50SWQoKSwgdGhpcy5nZXRFcnJvcklkKCldLCBudWxsKTtcbiAgICBmaWVsZHNldC5yb2xlID0gJ2dyb3VwJztcbiAgICBmaWVsZHNldC5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBvbkV4dGVybmFsQ2hhbmdlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb250ZW50SW5pdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHt9O1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5nZXRJdGVtcygpO1xuICAgIGl0ZW1zLmZvckVhY2goaXRlbSA9PiB0aGlzLnZhbHVlW3RoaXMuZ2V0SXRlbU5hbWUoaXRlbSldID0gaXRlbS52YWx1ZSk7XG4gICAgY29uc3QgbmV3VmFsID0ge307XG4gICAgT2JqZWN0LmFzc2lnbihuZXdWYWwsIHRoaXMudmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UobmV3VmFsKTtcbiAgfVxuXG4gIG9uSW50ZXJuYWxDaGFuZ2UoaXRlbTogSXRlbURhdGVJbnB1dERhdGEsIGl0ZW1WYWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgaXRlbU5hbWUgPSB0aGlzLmdldEl0ZW1OYW1lKGl0ZW0pO1xuICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHt9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZhbHVlW2l0ZW1OYW1lXSAhPT0gaXRlbVZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlW2l0ZW1OYW1lXSA9IGl0ZW1WYWx1ZSA/ICtpdGVtVmFsdWUgOiB1bmRlZmluZWQ7XG4gICAgICBjb25zdCBuZXdWYWwgPSB7fTtcbiAgICAgIE9iamVjdC5hc3NpZ24obmV3VmFsLCB0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMub25DaGFuZ2UobmV3VmFsKTtcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0RGF5Q29tcG9uZW50IHx8IGl0ZW0gaW5zdGFuY2VvZiBEYXRlSW5wdXRNb250aENvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0WWVhckNvbXBvbmVudCkge1xuICAgICAgICBpdGVtLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbVZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuaXRlbXMpIHtcbiAgICAgICAgaXRlbS52YWx1ZSA9IGl0ZW1WYWx1ZTtcbiAgICAgICAgdGhpcy5pdGVtc0NoYW5nZS5lbWl0KHRoaXMuaXRlbXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhhc0ZpZWxkc2V0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmhhc0ZpZWxkc2V0Q29tcG9uZW50KCkgfHwgdGhpcy5oYXNMZWdlbmRDb21wb25lbnQoKSB8fCB0aGlzLmxlZ2VuZFJlZiB8fCB0aGlzLmZpZWxkc2V0RGF0YVxuICAgICAgfHwgKHRoaXMubGVnZW5kRGF0YSAmJiAodGhpcy5sZWdlbmREYXRhLnRleHQgfHwgdGhpcy5sZWdlbmREYXRhLmh0bWwpKSB8fCB0aGlzLmxlZ2VuZFRleHQpO1xuICB9XG5cbiAgaGFzRmllbGRzZXRDb21wb25lbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5maWVsZHNldENvbXBvbmVudDtcbiAgfVxuXG4gIGhhc0xlZ2VuZENvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmxlZ2VuZENvbXBvbmVudDtcbiAgfVxuXG4gIGhhc0Vycm9yTWVzc2FnZUNvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmVycm9yTWVzc2FnZUNvbXBvbmVudDtcbiAgfVxuXG4gIGdldEl0ZW1OYW1lKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lUHJlZml4ID8gdGhpcy5uYW1lUHJlZml4ICsgJy0nICsgaXRlbS5uYW1lIDogaXRlbS5uYW1lO1xuICB9XG5cbiAgZ2V0SXRlbUxhYmVsKGl0ZW06IEl0ZW1EYXRlSW5wdXREYXRhKTogTGFiZWxEYXRhIHtcbiAgICBsZXQgbGFiZWxEYXRhOiBMYWJlbERhdGE7XG4gICAgaWYgKGl0ZW0ubGFiZWxEYXRhICYmIChpdGVtLmxhYmVsRGF0YS50ZXh0IHx8IGl0ZW0ubGFiZWxEYXRhLmh0bWwpKSB7XG4gICAgICBsYWJlbERhdGEgPSBpdGVtLmxhYmVsRGF0YTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGFiZWxEYXRhID0ge1xuICAgICAgICB0ZXh0OiBpdGVtLmxhYmVsVGV4dCA/IGl0ZW0ubGFiZWxUZXh0IDogKGl0ZW0ubmFtZSA/IGl0ZW0ubmFtZS50b1VwcGVyQ2FzZSgpIDogbnVsbClcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBsYWJlbERhdGE7XG4gIH1cblxuICBnZXRJdGVtTGFiZWxSZWYoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICByZXR1cm4gaXRlbSBpbnN0YW5jZW9mIERhdGVJbnB1dERheUNvbXBvbmVudCB8fCBpdGVtIGluc3RhbmNlb2YgRGF0ZUlucHV0TW9udGhDb21wb25lbnQgfHwgaXRlbSBpbnN0YW5jZW9mIERhdGVJbnB1dFllYXJDb21wb25lbnQgP1xuICAgICAgaXRlbS5sYWJlbFJlZiA6IG51bGw7XG4gIH1cblxuICBnZXRJdGVtcygpOiBJdGVtRGF0ZUlucHV0RGF0YVtdIHtcbiAgICBsZXQgaXRlbXM7XG4gICAgaWYgKHRoaXMuZGF0ZUlucHV0SXRlbUNvbXBvbmVudHMgJiYgdGhpcy5kYXRlSW5wdXRJdGVtQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICBpdGVtcyA9IHRoaXMuZGF0ZUlucHV0SXRlbUNvbXBvbmVudHMudG9BcnJheSgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pdGVtcykge1xuICAgICAgaXRlbXMgPSB0aGlzLml0ZW1zO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb250ZW50SW5pdCkge1xuICAgICAgaXRlbXMgPSBEYXRlSW5wdXRDb21wb25lbnQuZGVmYXVsdEl0ZW1zO1xuICAgIH0gZWxzZSB7XG4gICAgICBpdGVtcyA9IFtdO1xuICAgIH1cblxuXG4gICAgcmV0dXJuIGl0ZW1zO1xuICB9XG5cbiAgZ2V0SXRlbURpdmlkZXJUZW1wbGF0ZShpdGVtOiBJdGVtRGF0ZUlucHV0RGF0YSk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgIHJldHVybiBpdGVtLmRpdmlkZXIgaW5zdGFuY2VvZiBEYXRlSW5wdXREaXZpZGVyQ29tcG9uZW50ID8gaXRlbS5kaXZpZGVyLmRpdmlkZXJDb250ZW50IDogbnVsbDtcbiAgfVxuICBnZXRJdGVtRGl2aWRlckh0bWwoaXRlbTogSXRlbURhdGVJbnB1dERhdGEpOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtLmRpdmlkZXIuaHRtbCA/IGl0ZW0uZGl2aWRlci5odG1sIDogYDxwPiR7IFN0cmluZ1V0aWxzLmVzY2FwZUh0bWwoaXRlbS5kaXZpZGVyLnRleHQpIH08L3A+YDtcbiAgfVxuXG59XG4iXX0=