@energycap/components 0.41.1-ECAP-26841-date-input-features.20250108-1149 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/{esm2020 → esm2022}/energycap-components.mjs +4 -4
  2. package/esm2022/lib/components.module.mjs +418 -0
  3. package/esm2022/lib/controls/banner/banner.component.mjs +109 -0
  4. package/esm2022/lib/controls/button/button.component.mjs +106 -0
  5. package/esm2022/lib/controls/button/copy-button-base.directive.mjs +67 -0
  6. package/{esm2020 → esm2022}/lib/controls/button/copy-button.directive.mjs +28 -28
  7. package/esm2022/lib/controls/button/copy-table-button.directive.mjs +43 -0
  8. package/esm2022/lib/controls/calendar/calendar-item.component.mjs +59 -0
  9. package/esm2022/lib/controls/calendar/calendar.component.mjs +200 -0
  10. package/esm2022/lib/controls/calendar/calendar.types.mjs +4 -0
  11. package/esm2022/lib/controls/checkbox/checkbox.component.mjs +140 -0
  12. package/{esm2020 → esm2022}/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +38 -38
  13. package/esm2022/lib/controls/combobox/combobox.component.mjs +879 -0
  14. package/esm2022/lib/controls/date-input/date-input.component.mjs +256 -0
  15. package/esm2022/lib/controls/dropdown/dropdown.component.mjs +243 -0
  16. package/esm2022/lib/controls/file-upload/file-upload.component.mjs +261 -0
  17. package/esm2022/lib/controls/form-control/form-control.component.mjs +104 -0
  18. package/esm2022/lib/controls/form-control-base.mjs +151 -0
  19. package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +136 -0
  20. package/esm2022/lib/controls/form-group/form-group.component.mjs +261 -0
  21. package/{esm2020 → esm2022}/lib/controls/help-popover/help-popover.component.mjs +31 -31
  22. package/esm2022/lib/controls/item-picker/item-picker.component.mjs +329 -0
  23. package/{esm2020 → esm2022}/lib/controls/link-button/link-button.component.mjs +11 -11
  24. package/esm2022/lib/controls/menu/menu.component.mjs +485 -0
  25. package/{esm2020 → esm2022}/lib/controls/navigation/link-item.mjs +1 -1
  26. package/esm2022/lib/controls/navigation/nav-group.mjs +39 -0
  27. package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +92 -0
  28. package/{esm2020 → esm2022}/lib/controls/navigation/nav-item.mjs +1 -1
  29. package/esm2022/lib/controls/numericbox/numericbox.component.mjs +372 -0
  30. package/esm2022/lib/controls/popover/popover.component.mjs +117 -0
  31. package/{esm2020 → esm2022}/lib/controls/radio-button/radio-button-option.mjs +2 -2
  32. package/esm2022/lib/controls/radio-button/radio-button.component.mjs +82 -0
  33. package/esm2022/lib/controls/select/select.component.mjs +88 -0
  34. package/esm2022/lib/controls/tabs/tabs.component.mjs +47 -0
  35. package/esm2022/lib/controls/textbox/textbox.component.mjs +155 -0
  36. package/esm2022/lib/core/cache.service.mjs +105 -0
  37. package/esm2022/lib/core/custom-validators.mjs +29 -0
  38. package/esm2022/lib/core/date-time-helper.mjs +220 -0
  39. package/esm2022/lib/core/error.service.mjs +61 -0
  40. package/esm2022/lib/core/router-helper.service.mjs +111 -0
  41. package/esm2022/lib/core/scroll.service.mjs +89 -0
  42. package/{esm2020 → esm2022}/lib/core/telemetry-tracker.service.mjs +16 -16
  43. package/{esm2020 → esm2022}/lib/core/telemetry.service.mjs +38 -38
  44. package/esm2022/lib/core/validation-message.service.mjs +185 -0
  45. package/{esm2020 → esm2022}/lib/core/validation-patterns.mjs +30 -30
  46. package/esm2022/lib/core/window.service.mjs +186 -0
  47. package/esm2022/lib/display/app-bar/app-bar.component.mjs +46 -0
  48. package/esm2022/lib/display/avatar/avatar.component.mjs +67 -0
  49. package/esm2022/lib/display/avatar/avatar.service.mjs +64 -0
  50. package/esm2022/lib/display/confirm/confirm.component.mjs +168 -0
  51. package/{esm2020 → esm2022}/lib/display/dialog/dialog-content.mjs +1 -1
  52. package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +63 -0
  53. package/{esm2020 → esm2022}/lib/display/dialog/dialog-types.mjs +76 -76
  54. package/esm2022/lib/display/dialog/dialog.component.mjs +281 -0
  55. package/{esm2020 → esm2022}/lib/display/dialog/dialog.service.mjs +71 -71
  56. package/{esm2020 → esm2022}/lib/display/help/help-types.mjs +1 -1
  57. package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +111 -0
  58. package/{esm2020 → esm2022}/lib/display/hierarchy/hierarchy-mocks.spec.mjs +53 -53
  59. package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +61 -0
  60. package/esm2022/lib/display/item-display/item-display.component.mjs +81 -0
  61. package/esm2022/lib/display/json-display/json-display.component.mjs +47 -0
  62. package/esm2022/lib/display/resizable/resizable-base.mjs +120 -0
  63. package/{esm2020 → esm2022}/lib/display/resizable/resizable.component.mjs +52 -52
  64. package/{esm2020 → esm2022}/lib/display/spinner/spinner.component.mjs +12 -12
  65. package/esm2022/lib/display/splash/splash.component.mjs +42 -0
  66. package/{esm2020 → esm2022}/lib/display/splash/splash.service.mjs +35 -35
  67. package/{esm2020 → esm2022}/lib/display/table/resizable-column.component.mjs +20 -20
  68. package/esm2022/lib/display/table/resizable-table.directive.mjs +227 -0
  69. package/esm2022/lib/display/table/searchable-table.component.mjs +342 -0
  70. package/{esm2020 → esm2022}/lib/display/table/table-detail-row.component.mjs +19 -19
  71. package/esm2022/lib/display/table/table-locked-column.component.mjs +58 -0
  72. package/{esm2020 → esm2022}/lib/display/table/table-master-header-row.component.mjs +14 -14
  73. package/esm2022/lib/display/table/table-master-row.component.mjs +163 -0
  74. package/esm2022/lib/display/table/table-pagination.component.mjs +155 -0
  75. package/esm2022/lib/display/table/table-selectable-row.component.mjs +235 -0
  76. package/esm2022/lib/display/table/table.component.mjs +249 -0
  77. package/esm2022/lib/display/tags/tag.mjs +18 -0
  78. package/esm2022/lib/display/tags/tags.component.mjs +77 -0
  79. package/esm2022/lib/display/toast/toast/toast.component.mjs +77 -0
  80. package/{esm2020 → esm2022}/lib/display/toast/toast-types.mjs +7 -7
  81. package/{esm2020 → esm2022}/lib/display/toast/toast.service.mjs +35 -35
  82. package/esm2022/lib/display/toast/toaster/toaster.component.mjs +114 -0
  83. package/{esm2020 → esm2022}/lib/display/tooltip/tooltip.component.mjs +28 -28
  84. package/{esm2020 → esm2022}/lib/display/tooltip/tooltip.service.mjs +78 -78
  85. package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +173 -0
  86. package/{esm2020 → esm2022}/lib/display/tour/tour-types.mjs +33 -33
  87. package/esm2022/lib/display/tour/tour.component.mjs +398 -0
  88. package/esm2022/lib/display/tour/tour.service.mjs +75 -0
  89. package/esm2022/lib/display/tree/tree.component.mjs +135 -0
  90. package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +58 -0
  91. package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +32 -0
  92. package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +111 -0
  93. package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +166 -0
  94. package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +50 -0
  95. package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +30 -0
  96. package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +62 -0
  97. package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +48 -0
  98. package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +41 -0
  99. package/esm2022/lib/shared/display.mjs +6 -0
  100. package/esm2022/lib/shared/form-group.helper.mjs +67 -0
  101. package/esm2022/lib/shared/json-helper.mjs +19 -0
  102. package/esm2022/lib/shared/lodash-helper.mjs +52 -0
  103. package/esm2022/lib/shared/page/page-base/page-base.component.mjs +387 -0
  104. package/{esm2020 → esm2022}/lib/shared/page/page-statuses.mjs +22 -22
  105. package/{esm2020 → esm2022}/lib/shared/page/page-title/page-title.component.mjs +23 -23
  106. package/esm2022/lib/shared/page/page-view/page-view.component.mjs +147 -0
  107. package/{esm2020 → esm2022}/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +16 -16
  108. package/{esm2020 → esm2022}/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +16 -16
  109. package/{esm2020 → esm2022}/lib/shared/testing/page-base-component-test-helper.spec.mjs +37 -37
  110. package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +98 -0
  111. package/{esm2020 → esm2022}/lib/shared/testing/public-mocks.spec.mjs +148 -148
  112. package/{esm2020 → esm2022}/lib/shared/testing/spy-factory.spec.mjs +39 -39
  113. package/{esm2020 → esm2022}/lib/shared/testing/translation-mocks.spec.mjs +56 -56
  114. package/{esm2020 → esm2022}/lib/shared/user-preference.service.mjs +17 -17
  115. package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +246 -0
  116. package/{esm2020 → esm2022}/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +68 -68
  117. package/{esm2020 → esm2022}/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +18 -18
  118. package/esm2022/public-api.mjs +115 -0
  119. package/{fesm2020 → fesm2022}/energycap-components.mjs +11819 -12974
  120. package/fesm2022/energycap-components.mjs.map +1 -0
  121. package/index.d.ts +5 -5
  122. package/lib/components.module.d.ts +91 -92
  123. package/lib/controls/banner/banner.component.d.ts +50 -50
  124. package/lib/controls/button/button.component.d.ts +78 -78
  125. package/lib/controls/button/copy-button-base.directive.d.ts +20 -20
  126. package/lib/controls/button/copy-button.directive.d.ts +14 -14
  127. package/lib/controls/button/copy-table-button.directive.d.ts +19 -19
  128. package/lib/controls/calendar/calendar-item.component.d.ts +17 -22
  129. package/lib/controls/calendar/calendar.component.d.ts +54 -52
  130. package/lib/controls/calendar/calendar.types.d.ts +7 -11
  131. package/lib/controls/checkbox/checkbox.component.d.ts +65 -65
  132. package/lib/controls/collapsible-toggle/collapsible-toggle.component.d.ts +25 -25
  133. package/lib/controls/combobox/combobox.component.d.ts +418 -418
  134. package/lib/controls/date-input/date-input.component.d.ts +80 -115
  135. package/lib/controls/dropdown/dropdown.component.d.ts +161 -161
  136. package/lib/controls/file-upload/file-upload.component.d.ts +124 -124
  137. package/lib/controls/form-control/form-control.component.d.ts +30 -28
  138. package/lib/controls/form-control-base.d.ts +110 -110
  139. package/lib/controls/form-control-label/form-control-label.component.d.ts +73 -73
  140. package/lib/controls/form-group/form-group.component.d.ts +105 -105
  141. package/lib/controls/help-popover/help-popover.component.d.ts +11 -11
  142. package/lib/controls/item-picker/item-picker.component.d.ts +164 -164
  143. package/lib/controls/link-button/link-button.component.d.ts +5 -5
  144. package/lib/controls/menu/menu.component.d.ts +255 -255
  145. package/lib/controls/navigation/link-item.d.ts +32 -32
  146. package/lib/controls/navigation/nav-group.d.ts +18 -18
  147. package/lib/controls/navigation/nav-item-active.directive.d.ts +42 -42
  148. package/lib/controls/navigation/nav-item.d.ts +31 -31
  149. package/lib/controls/numericbox/numericbox.component.d.ts +148 -148
  150. package/lib/controls/popover/popover.component.d.ts +51 -51
  151. package/lib/controls/radio-button/radio-button-option.d.ts +19 -19
  152. package/lib/controls/radio-button/radio-button.component.d.ts +53 -53
  153. package/lib/controls/select/select.component.d.ts +44 -44
  154. package/lib/controls/tabs/tabs.component.d.ts +30 -30
  155. package/lib/controls/textbox/textbox.component.d.ts +107 -107
  156. package/lib/core/cache.service.d.ts +33 -33
  157. package/lib/core/custom-validators.d.ts +20 -20
  158. package/lib/core/date-time-helper.d.ts +101 -101
  159. package/lib/core/error.service.d.ts +20 -20
  160. package/lib/core/router-helper.service.d.ts +48 -48
  161. package/lib/core/scroll.service.d.ts +36 -36
  162. package/lib/core/telemetry-tracker.service.d.ts +13 -13
  163. package/lib/core/telemetry.service.d.ts +31 -31
  164. package/lib/core/validation-message.service.d.ts +26 -26
  165. package/lib/core/validation-patterns.d.ts +22 -22
  166. package/lib/core/window.service.d.ts +116 -116
  167. package/lib/display/app-bar/app-bar.component.d.ts +20 -20
  168. package/lib/display/avatar/avatar.component.d.ts +35 -35
  169. package/lib/display/avatar/avatar.service.d.ts +24 -24
  170. package/lib/display/confirm/confirm.component.d.ts +123 -123
  171. package/lib/display/dialog/dialog-content.d.ts +19 -19
  172. package/lib/display/dialog/dialog-group/dialog-group.component.d.ts +32 -32
  173. package/lib/display/dialog/dialog-types.d.ts +130 -130
  174. package/lib/display/dialog/dialog.component.d.ts +120 -120
  175. package/lib/display/dialog/dialog.service.d.ts +48 -48
  176. package/lib/display/help/help-types.d.ts +33 -33
  177. package/lib/display/hierarchy/hierarchy-base.d.ts +97 -97
  178. package/lib/display/hierarchy/hierarchy-mocks.spec.d.ts +53 -53
  179. package/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.d.ts +34 -34
  180. package/lib/display/item-display/item-display.component.d.ts +43 -43
  181. package/lib/display/json-display/json-display.component.d.ts +16 -16
  182. package/lib/display/resizable/resizable-base.d.ts +67 -67
  183. package/lib/display/resizable/resizable.component.d.ts +31 -31
  184. package/lib/display/spinner/spinner.component.d.ts +5 -5
  185. package/lib/display/splash/splash.component.d.ts +16 -16
  186. package/lib/display/splash/splash.service.d.ts +22 -22
  187. package/lib/display/table/resizable-column.component.d.ts +10 -10
  188. package/lib/display/table/resizable-table.directive.d.ts +93 -93
  189. package/lib/display/table/searchable-table.component.d.ts +206 -206
  190. package/lib/display/table/table-detail-row.component.d.ts +8 -8
  191. package/lib/display/table/table-locked-column.component.d.ts +20 -20
  192. package/lib/display/table/table-master-header-row.component.d.ts +9 -9
  193. package/lib/display/table/table-master-row.component.d.ts +113 -113
  194. package/lib/display/table/table-pagination.component.d.ts +91 -91
  195. package/lib/display/table/table-selectable-row.component.d.ts +102 -102
  196. package/lib/display/table/table.component.d.ts +121 -121
  197. package/lib/display/tags/tag.d.ts +18 -18
  198. package/lib/display/tags/tags.component.d.ts +48 -48
  199. package/lib/display/toast/toast/toast.component.d.ts +23 -23
  200. package/lib/display/toast/toast-types.d.ts +24 -24
  201. package/lib/display/toast/toast.service.d.ts +20 -20
  202. package/lib/display/toast/toaster/toaster.component.d.ts +35 -35
  203. package/lib/display/tooltip/tooltip.component.d.ts +70 -70
  204. package/lib/display/tooltip/tooltip.service.d.ts +16 -16
  205. package/lib/display/tooltip-directive/tooltip.directive.d.ts +44 -44
  206. package/lib/display/tour/tour-types.d.ts +70 -70
  207. package/lib/display/tour/tour.component.d.ts +147 -147
  208. package/lib/display/tour/tour.service.d.ts +38 -38
  209. package/lib/display/tree/tree.component.d.ts +75 -75
  210. package/lib/display/view-overlay/view-overlay.component.d.ts +38 -38
  211. package/lib/shared/directives/click-area-for/click-area-for.directive.d.ts +14 -14
  212. package/lib/shared/directives/if-viewport-width/if-viewport-width.directive.d.ts +60 -60
  213. package/lib/shared/directives/popup/popup-container.directive.d.ts +101 -101
  214. package/lib/shared/display/pipes/date-display.pipe.d.ts +21 -21
  215. package/lib/shared/display/pipes/highlight-text.pipe.d.ts +9 -9
  216. package/lib/shared/display/pipes/relative-date.pipe.d.ts +36 -36
  217. package/lib/shared/display/pipes/row-count.pipe.d.ts +23 -23
  218. package/lib/shared/display/pipes/time-display.pipe.d.ts +18 -18
  219. package/lib/shared/display.d.ts +42 -42
  220. package/lib/shared/form-group.helper.d.ts +31 -31
  221. package/lib/shared/json-helper.d.ts +7 -7
  222. package/lib/shared/lodash-helper.d.ts +18 -18
  223. package/lib/shared/page/page-base/page-base.component.d.ts +259 -259
  224. package/lib/shared/page/page-statuses.d.ts +13 -13
  225. package/lib/shared/page/page-title/page-title.component.d.ts +9 -9
  226. package/lib/shared/page/page-view/page-view.component.d.ts +102 -102
  227. package/lib/shared/testing/copy-button-base-test-injector-factory.spec.d.ts +4 -4
  228. package/lib/shared/testing/hierarchy-base-test-injector-factory.spec.d.ts +4 -4
  229. package/lib/shared/testing/page-base-component-test-helper.spec.d.ts +30 -30
  230. package/lib/shared/testing/page-base-component-test-injector-factory.spec.d.ts +28 -28
  231. package/lib/shared/testing/public-mocks.spec.d.ts +90 -90
  232. package/lib/shared/testing/spy-factory.spec.d.ts +27 -27
  233. package/lib/shared/testing/translation-mocks.spec.d.ts +30 -30
  234. package/lib/shared/user-preference.service.d.ts +13 -13
  235. package/lib/shared/wizard/wizard-base/wizard-base.component.d.ts +134 -134
  236. package/lib/shared/wizard/wizard-buttons/wizard-buttons.component.d.ts +27 -27
  237. package/lib/shared/wizard/wizard-progress/wizard-progress.component.d.ts +10 -10
  238. package/package.json +12 -18
  239. package/public-api.d.ts +111 -113
  240. package/schematics/rxjs-7-upgrade/index.d.ts +3 -3
  241. package/schematics/rxjs-7-upgrade/index.js +67 -67
  242. package/schematics/rxjs-7-upgrade/index.js.map +1 -1
  243. package/schematics/rxjs-7-upgrade/schema.d.ts +4 -4
  244. package/schematics/rxjs-7-upgrade/schema.js +2 -2
  245. package/schematics/utilities/typescript.d.ts +7 -7
  246. package/schematics/utilities/typescript.js +41 -41
  247. package/schematics/utilities/workspace.d.ts +8 -8
  248. package/schematics/utilities/workspace.js +71 -71
  249. package/schematics/utilities/workspace.js.map +1 -1
  250. package/src/assets/locales/en_US.json +1 -9
  251. package/esm2020/lib/components.module.mjs +0 -423
  252. package/esm2020/lib/controls/banner/banner.component.mjs +0 -109
  253. package/esm2020/lib/controls/button/button.component.mjs +0 -106
  254. package/esm2020/lib/controls/button/copy-button-base.directive.mjs +0 -67
  255. package/esm2020/lib/controls/button/copy-table-button.directive.mjs +0 -43
  256. package/esm2020/lib/controls/calendar/calendar-item.component.mjs +0 -91
  257. package/esm2020/lib/controls/calendar/calendar.component.mjs +0 -248
  258. package/esm2020/lib/controls/calendar/calendar.types.mjs +0 -2
  259. package/esm2020/lib/controls/checkbox/checkbox.component.mjs +0 -140
  260. package/esm2020/lib/controls/combobox/combobox.component.mjs +0 -879
  261. package/esm2020/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.mjs +0 -57
  262. package/esm2020/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.mjs +0 -62
  263. package/esm2020/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.mjs +0 -100
  264. package/esm2020/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.mjs +0 -101
  265. package/esm2020/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.mjs +0 -76
  266. package/esm2020/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.mjs +0 -79
  267. package/esm2020/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.mjs +0 -210
  268. package/esm2020/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.mjs +0 -81
  269. package/esm2020/lib/controls/date-input/date-input.component.mjs +0 -465
  270. package/esm2020/lib/controls/date-input/date-input.types.mjs +0 -44
  271. package/esm2020/lib/controls/dropdown/dropdown.component.mjs +0 -243
  272. package/esm2020/lib/controls/file-upload/file-upload.component.mjs +0 -261
  273. package/esm2020/lib/controls/form-control/form-control.component.mjs +0 -98
  274. package/esm2020/lib/controls/form-control-base.mjs +0 -151
  275. package/esm2020/lib/controls/form-control-label/form-control-label.component.mjs +0 -136
  276. package/esm2020/lib/controls/form-group/form-group.component.mjs +0 -261
  277. package/esm2020/lib/controls/item-picker/item-picker.component.mjs +0 -329
  278. package/esm2020/lib/controls/menu/menu.component.mjs +0 -485
  279. package/esm2020/lib/controls/navigation/nav-group.mjs +0 -39
  280. package/esm2020/lib/controls/navigation/nav-item-active.directive.mjs +0 -92
  281. package/esm2020/lib/controls/numericbox/numericbox.component.mjs +0 -372
  282. package/esm2020/lib/controls/popover/popover.component.mjs +0 -117
  283. package/esm2020/lib/controls/radio-button/radio-button.component.mjs +0 -82
  284. package/esm2020/lib/controls/select/select.component.mjs +0 -88
  285. package/esm2020/lib/controls/tabs/tabs.component.mjs +0 -47
  286. package/esm2020/lib/controls/textbox/textbox.component.mjs +0 -155
  287. package/esm2020/lib/core/cache.service.mjs +0 -105
  288. package/esm2020/lib/core/custom-validators.mjs +0 -29
  289. package/esm2020/lib/core/date-time-helper.mjs +0 -228
  290. package/esm2020/lib/core/error.service.mjs +0 -61
  291. package/esm2020/lib/core/router-helper.service.mjs +0 -111
  292. package/esm2020/lib/core/scroll.service.mjs +0 -89
  293. package/esm2020/lib/core/validation-message.service.mjs +0 -185
  294. package/esm2020/lib/core/window.service.mjs +0 -186
  295. package/esm2020/lib/display/app-bar/app-bar.component.mjs +0 -46
  296. package/esm2020/lib/display/avatar/avatar.component.mjs +0 -67
  297. package/esm2020/lib/display/avatar/avatar.service.mjs +0 -64
  298. package/esm2020/lib/display/confirm/confirm.component.mjs +0 -168
  299. package/esm2020/lib/display/dialog/dialog-group/dialog-group.component.mjs +0 -63
  300. package/esm2020/lib/display/dialog/dialog.component.mjs +0 -281
  301. package/esm2020/lib/display/hierarchy/hierarchy-base.mjs +0 -111
  302. package/esm2020/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +0 -61
  303. package/esm2020/lib/display/item-display/item-display.component.mjs +0 -81
  304. package/esm2020/lib/display/json-display/json-display.component.mjs +0 -47
  305. package/esm2020/lib/display/resizable/resizable-base.mjs +0 -120
  306. package/esm2020/lib/display/splash/splash.component.mjs +0 -42
  307. package/esm2020/lib/display/table/resizable-table.directive.mjs +0 -227
  308. package/esm2020/lib/display/table/searchable-table.component.mjs +0 -342
  309. package/esm2020/lib/display/table/table-locked-column.component.mjs +0 -58
  310. package/esm2020/lib/display/table/table-master-row.component.mjs +0 -163
  311. package/esm2020/lib/display/table/table-pagination.component.mjs +0 -155
  312. package/esm2020/lib/display/table/table-selectable-row.component.mjs +0 -235
  313. package/esm2020/lib/display/table/table.component.mjs +0 -249
  314. package/esm2020/lib/display/tags/tag.mjs +0 -18
  315. package/esm2020/lib/display/tags/tags.component.mjs +0 -77
  316. package/esm2020/lib/display/toast/toast/toast.component.mjs +0 -77
  317. package/esm2020/lib/display/toast/toaster/toaster.component.mjs +0 -114
  318. package/esm2020/lib/display/tooltip-directive/tooltip.directive.mjs +0 -173
  319. package/esm2020/lib/display/tour/tour.component.mjs +0 -398
  320. package/esm2020/lib/display/tour/tour.service.mjs +0 -75
  321. package/esm2020/lib/display/tree/tree.component.mjs +0 -135
  322. package/esm2020/lib/display/view-overlay/view-overlay.component.mjs +0 -58
  323. package/esm2020/lib/shared/directives/click-area-for/click-area-for.directive.mjs +0 -32
  324. package/esm2020/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +0 -111
  325. package/esm2020/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.mjs +0 -100
  326. package/esm2020/lib/shared/directives/popup/popup-container.directive.mjs +0 -163
  327. package/esm2020/lib/shared/display/pipes/date-display.pipe.mjs +0 -50
  328. package/esm2020/lib/shared/display/pipes/highlight-text.pipe.mjs +0 -30
  329. package/esm2020/lib/shared/display/pipes/relative-date.pipe.mjs +0 -62
  330. package/esm2020/lib/shared/display/pipes/row-count.pipe.mjs +0 -48
  331. package/esm2020/lib/shared/display/pipes/time-display.pipe.mjs +0 -41
  332. package/esm2020/lib/shared/display.mjs +0 -6
  333. package/esm2020/lib/shared/form-group.helper.mjs +0 -67
  334. package/esm2020/lib/shared/json-helper.mjs +0 -19
  335. package/esm2020/lib/shared/lodash-helper.mjs +0 -51
  336. package/esm2020/lib/shared/page/page-base/page-base.component.mjs +0 -387
  337. package/esm2020/lib/shared/page/page-view/page-view.component.mjs +0 -147
  338. package/esm2020/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +0 -98
  339. package/esm2020/lib/shared/wizard/wizard-base/wizard-base.component.mjs +0 -246
  340. package/esm2020/public-api.mjs +0 -117
  341. package/fesm2015/energycap-components.mjs +0 -13373
  342. package/fesm2015/energycap-components.mjs.map +0 -1
  343. package/fesm2020/energycap-components.mjs.map +0 -1
  344. package/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.d.ts +0 -42
  345. package/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.d.ts +0 -21
  346. package/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.d.ts +0 -21
  347. package/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.d.ts +0 -21
  348. package/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.d.ts +0 -18
  349. package/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.d.ts +0 -18
  350. package/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.d.ts +0 -21
  351. package/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.d.ts +0 -20
  352. package/lib/controls/date-input/date-input.types.d.ts +0 -62
  353. package/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.d.ts +0 -23
@@ -1,151 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { Subject } from "rxjs";
3
- import { takeUntil } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../core/validation-message.service";
6
- import * as i2 from "../shared/form-group.helper";
7
- /**
8
- * Base class for Reactive Form Controls, containing ECI-specific shared properties
9
- */
10
- export class FormControlBase {
11
- /**
12
- * Creates an instance of FormControlBase.
13
- */
14
- constructor(validationMessageService, formGroupHelper) {
15
- this.validationMessageService = validationMessageService;
16
- this.formGroupHelper = formGroupHelper;
17
- /**
18
- * If true, will focus the control's input when the view is intialized
19
- */
20
- this.autofocus = false;
21
- /**
22
- * The position of the form control label (top|bottom)
23
- */
24
- this.labelPosition = "top";
25
- /**
26
- * The id of the component. We use this to identify a control on focus events and help.
27
- */
28
- this.id = '';
29
- /**
30
- * The pending status of the control, can be used to tell the user the control is
31
- * awaiting data via a spinner or animation
32
- */
33
- this.pending = false;
34
- /**
35
- * Whether the input is a required field or not
36
- * @todo: Sometime in the future Angular makes it sound like this will be handled via the Reactive form When that happens this property can be removed
37
- */
38
- this.required = false;
39
- /**
40
- * The tabindex of the control
41
- */
42
- this.tabindex = 0;
43
- /**
44
- * When a help popover is present, allows the popover to be positioned in different locations.
45
- */
46
- this.helpPopoverPosition = 'top-left';
47
- /**
48
- * All current validation errors
49
- */
50
- this.validationErrors = "";
51
- /**
52
- * The id of the form controls input, getnerated from the components id.
53
- */
54
- this.inputId = '';
55
- /**
56
- * Notifies component subscriptions that component is destroyed.
57
- * Use with `takeUntil()` when subscribing to complete subscriptions
58
- * automatically.
59
- *
60
- * See:
61
- * [RxJs]{@link http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#instance-method-takeUntil}
62
- * [and this]{@link https://medium.com/@benlesh/rxjs-dont-unsubscribe-6753ed4fda87}
63
- * [and this]{@link https://netbasal.com/when-to-unsubscribe-in-angular-d61c6b21bad3}
64
- * [and this]{@link http://brianflove.com/2016/12/11/anguar-2-unsubscribe-observables/}
65
- */
66
- this.componentDestroyed = new Subject();
67
- }
68
- /**
69
- * Angular onChange lifecyle hook
70
- */
71
- ngOnChanges(changes) {
72
- if (changes.readonly && changes.readonly.currentValue !== undefined) {
73
- if (changes.readonly.currentValue === true) {
74
- this.formModel.disable();
75
- }
76
- else if (changes.readonly.currentValue === false) {
77
- this.formModel.enable();
78
- }
79
- }
80
- if (changes.id && changes.id.currentValue !== undefined) {
81
- this.inputId = this.formGroupHelper.getInputId(this.id);
82
- }
83
- }
84
- /**
85
- * Angular onInit lifecycle hook.
86
- */
87
- ngOnInit() {
88
- this.inputId = this.formGroupHelper.getInputId(this.id);
89
- // subscribe to valueChanges Observable to take any erros and translate them
90
- this.formModel.statusChanges.pipe(takeUntil(this.componentDestroyed)).subscribe(data => {
91
- this.translateValidationMessages(data);
92
- });
93
- // (re)set validation messages
94
- this.translateValidationMessages();
95
- }
96
- /**
97
- * Angular onDestroy lifecyle hook.
98
- * Unsubscribe from any observables
99
- */
100
- ngOnDestroy() {
101
- this.componentDestroyed.next();
102
- this.componentDestroyed.unsubscribe();
103
- }
104
- /**
105
- * Function that subscribes to the formModel's valueChanges Observable
106
- * to take any erros and translate them
107
- */
108
- async translateValidationMessages(data) {
109
- if (!this.formModel) {
110
- return;
111
- }
112
- const form = this.formModel;
113
- this.validationErrors = '';
114
- if (!form.valid) {
115
- let messages = await this.validationMessageService.getErrorMessages(form.errors);
116
- if (messages) {
117
- this.validationErrors = messages.join('; ');
118
- }
119
- }
120
- }
121
- }
122
- FormControlBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormControlBase, deps: [{ token: i1.ValidationMessageService }, { token: i2.FormGroupHelper }], target: i0.ɵɵFactoryTarget.Directive });
123
- FormControlBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: FormControlBase, inputs: { autofocus: "autofocus", formModel: "formModel", label: "label", labelPosition: "labelPosition", id: "id", pending: "pending", required: "required", tabindex: "tabindex", readonly: "readonly", tooltip: "tooltip", helpPopover: "helpPopover", helpPopoverPosition: "helpPopoverPosition" }, usesOnChanges: true, ngImport: i0 });
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormControlBase, decorators: [{
125
- type: Directive
126
- }], ctorParameters: function () { return [{ type: i1.ValidationMessageService }, { type: i2.FormGroupHelper }]; }, propDecorators: { autofocus: [{
127
- type: Input
128
- }], formModel: [{
129
- type: Input
130
- }], label: [{
131
- type: Input
132
- }], labelPosition: [{
133
- type: Input
134
- }], id: [{
135
- type: Input
136
- }], pending: [{
137
- type: Input
138
- }], required: [{
139
- type: Input
140
- }], tabindex: [{
141
- type: Input
142
- }], readonly: [{
143
- type: Input
144
- }], tooltip: [{
145
- type: Input
146
- }], helpPopover: [{
147
- type: Input
148
- }], helpPopoverPosition: [{
149
- type: Input
150
- }] } });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvZm9ybS1jb250cm9sLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQStDLE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBVTNDOztHQUVHO0FBRUgsTUFBTSxPQUFnQixlQUFlO0lBc0duQzs7T0FFRztJQUNILFlBQ1ksd0JBQWtELEVBQ2xELGVBQWdDO1FBRGhDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBeEc1Qzs7V0FFRztRQUNhLGNBQVMsR0FBYSxLQUFLLENBQUM7UUFnQjVDOztXQUVHO1FBQ2Esa0JBQWEsR0FBMEIsS0FBSyxDQUFDO1FBRzdEOztXQUVHO1FBQ2EsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQUdoQzs7O1dBR0c7UUFDYSxZQUFPLEdBQWEsS0FBSyxDQUFDO1FBRzFDOzs7V0FHRztRQUNhLGFBQVEsR0FBYSxLQUFLLENBQUM7UUFHM0M7O1dBRUc7UUFDYSxhQUFRLEdBQVksQ0FBQyxDQUFDO1FBb0J0Qzs7V0FFRztRQUNhLHdCQUFtQixHQUE0QixVQUFVLENBQUM7UUFFMUU7O1dBRUc7UUFDSSxxQkFBZ0IsR0FBVyxFQUFFLENBQUM7UUFHckM7O1dBRUc7UUFDSSxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBRzdCOzs7Ozs7Ozs7O1dBVUc7UUFDUSx1QkFBa0IsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVM5RCxDQUFDO0lBRUw7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBcUI7UUFDdEMsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtZQUNuRSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLElBQUksRUFBRTtnQkFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUMxQjtpQkFBTSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLEtBQUssRUFBRTtnQkFDbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUN6QjtTQUNGO1FBRUQsSUFBSSxPQUFPLENBQUMsRUFBRSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBQztZQUN0RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFHRDs7T0FFRztJQUNJLFFBQVE7UUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUV4RCw0RUFBNEU7UUFDNUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUMvQixTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQ25DLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUVILDhCQUE4QjtRQUM5QixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztJQUdyQyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0ksV0FBVztRQUNoQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFHRDs7O09BR0c7SUFDTyxLQUFLLENBQUMsMkJBQTJCLENBQUMsSUFBVTtRQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUFFLE9BQU87U0FBRTtRQUNoQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBRTVCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDakYsSUFBSSxRQUFRLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDN0M7U0FDRjtJQUNILENBQUM7OzRHQTlLbUIsZUFBZTtnR0FBZixlQUFlOzJGQUFmLGVBQWU7a0JBRHBDLFNBQVM7NklBT1EsU0FBUztzQkFBeEIsS0FBSztnQkFPVSxTQUFTO3NCQUF4QixLQUFLO2dCQU1VLEtBQUs7c0JBQXBCLEtBQUs7Z0JBTVUsYUFBYTtzQkFBNUIsS0FBSztnQkFNVSxFQUFFO3NCQUFqQixLQUFLO2dCQU9VLE9BQU87c0JBQXRCLEtBQUs7Z0JBT1UsUUFBUTtzQkFBdkIsS0FBSztnQkFNVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBTVUsT0FBTztzQkFBdEIsS0FBSztnQkFNVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLG1CQUFtQjtzQkFBbEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRpb24tbWVzc2FnZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cEhlbHBlciB9IGZyb20gJy4uL3NoYXJlZC9mb3JtLWdyb3VwLmhlbHBlcic7XHJcbmltcG9ydCB7IFBvcG92ZXJDb250ZW50UG9zaXRpb24gfSBmcm9tICcuL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnO1xyXG5cclxuXHJcblxyXG5leHBvcnQgdHlwZSBDb250cm9sTGFiZWxQb3NpdGlvbiA9IFwidG9wXCIgfCBcImJvdHRvbVwiIHwgXCJsZWZ0XCI7XHJcblxyXG5cclxuLyoqXHJcbiAqIEJhc2UgY2xhc3MgZm9yIFJlYWN0aXZlIEZvcm0gQ29udHJvbHMsIGNvbnRhaW5pbmcgRUNJLXNwZWNpZmljIHNoYXJlZCBwcm9wZXJ0aWVzXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZvcm1Db250cm9sQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xyXG4gIFxyXG4gIFxyXG4gIC8qKlxyXG4gICAqIElmIHRydWUsIHdpbGwgZm9jdXMgdGhlIGNvbnRyb2wncyBpbnB1dCB3aGVuIHRoZSB2aWV3IGlzIGludGlhbGl6ZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgYXV0b2ZvY3VzPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVUktb3JpZW50ZWQgZm9ybSBtb2RlbCB0aGF0IHJldGFpbnMgdGhlIHN0YXRlcyBhbmQgdmFsdWVzIG9mIHRoZSBIVE1MIGNvbnRyb2xzIG9uIHNjcmVlbi5cclxuICAgKiBDYW4gYmUgYSB7QGxpbmsgRm9ybUNvbnRyb2x9IG9yIGEge0BsaW5rIEZvcm1Hcm91cH1cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZm9ybU1vZGVsITogQWJzdHJhY3RDb250cm9sO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGZvcm0gY29udHJvbCBsYWJlbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbD86IHN0cmluZztcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwb3NpdGlvbiBvZiB0aGUgZm9ybSBjb250cm9sIGxhYmVsICh0b3B8Ym90dG9tKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbFBvc2l0aW9uPzogQ29udHJvbExhYmVsUG9zaXRpb24gPSBcInRvcFwiO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGlkIG9mIHRoZSBjb21wb25lbnQuIFdlIHVzZSB0aGlzIHRvIGlkZW50aWZ5IGEgY29udHJvbCBvbiBmb2N1cyBldmVudHMgYW5kIGhlbHAuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGlkOiBzdHJpbmcgPSAnJztcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwZW5kaW5nIHN0YXR1cyBvZiB0aGUgY29udHJvbCwgY2FuIGJlIHVzZWQgdG8gdGVsbCB0aGUgdXNlciB0aGUgY29udHJvbCBpc1xyXG4gICAqIGF3YWl0aW5nIGRhdGEgdmlhIGEgc3Bpbm5lciBvciBhbmltYXRpb25cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZz86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgcmVxdWlyZWQgZmllbGQgb3Igbm90XHJcbiAgICogQHRvZG86IFNvbWV0aW1lIGluIHRoZSBmdXR1cmUgQW5ndWxhciBtYWtlcyBpdCBzb3VuZCBsaWtlIHRoaXMgd2lsbCBiZSBoYW5kbGVkIHZpYSB0aGUgUmVhY3RpdmUgZm9ybSBXaGVuIHRoYXQgaGFwcGVucyB0aGlzIHByb3BlcnR5IGNhbiBiZSByZW1vdmVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHRhYmluZGV4IG9mIHRoZSBjb250cm9sXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHRhYmluZGV4PzogbnVtYmVyID0gMDtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIERpc2FibGUgdGhlIGNvbnRyb2wgYW5kIGRpc3BsYXkgdGhlIHZhbHVlXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5PzogYm9vbGVhbjtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbmRpdGlvbmFsbHkgc2hvdyBhIHRvb2x0aXAgb24gdGhlIGZvcm0gY29udHJvbCdzIGlucHV0LlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sdGlwPzogc3RyaW5nO1xyXG5cclxuICBcclxuICAvKipcclxuICAgKiBDb25kaXRpb25hbGx5IHNob3cgYSBoZWxwIHBvcG92ZXIgbmV4dCB0byB0aGUgY29udHJvbHMgbGFiZWwuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGhlbHBQb3BvdmVyPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBXaGVuIGEgaGVscCBwb3BvdmVyIGlzIHByZXNlbnQsIGFsbG93cyB0aGUgcG9wb3ZlciB0byBiZSBwb3NpdGlvbmVkIGluIGRpZmZlcmVudCBsb2NhdGlvbnMuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGhlbHBQb3BvdmVyUG9zaXRpb24/OiBQb3BvdmVyQ29udGVudFBvc2l0aW9uID0gJ3RvcC1sZWZ0JztcclxuXHJcbiAgLyoqXHJcbiAgICogQWxsIGN1cnJlbnQgdmFsaWRhdGlvbiBlcnJvcnNcclxuICAgKi9cclxuICBwdWJsaWMgdmFsaWRhdGlvbkVycm9yczogc3RyaW5nID0gXCJcIjtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBpZCBvZiB0aGUgZm9ybSBjb250cm9scyBpbnB1dCwgZ2V0bmVyYXRlZCBmcm9tIHRoZSBjb21wb25lbnRzIGlkLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBpbnB1dElkOiBzdHJpbmcgPSAnJztcclxuXHJcblxyXG4gLyoqXHJcbiAgKiBOb3RpZmllcyBjb21wb25lbnQgc3Vic2NyaXB0aW9ucyB0aGF0IGNvbXBvbmVudCBpcyBkZXN0cm95ZWQuXHJcbiAgKiBVc2Ugd2l0aCBgdGFrZVVudGlsKClgIHdoZW4gc3Vic2NyaWJpbmcgdG8gY29tcGxldGUgc3Vic2NyaXB0aW9uc1xyXG4gICogYXV0b21hdGljYWxseS5cclxuICAqXHJcbiAgKiBTZWU6XHJcbiAgKiBbUnhKc117QGxpbmsgaHR0cDovL3JlYWN0aXZleC5pby9yeGpzL2NsYXNzL2VzNi9PYnNlcnZhYmxlLmpzfk9ic2VydmFibGUuaHRtbCNpbnN0YW5jZS1tZXRob2QtdGFrZVVudGlsfVxyXG4gICogW2FuZCB0aGlzXXtAbGluayBodHRwczovL21lZGl1bS5jb20vQGJlbmxlc2gvcnhqcy1kb250LXVuc3Vic2NyaWJlLTY3NTNlZDRmZGE4N31cclxuICAqIFthbmQgdGhpc117QGxpbmsgaHR0cHM6Ly9uZXRiYXNhbC5jb20vd2hlbi10by11bnN1YnNjcmliZS1pbi1hbmd1bGFyLWQ2MWM2YjIxYmFkM31cclxuICAqIFthbmQgdGhpc117QGxpbmsgaHR0cDovL2JyaWFuZmxvdmUuY29tLzIwMTYvMTIvMTEvYW5ndWFyLTItdW5zdWJzY3JpYmUtb2JzZXJ2YWJsZXMvfVxyXG4gICovXHJcbiAgcHJvdGVjdGVkIGNvbXBvbmVudERlc3Ryb3llZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIEZvcm1Db250cm9sQmFzZS5cclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCB2YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2U6IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBmb3JtR3JvdXBIZWxwZXI6IEZvcm1Hcm91cEhlbHBlclxyXG4gICkgeyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFuZ3VsYXIgb25DaGFuZ2UgbGlmZWN5bGUgaG9va1xyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOlNpbXBsZUNoYW5nZXMpOnZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMucmVhZG9ubHkgJiYgY2hhbmdlcy5yZWFkb25seS5jdXJyZW50VmFsdWUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBpZiAoY2hhbmdlcy5yZWFkb25seS5jdXJyZW50VmFsdWUgPT09IHRydWUpIHtcclxuICAgICAgICB0aGlzLmZvcm1Nb2RlbC5kaXNhYmxlKCk7XHJcbiAgICAgIH0gZWxzZSBpZiAoY2hhbmdlcy5yZWFkb25seS5jdXJyZW50VmFsdWUgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtTW9kZWwuZW5hYmxlKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5pZCAmJiBjaGFuZ2VzLmlkLmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKXtcclxuICAgICAgdGhpcy5pbnB1dElkID0gdGhpcy5mb3JtR3JvdXBIZWxwZXIuZ2V0SW5wdXRJZCh0aGlzLmlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFxyXG4gIC8qKlxyXG4gICAqIEFuZ3VsYXIgb25Jbml0IGxpZmVjeWNsZSBob29rLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wdXRJZCA9IHRoaXMuZm9ybUdyb3VwSGVscGVyLmdldElucHV0SWQodGhpcy5pZCk7XHJcbiAgICBcclxuICAgIC8vIHN1YnNjcmliZSB0byB2YWx1ZUNoYW5nZXMgT2JzZXJ2YWJsZSB0byB0YWtlIGFueSBlcnJvcyBhbmQgdHJhbnNsYXRlIHRoZW1cclxuICAgIHRoaXMuZm9ybU1vZGVsLnN0YXR1c0NoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMudHJhbnNsYXRlVmFsaWRhdGlvbk1lc3NhZ2VzKGRhdGEpXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyAocmUpc2V0IHZhbGlkYXRpb24gbWVzc2FnZXNcclxuICAgIHRoaXMudHJhbnNsYXRlVmFsaWRhdGlvbk1lc3NhZ2VzKCk7XHJcblxyXG4gICAgXHJcbiAgfVxyXG4gICAgXHJcblxyXG4gIC8qKlxyXG4gICAqIEFuZ3VsYXIgb25EZXN0cm95IGxpZmVjeWxlIGhvb2suIFxyXG4gICAqIFVuc3Vic2NyaWJlIGZyb20gYW55IG9ic2VydmFibGVzXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb21wb25lbnREZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5jb21wb25lbnREZXN0cm95ZWQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG5cclxuICAvKipcclxuICAgKiBGdW5jdGlvbiB0aGF0IHN1YnNjcmliZXMgdG8gdGhlIGZvcm1Nb2RlbCdzIHZhbHVlQ2hhbmdlcyBPYnNlcnZhYmxlXHJcbiAgICogdG8gdGFrZSBhbnkgZXJyb3MgYW5kIHRyYW5zbGF0ZSB0aGVtXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGFzeW5jIHRyYW5zbGF0ZVZhbGlkYXRpb25NZXNzYWdlcyhkYXRhPzogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuZm9ybU1vZGVsKSB7IHJldHVybjsgfVxyXG4gICAgY29uc3QgZm9ybSA9IHRoaXMuZm9ybU1vZGVsO1xyXG5cclxuICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9ICcnO1xyXG5cclxuICAgIGlmICghZm9ybS52YWxpZCkge1xyXG4gICAgICBsZXQgbWVzc2FnZXMgPSBhd2FpdCB0aGlzLnZhbGlkYXRpb25NZXNzYWdlU2VydmljZS5nZXRFcnJvck1lc3NhZ2VzKGZvcm0uZXJyb3JzKTtcclxuICAgICAgaWYgKG1lc3NhZ2VzKSB7XHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gbWVzc2FnZXMuam9pbignOyAnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn0iXX0=
@@ -1,136 +0,0 @@
1
- import { Component, HostBinding, Input } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { takeUntil } from 'rxjs/operators';
4
- import { forEachFormControl } from '../form-group/form-group.component';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../core/validation-message.service";
7
- import * as i2 from "@ngx-translate/core";
8
- import * as i3 from "@angular/common";
9
- export class FormControlLabelComponent {
10
- constructor(validationMessageService, translateService) {
11
- this.validationMessageService = validationMessageService;
12
- this.translateService = translateService;
13
- /**
14
- * The form control label
15
- */
16
- this.label = '';
17
- /**
18
- * The position of the form control label (top|bottom|left)
19
- */
20
- this.labelPosition = "top";
21
- /**An optional string to show if any of the underlying controls has an error. If falsy, one of the
22
- * errors from the underlying controls will be used.
23
- */
24
- this.overrideValidationError = "";
25
- /**An optional flag to hide the validation messages.
26
- */
27
- this.hideValidationMessage = false;
28
- /**
29
- * All current validation errors
30
- *
31
- * @type {string}
32
- * @memberof FormControlBase
33
- */
34
- this.validationErrors = "";
35
- this.allControlsTouched = false;
36
- this.componentDestroyed = new Subject();
37
- }
38
- async ngOnInit() {
39
- // subscribe to statusChanges Observable to take any errors and translate them
40
- if (this.control) {
41
- this.control.statusChanges
42
- .pipe(takeUntil(this.componentDestroyed))
43
- .subscribe(() => {
44
- this.translateValidationMessages(this.getErrors(this.control));
45
- });
46
- // (re)set validation messages
47
- this.translateValidationMessages(this.getErrors(this.control));
48
- }
49
- if (this.id) {
50
- this.attrId = this.id;
51
- }
52
- }
53
- /**
54
- * Angular onDestroy lifecyle hook.
55
- * Unsubscribe from any observables
56
- *
57
- * @see https://angular.io/guide/lifecycle-hooks
58
- * @memberof FormControlBase
59
- */
60
- ngOnDestroy() {
61
- this.componentDestroyed.next();
62
- this.componentDestroyed.unsubscribe();
63
- }
64
- getErrors(control) {
65
- control.markAsUntouched();
66
- let errors = null;
67
- let allTouched = true;
68
- let controlFound = false;
69
- forEachFormControl(control, (control) => {
70
- errors = this.assignErrors(control, errors);
71
- if (control.untouched) {
72
- allTouched = false;
73
- }
74
- controlFound = true;
75
- });
76
- if (control.errors) {
77
- errors = Object.assign(errors || {}, control.errors);
78
- }
79
- if (allTouched && controlFound) {
80
- control.markAsTouched();
81
- }
82
- return errors;
83
- }
84
- assignErrors(control, errors) {
85
- if (control.errors) {
86
- errors = Object.assign(errors || {}, control.errors);
87
- }
88
- return errors;
89
- }
90
- /**
91
- * Function that subscribes to the controls valueChanges Observable
92
- * to take any erros and translate them
93
- *
94
- * @param {*} [data]
95
- * @returns
96
- * @memberof FormControlBase
97
- */
98
- async translateValidationMessages(errors) {
99
- if (errors) {
100
- if (this.overrideValidationError) {
101
- this.validationErrors = this.translateService.instant(this.overrideValidationError);
102
- }
103
- else {
104
- let messages = await this.validationMessageService.getErrorMessages(errors);
105
- if (messages) {
106
- this.validationErrors = messages.join('; ');
107
- }
108
- }
109
- }
110
- else {
111
- this.validationErrors = '';
112
- }
113
- }
114
- }
115
- FormControlLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormControlLabelComponent, deps: [{ token: i1.ValidationMessageService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
116
- FormControlLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FormControlLabelComponent, selector: "ec-form-control-label", inputs: { id: "id", label: "label", control: "control", labelPosition: "labelPosition", overrideValidationError: "overrideValidationError", hideValidationMessage: "hideValidationMessage" }, host: { properties: { "attr.id": "this.attrId" } }, ngImport: i0, template: "<div class=\"control control-label-{{labelPosition}}\" [class.ec-untouched]=\"control?.untouched\">\r\n <label *ngIf=\"label\" ngPreserveWhitespaces>\r\n\r\n <span id=\"{{id}}_label\">{{label | translate}}</span>\r\n\r\n <span *ngIf=\"!hideValidationMessage && validationErrors && control?.touched && control?.invalid\">{{validationErrors | translate}}</span>\r\n </label>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty{background-image:none;background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}.control-label-left{display:flex}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FormControlLabelComponent, decorators: [{
118
- type: Component,
119
- args: [{ selector: 'ec-form-control-label', template: "<div class=\"control control-label-{{labelPosition}}\" [class.ec-untouched]=\"control?.untouched\">\r\n <label *ngIf=\"label\" ngPreserveWhitespaces>\r\n\r\n <span id=\"{{id}}_label\">{{label | translate}}</span>\r\n\r\n <span *ngIf=\"!hideValidationMessage && validationErrors && control?.touched && control?.invalid\">{{validationErrors | translate}}</span>\r\n </label>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched{background-image:none;padding-left:.5rem}.control.ec-untouched ::ng-deep input.ng-invalid.ng-touched:not(.is-empty)~.units-left{left:0}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty{background-image:none;background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}.control.ec-untouched ::ng-deep input:required:not(:disabled).is-empty:focus{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}.control-label-left{display:flex}\n"] }]
120
- }], ctorParameters: function () { return [{ type: i1.ValidationMessageService }, { type: i2.TranslateService }]; }, propDecorators: { id: [{
121
- type: Input
122
- }], attrId: [{
123
- type: HostBinding,
124
- args: ['attr.id']
125
- }], label: [{
126
- type: Input
127
- }], control: [{
128
- type: Input
129
- }], labelPosition: [{
130
- type: Input
131
- }], overrideValidationError: [{
132
- type: Input
133
- }], hideValidationMessage: [{
134
- type: Input
135
- }] } });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWxhYmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9mb3JtLWNvbnRyb2wtbGFiZWwvZm9ybS1jb250cm9sLWxhYmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9mb3JtLWNvbnRyb2wtbGFiZWwvZm9ybS1jb250cm9sLWxhYmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUd0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7QUFPeEUsTUFBTSxPQUFPLHlCQUF5QjtJQW9EcEMsWUFDWSx3QkFBa0QsRUFDcEQsZ0JBQWtDO1FBRGhDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDcEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTFDNUM7O1dBRUc7UUFDYSxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBV25DOzthQUVLO1FBQ1csa0JBQWEsR0FBMEIsS0FBSyxDQUFDO1FBRzdEOztXQUVHO1FBQ2EsNEJBQXVCLEdBQVksRUFBRSxDQUFDO1FBRXREO1dBQ0c7UUFDYSwwQkFBcUIsR0FBWSxLQUFLLENBQUM7UUFDdkQ7Ozs7O1dBS0c7UUFDSSxxQkFBZ0IsR0FBVyxFQUFFLENBQUM7UUFFOUIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBRW5DLHVCQUFrQixHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO0lBSzVELENBQUM7SUFFRSxLQUFLLENBQUMsUUFBUTtRQUNuQiw4RUFBOEU7UUFDOUUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtpQkFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztpQkFDeEMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBUSxDQUFDLENBQUMsQ0FBQTtZQUNqRSxDQUFDLENBQUMsQ0FBQztZQUVMLDhCQUE4QjtZQUM5QixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNoRTtRQUVELElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNYLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxPQUF3QjtRQUN4QyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFMUIsSUFBSSxNQUFNLEdBQTRCLElBQUksQ0FBQztRQUMzQyxJQUFJLFVBQVUsR0FBWSxJQUFJLENBQUM7UUFDL0IsSUFBSSxZQUFZLEdBQVksS0FBSyxDQUFDO1FBRWxDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQXdCLEVBQUUsRUFBRTtZQUN2RCxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDNUMsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO2dCQUNyQixVQUFVLEdBQUcsS0FBSyxDQUFDO2FBQ3BCO1lBQ0QsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNsQixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0RDtRQUVELElBQUksVUFBVSxJQUFJLFlBQVksRUFBRTtZQUM5QixPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDekI7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQXdCLEVBQUUsTUFBK0I7UUFDNUUsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2xCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxFQUFFLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3REO1FBRUQsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNLLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxNQUErQjtRQUN2RSxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFDO2dCQUM5QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQzthQUNyRjtpQkFBTTtnQkFDTCxJQUFJLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUUsSUFBSSxRQUFRLEVBQUU7b0JBQ1osSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzdDO2FBQ0Y7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztTQUM1QjtJQUNILENBQUM7O3NIQTlJVSx5QkFBeUI7MEdBQXpCLHlCQUF5QiwrU0NkdEMsd1lBT007MkZET08seUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLHVCQUF1Qjs4SUFTakIsRUFBRTtzQkFBakIsS0FBSztnQkFLeUIsTUFBTTtzQkFBcEMsV0FBVzt1QkFBQyxTQUFTO2dCQUtOLEtBQUs7c0JBQXBCLEtBQUs7Z0JBU1UsT0FBTztzQkFBdEIsS0FBSztnQkFLVSxhQUFhO3NCQUE1QixLQUFLO2dCQU1VLHVCQUF1QjtzQkFBdEMsS0FBSztnQkFJVSxxQkFBcUI7c0JBQXBDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS92YWxpZGF0aW9uLW1lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbnRyb2xMYWJlbFBvc2l0aW9uIH0gZnJvbSAnLi4vZm9ybS1jb250cm9sLWJhc2UnO1xyXG5pbXBvcnQgeyBmb3JFYWNoRm9ybUNvbnRyb2wgfSBmcm9tICcuLi9mb3JtLWdyb3VwL2Zvcm0tZ3JvdXAuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtZm9ybS1jb250cm9sLWxhYmVsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1jb250cm9sLWxhYmVsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb3JtLWNvbnRyb2wtbGFiZWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybUNvbnRyb2xMYWJlbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIElkXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGlkPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBCaW5kIGlkIHRvIGhvc3QgZWxlbWVudFxyXG4gICAqL1xyXG4gIEBIb3N0QmluZGluZygnYXR0ci5pZCcpIHB1YmxpYyBhdHRySWQ/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBmb3JtIGNvbnRyb2wgbGFiZWxcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKipcclxuICAgKiBVSS1vcmllbnRlZCBmb3JtIG1vZGVsIHRoYXQgcmV0YWlucyB0aGUgc3RhdGVzIGFuZCB2YWx1ZXMgb2YgdGhlIEhUTUwgY29udHJvbHMgb24gc2NyZWVuLlxyXG4gICAqIENhbiBiZSBhIHtAbGluayBGb3JtQ29udHJvbH0sIGEge0BsaW5rIEZvcm1Hcm91cH0gb3IgYSB7QGxpbmsgRm9ybUFycmF5fVxyXG4gICAqXHJcbiAgICogQHR5cGUge0Fic3RyYWN0Q29udHJvbH1cclxuICAgKiBAbWVtYmVyb2YgRm9ybUNvbnRyb2xCYXNlXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2w7XHJcblxyXG4gIC8qKlxyXG4gICAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBmb3JtIGNvbnRyb2wgbGFiZWwgKHRvcHxib3R0b218bGVmdClcclxuICAgICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbFBvc2l0aW9uPzogQ29udHJvbExhYmVsUG9zaXRpb24gPSBcInRvcFwiO1xyXG5cclxuXHJcbiAgLyoqQW4gb3B0aW9uYWwgc3RyaW5nIHRvIHNob3cgaWYgYW55IG9mIHRoZSB1bmRlcmx5aW5nIGNvbnRyb2xzIGhhcyBhbiBlcnJvci4gSWYgZmFsc3ksIG9uZSBvZiB0aGVcclxuICAgKiBlcnJvcnMgZnJvbSB0aGUgdW5kZXJseWluZyBjb250cm9scyB3aWxsIGJlIHVzZWQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIG92ZXJyaWRlVmFsaWRhdGlvbkVycm9yPzogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgLyoqQW4gb3B0aW9uYWwgZmxhZyB0byBoaWRlIHRoZSB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlVmFsaWRhdGlvbk1lc3NhZ2U/OmJvb2xlYW4gPSBmYWxzZTtcclxuICAvKipcclxuICAgKiBBbGwgY3VycmVudCB2YWxpZGF0aW9uIGVycm9yc1xyXG4gICAqXHJcbiAgICogQHR5cGUge3N0cmluZ31cclxuICAgKiBAbWVtYmVyb2YgRm9ybUNvbnRyb2xCYXNlXHJcbiAgICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25FcnJvcnM6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIHB1YmxpYyBhbGxDb250cm9sc1RvdWNoZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBjb21wb25lbnREZXN0cm95ZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCB2YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2U6IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHN1YnNjcmliZSB0byBzdGF0dXNDaGFuZ2VzIE9ic2VydmFibGUgdG8gdGFrZSBhbnkgZXJyb3JzIGFuZCB0cmFuc2xhdGUgdGhlbVxyXG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wuc3RhdHVzQ2hhbmdlc1xyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVZhbGlkYXRpb25NZXNzYWdlcyh0aGlzLmdldEVycm9ycyh0aGlzLmNvbnRyb2whKSlcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgIC8vIChyZSlzZXQgdmFsaWRhdGlvbiBtZXNzYWdlc1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZVZhbGlkYXRpb25NZXNzYWdlcyh0aGlzLmdldEVycm9ycyh0aGlzLmNvbnRyb2wpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pZCkge1xyXG4gICAgICB0aGlzLmF0dHJJZCA9IHRoaXMuaWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBbmd1bGFyIG9uRGVzdHJveSBsaWZlY3lsZSBob29rLlxyXG4gICAqIFVuc3Vic2NyaWJlIGZyb20gYW55IG9ic2VydmFibGVzXHJcbiAgICpcclxuICAgKiBAc2VlIGh0dHBzOi8vYW5ndWxhci5pby9ndWlkZS9saWZlY3ljbGUtaG9va3NcclxuICAgKiBAbWVtYmVyb2YgRm9ybUNvbnRyb2xCYXNlXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb21wb25lbnREZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5jb21wb25lbnREZXN0cm95ZWQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0RXJyb3JzKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcclxuICAgIGNvbnRyb2wubWFya0FzVW50b3VjaGVkKCk7XHJcblxyXG4gICAgbGV0IGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xyXG4gICAgbGV0IGFsbFRvdWNoZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgbGV0IGNvbnRyb2xGb3VuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGZvckVhY2hGb3JtQ29udHJvbChjb250cm9sLCAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XHJcbiAgICAgIGVycm9ycyA9IHRoaXMuYXNzaWduRXJyb3JzKGNvbnRyb2wsIGVycm9ycyk7XHJcbiAgICAgIGlmIChjb250cm9sLnVudG91Y2hlZCkge1xyXG4gICAgICAgIGFsbFRvdWNoZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBjb250cm9sRm91bmQgPSB0cnVlO1xyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKGNvbnRyb2wuZXJyb3JzKSB7XHJcbiAgICAgIGVycm9ycyA9IE9iamVjdC5hc3NpZ24oZXJyb3JzIHx8IHt9LCBjb250cm9sLmVycm9ycyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGFsbFRvdWNoZWQgJiYgY29udHJvbEZvdW5kKSB7XHJcbiAgICAgIGNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBlcnJvcnM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzc2lnbkVycm9ycyhjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICBpZiAoY29udHJvbC5lcnJvcnMpIHtcclxuICAgICAgZXJyb3JzID0gT2JqZWN0LmFzc2lnbihlcnJvcnMgfHwge30sIGNvbnRyb2wuZXJyb3JzKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZXJyb3JzXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGdW5jdGlvbiB0aGF0IHN1YnNjcmliZXMgdG8gdGhlIGNvbnRyb2xzIHZhbHVlQ2hhbmdlcyBPYnNlcnZhYmxlXHJcbiAgICogdG8gdGFrZSBhbnkgZXJyb3MgYW5kIHRyYW5zbGF0ZSB0aGVtXHJcbiAgICpcclxuICAgKiBAcGFyYW0geyp9IFtkYXRhXVxyXG4gICAqIEByZXR1cm5zXHJcbiAgICogQG1lbWJlcm9mIEZvcm1Db250cm9sQmFzZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgYXN5bmMgdHJhbnNsYXRlVmFsaWRhdGlvbk1lc3NhZ2VzKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpIHtcclxuICAgIGlmIChlcnJvcnMpIHtcclxuICAgICAgaWYodGhpcy5vdmVycmlkZVZhbGlkYXRpb25FcnJvcil7XHJcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodGhpcy5vdmVycmlkZVZhbGlkYXRpb25FcnJvcik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG1lc3NhZ2VzID0gYXdhaXQgdGhpcy52YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2UuZ2V0RXJyb3JNZXNzYWdlcyhlcnJvcnMpO1xyXG4gICAgICAgIGlmIChtZXNzYWdlcykge1xyXG4gICAgICAgICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gbWVzc2FnZXMuam9pbignOyAnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9ICcnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udHJvbCBjb250cm9sLWxhYmVsLXt7bGFiZWxQb3NpdGlvbn19XCIgW2NsYXNzLmVjLXVudG91Y2hlZF09XCJjb250cm9sPy51bnRvdWNoZWRcIj5cclxuICA8bGFiZWwgKm5nSWY9XCJsYWJlbFwiIG5nUHJlc2VydmVXaGl0ZXNwYWNlcz5cclxuXHJcbiAgICA8c3BhbiBpZD1cInt7aWR9fV9sYWJlbFwiPnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuXHJcbiAgICA8c3BhbiAqbmdJZj1cIiFoaWRlVmFsaWRhdGlvbk1lc3NhZ2UgJiYgdmFsaWRhdGlvbkVycm9ycyAmJiBjb250cm9sPy50b3VjaGVkICYmIGNvbnRyb2w/LmludmFsaWRcIj57e3ZhbGlkYXRpb25FcnJvcnMgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICA8L2xhYmVsPlxyXG48L2Rpdj4iXX0=