@updevs/components 1.0.0-alpha.6 → 1.0.0-alpha.60

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 (693) hide show
  1. package/README.md +1 -11
  2. package/assets/styles/_bootstrap-components.scss +18 -1
  3. package/assets/styles/_core.scss +9 -0
  4. package/assets/styles/_debug.scss +49 -0
  5. package/assets/styles/_props.scss +91 -0
  6. package/assets/styles/_seven-columns.scss +73 -0
  7. package/assets/styles/_updevs.scss +16 -0
  8. package/assets/styles/_utilities-marketing.scss +209 -0
  9. package/assets/styles/_utilities.scss +127 -92
  10. package/assets/styles/_variables-dark.scss +8 -6
  11. package/assets/styles/_variables.scss +325 -256
  12. package/assets/styles/helpers/_index.scss +143 -0
  13. package/assets/styles/layout/_core.scss +3 -2
  14. package/assets/styles/layout/_dark.scss +40 -35
  15. package/assets/styles/layout/_footer.scss +1 -1
  16. package/assets/styles/layout/_navbar.scss +31 -19
  17. package/assets/styles/layout/_page.scss +6 -5
  18. package/assets/styles/layout/_root.scss +26 -34
  19. package/assets/styles/marketing/_browser.scss +67 -0
  20. package/assets/styles/marketing/_core.scss +8 -0
  21. package/assets/styles/marketing/_filters.scss +0 -0
  22. package/assets/styles/marketing/_hero.scss +70 -0
  23. package/assets/styles/marketing/_pricing.scss +111 -0
  24. package/assets/styles/marketing/_sections.scss +124 -0
  25. package/assets/styles/marketing/_shape.scss +31 -0
  26. package/assets/styles/mixins/_functions.scss +53 -0
  27. package/assets/styles/mixins/_mixins.scss +9 -9
  28. package/assets/styles/ui/_accordion.scss +165 -11
  29. package/assets/styles/ui/_alerts.scss +80 -38
  30. package/assets/styles/ui/_avatars.scss +36 -9
  31. package/assets/styles/ui/_badges.scss +47 -13
  32. package/assets/styles/ui/_button-group.scss +1 -1
  33. package/assets/styles/ui/_buttons.scss +33 -37
  34. package/assets/styles/ui/_calendars.scss +2 -2
  35. package/assets/styles/ui/_cards.scss +9 -0
  36. package/assets/styles/ui/_carousel.scss +1 -1
  37. package/assets/styles/ui/_charts.scss +1 -1
  38. package/assets/styles/ui/_chat.scss +38 -0
  39. package/assets/styles/ui/_close.scss +54 -1
  40. package/assets/styles/ui/_datagrid.scss +1 -1
  41. package/assets/styles/ui/_dropdowns.scss +3 -0
  42. package/assets/styles/ui/_empty.scss +0 -5
  43. package/assets/styles/ui/_flags.scss +2 -2
  44. package/assets/styles/ui/_forms.scss +33 -7
  45. package/assets/styles/ui/_grid.scss +1 -1
  46. package/assets/styles/ui/_icons.scss +1 -1
  47. package/assets/styles/ui/_images.scss +4 -0
  48. package/assets/styles/ui/_lists.scss +12 -16
  49. package/assets/styles/ui/_loaders.scss +1 -1
  50. package/assets/styles/ui/_markdown.scss +15 -4
  51. package/assets/styles/ui/_modals.scss +2 -2
  52. package/assets/styles/ui/_nav.scss +17 -3
  53. package/assets/styles/ui/_offcanvas.scss +2 -2
  54. package/assets/styles/ui/_pagination.scss +2 -0
  55. package/assets/styles/ui/_payments.scss +1 -1
  56. package/assets/styles/ui/_placeholder.scss +1 -1
  57. package/assets/styles/ui/_progress.scss +1 -1
  58. package/assets/styles/ui/_ribbons.scss +1 -0
  59. package/assets/styles/ui/_segmented.scss +101 -0
  60. package/assets/styles/ui/_signature.scss +15 -0
  61. package/assets/styles/ui/_social.scss +52 -0
  62. package/assets/styles/ui/_status.scss +1 -1
  63. package/assets/styles/ui/_steps.scss +5 -1
  64. package/assets/styles/ui/_switch-icon.scss +1 -1
  65. package/assets/styles/ui/_tables.scss +27 -1
  66. package/assets/styles/ui/_tags.scss +1 -1
  67. package/assets/styles/ui/_timeline.scss +1 -1
  68. package/assets/styles/ui/_toasts.scss +0 -1
  69. package/assets/styles/ui/_tracking.scss +1 -1
  70. package/assets/styles/ui/_type.scss +169 -8
  71. package/assets/styles/ui/forms/_form-check.scss +1 -1
  72. package/assets/styles/ui/forms/_form-colorinput.scss +1 -1
  73. package/assets/styles/ui/forms/_form-custom.scss +1 -1
  74. package/assets/styles/ui/forms/_form-imagecheck.scss +6 -5
  75. package/assets/styles/ui/forms/_form-selectgroup.scss +2 -2
  76. package/assets/styles/ui/typo/_hr.scss +4 -2
  77. package/assets/styles/utils/_colors.scss +72 -11
  78. package/assets/styles/utils/_opacity.scss +1 -1
  79. package/assets/styles/utils/_scroll.scss +0 -2
  80. package/assets/styles/utils/_sizing.scss +1 -1
  81. package/assets/styles/utils/_text.scss +1 -2
  82. package/assets/styles/vendor/_apexcharts.scss +52 -0
  83. package/assets/styles/vendor/_coloris.scss +72 -0
  84. package/assets/styles/vendor/_dropzone.scss +27 -0
  85. package/assets/styles/vendor/_fslightbox.scss +13 -0
  86. package/assets/styles/vendor/_jsvectormap.scss +47 -0
  87. package/assets/styles/vendor/_litepicker.scss +69 -0
  88. package/assets/styles/vendor/_nouislider.scss +49 -0
  89. package/assets/styles/vendor/_plyr.scss +3 -0
  90. package/assets/styles/vendor/_stars-rating.scss +22 -0
  91. package/assets/styles/vendor/_tom-select.scss +81 -0
  92. package/assets/styles/vendor/_turbo.scss +3 -0
  93. package/assets/styles/vendor/_typed.scss +4 -0
  94. package/assets/styles/vendor/_wysiwyg.scss +46 -0
  95. package/badge/badge-config.model.d.ts +14 -0
  96. package/badge/badge.component.d.ts +23 -0
  97. package/badge/badge.config.d.ts +12 -0
  98. package/badge/index.d.ts +1 -0
  99. package/badge/public-api.d.ts +3 -0
  100. package/badge/upd-badge.module.d.ts +8 -0
  101. package/button/button.component.d.ts +51 -33
  102. package/button/upd-button.module.d.ts +3 -1
  103. package/calendar/calendar.component.d.ts +63 -0
  104. package/calendar/index.d.ts +1 -0
  105. package/calendar/models/calendar-date.model.d.ts +10 -0
  106. package/calendar/models/calendar-month.model.d.ts +7 -0
  107. package/calendar/models/calendar-selected.model.d.ts +5 -0
  108. package/calendar/models/calendar-user-event.model.d.ts +4 -0
  109. package/calendar/models/calendar-year.model.d.ts +6 -0
  110. package/calendar/models/date-range.model.d.ts +22 -0
  111. package/calendar/models/enums/calendar-view.enum.d.ts +5 -0
  112. package/calendar/models/public-api.d.ts +7 -0
  113. package/calendar/public-api.d.ts +5 -0
  114. package/calendar/services/calendar-range-strategy.service.d.ts +35 -0
  115. package/calendar/services/calendar-signals.service.d.ts +24 -0
  116. package/calendar/services/public-api.d.ts +1 -0
  117. package/calendar/types/calendar-view.type.d.ts +1 -0
  118. package/calendar/types/public-api.d.ts +1 -0
  119. package/calendar/upd-calendar.module.d.ts +13 -0
  120. package/card/card.component.d.ts +2 -2
  121. package/card/directives/card-actions.directive.d.ts +1 -2
  122. package/card/directives/card-footer.directive.d.ts +1 -2
  123. package/card/directives/card-header.directive.d.ts +1 -2
  124. package/card/directives/card-image.directive.d.ts +1 -2
  125. package/card/public-api.d.ts +1 -0
  126. package/card/types/public-api.d.ts +5 -0
  127. package/drag-and-drop/drag-and-drop.component.d.ts +26 -0
  128. package/drag-and-drop/index.d.ts +1 -0
  129. package/drag-and-drop/models/drag-and-drop-column.config.d.ts +8 -0
  130. package/drag-and-drop/models/drag-and-drop-column.model.d.ts +10 -0
  131. package/drag-and-drop/models/drag-and-drop-item.d.ts +7 -0
  132. package/drag-and-drop/models/drag-and-drop-item.model.d.ts +13 -0
  133. package/drag-and-drop/models/drag-and-drop.config.d.ts +6 -0
  134. package/drag-and-drop/models/public-api.d.ts +4 -0
  135. package/drag-and-drop/public-api.d.ts +3 -0
  136. package/drag-and-drop/upd-drag-and-drop.module.d.ts +9 -0
  137. package/dropdown/dropdown.component.d.ts +23 -6
  138. package/dropdown/models/dropdown-action-clicked.model.d.ts +6 -0
  139. package/dropdown/models/dropdown-item.d.ts +7 -2
  140. package/dropdown/models/dropdown-item.type.d.ts +1 -1
  141. package/dropdown/models/public-api.d.ts +2 -0
  142. package/dropdown/models/toolbar.type.d.ts +1 -0
  143. package/esm2022/badge/badge-config.model.mjs +14 -0
  144. package/esm2022/badge/badge.component.mjs +48 -0
  145. package/esm2022/badge/badge.config.mjs +2 -0
  146. package/esm2022/badge/index.mjs +2 -0
  147. package/esm2022/badge/public-api.mjs +4 -0
  148. package/esm2022/badge/upd-badge.module.mjs +24 -0
  149. package/esm2022/badge/updevs-components-badge.mjs +5 -0
  150. package/esm2022/button/button.component.mjs +126 -132
  151. package/esm2022/button/index.mjs +1 -1
  152. package/esm2022/button/public-api.mjs +1 -1
  153. package/esm2022/button/upd-button.module.mjs +14 -6
  154. package/esm2022/button/updevs-components-button.mjs +1 -1
  155. package/esm2022/calendar/assets/i18n/en.json +16 -0
  156. package/esm2022/calendar/assets/i18n/pt.json +16 -0
  157. package/esm2022/calendar/calendar.component.mjs +318 -0
  158. package/esm2022/calendar/index.mjs +2 -0
  159. package/esm2022/calendar/models/calendar-date.model.mjs +2 -0
  160. package/esm2022/calendar/models/calendar-month.model.mjs +2 -0
  161. package/esm2022/calendar/models/calendar-selected.model.mjs +2 -0
  162. package/esm2022/calendar/models/calendar-user-event.model.mjs +2 -0
  163. package/esm2022/calendar/models/calendar-year.model.mjs +2 -0
  164. package/esm2022/calendar/models/date-range.model.mjs +18 -0
  165. package/esm2022/calendar/models/enums/calendar-view.enum.mjs +7 -0
  166. package/esm2022/calendar/models/public-api.mjs +8 -0
  167. package/esm2022/calendar/public-api.mjs +6 -0
  168. package/esm2022/calendar/services/calendar-range-strategy.service.mjs +99 -0
  169. package/esm2022/calendar/services/calendar-signals.service.mjs +47 -0
  170. package/esm2022/calendar/services/public-api.mjs +2 -0
  171. package/esm2022/calendar/types/calendar-view.type.mjs +2 -0
  172. package/esm2022/calendar/types/public-api.mjs +2 -0
  173. package/esm2022/calendar/upd-calendar.module.mjs +52 -0
  174. package/esm2022/calendar/updevs-components-calendar.mjs +5 -0
  175. package/esm2022/card/card.component.mjs +4 -4
  176. package/esm2022/card/directives/card-actions.directive.mjs +8 -8
  177. package/esm2022/card/directives/card-footer.directive.mjs +8 -8
  178. package/esm2022/card/directives/card-header.directive.mjs +8 -8
  179. package/esm2022/card/directives/card-image.directive.mjs +8 -8
  180. package/esm2022/card/directives/public-api.mjs +1 -1
  181. package/esm2022/card/index.mjs +1 -1
  182. package/esm2022/card/public-api.mjs +2 -1
  183. package/esm2022/card/types/card-state.type.mjs +1 -1
  184. package/esm2022/card/types/card-style.type.mjs +1 -1
  185. package/esm2022/card/types/hover-effect.type.mjs +1 -1
  186. package/esm2022/card/types/public-api.mjs +6 -0
  187. package/esm2022/card/types/ribbon-style.type.mjs +1 -1
  188. package/esm2022/card/types/status-position.type.mjs +1 -1
  189. package/esm2022/card/upd-card.module.mjs +5 -5
  190. package/esm2022/card/updevs-components-card.mjs +1 -1
  191. package/esm2022/drag-and-drop/drag-and-drop.component.mjs +134 -0
  192. package/esm2022/drag-and-drop/index.mjs +2 -0
  193. package/esm2022/drag-and-drop/models/drag-and-drop-column.config.mjs +2 -0
  194. package/esm2022/drag-and-drop/models/drag-and-drop-column.model.mjs +9 -0
  195. package/esm2022/drag-and-drop/models/drag-and-drop-item.mjs +2 -0
  196. package/esm2022/drag-and-drop/models/drag-and-drop-item.model.mjs +14 -0
  197. package/esm2022/drag-and-drop/models/drag-and-drop.config.mjs +2 -0
  198. package/esm2022/drag-and-drop/models/public-api.mjs +5 -0
  199. package/esm2022/drag-and-drop/public-api.mjs +4 -0
  200. package/esm2022/drag-and-drop/upd-drag-and-drop.module.mjs +28 -0
  201. package/esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs +5 -0
  202. package/esm2022/dropdown/dropdown.component.mjs +75 -18
  203. package/esm2022/dropdown/index.mjs +1 -1
  204. package/esm2022/dropdown/models/dropdown-action-clicked.model.mjs +2 -0
  205. package/esm2022/dropdown/models/dropdown-item.mjs +1 -1
  206. package/esm2022/dropdown/models/dropdown-item.type.mjs +1 -1
  207. package/esm2022/dropdown/models/public-api.mjs +3 -1
  208. package/esm2022/dropdown/models/toolbar.type.mjs +2 -0
  209. package/esm2022/dropdown/public-api.mjs +1 -1
  210. package/esm2022/dropdown/upd-dropdown.module.mjs +5 -5
  211. package/esm2022/dropdown/updevs-components-dropdown.mjs +1 -1
  212. package/esm2022/form/assets/i18n/en.json +17 -0
  213. package/esm2022/form/assets/i18n/pt.json +17 -0
  214. package/esm2022/form/components/dynamic-field/dynamic-field.component.mjs +174 -0
  215. package/esm2022/form/form.component.mjs +180 -0
  216. package/esm2022/form/index.mjs +1 -1
  217. package/esm2022/form/models/attachment-rule.model.mjs +2 -0
  218. package/esm2022/form/models/button-field.model.mjs +2 -0
  219. package/esm2022/form/models/button-group-field.model.mjs +2 -0
  220. package/esm2022/form/models/checkbox-field.model.mjs +2 -0
  221. package/esm2022/form/models/checkbox-group-field.model.mjs +2 -0
  222. package/esm2022/form/models/dynamic-field.model.mjs +2 -0
  223. package/esm2022/form/models/enums/attachment-type.enum.mjs +15 -0
  224. package/esm2022/form/models/enums/dynamic-field.type.mjs +17 -0
  225. package/esm2022/form/models/enums/public-api.mjs +3 -0
  226. package/esm2022/form/models/file-upload-field.model.mjs +2 -0
  227. package/esm2022/form/models/form-config.mjs +2 -0
  228. package/esm2022/form/models/form-row.model.mjs +2 -0
  229. package/esm2022/form/models/form-update-on.type.mjs +2 -0
  230. package/esm2022/form/models/input-field.model.mjs +2 -0
  231. package/esm2022/form/models/masked-input-field.model.mjs +2 -0
  232. package/esm2022/form/models/public-api.mjs +19 -0
  233. package/esm2022/form/models/radio-field.model.mjs +2 -0
  234. package/esm2022/form/models/radio-group-field.model.mjs +2 -0
  235. package/esm2022/form/models/select-field.model.mjs +2 -0
  236. package/esm2022/form/models/single-select-field.model.mjs +2 -0
  237. package/esm2022/form/models/textarea-field.model.mjs +2 -0
  238. package/esm2022/form/models/validator-config.mjs +2 -0
  239. package/esm2022/form/public-api.mjs +4 -2
  240. package/esm2022/form/tools/errors-helper.mjs +54 -0
  241. package/esm2022/form/upd-form.module.mjs +84 -0
  242. package/esm2022/form/updevs-components-form.mjs +1 -1
  243. package/esm2022/form-controls/abstractions/base-control.mjs +46 -0
  244. package/esm2022/form-controls/abstractions/index.mjs +2 -0
  245. package/esm2022/form-controls/abstractions/public-api.mjs +2 -0
  246. package/esm2022/form-controls/abstractions/updevs-components-form-controls-abstractions.mjs +5 -0
  247. package/esm2022/form-controls/checkbox/checkbox.component.mjs +37 -51
  248. package/esm2022/form-controls/checkbox/index.mjs +1 -1
  249. package/esm2022/form-controls/checkbox/public-api.mjs +1 -1
  250. package/esm2022/form-controls/checkbox/upd-checkbox.module.mjs +12 -8
  251. package/esm2022/form-controls/checkbox/updevs-components-form-controls-checkbox.mjs +1 -1
  252. package/esm2022/form-controls/date-picker/date-picker.component.mjs +132 -0
  253. package/esm2022/form-controls/date-picker/index.mjs +2 -0
  254. package/esm2022/form-controls/date-picker/public-api.mjs +3 -0
  255. package/esm2022/form-controls/date-picker/upd-date-picker.module.mjs +40 -0
  256. package/esm2022/form-controls/date-picker/updevs-components-form-controls-date-picker.mjs +5 -0
  257. package/esm2022/form-controls/file-upload/assets/i18n/en.json +15 -0
  258. package/esm2022/form-controls/file-upload/assets/i18n/pt.json +15 -0
  259. package/esm2022/form-controls/file-upload/file-upload-changed.event.mjs +2 -0
  260. package/esm2022/form-controls/file-upload/file-upload.component.mjs +169 -0
  261. package/esm2022/form-controls/file-upload/index.mjs +2 -0
  262. package/esm2022/form-controls/file-upload/public-api.mjs +4 -0
  263. package/esm2022/form-controls/file-upload/upd-file-upload.module.mjs +48 -0
  264. package/esm2022/form-controls/file-upload/updevs-components-form-controls-file-upload.mjs +5 -0
  265. package/esm2022/form-controls/input/directives/input-append.directive.mjs +8 -8
  266. package/esm2022/form-controls/input/directives/input-prepend.directive.mjs +8 -8
  267. package/esm2022/form-controls/input/directives/public-api.mjs +1 -1
  268. package/esm2022/form-controls/input/index.mjs +1 -1
  269. package/esm2022/form-controls/input/input.component.mjs +64 -34
  270. package/esm2022/form-controls/input/public-api.mjs +1 -1
  271. package/esm2022/form-controls/input/types/input.type.mjs +1 -1
  272. package/esm2022/form-controls/input/types/loader-position.type.mjs +1 -1
  273. package/esm2022/form-controls/input/types/public-api.mjs +1 -1
  274. package/esm2022/form-controls/input/upd-input.module.mjs +5 -5
  275. package/esm2022/form-controls/input/updevs-components-form-controls-input.mjs +1 -1
  276. package/esm2022/form-controls/radio/index.mjs +1 -1
  277. package/esm2022/form-controls/radio/public-api.mjs +1 -1
  278. package/esm2022/form-controls/radio/radio.component.mjs +12 -25
  279. package/esm2022/form-controls/radio/upd-radio.module.mjs +14 -6
  280. package/esm2022/form-controls/radio/updevs-components-form-controls-radio.mjs +1 -1
  281. package/esm2022/form-controls/select/components/multiple/select-multiple.component.mjs +33 -10
  282. package/esm2022/form-controls/select/components/single/select.component.mjs +31 -8
  283. package/esm2022/form-controls/select/index.mjs +1 -1
  284. package/esm2022/form-controls/select/models/abstractions/base-select.component.mjs +109 -88
  285. package/esm2022/form-controls/select/models/defaults.mjs +8 -0
  286. package/esm2022/form-controls/select/models/public-api.mjs +2 -1
  287. package/esm2022/form-controls/select/models/select-item.mjs +1 -1
  288. package/esm2022/form-controls/select/public-api.mjs +1 -1
  289. package/esm2022/form-controls/select/upd-select.module.mjs +10 -6
  290. package/esm2022/form-controls/select/updevs-components-form-controls-select.mjs +1 -1
  291. package/esm2022/form-controls/textarea/index.mjs +1 -1
  292. package/esm2022/form-controls/textarea/public-api.mjs +1 -1
  293. package/esm2022/form-controls/textarea/textarea.component.mjs +18 -36
  294. package/esm2022/form-controls/textarea/upd-textarea.module.mjs +5 -5
  295. package/esm2022/form-controls/textarea/updevs-components-form-controls-textarea.mjs +1 -1
  296. package/esm2022/form-controls/time-picker/index.mjs +1 -1
  297. package/esm2022/form-controls/time-picker/public-api.mjs +1 -1
  298. package/esm2022/form-controls/time-picker/time-picker.component.mjs +4 -4
  299. package/esm2022/form-controls/time-picker/time-selector/time-selector.component.mjs +7 -8
  300. package/esm2022/form-controls/time-picker/upd-time-picker.module.mjs +9 -8
  301. package/esm2022/form-controls/time-picker/updevs-components-form-controls-time-picker.mjs +1 -1
  302. package/esm2022/index.mjs +2 -0
  303. package/esm2022/layout/abstractions/base-page.component.mjs +8 -9
  304. package/esm2022/layout/abstractions/base.layout.mjs +31 -0
  305. package/esm2022/layout/abstractions/public-api.mjs +1 -1
  306. package/esm2022/layout/assets/i18n/en.json +24 -2
  307. package/esm2022/layout/assets/i18n/pt.json +24 -2
  308. package/esm2022/layout/index.mjs +1 -1
  309. package/esm2022/layout/layouts/blank-layout/blank-layout.component.mjs +18 -7
  310. package/esm2022/layout/layouts/blank-layout/blank-layout.module.mjs +32 -6
  311. package/esm2022/layout/layouts/public-api.mjs +1 -1
  312. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.mjs +13 -29
  313. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.mjs +25 -28
  314. package/esm2022/layout/models/login-page-config.model.mjs +20 -0
  315. package/esm2022/layout/models/login-page.config.mjs +2 -0
  316. package/esm2022/layout/models/public-api.mjs +2 -1
  317. package/esm2022/layout/models/security-layout-config.model.mjs +10 -0
  318. package/esm2022/layout/models/security-layout.config.mjs +2 -0
  319. package/esm2022/layout/models/upd-layout-config.model.mjs +11 -17
  320. package/esm2022/layout/models/upd-layout.config.mjs +1 -1
  321. package/esm2022/layout/pages/auth-flow/auth-flow-routing.module.mjs +5 -5
  322. package/esm2022/layout/pages/auth-flow/auth-flow.module.mjs +36 -9
  323. package/esm2022/layout/pages/auth-flow/logged-out/logged-out.component.mjs +4 -4
  324. package/esm2022/layout/pages/auth-flow/login/login.component.mjs +95 -12
  325. package/esm2022/layout/pages/auth-flow/oauth-callback/oauth-callback.component.mjs +4 -4
  326. package/esm2022/layout/pages/auth-flow/public-api.mjs +1 -1
  327. package/esm2022/layout/pages/public-api.mjs +1 -1
  328. package/esm2022/layout/partials/footer/footer.component.mjs +13 -27
  329. package/esm2022/layout/partials/footer/footer.module.mjs +28 -0
  330. package/esm2022/layout/partials/footer/public-api.mjs +2 -2
  331. package/esm2022/layout/partials/header/header-style.type.mjs +1 -1
  332. package/esm2022/layout/partials/header/header.component.mjs +121 -60
  333. package/esm2022/layout/partials/header/header.module.mjs +40 -0
  334. package/esm2022/layout/partials/header/public-api.mjs +2 -1
  335. package/esm2022/layout/partials/page-header/page-header.component.mjs +11 -11
  336. package/esm2022/layout/partials/page-header/public-api.mjs +1 -1
  337. package/esm2022/layout/partials/public-api.mjs +1 -1
  338. package/esm2022/layout/partials/sidebar/public-api.mjs +1 -1
  339. package/esm2022/layout/partials/sidebar/sidebar.component.mjs +185 -95
  340. package/esm2022/layout/public-api.mjs +1 -1
  341. package/esm2022/layout/services/public-api.mjs +1 -1
  342. package/esm2022/layout/services/upd-layout-config.service.mjs +6 -6
  343. package/esm2022/layout/tools/layout.constants.mjs +1 -1
  344. package/esm2022/layout/upd-layout.module.mjs +12 -8
  345. package/esm2022/layout/updevs-components-layout.mjs +1 -1
  346. package/esm2022/lib/index.mjs +1 -1
  347. package/esm2022/lib/models/public-api.mjs +2 -0
  348. package/esm2022/lib/models/row-column-size.mjs +2 -0
  349. package/esm2022/lib/public-api.mjs +3 -1
  350. package/esm2022/lib/tools/column-size.helper.mjs +12 -0
  351. package/esm2022/lib/tools/public-api.mjs +2 -0
  352. package/esm2022/lib/types/component-size.type.mjs +1 -1
  353. package/esm2022/lib/types/horizontal-vertical.type.mjs +2 -0
  354. package/esm2022/lib/types/public-api.mjs +2 -1
  355. package/esm2022/lib/types/validation-status.type.mjs +1 -1
  356. package/esm2022/lib/upd-components.module.mjs +5 -5
  357. package/esm2022/link/index.mjs +1 -1
  358. package/esm2022/link/link.component.mjs +4 -4
  359. package/esm2022/link/public-api.mjs +1 -1
  360. package/esm2022/link/target.type.mjs +1 -1
  361. package/esm2022/link/upd-link.module.mjs +5 -5
  362. package/esm2022/link/updevs-components-link.mjs +1 -1
  363. package/esm2022/list/assets/i18n/en.json +7 -3
  364. package/esm2022/list/assets/i18n/pt.json +7 -3
  365. package/esm2022/list/index.mjs +1 -1
  366. package/esm2022/list/list.component.mjs +14 -34
  367. package/esm2022/list/models/badge-position.type.mjs +1 -1
  368. package/esm2022/list/models/list-item.mjs +1 -1
  369. package/esm2022/list/models/list-item.model.mjs +7 -2
  370. package/esm2022/list/models/public-api.mjs +1 -1
  371. package/esm2022/list/public-api.mjs +1 -1
  372. package/esm2022/list/upd-list.module.mjs +9 -8
  373. package/esm2022/list/updevs-components-list.mjs +1 -1
  374. package/esm2022/modal/assets/i18n/en.json +17 -0
  375. package/esm2022/modal/assets/i18n/pt.json +17 -0
  376. package/esm2022/modal/components/modal-container/modal-container.component.mjs +216 -0
  377. package/esm2022/modal/index.mjs +2 -0
  378. package/esm2022/modal/models/base.modal.mjs +14 -0
  379. package/esm2022/modal/models/modal-config.model.mjs +20 -0
  380. package/esm2022/modal/models/modal-ref.mjs +2 -0
  381. package/esm2022/modal/models/modal.config.mjs +2 -0
  382. package/esm2022/modal/models/public-api.mjs +4 -0
  383. package/esm2022/modal/public-api.mjs +4 -0
  384. package/esm2022/modal/services/modal-alert.service.mjs +99 -0
  385. package/esm2022/modal/services/modal.service.mjs +30 -0
  386. package/esm2022/modal/services/public-api.mjs +3 -0
  387. package/esm2022/modal/types/modal-footer-style.type.mjs +2 -0
  388. package/esm2022/modal/types/modal-size.type.mjs +2 -0
  389. package/esm2022/modal/upd-modal.module.mjs +90 -0
  390. package/esm2022/modal/updevs-components-modal.mjs +5 -0
  391. package/esm2022/paginator/assets/i18n/en.json +15 -0
  392. package/esm2022/paginator/assets/i18n/pt.json +15 -0
  393. package/esm2022/paginator/index.mjs +2 -0
  394. package/esm2022/paginator/paginator.component.mjs +66 -0
  395. package/esm2022/paginator/public-api.mjs +3 -0
  396. package/esm2022/paginator/upd-paginator.module.mjs +47 -0
  397. package/esm2022/paginator/updevs-components-paginator.mjs +5 -0
  398. package/esm2022/popover/index.mjs +1 -1
  399. package/esm2022/popover/popover.component.mjs +7 -7
  400. package/esm2022/popover/popover.directive.mjs +33 -42
  401. package/esm2022/popover/public-api.mjs +1 -1
  402. package/esm2022/popover/upd-popover.module.mjs +5 -5
  403. package/esm2022/popover/updevs-components-popover.mjs +1 -1
  404. package/esm2022/pricing-cards/index.mjs +2 -0
  405. package/esm2022/pricing-cards/models/price-item-feature.model.mjs +2 -0
  406. package/esm2022/pricing-cards/models/price-item-features-group.model.mjs +2 -0
  407. package/esm2022/pricing-cards/models/price-item-tag.model.mjs +2 -0
  408. package/esm2022/pricing-cards/models/price-item.model.mjs +2 -0
  409. package/esm2022/pricing-cards/models/public-api.mjs +5 -0
  410. package/esm2022/pricing-cards/pricing-cards.component.mjs +25 -0
  411. package/esm2022/pricing-cards/public-api.mjs +4 -0
  412. package/esm2022/pricing-cards/upd-pricing-cards.module.mjs +40 -0
  413. package/esm2022/pricing-cards/updevs-components-pricing-cards.mjs +5 -0
  414. package/esm2022/public-api.mjs +1 -1
  415. package/esm2022/table/abstractions/base-column.model.mjs +52 -0
  416. package/esm2022/table/abstractions/base.column.mjs +84 -0
  417. package/esm2022/table/abstractions/filters-operands.service.mjs +3 -0
  418. package/esm2022/table/abstractions/public-api.mjs +3 -0
  419. package/esm2022/table/assets/i18n/en.json +74 -0
  420. package/esm2022/table/assets/i18n/pt.json +74 -0
  421. package/esm2022/table/components/columns/boolean-column/boolean-column.component.mjs +26 -0
  422. package/esm2022/table/components/columns/date-time-column/date-time-column.component.mjs +13 -0
  423. package/esm2022/table/components/columns/number-column/number-column.component.mjs +13 -0
  424. package/esm2022/table/components/columns/text-column/text-column.component.mjs +31 -0
  425. package/esm2022/table/components/columns-manager/columns-manager.component.mjs +36 -0
  426. package/esm2022/table/components/filter-row/filter-row.component.mjs +114 -0
  427. package/esm2022/table/components/save-search/save-search.component.mjs +72 -0
  428. package/esm2022/table/components/search-section/search-section.component.mjs +93 -0
  429. package/esm2022/table/directives/public-api.mjs +2 -0
  430. package/esm2022/table/directives/table-column.directive.mjs +52 -0
  431. package/esm2022/table/index.mjs +2 -0
  432. package/esm2022/table/models/columns/boolean-column.model.mjs +22 -0
  433. package/esm2022/table/models/columns/date-time-column.model.mjs +16 -0
  434. package/esm2022/table/models/columns/guid-column.model.mjs +13 -0
  435. package/esm2022/table/models/columns/image-column.model.mjs +11 -0
  436. package/esm2022/table/models/columns/number-column.model.mjs +17 -0
  437. package/esm2022/table/models/columns/public-api.mjs +7 -0
  438. package/esm2022/table/models/columns/text-column.model.mjs +11 -0
  439. package/esm2022/table/models/enums/column-type.enum.mjs +15 -0
  440. package/esm2022/table/models/enums/public-api.mjs +2 -0
  441. package/esm2022/table/models/filter-item.model.mjs +2 -0
  442. package/esm2022/table/models/filter-operand.config.mjs +2 -0
  443. package/esm2022/table/models/operands-lists/boolean-filter-operands-list.model.mjs +25 -0
  444. package/esm2022/table/models/operands-lists/date-filter-operands-list.model.mjs +25 -0
  445. package/esm2022/table/models/operands-lists/date-or-number-operands-list.config.mjs +31 -0
  446. package/esm2022/table/models/operands-lists/filter-operands-list.config.mjs +31 -0
  447. package/esm2022/table/models/operands-lists/guid-filter-operands-list.model.mjs +16 -0
  448. package/esm2022/table/models/operands-lists/number-filter-operands-list.model.mjs +25 -0
  449. package/esm2022/table/models/operands-lists/string-filter-operands-list.model.mjs +45 -0
  450. package/esm2022/table/models/public-api.mjs +5 -0
  451. package/esm2022/table/models/saved-view.model.mjs +2 -0
  452. package/esm2022/table/models/table-config.model.mjs +29 -0
  453. package/esm2022/table/models/table.config.mjs +2 -0
  454. package/esm2022/table/models/upd-table-config.model.mjs +9 -0
  455. package/esm2022/table/models/upd-table.config.mjs +2 -0
  456. package/esm2022/table/public-api.mjs +6 -0
  457. package/esm2022/table/services/default-filters-operands.service.mjs +60 -0
  458. package/esm2022/table/services/storages/saved-views.storage.mjs +56 -0
  459. package/esm2022/table/services/stores/filters-operands.store.mjs +19 -0
  460. package/esm2022/table/services/upd-table-config.service.mjs +18 -0
  461. package/esm2022/table/table.component.mjs +439 -0
  462. package/esm2022/table/tools/filters.tools.mjs +48 -0
  463. package/esm2022/table/tools/table.constants.mjs +15 -0
  464. package/esm2022/table/upd-table.module.mjs +150 -0
  465. package/esm2022/table/updevs-components-table.mjs +5 -0
  466. package/esm2022/updevs-components.mjs +2 -2
  467. package/fesm2022/updevs-components-badge.mjs +89 -0
  468. package/fesm2022/updevs-components-badge.mjs.map +1 -0
  469. package/fesm2022/updevs-components-button.mjs +138 -136
  470. package/fesm2022/updevs-components-button.mjs.map +1 -1
  471. package/fesm2022/updevs-components-calendar.mjs +582 -0
  472. package/fesm2022/updevs-components-calendar.mjs.map +1 -0
  473. package/fesm2022/updevs-components-card.mjs +32 -32
  474. package/fesm2022/updevs-components-card.mjs.map +1 -1
  475. package/fesm2022/updevs-components-drag-and-drop.mjs +185 -0
  476. package/fesm2022/updevs-components-drag-and-drop.mjs.map +1 -0
  477. package/fesm2022/updevs-components-dropdown.mjs +78 -21
  478. package/fesm2022/updevs-components-dropdown.mjs.map +1 -1
  479. package/fesm2022/updevs-components-form-controls-abstractions.mjs +53 -0
  480. package/fesm2022/updevs-components-form-controls-abstractions.mjs.map +1 -0
  481. package/fesm2022/updevs-components-form-controls-checkbox.mjs +47 -57
  482. package/fesm2022/updevs-components-form-controls-checkbox.mjs.map +1 -1
  483. package/fesm2022/updevs-components-form-controls-date-picker.mjs +175 -0
  484. package/fesm2022/updevs-components-form-controls-date-picker.mjs.map +1 -0
  485. package/fesm2022/updevs-components-form-controls-file-upload.mjs +264 -0
  486. package/fesm2022/updevs-components-form-controls-file-upload.mjs.map +1 -0
  487. package/fesm2022/updevs-components-form-controls-input.mjs +80 -50
  488. package/fesm2022/updevs-components-form-controls-input.mjs.map +1 -1
  489. package/fesm2022/updevs-components-form-controls-radio.mjs +25 -30
  490. package/fesm2022/updevs-components-form-controls-radio.mjs.map +1 -1
  491. package/fesm2022/updevs-components-form-controls-select.mjs +185 -108
  492. package/fesm2022/updevs-components-form-controls-select.mjs.map +1 -1
  493. package/fesm2022/updevs-components-form-controls-textarea.mjs +21 -39
  494. package/fesm2022/updevs-components-form-controls-textarea.mjs.map +1 -1
  495. package/fesm2022/updevs-components-form-controls-time-picker.mjs +18 -18
  496. package/fesm2022/updevs-components-form-controls-time-picker.mjs.map +1 -1
  497. package/fesm2022/updevs-components-form.mjs +541 -10
  498. package/fesm2022/updevs-components-form.mjs.map +1 -1
  499. package/fesm2022/updevs-components-layout.mjs +774 -395
  500. package/fesm2022/updevs-components-layout.mjs.map +1 -1
  501. package/fesm2022/updevs-components-link.mjs +8 -8
  502. package/fesm2022/updevs-components-link.mjs.map +1 -1
  503. package/fesm2022/updevs-components-list.mjs +44 -58
  504. package/fesm2022/updevs-components-list.mjs.map +1 -1
  505. package/fesm2022/updevs-components-modal.mjs +504 -0
  506. package/fesm2022/updevs-components-modal.mjs.map +1 -0
  507. package/fesm2022/updevs-components-paginator.mjs +160 -0
  508. package/fesm2022/updevs-components-paginator.mjs.map +1 -0
  509. package/fesm2022/updevs-components-popover.mjs +41 -50
  510. package/fesm2022/updevs-components-popover.mjs.map +1 -1
  511. package/fesm2022/updevs-components-pricing-cards.mjs +69 -0
  512. package/fesm2022/updevs-components-pricing-cards.mjs.map +1 -0
  513. package/fesm2022/updevs-components-table.mjs +1754 -0
  514. package/fesm2022/updevs-components-table.mjs.map +1 -0
  515. package/fesm2022/updevs-components.mjs +17 -5
  516. package/fesm2022/updevs-components.mjs.map +1 -1
  517. package/form/components/dynamic-field/dynamic-field.component.d.ts +63 -0
  518. package/form/form.component.d.ts +64 -0
  519. package/form/models/attachment-rule.model.d.ts +35 -0
  520. package/form/models/button-field.model.d.ts +5 -0
  521. package/form/models/button-group-field.model.d.ts +5 -0
  522. package/form/models/checkbox-field.model.d.ts +4 -0
  523. package/form/models/checkbox-group-field.model.d.ts +6 -0
  524. package/form/models/dynamic-field.model.d.ts +50 -0
  525. package/form/models/enums/attachment-type.enum.d.ts +13 -0
  526. package/form/models/enums/dynamic-field.type.d.ts +15 -0
  527. package/form/models/enums/public-api.d.ts +2 -0
  528. package/form/models/file-upload-field.model.d.ts +16 -0
  529. package/form/models/form-config.d.ts +2 -0
  530. package/form/models/form-row.model.d.ts +10 -0
  531. package/form/models/form-update-on.type.d.ts +1 -0
  532. package/form/models/input-field.model.d.ts +9 -0
  533. package/form/models/masked-input-field.model.d.ts +6 -0
  534. package/form/models/public-api.d.ts +18 -0
  535. package/form/models/radio-field.model.d.ts +4 -0
  536. package/form/models/radio-group-field.model.d.ts +6 -0
  537. package/form/models/select-field.model.d.ts +29 -0
  538. package/form/models/single-select-field.model.d.ts +4 -0
  539. package/form/models/textarea-field.model.d.ts +10 -0
  540. package/form/models/validator-config.d.ts +5 -0
  541. package/form/public-api.d.ts +3 -1
  542. package/form/tools/errors-helper.d.ts +11 -0
  543. package/form/upd-form.module.d.ts +22 -0
  544. package/form-controls/abstractions/base-control.d.ts +29 -0
  545. package/form-controls/abstractions/index.d.ts +2 -0
  546. package/form-controls/abstractions/public-api.d.ts +2 -0
  547. package/form-controls/checkbox/checkbox.component.d.ts +14 -20
  548. package/form-controls/checkbox/upd-checkbox.module.d.ts +2 -1
  549. package/form-controls/date-picker/date-picker.component.d.ts +66 -0
  550. package/form-controls/date-picker/index.d.ts +1 -0
  551. package/form-controls/date-picker/public-api.d.ts +2 -0
  552. package/form-controls/date-picker/upd-date-picker.module.d.ts +12 -0
  553. package/form-controls/file-upload/file-upload-changed.event.d.ts +4 -0
  554. package/form-controls/file-upload/file-upload.component.d.ts +46 -0
  555. package/form-controls/file-upload/index.d.ts +1 -0
  556. package/form-controls/file-upload/public-api.d.ts +3 -0
  557. package/form-controls/file-upload/upd-file-upload.module.d.ts +14 -0
  558. package/form-controls/input/directives/input-append.directive.d.ts +1 -2
  559. package/form-controls/input/directives/input-prepend.directive.d.ts +1 -2
  560. package/form-controls/input/input.component.d.ts +24 -14
  561. package/form-controls/radio/radio.component.d.ts +5 -12
  562. package/form-controls/radio/upd-radio.module.d.ts +3 -1
  563. package/form-controls/select/components/multiple/select-multiple.component.d.ts +13 -2
  564. package/form-controls/select/components/single/select.component.d.ts +10 -2
  565. package/form-controls/select/models/abstractions/base-select.component.d.ts +35 -31
  566. package/form-controls/select/models/defaults.d.ts +8 -0
  567. package/form-controls/select/models/public-api.d.ts +1 -0
  568. package/form-controls/select/upd-select.module.d.ts +3 -2
  569. package/form-controls/textarea/textarea.component.d.ts +11 -15
  570. package/form-controls/time-picker/upd-time-picker.module.d.ts +2 -2
  571. package/index.d.ts +1 -4
  572. package/layout/abstractions/base-page.component.d.ts +1 -2
  573. package/layout/abstractions/base.layout.d.ts +15 -0
  574. package/layout/layouts/blank-layout/blank-layout.component.d.ts +5 -1
  575. package/layout/layouts/blank-layout/blank-layout.module.d.ts +8 -1
  576. package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.d.ts +2 -9
  577. package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.d.ts +14 -13
  578. package/layout/models/login-page-config.model.d.ts +46 -0
  579. package/layout/models/login-page.config.d.ts +44 -0
  580. package/layout/models/public-api.d.ts +1 -0
  581. package/layout/models/security-layout-config.model.d.ts +12 -0
  582. package/layout/models/security-layout.config.d.ts +10 -0
  583. package/layout/models/upd-layout-config.model.d.ts +9 -0
  584. package/layout/models/upd-layout.config.d.ts +9 -0
  585. package/layout/pages/auth-flow/auth-flow.module.d.ts +9 -2
  586. package/layout/pages/auth-flow/login/login.component.d.ts +20 -6
  587. package/layout/partials/footer/footer.component.d.ts +4 -15
  588. package/layout/partials/footer/footer.module.d.ts +9 -0
  589. package/layout/partials/footer/public-api.d.ts +1 -1
  590. package/layout/partials/header/header.component.d.ts +44 -26
  591. package/layout/partials/header/header.module.d.ts +12 -0
  592. package/layout/partials/header/public-api.d.ts +1 -0
  593. package/layout/partials/page-header/page-header.component.d.ts +2 -2
  594. package/layout/partials/sidebar/sidebar.component.d.ts +29 -4
  595. package/layout/upd-layout.module.d.ts +2 -1
  596. package/lib/index.d.ts +1 -0
  597. package/lib/models/public-api.d.ts +2 -0
  598. package/lib/models/row-column-size.d.ts +23 -0
  599. package/lib/public-api.d.ts +3 -0
  600. package/lib/tools/column-size.helper.d.ts +6 -0
  601. package/lib/tools/public-api.d.ts +2 -0
  602. package/lib/types/component-size.type.d.ts +1 -0
  603. package/lib/types/horizontal-vertical.type.d.ts +2 -0
  604. package/lib/types/public-api.d.ts +2 -0
  605. package/lib/types/validation-status.type.d.ts +1 -0
  606. package/lib/upd-components.module.d.ts +1 -0
  607. package/list/list.component.d.ts +4 -20
  608. package/list/models/list-item.d.ts +4 -2
  609. package/list/models/list-item.model.d.ts +4 -2
  610. package/list/upd-list.module.d.ts +2 -2
  611. package/modal/components/modal-container/modal-container.component.d.ts +74 -0
  612. package/modal/index.d.ts +1 -0
  613. package/modal/models/base.modal.d.ts +8 -0
  614. package/modal/models/modal-config.model.d.ts +32 -0
  615. package/modal/models/modal-ref.d.ts +6 -0
  616. package/modal/models/modal.config.d.ts +30 -0
  617. package/modal/models/public-api.d.ts +3 -0
  618. package/modal/public-api.d.ts +3 -0
  619. package/modal/services/modal-alert.service.d.ts +22 -0
  620. package/modal/services/modal.service.d.ts +12 -0
  621. package/modal/services/public-api.d.ts +2 -0
  622. package/modal/types/modal-footer-style.type.d.ts +1 -0
  623. package/modal/types/modal-size.type.d.ts +1 -0
  624. package/modal/upd-modal.module.d.ts +18 -0
  625. package/package.json +78 -17
  626. package/paginator/index.d.ts +1 -0
  627. package/paginator/paginator.component.d.ts +42 -0
  628. package/paginator/public-api.d.ts +2 -0
  629. package/paginator/upd-paginator.module.d.ts +14 -0
  630. package/popover/popover.component.d.ts +2 -2
  631. package/popover/popover.directive.d.ts +8 -10
  632. package/pricing-cards/index.d.ts +1 -0
  633. package/pricing-cards/models/price-item-feature.model.d.ts +5 -0
  634. package/pricing-cards/models/price-item-features-group.model.d.ts +5 -0
  635. package/pricing-cards/models/price-item-tag.model.d.ts +6 -0
  636. package/pricing-cards/models/price-item.model.d.ts +20 -0
  637. package/pricing-cards/models/public-api.d.ts +4 -0
  638. package/pricing-cards/pricing-cards.component.d.ts +11 -0
  639. package/pricing-cards/public-api.d.ts +3 -0
  640. package/pricing-cards/upd-pricing-cards.module.d.ts +12 -0
  641. package/public-api.d.ts +1 -0
  642. package/table/abstractions/base-column.model.d.ts +31 -0
  643. package/table/abstractions/base.column.d.ts +26 -0
  644. package/table/abstractions/filters-operands.service.d.ts +8 -0
  645. package/table/abstractions/public-api.d.ts +2 -0
  646. package/table/components/columns/boolean-column/boolean-column.component.d.ts +9 -0
  647. package/table/components/columns/date-time-column/date-time-column.component.d.ts +7 -0
  648. package/table/components/columns/number-column/number-column.component.d.ts +7 -0
  649. package/table/components/columns/text-column/text-column.component.d.ts +9 -0
  650. package/table/components/columns-manager/columns-manager.component.d.ts +15 -0
  651. package/table/components/filter-row/filter-row.component.d.ts +40 -0
  652. package/table/components/save-search/save-search.component.d.ts +17 -0
  653. package/table/components/search-section/search-section.component.d.ts +36 -0
  654. package/table/directives/public-api.d.ts +1 -0
  655. package/table/directives/table-column.directive.d.ts +14 -0
  656. package/table/index.d.ts +1 -0
  657. package/table/models/columns/boolean-column.model.d.ts +15 -0
  658. package/table/models/columns/date-time-column.model.d.ts +8 -0
  659. package/table/models/columns/guid-column.model.d.ts +4 -0
  660. package/table/models/columns/image-column.model.d.ts +6 -0
  661. package/table/models/columns/number-column.model.d.ts +8 -0
  662. package/table/models/columns/public-api.d.ts +6 -0
  663. package/table/models/columns/text-column.model.d.ts +6 -0
  664. package/table/models/enums/column-type.enum.d.ts +13 -0
  665. package/table/models/enums/public-api.d.ts +1 -0
  666. package/table/models/filter-item.model.d.ts +6 -0
  667. package/table/models/filter-operand.config.d.ts +9 -0
  668. package/table/models/operands-lists/boolean-filter-operands-list.model.d.ts +6 -0
  669. package/table/models/operands-lists/date-filter-operands-list.model.d.ts +6 -0
  670. package/table/models/operands-lists/date-or-number-operands-list.config.d.ts +5 -0
  671. package/table/models/operands-lists/filter-operands-list.config.d.ts +5 -0
  672. package/table/models/operands-lists/guid-filter-operands-list.model.d.ts +6 -0
  673. package/table/models/operands-lists/number-filter-operands-list.model.d.ts +6 -0
  674. package/table/models/operands-lists/string-filter-operands-list.model.d.ts +6 -0
  675. package/table/models/public-api.d.ts +4 -0
  676. package/table/models/saved-view.model.d.ts +11 -0
  677. package/table/models/table-config.model.d.ts +33 -0
  678. package/table/models/table.config.d.ts +31 -0
  679. package/table/models/upd-table-config.model.d.ts +6 -0
  680. package/table/models/upd-table.config.d.ts +6 -0
  681. package/table/public-api.d.ts +5 -0
  682. package/table/services/default-filters-operands.service.d.ts +17 -0
  683. package/table/services/storages/saved-views.storage.d.ts +19 -0
  684. package/table/services/stores/filters-operands.store.d.ts +11 -0
  685. package/table/services/upd-table-config.service.d.ts +12 -0
  686. package/table/table.component.d.ts +81 -0
  687. package/table/tools/filters.tools.d.ts +9 -0
  688. package/table/tools/table.constants.d.ts +15 -0
  689. package/table/upd-table.module.d.ts +40 -0
  690. package/esm2022/form/form.module.mjs +0 -18
  691. package/esm2022/layout/partials/footer/footer-copyright.directive.mjs +0 -15
  692. package/form/form.module.d.ts +0 -7
  693. package/layout/partials/footer/footer-copyright.directive.d.ts +0 -6
@@ -1,27 +1,110 @@
1
- import { Component, ViewEncapsulation, inject } from '@angular/core';
1
+ import { Component, inject, model, signal } from '@angular/core';
2
+ import { Router } from '@angular/router';
3
+ import { FormGroup, Validators } from '@angular/forms';
2
4
  import { LayoutService } from '@updevs/sdk/layout';
3
5
  import { AuthService } from '@updevs/sdk/security';
6
+ import { DynamicFieldType } from '@updevs/components/form';
7
+ import { finalize } from 'rxjs';
8
+ import { UpdLayoutConfigService } from '../../../services/upd-layout-config.service';
4
9
  import * as i0 from "@angular/core";
5
10
  import * as i1 from "@angular/common";
6
11
  import * as i2 from "@updevs/components/button";
7
12
  import * as i3 from "@angular/forms";
13
+ import * as i4 from "@jsverse/transloco";
14
+ import * as i5 from "@updevs/components/link";
15
+ import * as i6 from "@updevs/components/card";
16
+ import * as i7 from "@updevs/components/form";
17
+ import * as i8 from "../../../partials/footer/footer.component";
18
+ import * as i9 from "../../../partials/header/header.component";
8
19
  export class LoginComponent {
9
20
  constructor() {
10
- this.layout = 'centered-box';
11
- this.username = '';
12
- this.password = '';
21
+ this.formGroup = model(new FormGroup({}));
22
+ this.formRows = [];
23
+ this.isSigningIn = signal(false);
24
+ this.layoutConfigService = inject(UpdLayoutConfigService);
25
+ this.config = this.layoutConfigService.config.securityLayoutConfig.loginPage;
26
+ this.bodyClasses = ['border-top-wide', this.border, 'd-flex', 'flex-column'];
27
+ this.router = inject(Router);
13
28
  this.authService = inject(AuthService);
14
29
  this.layoutService = inject(LayoutService);
15
- this.layoutService.addBodyClasses('border-top-wide', 'border-primary', 'd-flex', 'flex-column');
30
+ }
31
+ get border() {
32
+ return `border-${this.config.borderColor}`;
33
+ }
34
+ get linkClasses() {
35
+ return [`link-${this.config.linksColor}`];
36
+ }
37
+ get boxBgColor() {
38
+ return this.config.bgColor || (!!this.config.bgStyle ? `bg-${this.config.bgStyle}` : '') || 'bg-white';
39
+ }
40
+ ngOnInit() {
41
+ this.layoutService.addBodyClasses(this.boxBgColor);
42
+ if (this.config.layout !== 'cover') {
43
+ this.layoutService.addBodyClasses(...this.bodyClasses);
44
+ }
45
+ this.formRows = [
46
+ {
47
+ fields: [
48
+ {
49
+ name: 'username',
50
+ type: DynamicFieldType.Input,
51
+ colSize: { default: 12 },
52
+ label: { text: 'UpDevs.Login.Email', isTranslated: false },
53
+ validators: [Validators.required, Validators.minLength(3)],
54
+ shouldSubmitOnEnter: true
55
+ }
56
+ ]
57
+ },
58
+ {
59
+ fields: [
60
+ {
61
+ name: 'password',
62
+ type: DynamicFieldType.Input,
63
+ inputType: 'password',
64
+ colSize: { default: 12 },
65
+ label: { text: 'UpDevs.Login.Password', isTranslated: false },
66
+ validators: [Validators.required, Validators.minLength(3)],
67
+ shouldSubmitOnEnter: true
68
+ }
69
+ ]
70
+ },
71
+ {
72
+ fields: [
73
+ {
74
+ name: 'rememberMe',
75
+ type: DynamicFieldType.Checkbox,
76
+ colSize: { default: 12 },
77
+ label: { text: 'UpDevs.Login.RememberMe', isTranslated: false },
78
+ initValue: false
79
+ }
80
+ ]
81
+ }
82
+ ];
83
+ }
84
+ ngOnDestroy() {
85
+ this.layoutService.removeBodyClasses(this.boxBgColor);
86
+ if (this.config.layout !== 'cover') {
87
+ this.layoutService.removeBodyClasses(...this.bodyClasses);
88
+ }
16
89
  }
17
90
  login() {
18
- this.authService.login(this.username, this.password).subscribe();
91
+ // TODO: handle remember me
92
+ this.isSigningIn.set(true);
93
+ this.authService.login(this.formGroup().value.username, this.formGroup().value.password)
94
+ .pipe(finalize(() => this.isSigningIn.set(false)))
95
+ .subscribe();
96
+ }
97
+ goToRecoverPasswordPage() {
98
+ this.router.navigate([this.config.recoverPasswordRoute]).then();
99
+ }
100
+ goToSignUpPage() {
101
+ this.router.navigate([this.config.signUpRoute]).then();
19
102
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: LoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: LoginComponent, selector: "upd-login", ngImport: i0, template: "<div class=\"page page-center\">\n <ng-container [ngSwitch]=\"layout\">\n <div *ngSwitchCase=\"'centered-box'\" class=\"container container-tight py-4\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'box-with-picture'\" class=\"container container-normal py-4\">\n <div class=\"row align-items-center g-4\">\n <div class=\"col-lg\">\n <div class=\"container-tight\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n </div>\n <div class=\"col-lg d-none d-lg-block\">\n <img height=\"300\" class=\"d-block mx-auto upd-right-login-image\"/>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n\n<ng-template #loginCard>\n <div class=\"text-center mb-4\">\n <a href=\".\" class=\"navbar-brand navbar-brand-autodark\">\n <img height=\"36\" class=\"navbar-brand-image upd-brand-logo\"/>\n </a>\n </div>\n <div class=\"card card-md\">\n <div class=\"card-body\">\n <h2 class=\"h2 text-center mb-4\" i18n>Login to your account</h2>\n <form action=\"./\" method=\"get\" autocomplete=\"off\" novalidate>\n <div class=\"mb-3\">\n <label class=\"form-label\">Email address</label>\n <input type=\"email\" class=\"form-control\" name=\"username\" [(ngModel)]=\"username\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">\n Password\n <span class=\"form-label-description\">\n <a href=\"./forgot-password.html\" i18n>I forgot my password</a>\n </span>\n </label>\n <div class=\"input-group input-group-flat\">\n <input type=\"password\" class=\"form-control\" name=\"password\" [(ngModel)]=\"password\">\n <span class=\"input-group-text\">\n <a href=\"#\" class=\"link-secondary\" title=\"Show password\" data-bs-toggle=\"tooltip\"><!-- Download SVG icon from http://tabler-icons.io/i/eye -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\"\n d=\"M0 0h24v24H0z\" fill=\"none\"/><circle cx=\"12\" cy=\"12\" r=\"2\"/><path\n d=\"M22 12c-2.667 4.667 -6 7 -10 7s-7.333 -2.333 -10 -7c2.667 -4.667 6 -7 10 -7s7.333 2.333 10 7\"/></svg>\n </a>\n </span>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-check\">\n <input type=\"checkbox\" class=\"form-check-input\"/>\n <span class=\"form-check-label\" i18n>Remember me on this device</span>\n </label>\n </div>\n <div class=\"form-footer\">\n <upd-button (clicked)=\"login()\" customClasses=\"w-100\">\n <span i18n>Sign in</span>\n </upd-button>\n </div>\n </form>\n </div>\n <div class=\"hr-text\" i18n>or</div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-github -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-github\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5\"/>\n </svg>\n Login with Github\n </a></div>\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-twitter -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-twitter\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M22 4.01c-1 .49 -1.98 .689 -3 .99c-1.121 -1.265 -2.783 -1.335 -4.38 -.737s-2.643 2.06 -2.62 3.737v1c-3.245 .083 -6.135 -1.395 -8 -4c0 0 -4.182 7.433 4 11c-1.872 1.247 -3.739 2.088 -6 2c3.308 1.803 6.913 2.423 10.034 1.517c3.58 -1.04 6.522 -3.723 7.651 -7.742a13.84 13.84 0 0 0 .497 -3.753c-.002 -.249 1.51 -2.772 1.818 -4.013z\"/>\n </svg>\n Login with Twitter\n </a></div>\n </div>\n </div>\n </div>\n <div class=\"text-center text-muted mt-3\">\n Don't have account yet? <a href=\"./sign-up.html\" tabindex=\"-1\" i18n>Sign up</a>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.ButtonComponent, selector: "upd-button", inputs: ["text", "model", "colorStyle", "brandColorStyle", "customClasses", "isActive", "isDisabled", "isOutline", "isGhost", "isSquare", "isPill", "isIcon", "isLoading", "isList", "isFloating", "isAction", "isNavigationLink", "shouldIgnoreBtnClass"], outputs: ["clicked"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], encapsulation: i0.ViewEncapsulation.None }); }
103
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: LoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
104
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: LoginComponent, selector: "upd-login", inputs: { formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { formGroup: "formGroupChange" }, ngImport: i0, template: "<ng-container *transloco=\"let t; prefix: 'UpDevs.Login'\">\n <upd-header [style]=\"'transparent'\"></upd-header>\n <div class=\"page page-center\">\n @switch (config.layout) {\n @case ('centered-box') {\n <div class=\"container container-tight py-4\">\n <ng-container [ngTemplateOutlet]=\"loginCardTpl\"></ng-container>\n </div>\n }\n @case ('box-with-picture') {\n <div class=\"container container-normal py-4\">\n <div class=\"row align-items-center g-4\">\n <div class=\"col-lg\">\n <div class=\"container-tight\">\n <ng-container [ngTemplateOutlet]=\"loginCardTpl\"></ng-container>\n </div>\n </div>\n <div class=\"col-lg d-none d-lg-block\">\n <img height=\"300\" class=\"d-block mx-auto upd-right-login-image\" />\n </div>\n </div>\n </div>\n }\n @case ('cover') {\n <div class=\"row g-0 flex-fill\">\n <div class=\"col-12 col-lg-6 col-xl-4 border-top-wide d-flex flex-column justify-content-center\"\n [ngClass]=\"border\">\n <div class=\"container container-tight my-5 px-lg-5\">\n <ng-container [ngTemplateOutlet]=\"headerTpl\"></ng-container>\n\n <h2 class=\"h3 text-center mb-3\">\n {{ t('Title') }}\n </h2>\n\n <ng-container [ngTemplateOutlet]=\"loginFormTpl\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"socialLoginTpl\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"noAccountTpl\"></ng-container>\n </div>\n </div>\n <div class=\"col-12 col-lg-6 col-xl-8 d-none d-lg-block\">\n <div class=\"bg-cover h-100 min-vh-100 upd-right-login-cover-image\"></div>\n </div>\n </div>\n }\n }\n </div>\n <upd-footer></upd-footer>\n\n <ng-template #loginCardTpl>\n <ng-container [ngTemplateOutlet]=\"headerTpl\"></ng-container>\n <upd-card [removeBorder]=\"true\">\n <div class=\"p-4\">\n <h2 class=\"h2 text-center mb-4\">\n {{ t('Title') }}\n </h2>\n <ng-container [ngTemplateOutlet]=\"loginFormTpl\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"socialLoginTpl\"></ng-container>\n </upd-card>\n <ng-container [ngTemplateOutlet]=\"noAccountTpl\"></ng-container>\n </ng-template>\n\n <ng-template #loginFormTpl>\n <upd-form [rows]=\"formRows\" [hasActionsSection]=\"false\" [(formGroup)]=\"formGroup\" (submitted)=\"login()\"></upd-form>\n <div class=\"form-footer\">\n <upd-button [colorStyle]=\"config.signInButtonColor\" (clicked)=\"login()\" [isLoading]=\"isSigningIn()\"\n customClasses=\"w-100\">\n {{ t('SignIn') }}\n </upd-button>\n @if (!!config.recoverPasswordRoute) {\n <div class=\"d-flex mt-2\">\n <upd-link class=\"ms-auto\" [customClasses]=\"linkClasses\" (clicked)=\"goToRecoverPasswordPage()\">\n {{ t('RecoverPassword') }}\n </upd-link>\n </div>\n }\n </div>\n </ng-template>\n\n <ng-template #socialLoginTpl>\n @if (config.socialLoginButtons.length > 0) {\n <div class=\"hr-text\">\n {{ t('Or') }}\n </div>\n <div class=\"card-body\">\n <div class=\"row\">\n @for (btn of config.socialLoginButtons; track btn) {\n <div class=\"col\">\n <upd-button [model]=\"btn\"></upd-button>\n </div>\n }\n </div>\n </div>\n }\n </ng-template>\n\n <ng-template #headerTpl>\n <div class=\"text-center mb-4\">\n <a href=\".\" class=\"navbar-brand navbar-brand-autodark\">\n <img height=\"36\" class=\"navbar-brand-image upd-brand-logo\" />\n </a>\n </div>\n </ng-template>\n\n <ng-template #noAccountTpl>\n @if (!!config.signUpRoute) {\n <div class=\"text-center text-muted mt-3\">\n {{ t('NoAccountYet') }}\n <upd-link [customClasses]=\"linkClasses\" (clicked)=\"goToSignUpPage()\">{{ t('SignUp') }}</upd-link>\n </div>\n }\n </ng-template>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "upd-button", inputs: ["model", "text", "brandColorStyle", "customClasses", "isOutline", "isGhost", "isSquare", "isPill", "isIcon", "isLoading", "isList", "isFloating", "isAction", "isNavigationLink", "isLink", "shouldIgnoreBtnClass", "iconModel", "iconPosition", "isDisabled", "isActive", "badgeConfig", "colorStyle", "size", "title"], outputs: ["clicked"] }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: i5.LinkComponent, selector: "upd-link", inputs: ["href", "target", "customClasses", "isNavigation"], outputs: ["clicked"] }, { kind: "component", type: i6.CardComponent, selector: "upd-card", inputs: ["wrapperClasses", "title", "subtitle", "hoverEffect", "state", "type", "imagePosition", "bgColor", "stampIcon", "stampBackground", "statusBackground", "statusPosition", "ribbonBackground", "ribbonStyle", "ribbonIcon", "ribbonText", "rotate", "removeBorder", "useLightHeader", "showHeader", "isFooterTransparent", "footerText", "showProgressBar", "progress", "actions"] }, { kind: "component", type: i7.FormComponent, selector: "upd-form", inputs: ["rows", "layout", "title", "hasActionsSection", "isCard", "isDisabled", "isLoading", "isSaving", "formData", "formGroup"], outputs: ["initialized", "dataLoaded", "submitted", "formDataChange", "formGroupChange"] }, { kind: "component", type: i8.FooterComponent, selector: "upd-footer" }, { kind: "component", type: i9.HeaderComponent, selector: "upd-header", inputs: ["style"] }] }); }
22
105
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: LoginComponent, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: LoginComponent, decorators: [{
24
107
  type: Component,
25
- args: [{ selector: 'upd-login', encapsulation: ViewEncapsulation.None, template: "<div class=\"page page-center\">\n <ng-container [ngSwitch]=\"layout\">\n <div *ngSwitchCase=\"'centered-box'\" class=\"container container-tight py-4\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'box-with-picture'\" class=\"container container-normal py-4\">\n <div class=\"row align-items-center g-4\">\n <div class=\"col-lg\">\n <div class=\"container-tight\">\n <ng-container [ngTemplateOutlet]=\"loginCard\"></ng-container>\n </div>\n </div>\n <div class=\"col-lg d-none d-lg-block\">\n <img height=\"300\" class=\"d-block mx-auto upd-right-login-image\"/>\n </div>\n </div>\n </div>\n </ng-container>\n</div>\n\n<ng-template #loginCard>\n <div class=\"text-center mb-4\">\n <a href=\".\" class=\"navbar-brand navbar-brand-autodark\">\n <img height=\"36\" class=\"navbar-brand-image upd-brand-logo\"/>\n </a>\n </div>\n <div class=\"card card-md\">\n <div class=\"card-body\">\n <h2 class=\"h2 text-center mb-4\" i18n>Login to your account</h2>\n <form action=\"./\" method=\"get\" autocomplete=\"off\" novalidate>\n <div class=\"mb-3\">\n <label class=\"form-label\">Email address</label>\n <input type=\"email\" class=\"form-control\" name=\"username\" [(ngModel)]=\"username\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\">\n Password\n <span class=\"form-label-description\">\n <a href=\"./forgot-password.html\" i18n>I forgot my password</a>\n </span>\n </label>\n <div class=\"input-group input-group-flat\">\n <input type=\"password\" class=\"form-control\" name=\"password\" [(ngModel)]=\"password\">\n <span class=\"input-group-text\">\n <a href=\"#\" class=\"link-secondary\" title=\"Show password\" data-bs-toggle=\"tooltip\"><!-- Download SVG icon from http://tabler-icons.io/i/eye -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" stroke-width=\"2\"\n stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\"\n d=\"M0 0h24v24H0z\" fill=\"none\"/><circle cx=\"12\" cy=\"12\" r=\"2\"/><path\n d=\"M22 12c-2.667 4.667 -6 7 -10 7s-7.333 -2.333 -10 -7c2.667 -4.667 6 -7 10 -7s7.333 2.333 10 7\"/></svg>\n </a>\n </span>\n </div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-check\">\n <input type=\"checkbox\" class=\"form-check-input\"/>\n <span class=\"form-check-label\" i18n>Remember me on this device</span>\n </label>\n </div>\n <div class=\"form-footer\">\n <upd-button (clicked)=\"login()\" customClasses=\"w-100\">\n <span i18n>Sign in</span>\n </upd-button>\n </div>\n </form>\n </div>\n <div class=\"hr-text\" i18n>or</div>\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-github -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-github\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5\"/>\n </svg>\n Login with Github\n </a></div>\n <div class=\"col\"><a href=\"#\" class=\"btn w-100\">\n <!-- Download SVG icon from http://tabler-icons.io/i/brand-twitter -->\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon text-twitter\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\n stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path\n d=\"M22 4.01c-1 .49 -1.98 .689 -3 .99c-1.121 -1.265 -2.783 -1.335 -4.38 -.737s-2.643 2.06 -2.62 3.737v1c-3.245 .083 -6.135 -1.395 -8 -4c0 0 -4.182 7.433 4 11c-1.872 1.247 -3.739 2.088 -6 2c3.308 1.803 6.913 2.423 10.034 1.517c3.58 -1.04 6.522 -3.723 7.651 -7.742a13.84 13.84 0 0 0 .497 -3.753c-.002 -.249 1.51 -2.772 1.818 -4.013z\"/>\n </svg>\n Login with Twitter\n </a></div>\n </div>\n </div>\n </div>\n <div class=\"text-center text-muted mt-3\">\n Don't have account yet? <a href=\"./sign-up.html\" tabindex=\"-1\" i18n>Sign up</a>\n </div>\n</ng-template>\n" }]
26
- }], ctorParameters: function () { return []; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXBkZXZzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9wYWdlcy9hdXRoLWZsb3cvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXBkZXZzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9wYWdlcy9hdXRoLWZsb3cvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFRbkQsTUFBTSxPQUFPLGNBQWM7SUFRdkI7UUFQQSxXQUFNLEdBQXdDLGNBQWMsQ0FBQztRQUM3RCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUVHLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBR25ELElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JFLENBQUM7K0dBZFEsY0FBYzttR0FBZCxjQUFjLGlEQ1YzQixndkxBZ0dBOzs0RkR0RmEsY0FBYztrQkFOMUIsU0FBUzsrQkFDSSxXQUFXLGlCQUdOLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICdAdXBkZXZzL3Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAdXBkZXZzL3Nkay9zZWN1cml0eSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndXBkLWxvZ2luJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbG9naW4uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xvZ2luLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCB7XG4gICAgbGF5b3V0OiAnY2VudGVyZWQtYm94JyB8ICdib3gtd2l0aC1waWN0dXJlJyA9ICdjZW50ZXJlZC1ib3gnO1xuICAgIHVzZXJuYW1lID0gJyc7XG4gICAgcGFzc3dvcmQgPSAnJztcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbGF5b3V0U2VydmljZSA9IGluamVjdChMYXlvdXRTZXJ2aWNlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UuYWRkQm9keUNsYXNzZXMoJ2JvcmRlci10b3Atd2lkZScsICdib3JkZXItcHJpbWFyeScsICdkLWZsZXgnLCAnZmxleC1jb2x1bW4nKTtcbiAgICB9XG5cbiAgICBsb2dpbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dpbih0aGlzLnVzZXJuYW1lLCB0aGlzLnBhc3N3b3JkKS5zdWJzY3JpYmUoKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGFnZSBwYWdlLWNlbnRlclwiPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImxheW91dFwiPlxuICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInY2VudGVyZWQtYm94J1wiIGNsYXNzPVwiY29udGFpbmVyIGNvbnRhaW5lci10aWdodCBweS00XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxvZ2luQ2FyZFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2JveC13aXRoLXBpY3R1cmUnXCIgY2xhc3M9XCJjb250YWluZXIgY29udGFpbmVyLW5vcm1hbCBweS00XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlciBnLTRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibG9naW5DYXJkXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGcgZC1ub25lIGQtbGctYmxvY2tcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBoZWlnaHQ9XCIzMDBcIiBjbGFzcz1cImQtYmxvY2sgbXgtYXV0byB1cGQtcmlnaHQtbG9naW4taW1hZ2VcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNsb2dpbkNhcmQ+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG1iLTRcIj5cbiAgICAgICAgPGEgaHJlZj1cIi5cIiBjbGFzcz1cIm5hdmJhci1icmFuZCBuYXZiYXItYnJhbmQtYXV0b2RhcmtcIj5cbiAgICAgICAgICAgIDxpbWcgaGVpZ2h0PVwiMzZcIiBjbGFzcz1cIm5hdmJhci1icmFuZC1pbWFnZSB1cGQtYnJhbmQtbG9nb1wiLz5cbiAgICAgICAgPC9hPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIGNhcmQtbWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiaDIgdGV4dC1jZW50ZXIgbWItNFwiIGkxOG4+TG9naW4gdG8geW91ciBhY2NvdW50PC9oMj5cbiAgICAgICAgICAgIDxmb3JtIGFjdGlvbj1cIi4vXCIgbWV0aG9kPVwiZ2V0XCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgbm92YWxpZGF0ZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+RW1haWwgYWRkcmVzczwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZW1haWxcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIG5hbWU9XCJ1c2VybmFtZVwiIFsobmdNb2RlbCldPVwidXNlcm5hbWVcIj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBQYXNzd29yZFxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLWxhYmVsLWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIuL2ZvcmdvdC1wYXNzd29yZC5odG1sXCIgaTE4bj5JIGZvcmdvdCBteSBwYXNzd29yZDwvYT5cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIGlucHV0LWdyb3VwLWZsYXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwicGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIG5hbWU9XCJwYXNzd29yZFwiIFsobmdNb2RlbCldPVwicGFzc3dvcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGluay1zZWNvbmRhcnlcIiB0aXRsZT1cIlNob3cgcGFzc3dvcmRcIiBkYXRhLWJzLXRvZ2dsZT1cInRvb2x0aXBcIj48IS0tIERvd25sb2FkIFNWRyBpY29uIGZyb20gaHR0cDovL3RhYmxlci1pY29ucy5pby9pL2V5ZSAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBjbGFzcz1cImljb25cIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIGZpbGw9XCJub25lXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+PHBhdGggc3Ryb2tlPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMCAwaDI0djI0SDB6XCIgZmlsbD1cIm5vbmVcIi8+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIyXCIvPjxwYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIgMTJjLTIuNjY3IDQuNjY3IC02IDcgLTEwIDdzLTcuMzMzIC0yLjMzMyAtMTAgLTdjMi42NjcgLTQuNjY3IDYgLTcgMTAgLTdzNy4zMzMgMi4zMzMgMTAgN1wiLz48L3N2Zz5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgaTE4bj5SZW1lbWJlciBtZSBvbiB0aGlzIGRldmljZTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1mb290ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHVwZC1idXR0b24gKGNsaWNrZWQpPVwibG9naW4oKVwiIGN1c3RvbUNsYXNzZXM9XCJ3LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5TaWduIGluPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L3VwZC1idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaHItdGV4dFwiIGkxOG4+b3I8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj48YSBocmVmPVwiI1wiIGNsYXNzPVwiYnRuIHctMTAwXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gRG93bmxvYWQgU1ZHIGljb24gZnJvbSBodHRwOi8vdGFibGVyLWljb25zLmlvL2kvYnJhbmQtZ2l0aHViIC0tPlxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBjbGFzcz1cImljb24gdGV4dC1naXRodWJcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlPVwibm9uZVwiIGQ9XCJNMCAwaDI0djI0SDB6XCIgZmlsbD1cIm5vbmVcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOSAxOWMtNC4zIDEuNCAtNC4zIC0yLjUgLTYgLTNtMTIgNXYtMy41YzAgLTEgLjEgLTEuNCAtLjUgLTJjMi44IC0uMyA1LjUgLTEuNCA1LjUgLTZhNC42IDQuNiAwIDAgMCAtMS4zIC0zLjJhNC4yIDQuMiAwIDAgMCAtLjEgLTMuMnMtMS4xIC0uMyAtMy41IDEuM2ExMi4zIDEyLjMgMCAwIDAgLTYuMiAwYy0yLjQgLTEuNiAtMy41IC0xLjMgLTMuNSAtMS4zYTQuMiA0LjIgMCAwIDAgLS4xIDMuMmE0LjYgNC42IDAgMCAwIC0xLjMgMy4yYzAgNC42IDIuNyA1LjcgNS41IDZjLS42IC42IC0uNiAxLjIgLS41IDJ2My41XCIvPlxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgICAgICAgTG9naW4gd2l0aCBHaXRodWJcbiAgICAgICAgICAgICAgICA8L2E+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJidG4gdy0xMDBcIj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBEb3dubG9hZCBTVkcgaWNvbiBmcm9tIGh0dHA6Ly90YWJsZXItaWNvbnMuaW8vaS9icmFuZC10d2l0dGVyIC0tPlxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBjbGFzcz1cImljb24gdGV4dC10d2l0dGVyXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cIm5vbmVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIHN0cm9rZT1cIm5vbmVcIiBkPVwiTTAgMGgyNHYyNEgwelwiIGZpbGw9XCJub25lXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIyIDQuMDFjLTEgLjQ5IC0xLjk4IC42ODkgLTMgLjk5Yy0xLjEyMSAtMS4yNjUgLTIuNzgzIC0xLjMzNSAtNC4zOCAtLjczN3MtMi42NDMgMi4wNiAtMi42MiAzLjczN3YxYy0zLjI0NSAuMDgzIC02LjEzNSAtMS4zOTUgLTggLTRjMCAwIC00LjE4MiA3LjQzMyA0IDExYy0xLjg3MiAxLjI0NyAtMy43MzkgMi4wODggLTYgMmMzLjMwOCAxLjgwMyA2LjkxMyAyLjQyMyAxMC4wMzQgMS41MTdjMy41OCAtMS4wNCA2LjUyMiAtMy43MjMgNy42NTEgLTcuNzQyYTEzLjg0IDEzLjg0IDAgMCAwIC40OTcgLTMuNzUzYy0uMDAyIC0uMjQ5IDEuNTEgLTIuNzcyIDEuODE4IC00LjAxM3pcIi8+XG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgICAgICBMb2dpbiB3aXRoIFR3aXR0ZXJcbiAgICAgICAgICAgICAgICA8L2E+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHRleHQtbXV0ZWQgbXQtM1wiPlxuICAgICAgICBEb24ndCBoYXZlIGFjY291bnQgeWV0PyA8YSBocmVmPVwiLi9zaWduLXVwLmh0bWxcIiB0YWJpbmRleD1cIi0xXCIgaTE4bj5TaWduIHVwPC9hPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
108
+ args: [{ selector: 'upd-login', template: "<ng-container *transloco=\"let t; prefix: 'UpDevs.Login'\">\n <upd-header [style]=\"'transparent'\"></upd-header>\n <div class=\"page page-center\">\n @switch (config.layout) {\n @case ('centered-box') {\n <div class=\"container container-tight py-4\">\n <ng-container [ngTemplateOutlet]=\"loginCardTpl\"></ng-container>\n </div>\n }\n @case ('box-with-picture') {\n <div class=\"container container-normal py-4\">\n <div class=\"row align-items-center g-4\">\n <div class=\"col-lg\">\n <div class=\"container-tight\">\n <ng-container [ngTemplateOutlet]=\"loginCardTpl\"></ng-container>\n </div>\n </div>\n <div class=\"col-lg d-none d-lg-block\">\n <img height=\"300\" class=\"d-block mx-auto upd-right-login-image\" />\n </div>\n </div>\n </div>\n }\n @case ('cover') {\n <div class=\"row g-0 flex-fill\">\n <div class=\"col-12 col-lg-6 col-xl-4 border-top-wide d-flex flex-column justify-content-center\"\n [ngClass]=\"border\">\n <div class=\"container container-tight my-5 px-lg-5\">\n <ng-container [ngTemplateOutlet]=\"headerTpl\"></ng-container>\n\n <h2 class=\"h3 text-center mb-3\">\n {{ t('Title') }}\n </h2>\n\n <ng-container [ngTemplateOutlet]=\"loginFormTpl\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"socialLoginTpl\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"noAccountTpl\"></ng-container>\n </div>\n </div>\n <div class=\"col-12 col-lg-6 col-xl-8 d-none d-lg-block\">\n <div class=\"bg-cover h-100 min-vh-100 upd-right-login-cover-image\"></div>\n </div>\n </div>\n }\n }\n </div>\n <upd-footer></upd-footer>\n\n <ng-template #loginCardTpl>\n <ng-container [ngTemplateOutlet]=\"headerTpl\"></ng-container>\n <upd-card [removeBorder]=\"true\">\n <div class=\"p-4\">\n <h2 class=\"h2 text-center mb-4\">\n {{ t('Title') }}\n </h2>\n <ng-container [ngTemplateOutlet]=\"loginFormTpl\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"socialLoginTpl\"></ng-container>\n </upd-card>\n <ng-container [ngTemplateOutlet]=\"noAccountTpl\"></ng-container>\n </ng-template>\n\n <ng-template #loginFormTpl>\n <upd-form [rows]=\"formRows\" [hasActionsSection]=\"false\" [(formGroup)]=\"formGroup\" (submitted)=\"login()\"></upd-form>\n <div class=\"form-footer\">\n <upd-button [colorStyle]=\"config.signInButtonColor\" (clicked)=\"login()\" [isLoading]=\"isSigningIn()\"\n customClasses=\"w-100\">\n {{ t('SignIn') }}\n </upd-button>\n @if (!!config.recoverPasswordRoute) {\n <div class=\"d-flex mt-2\">\n <upd-link class=\"ms-auto\" [customClasses]=\"linkClasses\" (clicked)=\"goToRecoverPasswordPage()\">\n {{ t('RecoverPassword') }}\n </upd-link>\n </div>\n }\n </div>\n </ng-template>\n\n <ng-template #socialLoginTpl>\n @if (config.socialLoginButtons.length > 0) {\n <div class=\"hr-text\">\n {{ t('Or') }}\n </div>\n <div class=\"card-body\">\n <div class=\"row\">\n @for (btn of config.socialLoginButtons; track btn) {\n <div class=\"col\">\n <upd-button [model]=\"btn\"></upd-button>\n </div>\n }\n </div>\n </div>\n }\n </ng-template>\n\n <ng-template #headerTpl>\n <div class=\"text-center mb-4\">\n <a href=\".\" class=\"navbar-brand navbar-brand-autodark\">\n <img height=\"36\" class=\"navbar-brand-image upd-brand-logo\" />\n </a>\n </div>\n </ng-template>\n\n <ng-template #noAccountTpl>\n @if (!!config.signUpRoute) {\n <div class=\"text-center text-muted mt-3\">\n {{ t('NoAccountYet') }}\n <upd-link [customClasses]=\"linkClasses\" (clicked)=\"goToSignUpPage()\">{{ t('SignUp') }}</upd-link>\n </div>\n }\n </ng-template>\n</ng-container>\n" }]
109
+ }] });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFnZXMvYXV0aC1mbG93L2xvZ2luL2xvZ2luLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhZ2VzL2F1dGgtZmxvdy9sb2dpbi9sb2dpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBcUIsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBZ0IsZ0JBQWdCLEVBQW1CLE1BQU0seUJBQXlCLENBQUM7QUFDMUYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7Ozs7QUFPckYsTUFBTSxPQUFPLGNBQWM7SUFMM0I7UUFNSSxjQUFTLEdBQUcsS0FBSyxDQUFDLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckMsYUFBUSxHQUFtQixFQUFFLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsd0JBQW1CLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDckQsV0FBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDO1FBY2hFLGdCQUFXLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN4RSxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBd0UxRDtJQXZGRyxJQUFJLE1BQU07UUFDTixPQUFPLFVBQVUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxDQUFDLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFZLFVBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxVQUFVLENBQUM7SUFDM0csQ0FBQztJQU9ELFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbkQsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNaO2dCQUNJLE1BQU0sRUFBRTtvQkFDSjt3QkFDSSxJQUFJLEVBQUUsVUFBVTt3QkFDaEIsSUFBSSxFQUFFLGdCQUFnQixDQUFDLEtBQUs7d0JBQzVCLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7d0JBQ3hCLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO3dCQUMxRCxVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQzFELG1CQUFtQixFQUFFLElBQUk7cUJBQ1Q7aUJBQ3ZCO2FBQ0o7WUFDRDtnQkFDSSxNQUFNLEVBQUU7b0JBQ0o7d0JBQ0ksSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLO3dCQUM1QixTQUFTLEVBQUUsVUFBVTt3QkFDckIsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRTt3QkFDeEIsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUU7d0JBQzdELFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsbUJBQW1CLEVBQUUsSUFBSTtxQkFDVDtpQkFDdkI7YUFDSjtZQUNEO2dCQUNJLE1BQU0sRUFBRTtvQkFDSjt3QkFDSSxJQUFJLEVBQUUsWUFBWTt3QkFDbEIsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFFBQVE7d0JBQy9CLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7d0JBQ3hCLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSx5QkFBeUIsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO3dCQUMvRCxTQUFTLEVBQUUsS0FBSztxQkFDbkI7aUJBQ0o7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXRELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RCxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDRCwyQkFBMkI7UUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQWEsQ0FBQyxRQUFRLEVBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQWEsQ0FBQyxRQUFRLENBQUM7YUFDckcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ2pELFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCx1QkFBdUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwRSxDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNELENBQUM7OEdBN0ZRLGNBQWM7a0dBQWQsY0FBYyw0T0NmM0IsKzJKQWlIQTs7MkZEbEdhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0ksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgbW9kZWwsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICdAdXBkZXZzL3Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAdXBkZXZzL3Nkay9zZWN1cml0eSc7XG5pbXBvcnQgeyBGb3JtUm93TW9kZWwsIER5bmFtaWNGaWVsZFR5cGUsIElucHV0RmllbGRNb2RlbCB9IGZyb20gJ0B1cGRldnMvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFVwZExheW91dENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91cGQtbGF5b3V0LWNvbmZpZy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd1cGQtbG9naW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sb2dpbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbG9naW4uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBmb3JtR3JvdXAgPSBtb2RlbChuZXcgRm9ybUdyb3VwKHt9KSk7XG4gICAgZm9ybVJvd3M6IEZvcm1Sb3dNb2RlbFtdID0gW107XG4gICAgaXNTaWduaW5nSW4gPSBzaWduYWwoZmFsc2UpO1xuICAgIHJlYWRvbmx5IGxheW91dENvbmZpZ1NlcnZpY2UgPSBpbmplY3QoVXBkTGF5b3V0Q29uZmlnU2VydmljZSk7XG4gICAgcmVhZG9ubHkgY29uZmlnID0gdGhpcy5sYXlvdXRDb25maWdTZXJ2aWNlLmNvbmZpZy5zZWN1cml0eUxheW91dENvbmZpZy5sb2dpblBhZ2U7XG5cbiAgICBnZXQgYm9yZGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgYm9yZGVyLSR7dGhpcy5jb25maWcuYm9yZGVyQ29sb3J9YDtcbiAgICB9XG5cbiAgICBnZXQgbGlua0NsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gW2BsaW5rLSR7dGhpcy5jb25maWcubGlua3NDb2xvcn1gXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBib3hCZ0NvbG9yKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5iZ0NvbG9yIHx8ICghIXRoaXMuY29uZmlnLmJnU3R5bGUgPyBgYmctJHt0aGlzLmNvbmZpZy5iZ1N0eWxlfWAgOiAnJykgfHwgJ2JnLXdoaXRlJztcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGJvZHlDbGFzc2VzID0gWydib3JkZXItdG9wLXdpZGUnLCB0aGlzLmJvcmRlciwgJ2QtZmxleCcsICdmbGV4LWNvbHVtbiddO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBsYXlvdXRTZXJ2aWNlID0gaW5qZWN0KExheW91dFNlcnZpY2UpO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5hZGRCb2R5Q2xhc3Nlcyh0aGlzLmJveEJnQ29sb3IpO1xuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5sYXlvdXQgIT09ICdjb3ZlcicpIHtcbiAgICAgICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5hZGRCb2R5Q2xhc3NlcyguLi50aGlzLmJvZHlDbGFzc2VzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZm9ybVJvd3MgPSBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZmllbGRzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd1c2VybmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBEeW5hbWljRmllbGRUeXBlLklucHV0LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sU2l6ZTogeyBkZWZhdWx0OiAxMiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHsgdGV4dDogJ1VwRGV2cy5Mb2dpbi5FbWFpbCcsIGlzVHJhbnNsYXRlZDogZmFsc2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCgzKV0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRTdWJtaXRPbkVudGVyOiB0cnVlXG4gICAgICAgICAgICAgICAgICAgIH0gYXMgSW5wdXRGaWVsZE1vZGVsXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmaWVsZHM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Bhc3N3b3JkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IER5bmFtaWNGaWVsZFR5cGUuSW5wdXQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFR5cGU6ICdwYXNzd29yZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xTaXplOiB7IGRlZmF1bHQ6IDEyIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogeyB0ZXh0OiAnVXBEZXZzLkxvZ2luLlBhc3N3b3JkJywgaXNUcmFuc2xhdGVkOiBmYWxzZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdG9yczogW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDMpXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFN1Ym1pdE9uRW50ZXI6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSBhcyBJbnB1dEZpZWxkTW9kZWxcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZpZWxkczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncmVtZW1iZXJNZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBEeW5hbWljRmllbGRUeXBlLkNoZWNrYm94LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sU2l6ZTogeyBkZWZhdWx0OiAxMiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHsgdGV4dDogJ1VwRGV2cy5Mb2dpbi5SZW1lbWJlck1lJywgaXNUcmFuc2xhdGVkOiBmYWxzZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdFZhbHVlOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UucmVtb3ZlQm9keUNsYXNzZXModGhpcy5ib3hCZ0NvbG9yKTtcblxuICAgICAgICBpZiAodGhpcy5jb25maWcubGF5b3V0ICE9PSAnY292ZXInKSB7XG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UucmVtb3ZlQm9keUNsYXNzZXMoLi4udGhpcy5ib2R5Q2xhc3Nlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsb2dpbigpOiB2b2lkIHtcbiAgICAgICAgLy8gVE9ETzogaGFuZGxlIHJlbWVtYmVyIG1lXG4gICAgICAgIHRoaXMuaXNTaWduaW5nSW4uc2V0KHRydWUpO1xuICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luKCh0aGlzLmZvcm1Hcm91cCgpLnZhbHVlIGFzIGFueSkudXNlcm5hbWUsICh0aGlzLmZvcm1Hcm91cCgpLnZhbHVlIGFzIGFueSkucGFzc3dvcmQpXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLmlzU2lnbmluZ0luLnNldChmYWxzZSkpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGdvVG9SZWNvdmVyUGFzc3dvcmRQYWdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5jb25maWcucmVjb3ZlclBhc3N3b3JkUm91dGVdKS50aGVuKCk7XG4gICAgfVxuXG4gICAgZ29Ub1NpZ25VcFBhZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmNvbmZpZy5zaWduVXBSb3V0ZV0pLnRoZW4oKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdDsgcHJlZml4OiAnVXBEZXZzLkxvZ2luJ1wiPlxuICAgIDx1cGQtaGVhZGVyIFtzdHlsZV09XCIndHJhbnNwYXJlbnQnXCI+PC91cGQtaGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlIHBhZ2UtY2VudGVyXCI+XG4gICAgICAgIEBzd2l0Y2ggKGNvbmZpZy5sYXlvdXQpIHtcbiAgICAgICAgICAgIEBjYXNlICgnY2VudGVyZWQtYm94Jykge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgY29udGFpbmVyLXRpZ2h0IHB5LTRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsb2dpbkNhcmRUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBjYXNlICgnYm94LXdpdGgtcGljdHVyZScpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyIGNvbnRhaW5lci1ub3JtYWwgcHktNFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlciBnLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLXRpZ2h0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibG9naW5DYXJkVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGcgZC1ub25lIGQtbGctYmxvY2tcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGhlaWdodD1cIjMwMFwiIGNsYXNzPVwiZC1ibG9jayBteC1hdXRvIHVwZC1yaWdodC1sb2dpbi1pbWFnZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAY2FzZSAoJ2NvdmVyJykge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZy0wIGZsZXgtZmlsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1sZy02IGNvbC14bC00IGJvcmRlci10b3Atd2lkZSBkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJib3JkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgY29udGFpbmVyLXRpZ2h0IG15LTUgcHgtbGctNVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVHBsXCI+PC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJoMyB0ZXh0LWNlbnRlciBtYi0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHQoJ1RpdGxlJykgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsb2dpbkZvcm1UcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNvY2lhbExvZ2luVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJub0FjY291bnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbGctNiBjb2wteGwtOCBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJnLWNvdmVyIGgtMTAwIG1pbi12aC0xMDAgdXBkLXJpZ2h0LWxvZ2luLWNvdmVyLWltYWdlXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPHVwZC1mb290ZXI+PC91cGQtZm9vdGVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICNsb2dpbkNhcmRUcGw+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDx1cGQtY2FyZCBbcmVtb3ZlQm9yZGVyXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTRcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJoMiB0ZXh0LWNlbnRlciBtYi00XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHQoJ1RpdGxlJykgfX1cbiAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibG9naW5Gb3JtVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwic29jaWFsTG9naW5UcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC91cGQtY2FyZD5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJub0FjY291bnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlICNsb2dpbkZvcm1UcGw+XG4gICAgICAgIDx1cGQtZm9ybSBbcm93c109XCJmb3JtUm93c1wiIFtoYXNBY3Rpb25zU2VjdGlvbl09XCJmYWxzZVwiIFsoZm9ybUdyb3VwKV09XCJmb3JtR3JvdXBcIiAoc3VibWl0dGVkKT1cImxvZ2luKClcIj48L3VwZC1mb3JtPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1mb290ZXJcIj5cbiAgICAgICAgICAgIDx1cGQtYnV0dG9uIFtjb2xvclN0eWxlXT1cImNvbmZpZy5zaWduSW5CdXR0b25Db2xvclwiIChjbGlja2VkKT1cImxvZ2luKClcIiBbaXNMb2FkaW5nXT1cImlzU2lnbmluZ0luKClcIlxuICAgICAgICAgICAgICAgIGN1c3RvbUNsYXNzZXM9XCJ3LTEwMFwiPlxuICAgICAgICAgICAgICAgIHt7IHQoJ1NpZ25JbicpIH19XG4gICAgICAgICAgICA8L3VwZC1idXR0b24+XG4gICAgICAgICAgICBAaWYgKCEhY29uZmlnLnJlY292ZXJQYXNzd29yZFJvdXRlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDx1cGQtbGluayBjbGFzcz1cIm1zLWF1dG9cIiBbY3VzdG9tQ2xhc3Nlc109XCJsaW5rQ2xhc3Nlc1wiIChjbGlja2VkKT1cImdvVG9SZWNvdmVyUGFzc3dvcmRQYWdlKClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHQoJ1JlY292ZXJQYXNzd29yZCcpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvdXBkLWxpbms+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI3NvY2lhbExvZ2luVHBsPlxuICAgICAgICBAaWYgKGNvbmZpZy5zb2NpYWxMb2dpbkJ1dHRvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhyLXRleHRcIj5cbiAgICAgICAgICAgICAgICB7eyB0KCdPcicpIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGJ0biBvZiBjb25maWcuc29jaWFsTG9naW5CdXR0b25zOyB0cmFjayBidG4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXBkLWJ1dHRvbiBbbW9kZWxdPVwiYnRuXCI+PC91cGQtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVHBsPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbWItNFwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIi5cIiBjbGFzcz1cIm5hdmJhci1icmFuZCBuYXZiYXItYnJhbmQtYXV0b2RhcmtcIj5cbiAgICAgICAgICAgICAgICA8aW1nIGhlaWdodD1cIjM2XCIgY2xhc3M9XCJuYXZiYXItYnJhbmQtaW1hZ2UgdXBkLWJyYW5kLWxvZ29cIiAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlICNub0FjY291bnRUcGw+XG4gICAgICAgIEBpZiAoISFjb25maWcuc2lnblVwUm91dGUpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciB0ZXh0LW11dGVkIG10LTNcIj5cbiAgICAgICAgICAgICAgICB7eyB0KCdOb0FjY291bnRZZXQnKSB9fVxuICAgICAgICAgICAgICAgIDx1cGQtbGluayBbY3VzdG9tQ2xhc3Nlc109XCJsaW5rQ2xhc3Nlc1wiIChjbGlja2VkKT1cImdvVG9TaWduVXBQYWdlKClcIj57eyB0KCdTaWduVXAnKSB9fTwvdXBkLWxpbms+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,11 +1,11 @@
1
1
  import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class OauthCallbackComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: OauthCallbackComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: OauthCallbackComponent, selector: "upd-oauth-callback", ngImport: i0, template: "<p>oauth-callback works!</p>\n", styles: [""] }); }
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: OauthCallbackComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: OauthCallbackComponent, selector: "upd-oauth-callback", ngImport: i0, template: "<p>oauth-callback works!</p>\n", styles: [""] }); }
6
6
  }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: OauthCallbackComponent, decorators: [{
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: OauthCallbackComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{ selector: 'upd-oauth-callback', template: "<p>oauth-callback works!</p>\n" }]
10
10
  }] });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGgtY2FsbGJhY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXBkZXZzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9wYWdlcy9hdXRoLWZsb3cvb2F1dGgtY2FsbGJhY2svb2F1dGgtY2FsbGJhY2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXBkZXZzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9wYWdlcy9hdXRoLWZsb3cvb2F1dGgtY2FsbGJhY2svb2F1dGgtY2FsbGJhY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLHNCQUFzQjsrR0FBdEIsc0JBQXNCO21HQUF0QixzQkFBc0IsMERDUG5DLGdDQUNBOzs0RkRNYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VwZC1vYXV0aC1jYWxsYmFjaycsXG4gIHRlbXBsYXRlVXJsOiAnLi9vYXV0aC1jYWxsYmFjay5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL29hdXRoLWNhbGxiYWNrLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgT2F1dGhDYWxsYmFja0NvbXBvbmVudCB7XG5cbn1cbiIsIjxwPm9hdXRoLWNhbGxiYWNrIHdvcmtzITwvcD5cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGgtY2FsbGJhY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFnZXMvYXV0aC1mbG93L29hdXRoLWNhbGxiYWNrL29hdXRoLWNhbGxiYWNrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhZ2VzL2F1dGgtZmxvdy9vYXV0aC1jYWxsYmFjay9vYXV0aC1jYWxsYmFjay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU8xQyxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7a0dBQXRCLHNCQUFzQiwwRENQbkMsZ0NBQ0E7OzJGRE1hLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDSSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd1cGQtb2F1dGgtY2FsbGJhY2snLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9vYXV0aC1jYWxsYmFjay5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vb2F1dGgtY2FsbGJhY2suY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBPYXV0aENhbGxiYWNrQ29tcG9uZW50IHtcblxufVxuIiwiPHA+b2F1dGgtY2FsbGJhY2sgd29ya3MhPC9wPlxuIl19
@@ -3,4 +3,4 @@ export * from './login/login.component';
3
3
  export * from './oauth-callback/oauth-callback.component';
4
4
  export * from './auth-flow.module';
5
5
  export * from './auth-flow-routing.module';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VwZGV2cy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFnZXMvYXV0aC1mbG93L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sb2dnZWQtb3V0L2xvZ2dlZC1vdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vbG9naW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vb2F1dGgtY2FsbGJhY2svb2F1dGgtY2FsbGJhY2suY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC1mbG93Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgtZmxvdy1yb3V0aW5nLm1vZHVsZSc7XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhZ2VzL2F1dGgtZmxvdy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbG9nZ2VkLW91dC9sb2dnZWQtb3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL29hdXRoLWNhbGxiYWNrL29hdXRoLWNhbGxiYWNrLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgtZmxvdy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLWZsb3ctcm91dGluZy5tb2R1bGUnO1xuIl19
@@ -1,2 +1,2 @@
1
1
  export * from './auth-flow/public-api';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VwZGV2cy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFnZXMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRoLWZsb3cvcHVibGljLWFwaSc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhZ2VzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXV0aC1mbG93L3B1YmxpYy1hcGknO1xuIl19
@@ -1,13 +1,11 @@
1
- import { Component, ContentChild, TemplateRef, HostBinding, ViewEncapsulation } from '@angular/core';
2
- import { BaseComponent } from '@updevs/sdk/layout';
3
- import { FooterCopyrightDirective } from './footer-copyright.directive';
1
+ import { Component, HostBinding, ViewEncapsulation, inject } from '@angular/core';
2
+ import { BaseComponent, LayoutService } from '@updevs/sdk/layout';
4
3
  import * as i0 from "@angular/core";
5
- import * as i1 from "@ngneat/transloco";
6
- import * as i2 from "@angular/common";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@jsverse/transloco";
7
6
  export class FooterComponent extends BaseComponent {
8
- constructor(translocoService) {
9
- super();
10
- this.translocoService = translocoService;
7
+ constructor() {
8
+ super(...arguments);
11
9
  this.wrapperClasses = '';
12
10
  /**
13
11
  * Whether the footer will always be shown.
@@ -25,20 +23,11 @@ export class FooterComponent extends BaseComponent {
25
23
  * Current year.
26
24
  */
27
25
  this.currentYear = new Date().getFullYear();
28
- /**
29
- * Text displayed in the copyright section before the symbol and year.
30
- */
31
- this.copyrightPrefix = 'Copyright';
32
- /**
33
- * Text displayed in the copyright section after the symbol and year.
34
- */
35
- this.copyrightSuffix = '';
26
+ this.layoutService = inject(LayoutService);
36
27
  this.baseWrapperClasses = 'footer d-print-none';
37
28
  }
38
29
  ngOnInit() {
39
- const footerCpsSub = this.translocoService.selectTranslate('Footer.AllRightsReserved').subscribe(r => this.copyrightSuffix = r);
40
30
  this.updateWrapperClasses();
41
- this.addSubscriptions(footerCpsSub);
42
31
  }
43
32
  ngOnChanges(changes) {
44
33
  if (!!changes['isSticky'].currentValue || !!changes['isTransparent'].currentValue) {
@@ -50,17 +39,14 @@ export class FooterComponent extends BaseComponent {
50
39
  const transparentCls = this.isTransparent ? ' footer-transparent' : '';
51
40
  this.wrapperClasses = `${this.baseWrapperClasses}${stickyBottomCls}${transparentCls}`;
52
41
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: FooterComponent, deps: [{ token: i1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
54
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: FooterComponent, selector: "upd-footer", host: { properties: { "class": "this.wrapperClasses" } }, queries: [{ propertyName: "footerCopyrightTemplate", first: true, predicate: FooterCopyrightDirective, descendants: true, read: TemplateRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"container-xl\">\n <div class=\"row text-center align-items-center flex-row-reverse\">\n <div class=\"col-lg-auto ms-lg-auto\">\n <ul *ngIf=\"links.length > 0\" class=\"list-inline list-inline-dots mb-0\">\n <li *ngFor=\"let link of links\" class=\"list-inline-item\">\n <a href=\"{{link.url}}\" target=\"{{link.target}}\" class=\"link-secondary\">\n <span [innerHTML]=\"link.text\"></span>\n <ng-container *transloco=\"let t\">\n {{t('Layout.Aloha')}}\n </ng-container>\n </a>\n </li>\n </ul>\n </div>\n <div class=\"col-12 col-lg-auto mt-3 mt-lg-0\">\n <ng-container *ngIf=\"!!footerCopyrightTemplate; else defaultFooterTpl\"\n [ngTemplateOutlet]=\"footerCopyrightTemplate\"></ng-container>\n <ng-template #defaultFooterTpl>\n <ul class=\"list-inline list-inline-dots mb-0\">\n <li class=\"list-inline-item\">\n {{copyrightPrefix}} &copy; {{currentYear}} {{copyrightSuffix}}\n </li>\n <li *ngIf=\"!!version\" class=\"list-inline-item\">\n {{version}}\n </li>\n </ul>\n </ng-template>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }], encapsulation: i0.ViewEncapsulation.None }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FooterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: FooterComponent, selector: "upd-footer", host: { properties: { "class": "this.wrapperClasses" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"container-xl\">\n <div class=\"row text-center align-items-center flex-row-reverse\">\n <div class=\"col-lg-auto ms-lg-auto\">\n @if (!!layoutService.rightFooter()) {\n <ng-container [ngTemplateOutlet]=\"layoutService.rightFooter()!\"></ng-container>\n }\n\n @if (links.length > 0) {\n <ul class=\"list-inline list-inline-dots mb-0\">\n @for (link of links; track link) {\n <li class=\"list-inline-item\">\n <a href=\"{{link.url}}\" target=\"{{link.target}}\" class=\"link-secondary\">\n <span [innerHTML]=\"link.text\"></span>\n </a>\n </li>\n }\n </ul>\n }\n </div>\n <div class=\"col-12 col-lg-auto mt-3 mt-lg-0\">\n <ul class=\"list-inline list-inline-dots mb-0\">\n <li class=\"list-inline-item\">\n <ng-container *transloco=\"let t; prefix: 'UpDevs.Footer'\">\n {{ t('Prefix') }} {{ t('Symbol') }} {{ currentYear }} {{ t('Suffix') }}\n </ng-container>\n </li>\n @if (!!version) {\n <li class=\"list-inline-item\">\n {{ version }}\n </li>\n }\n </ul>\n\n @if (!!layoutService.leftFooter()) {\n <ng-container [ngTemplateOutlet]=\"layoutService.leftFooter()!\"></ng-container>\n }\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], encapsulation: i0.ViewEncapsulation.None }); }
55
44
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: FooterComponent, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FooterComponent, decorators: [{
57
46
  type: Component,
58
- args: [{ selector: 'upd-footer', encapsulation: ViewEncapsulation.None, template: "<div class=\"container-xl\">\n <div class=\"row text-center align-items-center flex-row-reverse\">\n <div class=\"col-lg-auto ms-lg-auto\">\n <ul *ngIf=\"links.length > 0\" class=\"list-inline list-inline-dots mb-0\">\n <li *ngFor=\"let link of links\" class=\"list-inline-item\">\n <a href=\"{{link.url}}\" target=\"{{link.target}}\" class=\"link-secondary\">\n <span [innerHTML]=\"link.text\"></span>\n <ng-container *transloco=\"let t\">\n {{t('Layout.Aloha')}}\n </ng-container>\n </a>\n </li>\n </ul>\n </div>\n <div class=\"col-12 col-lg-auto mt-3 mt-lg-0\">\n <ng-container *ngIf=\"!!footerCopyrightTemplate; else defaultFooterTpl\"\n [ngTemplateOutlet]=\"footerCopyrightTemplate\"></ng-container>\n <ng-template #defaultFooterTpl>\n <ul class=\"list-inline list-inline-dots mb-0\">\n <li class=\"list-inline-item\">\n {{copyrightPrefix}} &copy; {{currentYear}} {{copyrightSuffix}}\n </li>\n <li *ngIf=\"!!version\" class=\"list-inline-item\">\n {{version}}\n </li>\n </ul>\n </ng-template>\n </div>\n </div>\n</div>\n" }]
59
- }], ctorParameters: function () { return [{ type: i1.TranslocoService }]; }, propDecorators: { wrapperClasses: [{
47
+ args: [{ selector: 'upd-footer', encapsulation: ViewEncapsulation.None, template: "<div class=\"container-xl\">\n <div class=\"row text-center align-items-center flex-row-reverse\">\n <div class=\"col-lg-auto ms-lg-auto\">\n @if (!!layoutService.rightFooter()) {\n <ng-container [ngTemplateOutlet]=\"layoutService.rightFooter()!\"></ng-container>\n }\n\n @if (links.length > 0) {\n <ul class=\"list-inline list-inline-dots mb-0\">\n @for (link of links; track link) {\n <li class=\"list-inline-item\">\n <a href=\"{{link.url}}\" target=\"{{link.target}}\" class=\"link-secondary\">\n <span [innerHTML]=\"link.text\"></span>\n </a>\n </li>\n }\n </ul>\n }\n </div>\n <div class=\"col-12 col-lg-auto mt-3 mt-lg-0\">\n <ul class=\"list-inline list-inline-dots mb-0\">\n <li class=\"list-inline-item\">\n <ng-container *transloco=\"let t; prefix: 'UpDevs.Footer'\">\n {{ t('Prefix') }} {{ t('Symbol') }} {{ currentYear }} {{ t('Suffix') }}\n </ng-container>\n </li>\n @if (!!version) {\n <li class=\"list-inline-item\">\n {{ version }}\n </li>\n }\n </ul>\n\n @if (!!layoutService.leftFooter()) {\n <ng-container [ngTemplateOutlet]=\"layoutService.leftFooter()!\"></ng-container>\n }\n </div>\n </div>\n</div>\n" }]
48
+ }], propDecorators: { wrapperClasses: [{
60
49
  type: HostBinding,
61
50
  args: ['class']
62
- }], footerCopyrightTemplate: [{
63
- type: ContentChild,
64
- args: [FooterCopyrightDirective, { read: TemplateRef, static: true }]
65
51
  }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VwZGV2cy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFydGlhbHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cGRldnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhcnRpYWxzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBb0MsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkksT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBUXhFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGFBQWE7SUFtQzlDLFlBQ1ksZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBRkEscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5DeEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFHMUM7O1dBRUc7UUFDSCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckI7O1dBRUc7UUFDSCxVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4Qjs7V0FFRztRQUNILGdCQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2Qzs7V0FFRztRQUNILG9CQUFlLEdBQUcsV0FBVyxDQUFDO1FBQzlCOztXQUVHO1FBQ0gsb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFNYix1QkFBa0IsR0FBRyxxQkFBcUIsQ0FBQztJQU1uRCxDQUFDO0lBRUQsUUFBUTtRQUNKLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRWhJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxZQUFZLEVBQUU7WUFDL0UsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7U0FDL0I7SUFDTCxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN2RSxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGVBQWUsR0FBRyxjQUFjLEVBQUUsQ0FBQztJQUMxRixDQUFDOytHQTFEUSxlQUFlO21HQUFmLGVBQWUsaUtBRVYsd0JBQXdCLDJCQUFVLFdBQVcsdUZDZi9ELHU2Q0E4QkE7OzRGRGpCYSxlQUFlO2tCQU4zQixTQUFTOytCQUNJLFlBQVksaUJBR1AsaUJBQWlCLENBQUMsSUFBSTt1R0FHZixjQUFjO3NCQUFuQyxXQUFXO3VCQUFDLE9BQU87Z0JBQ3lELHVCQUF1QjtzQkFBbkcsWUFBWTt1QkFBQyx3QkFBd0IsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBUZW1wbGF0ZVJlZiwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGlua01vZGVsIH0gZnJvbSAnQHVwZGV2cy9zZGsvY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHVwZGV2cy9zZGsvbGF5b3V0JztcbmltcG9ydCB7IFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XG5cbmltcG9ydCB7IEZvb3RlckNvcHlyaWdodERpcmVjdGl2ZSB9IGZyb20gJy4vZm9vdGVyLWNvcHlyaWdodC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3VwZC1mb290ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb290ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Zvb3Rlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgd3JhcHBlckNsYXNzZXMgPSAnJztcbiAgICBAQ29udGVudENoaWxkKEZvb3RlckNvcHlyaWdodERpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiB0cnVlIH0pIGZvb3RlckNvcHlyaWdodFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvb3RlciB3aWxsIGFsd2F5cyBiZSBzaG93bi5cbiAgICAgKi9cbiAgICBpc1N0aWNreSA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvb3RlciBpcyB0cmFuc3BhcmVudCBvciBub3QuXG4gICAgICovXG4gICAgaXNUcmFuc3BhcmVudCA9IHRydWU7XG4gICAgLyoqXG4gICAgICogTGlua3MuXG4gICAgICovXG4gICAgbGlua3M6IExpbmtNb2RlbFtdID0gW107XG4gICAgLyoqXG4gICAgICogQ3VycmVudCB5ZWFyLlxuICAgICAqL1xuICAgIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuICAgIC8qKlxuICAgICAqIFRleHQgZGlzcGxheWVkIGluIHRoZSBjb3B5cmlnaHQgc2VjdGlvbiBiZWZvcmUgdGhlIHN5bWJvbCBhbmQgeWVhci5cbiAgICAgKi9cbiAgICBjb3B5cmlnaHRQcmVmaXggPSAnQ29weXJpZ2h0JztcbiAgICAvKipcbiAgICAgKiBUZXh0IGRpc3BsYXllZCBpbiB0aGUgY29weXJpZ2h0IHNlY3Rpb24gYWZ0ZXIgdGhlIHN5bWJvbCBhbmQgeWVhci5cbiAgICAgKi9cbiAgICBjb3B5cmlnaHRTdWZmaXggPSAnJztcbiAgICAvKipcbiAgICAgKiBWZXJzaW9uIG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAgICAgKi9cbiAgICB2ZXJzaW9uPzogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBiYXNlV3JhcHBlckNsYXNzZXMgPSAnZm9vdGVyIGQtcHJpbnQtbm9uZSc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZvb3RlckNwc1N1YiA9IHRoaXMudHJhbnNsb2NvU2VydmljZS5zZWxlY3RUcmFuc2xhdGUoJ0Zvb3Rlci5BbGxSaWdodHNSZXNlcnZlZCcpLnN1YnNjcmliZShyID0+IHRoaXMuY29weXJpZ2h0U3VmZml4ID0gcik7XG5cbiAgICAgICAgdGhpcy51cGRhdGVXcmFwcGVyQ2xhc3NlcygpO1xuICAgICAgICB0aGlzLmFkZFN1YnNjcmlwdGlvbnMoZm9vdGVyQ3BzU3ViKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICghIWNoYW5nZXNbJ2lzU3RpY2t5J10uY3VycmVudFZhbHVlIHx8ICEhY2hhbmdlc1snaXNUcmFuc3BhcmVudCddLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVXcmFwcGVyQ2xhc3NlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVXcmFwcGVyQ2xhc3NlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc3RpY2t5Qm90dG9tQ2xzID0gdGhpcy5pc1N0aWNreSA/ICcgc3RpY2t5LWJvdHRvbScgOiAnJztcbiAgICAgICAgY29uc3QgdHJhbnNwYXJlbnRDbHMgPSB0aGlzLmlzVHJhbnNwYXJlbnQgPyAnIGZvb3Rlci10cmFuc3BhcmVudCcgOiAnJztcbiAgICAgICAgdGhpcy53cmFwcGVyQ2xhc3NlcyA9IGAke3RoaXMuYmFzZVdyYXBwZXJDbGFzc2VzfSR7c3RpY2t5Qm90dG9tQ2xzfSR7dHJhbnNwYXJlbnRDbHN9YDtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyLXhsXCI+XG4gICAgPGRpdiBjbGFzcz1cInJvdyB0ZXh0LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1yb3ctcmV2ZXJzZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLWF1dG8gbXMtbGctYXV0b1wiPlxuICAgICAgICAgICAgPHVsICpuZ0lmPVwibGlua3MubGVuZ3RoID4gMFwiIGNsYXNzPVwibGlzdC1pbmxpbmUgbGlzdC1pbmxpbmUtZG90cyBtYi0wXCI+XG4gICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBsaW5rIG9mIGxpbmtzXCIgY2xhc3M9XCJsaXN0LWlubGluZS1pdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCJ7e2xpbmsudXJsfX1cIiB0YXJnZXQ9XCJ7e2xpbmsudGFyZ2V0fX1cIiBjbGFzcz1cImxpbmstc2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImxpbmsudGV4dFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0KCdMYXlvdXQuQWxvaGEnKX19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbGctYXV0byBtdC0zIG10LWxnLTBcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhIWZvb3RlckNvcHlyaWdodFRlbXBsYXRlOyBlbHNlIGRlZmF1bHRGb290ZXJUcGxcIlxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlckNvcHlyaWdodFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXJUcGw+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibGlzdC1pbmxpbmUgbGlzdC1pbmxpbmUtZG90cyBtYi0wXCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cImxpc3QtaW5saW5lLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7Y29weXJpZ2h0UHJlZml4fX0gJmNvcHk7IHt7Y3VycmVudFllYXJ9fSB7e2NvcHlyaWdodFN1ZmZpeH19XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdJZj1cIiEhdmVyc2lvblwiIGNsYXNzPVwibGlzdC1pbmxpbmUtaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3t2ZXJzaW9ufX1cbiAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhcnRpYWxzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFydGlhbHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBb0MsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBILE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFRbEUsTUFBTSxPQUFPLGVBQWdCLFNBQVEsYUFBYTtJQU5sRDs7UUFPMEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFMUM7O1dBRUc7UUFDSCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckI7O1dBRUc7UUFDSCxVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4Qjs7V0FFRztRQUNILGdCQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQU05QixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV2Qyx1QkFBa0IsR0FBRyxxQkFBcUIsQ0FBQztLQWlCdEQ7SUFmRyxRQUFRO1FBQ0osSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDaEYsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDaEMsQ0FBQztJQUNMLENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5RCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsZUFBZSxHQUFHLGNBQWMsRUFBRSxDQUFDO0lBQzFGLENBQUM7OEdBMUNRLGVBQWU7a0dBQWYsZUFBZSx3SkNWNUIsMm5EQXVDQTs7MkZEN0JhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0ksWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJOzhCQUdmLGNBQWM7c0JBQW5DLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaW5rTW9kZWwgfSBmcm9tICdAdXBkZXZzL3Nkay9jb3JlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIExheW91dFNlcnZpY2UgfSBmcm9tICdAdXBkZXZzL3Nkay9sYXlvdXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3VwZC1mb290ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb290ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Zvb3Rlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgd3JhcHBlckNsYXNzZXMgPSAnJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvb3RlciB3aWxsIGFsd2F5cyBiZSBzaG93bi5cbiAgICAgKi9cbiAgICBpc1N0aWNreSA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvb3RlciBpcyB0cmFuc3BhcmVudCBvciBub3QuXG4gICAgICovXG4gICAgaXNUcmFuc3BhcmVudCA9IHRydWU7XG4gICAgLyoqXG4gICAgICogTGlua3MuXG4gICAgICovXG4gICAgbGlua3M6IExpbmtNb2RlbFtdID0gW107XG4gICAgLyoqXG4gICAgICogQ3VycmVudCB5ZWFyLlxuICAgICAqL1xuICAgIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuICAgIC8qKlxuICAgICAqIFZlcnNpb24gb2YgdGhlIGFwcGxpY2F0aW9uLlxuICAgICAqL1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICByZWFkb25seSBsYXlvdXRTZXJ2aWNlID0gaW5qZWN0KExheW91dFNlcnZpY2UpO1xuXG4gICAgcHJpdmF0ZSBiYXNlV3JhcHBlckNsYXNzZXMgPSAnZm9vdGVyIGQtcHJpbnQtbm9uZSc7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVXcmFwcGVyQ2xhc3NlcygpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCEhY2hhbmdlc1snaXNTdGlja3knXS5jdXJyZW50VmFsdWUgfHwgISFjaGFuZ2VzWydpc1RyYW5zcGFyZW50J10uY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVdyYXBwZXJDbGFzc2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVdyYXBwZXJDbGFzc2VzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzdGlja3lCb3R0b21DbHMgPSB0aGlzLmlzU3RpY2t5ID8gJyBzdGlja3ktYm90dG9tJyA6ICcnO1xuICAgICAgICBjb25zdCB0cmFuc3BhcmVudENscyA9IHRoaXMuaXNUcmFuc3BhcmVudCA/ICcgZm9vdGVyLXRyYW5zcGFyZW50JyA6ICcnO1xuICAgICAgICB0aGlzLndyYXBwZXJDbGFzc2VzID0gYCR7dGhpcy5iYXNlV3JhcHBlckNsYXNzZXN9JHtzdGlja3lCb3R0b21DbHN9JHt0cmFuc3BhcmVudENsc31gO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXIteGxcIj5cbiAgICA8ZGl2IGNsYXNzPVwicm93IHRleHQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LXJvdy1yZXZlcnNlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctYXV0byBtcy1sZy1hdXRvXCI+XG4gICAgICAgICAgICBAaWYgKCEhbGF5b3V0U2VydmljZS5yaWdodEZvb3RlcigpKSB7XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsYXlvdXRTZXJ2aWNlLnJpZ2h0Rm9vdGVyKCkhXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAobGlua3MubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImxpc3QtaW5saW5lIGxpc3QtaW5saW5lLWRvdHMgbWItMFwiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChsaW5rIG9mIGxpbmtzOyB0cmFjayBsaW5rKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJsaXN0LWlubGluZS1pdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cInt7bGluay51cmx9fVwiIHRhcmdldD1cInt7bGluay50YXJnZXR9fVwiIGNsYXNzPVwibGluay1zZWNvbmRhcnlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJsaW5rLnRleHRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1sZy1hdXRvIG10LTMgbXQtbGctMFwiPlxuICAgICAgICAgICAgPHVsIGNsYXNzPVwibGlzdC1pbmxpbmUgbGlzdC1pbmxpbmUtZG90cyBtYi0wXCI+XG4gICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibGlzdC1pbmxpbmUtaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdDsgcHJlZml4OiAnVXBEZXZzLkZvb3RlcidcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHQoJ1ByZWZpeCcpIH19IHt7IHQoJ1N5bWJvbCcpIH19IHt7IGN1cnJlbnRZZWFyIH19IHt7IHQoJ1N1ZmZpeCcpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgQGlmICghIXZlcnNpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibGlzdC1pbmxpbmUtaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgdmVyc2lvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgIEBpZiAoISFsYXlvdXRTZXJ2aWNlLmxlZnRGb290ZXIoKSkge1xuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0U2VydmljZS5sZWZ0Rm9vdGVyKCkhXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { TranslocoModule } from '@jsverse/transloco';
4
+ import { FooterComponent } from './footer.component';
5
+ import * as i0 from "@angular/core";
6
+ export class FooterModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: FooterModule, declarations: [FooterComponent], imports: [CommonModule,
9
+ TranslocoModule], exports: [FooterComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FooterModule, imports: [CommonModule,
11
+ TranslocoModule] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FooterModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ imports: [
17
+ CommonModule,
18
+ TranslocoModule
19
+ ],
20
+ declarations: [
21
+ FooterComponent
22
+ ],
23
+ exports: [
24
+ FooterComponent
25
+ ]
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhcnRpYWxzL2Zvb3Rlci9mb290ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBY3JELE1BQU0sT0FBTyxZQUFZOzhHQUFaLFlBQVk7K0dBQVosWUFBWSxpQkFOakIsZUFBZSxhQUpmLFlBQVk7WUFDWixlQUFlLGFBTWYsZUFBZTsrR0FHVixZQUFZLFlBVmpCLFlBQVk7WUFDWixlQUFlOzsyRkFTVixZQUFZO2tCQVp4QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGVBQWU7cUJBQ2xCO29CQUNELFlBQVksRUFBRTt3QkFDVixlQUFlO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsZUFBZTtxQkFDbEI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XG5cbmltcG9ydCB7IEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZm9vdGVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFRyYW5zbG9jb01vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEZvb3RlckNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBGb290ZXJDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEZvb3Rlck1vZHVsZSB7fVxuIl19
@@ -1,3 +1,3 @@
1
- export * from './footer-copyright.directive';
2
1
  export * from './footer.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VwZGV2cy9jb21wb25lbnRzL2xheW91dC9zcmMvcGFydGlhbHMvZm9vdGVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mb290ZXItY29weXJpZ2h0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvb3Rlci5jb21wb25lbnQnO1xuIl19
2
+ export * from './footer.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhcnRpYWxzL2Zvb3Rlci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Zvb3Rlci5tb2R1bGUnO1xuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXN0eWxlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91cGRldnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL3BhcnRpYWxzL2hlYWRlci9oZWFkZXItc3R5bGUudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgSGVhZGVyU3R5bGVUeXBlID0gJ2xpZ2h0JyB8ICdkYXJrJyB8ICd0cmFuc3BhcmVudCc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXN0eWxlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9wYXJ0aWFscy9oZWFkZXIvaGVhZGVyLXN0eWxlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEhlYWRlclN0eWxlVHlwZSA9ICdsaWdodCcgfCAnZGFyaycgfCAndHJhbnNwYXJlbnQnO1xuIl19