@updevs/components 1.0.0-alpha.5 → 1.0.0-alpha.50

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 (922) 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/_hero.scss +70 -0
  22. package/assets/styles/marketing/_pricing.scss +111 -0
  23. package/assets/styles/marketing/_sections.scss +124 -0
  24. package/assets/styles/marketing/_shape.scss +31 -0
  25. package/assets/styles/mixins/_functions.scss +53 -0
  26. package/assets/styles/mixins/_mixins.scss +9 -9
  27. package/assets/styles/ui/_accordion.scss +165 -11
  28. package/assets/styles/ui/_alerts.scss +80 -38
  29. package/assets/styles/ui/_avatars.scss +36 -9
  30. package/assets/styles/ui/_badges.scss +47 -13
  31. package/assets/styles/ui/_button-group.scss +1 -1
  32. package/assets/styles/ui/_buttons.scss +33 -37
  33. package/assets/styles/ui/_calendars.scss +2 -2
  34. package/assets/styles/ui/_cards.scss +9 -0
  35. package/assets/styles/ui/_carousel.scss +1 -1
  36. package/assets/styles/ui/_charts.scss +1 -1
  37. package/assets/styles/ui/_chat.scss +38 -0
  38. package/assets/styles/ui/_close.scss +54 -1
  39. package/assets/styles/ui/_datagrid.scss +1 -1
  40. package/assets/styles/ui/_dropdowns.scss +3 -0
  41. package/assets/styles/ui/_empty.scss +0 -5
  42. package/assets/styles/ui/_flags.scss +2 -2
  43. package/assets/styles/ui/_forms.scss +33 -7
  44. package/assets/styles/ui/_grid.scss +1 -1
  45. package/assets/styles/ui/_icons.scss +1 -1
  46. package/assets/styles/ui/_images.scss +4 -0
  47. package/assets/styles/ui/_lists.scss +12 -16
  48. package/assets/styles/ui/_loaders.scss +1 -1
  49. package/assets/styles/ui/_markdown.scss +15 -4
  50. package/assets/styles/ui/_modals.scss +2 -2
  51. package/assets/styles/ui/_nav.scss +17 -3
  52. package/assets/styles/ui/_offcanvas.scss +2 -2
  53. package/assets/styles/ui/_pagination.scss +2 -0
  54. package/assets/styles/ui/_payments.scss +1 -1
  55. package/assets/styles/ui/_placeholder.scss +1 -1
  56. package/assets/styles/ui/_progress.scss +1 -1
  57. package/assets/styles/ui/_ribbons.scss +1 -0
  58. package/assets/styles/ui/_segmented.scss +101 -0
  59. package/assets/styles/ui/_signature.scss +15 -0
  60. package/assets/styles/ui/_social.scss +52 -0
  61. package/assets/styles/ui/_status.scss +1 -1
  62. package/assets/styles/ui/_steps.scss +5 -1
  63. package/assets/styles/ui/_switch-icon.scss +1 -1
  64. package/assets/styles/ui/_tables.scss +27 -1
  65. package/assets/styles/ui/_tags.scss +1 -1
  66. package/assets/styles/ui/_timeline.scss +1 -1
  67. package/assets/styles/ui/_toasts.scss +0 -1
  68. package/assets/styles/ui/_tracking.scss +1 -1
  69. package/assets/styles/ui/_type.scss +169 -8
  70. package/assets/styles/ui/forms/_form-check.scss +1 -1
  71. package/assets/styles/ui/forms/_form-colorinput.scss +1 -1
  72. package/assets/styles/ui/forms/_form-custom.scss +1 -1
  73. package/assets/styles/ui/forms/_form-imagecheck.scss +6 -5
  74. package/assets/styles/ui/forms/_form-selectgroup.scss +2 -2
  75. package/assets/styles/ui/typo/_hr.scss +4 -2
  76. package/assets/styles/utils/_colors.scss +72 -11
  77. package/assets/styles/utils/_opacity.scss +1 -1
  78. package/assets/styles/utils/_scroll.scss +0 -2
  79. package/assets/styles/utils/_sizing.scss +1 -1
  80. package/assets/styles/utils/_text.scss +1 -2
  81. package/assets/styles/vendor/_apexcharts.scss +52 -0
  82. package/assets/styles/vendor/_coloris.scss +72 -0
  83. package/assets/styles/vendor/_dropzone.scss +27 -0
  84. package/assets/styles/vendor/_fslightbox.scss +13 -0
  85. package/assets/styles/vendor/_jsvectormap.scss +47 -0
  86. package/assets/styles/vendor/_litepicker.scss +69 -0
  87. package/assets/styles/vendor/_nouislider.scss +49 -0
  88. package/assets/styles/vendor/_plyr.scss +3 -0
  89. package/assets/styles/vendor/_stars-rating.scss +22 -0
  90. package/assets/styles/vendor/_tom-select.scss +81 -0
  91. package/assets/styles/vendor/_turbo.scss +3 -0
  92. package/assets/styles/vendor/_typed.scss +4 -0
  93. package/assets/styles/vendor/_wysiwyg.scss +46 -0
  94. package/badge/badge-config.model.d.ts +14 -0
  95. package/badge/badge.component.d.ts +23 -0
  96. package/badge/badge.config.d.ts +12 -0
  97. package/badge/public-api.d.ts +3 -0
  98. package/badge/upd-badge.module.d.ts +8 -0
  99. package/button/button.component.d.ts +61 -0
  100. package/button/upd-button.module.d.ts +10 -0
  101. package/calendar/calendar.component.d.ts +63 -0
  102. package/calendar/models/calendar-date.model.d.ts +10 -0
  103. package/calendar/models/calendar-month.model.d.ts +7 -0
  104. package/calendar/models/calendar-selected.model.d.ts +5 -0
  105. package/calendar/models/calendar-user-event.model.d.ts +4 -0
  106. package/calendar/models/calendar-year.model.d.ts +6 -0
  107. package/calendar/models/date-range.model.d.ts +22 -0
  108. package/calendar/models/enums/calendar-view.enum.d.ts +5 -0
  109. package/calendar/models/public-api.d.ts +7 -0
  110. package/calendar/public-api.d.ts +5 -0
  111. package/calendar/services/calendar-range-strategy.service.d.ts +35 -0
  112. package/calendar/services/calendar-signals.service.d.ts +24 -0
  113. package/calendar/services/public-api.d.ts +1 -0
  114. package/calendar/types/calendar-view.type.d.ts +1 -0
  115. package/calendar/types/public-api.d.ts +1 -0
  116. package/calendar/upd-calendar.module.d.ts +13 -0
  117. package/card/card.component.d.ts +54 -0
  118. package/card/directives/card-actions.directive.d.ts +7 -0
  119. package/card/directives/card-footer.directive.d.ts +7 -0
  120. package/card/directives/card-header.directive.d.ts +7 -0
  121. package/card/directives/card-image.directive.d.ts +7 -0
  122. package/card/{src/public-api.ts → public-api.d.ts} +1 -0
  123. package/card/upd-card.module.d.ts +14 -0
  124. package/drag-and-drop/drag-and-drop.component.d.ts +26 -0
  125. package/drag-and-drop/models/drag-and-drop-column.config.d.ts +8 -0
  126. package/drag-and-drop/models/drag-and-drop-column.model.d.ts +10 -0
  127. package/drag-and-drop/models/drag-and-drop-item.d.ts +7 -0
  128. package/drag-and-drop/models/drag-and-drop-item.model.d.ts +13 -0
  129. package/drag-and-drop/models/drag-and-drop.config.d.ts +6 -0
  130. package/drag-and-drop/models/public-api.d.ts +4 -0
  131. package/drag-and-drop/public-api.d.ts +3 -0
  132. package/drag-and-drop/upd-drag-and-drop.module.d.ts +9 -0
  133. package/dropdown/dropdown.component.d.ts +79 -0
  134. package/dropdown/models/dropdown-action-clicked.model.d.ts +6 -0
  135. package/dropdown/{src/models/dropdown-item.ts → models/dropdown-item.d.ts} +7 -4
  136. package/dropdown/{src/models/dropdown-item.type.ts → models/dropdown-item.type.d.ts} +1 -1
  137. package/dropdown/models/public-api.d.ts +4 -0
  138. package/dropdown/models/toolbar.type.d.ts +1 -0
  139. package/dropdown/upd-dropdown.module.d.ts +12 -0
  140. package/esm2022/badge/badge-config.model.mjs +14 -0
  141. package/esm2022/badge/badge.component.mjs +48 -0
  142. package/esm2022/badge/badge.config.mjs +2 -0
  143. package/esm2022/badge/index.mjs +2 -0
  144. package/esm2022/badge/public-api.mjs +4 -0
  145. package/esm2022/badge/upd-badge.module.mjs +24 -0
  146. package/esm2022/badge/updevs-components-badge.mjs +5 -0
  147. package/esm2022/button/button.component.mjs +157 -0
  148. package/esm2022/button/index.mjs +2 -0
  149. package/esm2022/button/public-api.mjs +3 -0
  150. package/esm2022/button/upd-button.module.mjs +32 -0
  151. package/esm2022/button/updevs-components-button.mjs +5 -0
  152. package/esm2022/calendar/assets/i18n/en.json +16 -0
  153. package/esm2022/calendar/assets/i18n/pt.json +16 -0
  154. package/esm2022/calendar/calendar.component.mjs +318 -0
  155. package/esm2022/calendar/index.mjs +2 -0
  156. package/esm2022/calendar/models/calendar-date.model.mjs +2 -0
  157. package/esm2022/calendar/models/calendar-month.model.mjs +2 -0
  158. package/esm2022/calendar/models/calendar-selected.model.mjs +2 -0
  159. package/esm2022/calendar/models/calendar-user-event.model.mjs +2 -0
  160. package/esm2022/calendar/models/calendar-year.model.mjs +2 -0
  161. package/esm2022/calendar/models/date-range.model.mjs +18 -0
  162. package/esm2022/calendar/models/enums/calendar-view.enum.mjs +7 -0
  163. package/esm2022/calendar/models/public-api.mjs +8 -0
  164. package/esm2022/calendar/public-api.mjs +6 -0
  165. package/esm2022/calendar/services/calendar-range-strategy.service.mjs +99 -0
  166. package/esm2022/calendar/services/calendar-signals.service.mjs +47 -0
  167. package/esm2022/calendar/services/public-api.mjs +2 -0
  168. package/esm2022/calendar/types/calendar-view.type.mjs +2 -0
  169. package/esm2022/calendar/types/public-api.mjs +2 -0
  170. package/esm2022/calendar/upd-calendar.module.mjs +52 -0
  171. package/esm2022/calendar/updevs-components-calendar.mjs +5 -0
  172. package/esm2022/card/card.component.mjs +136 -0
  173. package/esm2022/card/directives/card-actions.directive.mjs +16 -0
  174. package/esm2022/card/directives/card-footer.directive.mjs +16 -0
  175. package/esm2022/card/directives/card-header.directive.mjs +16 -0
  176. package/esm2022/card/directives/card-image.directive.mjs +16 -0
  177. package/esm2022/card/directives/public-api.mjs +5 -0
  178. package/esm2022/card/index.mjs +2 -0
  179. package/esm2022/card/public-api.mjs +5 -0
  180. package/esm2022/card/types/card-state.type.mjs +2 -0
  181. package/esm2022/card/types/card-style.type.mjs +2 -0
  182. package/esm2022/card/types/hover-effect.type.mjs +2 -0
  183. package/esm2022/card/types/public-api.mjs +6 -0
  184. package/esm2022/card/types/ribbon-style.type.mjs +2 -0
  185. package/esm2022/card/types/status-position.type.mjs +2 -0
  186. package/esm2022/card/upd-card.module.mjs +50 -0
  187. package/esm2022/card/updevs-components-card.mjs +5 -0
  188. package/esm2022/drag-and-drop/drag-and-drop.component.mjs +134 -0
  189. package/esm2022/drag-and-drop/index.mjs +2 -0
  190. package/esm2022/drag-and-drop/models/drag-and-drop-column.config.mjs +2 -0
  191. package/esm2022/drag-and-drop/models/drag-and-drop-column.model.mjs +9 -0
  192. package/esm2022/drag-and-drop/models/drag-and-drop-item.mjs +2 -0
  193. package/esm2022/drag-and-drop/models/drag-and-drop-item.model.mjs +14 -0
  194. package/esm2022/drag-and-drop/models/drag-and-drop.config.mjs +2 -0
  195. package/esm2022/drag-and-drop/models/public-api.mjs +5 -0
  196. package/esm2022/drag-and-drop/public-api.mjs +4 -0
  197. package/esm2022/drag-and-drop/upd-drag-and-drop.module.mjs +28 -0
  198. package/esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs +5 -0
  199. package/esm2022/dropdown/dropdown.component.mjs +198 -0
  200. package/esm2022/dropdown/index.mjs +2 -0
  201. package/esm2022/dropdown/models/dropdown-action-clicked.model.mjs +2 -0
  202. package/esm2022/dropdown/models/dropdown-item.mjs +2 -0
  203. package/esm2022/dropdown/models/dropdown-item.type.mjs +2 -0
  204. package/esm2022/dropdown/models/public-api.mjs +5 -0
  205. package/esm2022/dropdown/models/toolbar.type.mjs +2 -0
  206. package/esm2022/dropdown/public-api.mjs +4 -0
  207. package/esm2022/dropdown/upd-dropdown.module.mjs +40 -0
  208. package/esm2022/dropdown/updevs-components-dropdown.mjs +5 -0
  209. package/esm2022/form/assets/i18n/en.json +17 -0
  210. package/esm2022/form/assets/i18n/pt.json +17 -0
  211. package/esm2022/form/components/dynamic-field/dynamic-field.component.mjs +130 -0
  212. package/esm2022/form/form.component.mjs +122 -0
  213. package/esm2022/form/index.mjs +2 -0
  214. package/esm2022/form/models/checkbox-field.model.mjs +2 -0
  215. package/esm2022/form/models/checkbox-group-field.model.mjs +2 -0
  216. package/esm2022/form/models/dynamic-field.model.mjs +2 -0
  217. package/esm2022/form/models/enums/dynamic-field.type.mjs +15 -0
  218. package/esm2022/form/models/enums/public-api.mjs +2 -0
  219. package/esm2022/form/models/file-upload-field.model.mjs +2 -0
  220. package/esm2022/form/models/form-config.mjs +2 -0
  221. package/esm2022/form/models/form-row.model.mjs +2 -0
  222. package/esm2022/form/models/input-field.model.mjs +2 -0
  223. package/esm2022/form/models/masked-input-field.model.mjs +2 -0
  224. package/esm2022/form/models/public-api.mjs +16 -0
  225. package/esm2022/form/models/radio-field.model.mjs +2 -0
  226. package/esm2022/form/models/radio-group-field.model.mjs +2 -0
  227. package/esm2022/form/models/select-field.model.mjs +2 -0
  228. package/esm2022/form/models/single-select-field.model.mjs +2 -0
  229. package/esm2022/form/models/textarea-field.model.mjs +2 -0
  230. package/esm2022/form/models/validator-config.mjs +2 -0
  231. package/esm2022/form/public-api.mjs +4 -0
  232. package/esm2022/form/tools/errors-helper.mjs +54 -0
  233. package/esm2022/form/upd-form.module.mjs +84 -0
  234. package/esm2022/form/updevs-components-form.mjs +5 -0
  235. package/esm2022/form-controls/abstractions/base-control.mjs +46 -0
  236. package/esm2022/form-controls/abstractions/index.mjs +2 -0
  237. package/esm2022/form-controls/abstractions/public-api.mjs +2 -0
  238. package/esm2022/form-controls/abstractions/updevs-components-form-controls-abstractions.mjs +5 -0
  239. package/esm2022/form-controls/checkbox/checkbox.component.mjs +54 -0
  240. package/esm2022/form-controls/checkbox/index.mjs +2 -0
  241. package/esm2022/form-controls/checkbox/public-api.mjs +3 -0
  242. package/esm2022/form-controls/checkbox/upd-checkbox.module.mjs +32 -0
  243. package/esm2022/form-controls/checkbox/updevs-components-form-controls-checkbox.mjs +5 -0
  244. package/esm2022/form-controls/date-picker/date-picker.component.mjs +132 -0
  245. package/esm2022/form-controls/date-picker/index.mjs +2 -0
  246. package/esm2022/form-controls/date-picker/public-api.mjs +3 -0
  247. package/esm2022/form-controls/date-picker/upd-date-picker.module.mjs +40 -0
  248. package/esm2022/form-controls/date-picker/updevs-components-form-controls-date-picker.mjs +5 -0
  249. package/esm2022/form-controls/file-upload/assets/i18n/en.json +15 -0
  250. package/esm2022/form-controls/file-upload/assets/i18n/pt.json +15 -0
  251. package/esm2022/form-controls/file-upload/file-upload-changed.event.mjs +2 -0
  252. package/esm2022/form-controls/file-upload/file-upload.component.mjs +169 -0
  253. package/esm2022/form-controls/file-upload/index.mjs +2 -0
  254. package/esm2022/form-controls/file-upload/public-api.mjs +4 -0
  255. package/esm2022/form-controls/file-upload/upd-file-upload.module.mjs +48 -0
  256. package/esm2022/form-controls/file-upload/updevs-components-form-controls-file-upload.mjs +5 -0
  257. package/esm2022/form-controls/input/directives/input-append.directive.mjs +16 -0
  258. package/esm2022/form-controls/input/directives/input-prepend.directive.mjs +16 -0
  259. package/esm2022/form-controls/input/directives/public-api.mjs +3 -0
  260. package/esm2022/form-controls/input/index.mjs +2 -0
  261. package/esm2022/form-controls/input/input.component.mjs +185 -0
  262. package/esm2022/form-controls/input/public-api.mjs +5 -0
  263. package/esm2022/form-controls/input/types/input.type.mjs +2 -0
  264. package/esm2022/form-controls/input/types/loader-position.type.mjs +2 -0
  265. package/esm2022/form-controls/input/types/public-api.mjs +3 -0
  266. package/esm2022/form-controls/input/upd-input.module.mjs +46 -0
  267. package/esm2022/form-controls/input/updevs-components-form-controls-input.mjs +5 -0
  268. package/esm2022/form-controls/radio/index.mjs +2 -0
  269. package/esm2022/form-controls/radio/public-api.mjs +3 -0
  270. package/esm2022/form-controls/radio/radio.component.mjs +51 -0
  271. package/esm2022/form-controls/radio/upd-radio.module.mjs +32 -0
  272. package/esm2022/form-controls/radio/updevs-components-form-controls-radio.mjs +5 -0
  273. package/esm2022/form-controls/select/components/multiple/select-multiple.component.mjs +76 -0
  274. package/esm2022/form-controls/select/components/single/select.component.mjs +72 -0
  275. package/esm2022/form-controls/select/index.mjs +2 -0
  276. package/esm2022/form-controls/select/models/abstractions/base-select.component.mjs +215 -0
  277. package/esm2022/form-controls/select/models/defaults.mjs +8 -0
  278. package/esm2022/form-controls/select/models/public-api.mjs +3 -0
  279. package/esm2022/form-controls/select/models/select-item.mjs +2 -0
  280. package/esm2022/form-controls/select/public-api.mjs +5 -0
  281. package/esm2022/form-controls/select/upd-select.module.mjs +57 -0
  282. package/esm2022/form-controls/select/updevs-components-form-controls-select.mjs +5 -0
  283. package/esm2022/form-controls/textarea/index.mjs +2 -0
  284. package/esm2022/form-controls/textarea/public-api.mjs +3 -0
  285. package/esm2022/form-controls/textarea/textarea.component.mjs +44 -0
  286. package/esm2022/form-controls/textarea/upd-textarea.module.mjs +24 -0
  287. package/esm2022/form-controls/textarea/updevs-components-form-controls-textarea.mjs +5 -0
  288. package/esm2022/form-controls/time-picker/index.mjs +2 -0
  289. package/esm2022/form-controls/time-picker/public-api.mjs +4 -0
  290. package/esm2022/form-controls/time-picker/time-picker.component.mjs +130 -0
  291. package/esm2022/form-controls/time-picker/time-selector/time-selector.component.mjs +124 -0
  292. package/esm2022/form-controls/time-picker/upd-time-picker.module.mjs +61 -0
  293. package/esm2022/form-controls/time-picker/updevs-components-form-controls-time-picker.mjs +5 -0
  294. package/esm2022/index.mjs +2 -0
  295. package/esm2022/layout/abstractions/base-page.component.mjs +23 -0
  296. package/esm2022/layout/abstractions/base.layout.mjs +31 -0
  297. package/esm2022/layout/abstractions/public-api.mjs +2 -0
  298. package/esm2022/layout/assets/i18n/en.json +27 -0
  299. package/esm2022/layout/assets/i18n/pt.json +27 -0
  300. package/esm2022/layout/index.mjs +2 -0
  301. package/esm2022/layout/layouts/blank-layout/blank-layout.component.mjs +22 -0
  302. package/esm2022/layout/layouts/blank-layout/blank-layout.module.mjs +50 -0
  303. package/esm2022/layout/layouts/public-api.mjs +5 -0
  304. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.mjs +17 -0
  305. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.mjs +78 -0
  306. package/esm2022/layout/models/login-page-config.model.mjs +20 -0
  307. package/esm2022/layout/models/login-page.config.mjs +2 -0
  308. package/esm2022/layout/models/public-api.mjs +3 -0
  309. package/esm2022/layout/models/security-layout-config.model.mjs +10 -0
  310. package/esm2022/layout/models/security-layout.config.mjs +2 -0
  311. package/esm2022/layout/models/upd-layout-config.model.mjs +24 -0
  312. package/esm2022/layout/models/upd-layout.config.mjs +2 -0
  313. package/esm2022/layout/pages/auth-flow/auth-flow-routing.module.mjs +28 -0
  314. package/esm2022/layout/pages/auth-flow/auth-flow.module.mjs +73 -0
  315. package/esm2022/layout/pages/auth-flow/logged-out/logged-out.component.mjs +11 -0
  316. package/esm2022/layout/pages/auth-flow/login/login.component.mjs +110 -0
  317. package/esm2022/layout/pages/auth-flow/oauth-callback/oauth-callback.component.mjs +11 -0
  318. package/esm2022/layout/pages/auth-flow/public-api.mjs +6 -0
  319. package/esm2022/layout/pages/public-api.mjs +2 -0
  320. package/esm2022/layout/partials/footer/footer.component.mjs +52 -0
  321. package/esm2022/layout/partials/footer/footer.module.mjs +28 -0
  322. package/esm2022/layout/partials/footer/public-api.mjs +3 -0
  323. package/esm2022/layout/partials/header/header-style.type.mjs +2 -0
  324. package/esm2022/layout/partials/header/header.component.mjs +140 -0
  325. package/esm2022/layout/partials/header/header.module.mjs +40 -0
  326. package/esm2022/layout/partials/header/public-api.mjs +4 -0
  327. package/esm2022/layout/partials/page-header/page-header.component.mjs +15 -0
  328. package/esm2022/layout/partials/page-header/public-api.mjs +2 -0
  329. package/esm2022/layout/partials/public-api.mjs +5 -0
  330. package/esm2022/layout/partials/sidebar/public-api.mjs +2 -0
  331. package/esm2022/layout/partials/sidebar/sidebar.component.mjs +234 -0
  332. package/esm2022/layout/public-api.mjs +8 -0
  333. package/esm2022/layout/services/public-api.mjs +2 -0
  334. package/esm2022/layout/services/upd-layout-config.service.mjs +21 -0
  335. package/esm2022/layout/tools/layout.constants.mjs +15 -0
  336. package/esm2022/layout/upd-layout.module.mjs +47 -0
  337. package/esm2022/layout/updevs-components-layout.mjs +5 -0
  338. package/esm2022/lib/index.mjs +2 -0
  339. package/esm2022/lib/models/public-api.mjs +2 -0
  340. package/esm2022/lib/models/row-column-size.mjs +2 -0
  341. package/esm2022/lib/public-api.mjs +5 -0
  342. package/esm2022/lib/tools/column-size.helper.mjs +12 -0
  343. package/esm2022/lib/tools/public-api.mjs +2 -0
  344. package/esm2022/lib/types/component-size.type.mjs +2 -0
  345. package/esm2022/lib/types/horizontal-vertical.type.mjs +2 -0
  346. package/esm2022/lib/types/public-api.mjs +4 -0
  347. package/esm2022/lib/types/validation-status.type.mjs +2 -0
  348. package/esm2022/lib/upd-components.module.mjs +14 -0
  349. package/esm2022/link/index.mjs +2 -0
  350. package/esm2022/link/link.component.mjs +51 -0
  351. package/esm2022/link/public-api.mjs +4 -0
  352. package/esm2022/link/target.type.mjs +2 -0
  353. package/esm2022/link/upd-link.module.mjs +24 -0
  354. package/esm2022/link/updevs-components-link.mjs +5 -0
  355. package/esm2022/list/assets/i18n/en.json +9 -0
  356. package/esm2022/list/assets/i18n/pt.json +9 -0
  357. package/esm2022/list/index.mjs +2 -0
  358. package/esm2022/list/list.component.mjs +113 -0
  359. package/esm2022/list/models/badge-position.type.mjs +2 -0
  360. package/esm2022/list/models/list-item.mjs +2 -0
  361. package/esm2022/list/models/list-item.model.mjs +15 -0
  362. package/esm2022/list/models/public-api.mjs +3 -0
  363. package/esm2022/list/public-api.mjs +4 -0
  364. package/esm2022/list/upd-list.module.mjs +44 -0
  365. package/esm2022/list/updevs-components-list.mjs +5 -0
  366. package/esm2022/modal/assets/i18n/en.json +17 -0
  367. package/esm2022/modal/assets/i18n/pt.json +17 -0
  368. package/esm2022/modal/components/modal-container/modal-container.component.mjs +216 -0
  369. package/esm2022/modal/index.mjs +2 -0
  370. package/esm2022/modal/models/base.modal.mjs +14 -0
  371. package/esm2022/modal/models/modal-config.model.mjs +20 -0
  372. package/esm2022/modal/models/modal-ref.mjs +2 -0
  373. package/esm2022/modal/models/modal.config.mjs +2 -0
  374. package/esm2022/modal/models/public-api.mjs +4 -0
  375. package/esm2022/modal/public-api.mjs +4 -0
  376. package/esm2022/modal/services/modal-alert.service.mjs +99 -0
  377. package/esm2022/modal/services/modal.service.mjs +30 -0
  378. package/esm2022/modal/services/public-api.mjs +3 -0
  379. package/esm2022/modal/types/modal-footer-style.type.mjs +2 -0
  380. package/esm2022/modal/types/modal-size.type.mjs +2 -0
  381. package/esm2022/modal/upd-modal.module.mjs +90 -0
  382. package/esm2022/modal/updevs-components-modal.mjs +5 -0
  383. package/esm2022/paginator/assets/i18n/en.json +15 -0
  384. package/esm2022/paginator/assets/i18n/pt.json +15 -0
  385. package/esm2022/paginator/index.mjs +2 -0
  386. package/esm2022/paginator/paginator.component.mjs +66 -0
  387. package/esm2022/paginator/public-api.mjs +3 -0
  388. package/esm2022/paginator/upd-paginator.module.mjs +47 -0
  389. package/esm2022/paginator/updevs-components-paginator.mjs +5 -0
  390. package/esm2022/popover/index.mjs +2 -0
  391. package/esm2022/popover/popover.component.mjs +65 -0
  392. package/esm2022/popover/popover.directive.mjs +118 -0
  393. package/esm2022/popover/public-api.mjs +4 -0
  394. package/esm2022/popover/upd-popover.module.mjs +29 -0
  395. package/esm2022/popover/updevs-components-popover.mjs +5 -0
  396. package/esm2022/pricing-cards/index.mjs +2 -0
  397. package/esm2022/pricing-cards/models/price-item-feature.model.mjs +2 -0
  398. package/esm2022/pricing-cards/models/price-item-features-group.model.mjs +2 -0
  399. package/esm2022/pricing-cards/models/price-item-tag.model.mjs +2 -0
  400. package/esm2022/pricing-cards/models/price-item.model.mjs +2 -0
  401. package/esm2022/pricing-cards/models/public-api.mjs +5 -0
  402. package/esm2022/pricing-cards/pricing-cards.component.mjs +25 -0
  403. package/esm2022/pricing-cards/public-api.mjs +4 -0
  404. package/esm2022/pricing-cards/upd-pricing-cards.module.mjs +40 -0
  405. package/esm2022/pricing-cards/updevs-components-pricing-cards.mjs +5 -0
  406. package/esm2022/public-api.mjs +2 -0
  407. package/esm2022/table/abstractions/base-column.model.mjs +52 -0
  408. package/esm2022/table/abstractions/base.column.mjs +84 -0
  409. package/esm2022/table/abstractions/filters-operands.service.mjs +3 -0
  410. package/esm2022/table/abstractions/public-api.mjs +3 -0
  411. package/esm2022/table/assets/i18n/en.json +74 -0
  412. package/esm2022/table/assets/i18n/pt.json +74 -0
  413. package/esm2022/table/components/columns/boolean-column/boolean-column.component.mjs +26 -0
  414. package/esm2022/table/components/columns/date-time-column/date-time-column.component.mjs +13 -0
  415. package/esm2022/table/components/columns/number-column/number-column.component.mjs +13 -0
  416. package/esm2022/table/components/columns/text-column/text-column.component.mjs +31 -0
  417. package/esm2022/table/components/columns-manager/columns-manager.component.mjs +36 -0
  418. package/esm2022/table/components/filter-row/filter-row.component.mjs +114 -0
  419. package/esm2022/table/components/save-search/save-search.component.mjs +72 -0
  420. package/esm2022/table/components/search-section/search-section.component.mjs +93 -0
  421. package/esm2022/table/directives/public-api.mjs +2 -0
  422. package/esm2022/table/directives/table-column.directive.mjs +52 -0
  423. package/esm2022/table/index.mjs +2 -0
  424. package/esm2022/table/models/columns/boolean-column.model.mjs +22 -0
  425. package/esm2022/table/models/columns/date-time-column.model.mjs +16 -0
  426. package/esm2022/table/models/columns/guid-column.model.mjs +13 -0
  427. package/esm2022/table/models/columns/image-column.model.mjs +11 -0
  428. package/esm2022/table/models/columns/number-column.model.mjs +17 -0
  429. package/esm2022/table/models/columns/public-api.mjs +7 -0
  430. package/esm2022/table/models/columns/text-column.model.mjs +11 -0
  431. package/esm2022/table/models/enums/column-type.enum.mjs +15 -0
  432. package/esm2022/table/models/enums/public-api.mjs +2 -0
  433. package/esm2022/table/models/filter-item.model.mjs +2 -0
  434. package/esm2022/table/models/filter-operand.config.mjs +2 -0
  435. package/esm2022/table/models/operands-lists/boolean-filter-operands-list.model.mjs +25 -0
  436. package/esm2022/table/models/operands-lists/date-filter-operands-list.model.mjs +25 -0
  437. package/esm2022/table/models/operands-lists/date-or-number-operands-list.config.mjs +31 -0
  438. package/esm2022/table/models/operands-lists/filter-operands-list.config.mjs +31 -0
  439. package/esm2022/table/models/operands-lists/guid-filter-operands-list.model.mjs +16 -0
  440. package/esm2022/table/models/operands-lists/number-filter-operands-list.model.mjs +25 -0
  441. package/esm2022/table/models/operands-lists/string-filter-operands-list.model.mjs +45 -0
  442. package/esm2022/table/models/public-api.mjs +5 -0
  443. package/esm2022/table/models/saved-view.model.mjs +2 -0
  444. package/esm2022/table/models/table-config.model.mjs +29 -0
  445. package/esm2022/table/models/table.config.mjs +2 -0
  446. package/esm2022/table/models/upd-table-config.model.mjs +9 -0
  447. package/esm2022/table/models/upd-table.config.mjs +2 -0
  448. package/esm2022/table/public-api.mjs +6 -0
  449. package/esm2022/table/services/default-filters-operands.service.mjs +60 -0
  450. package/esm2022/table/services/storages/saved-views.storage.mjs +56 -0
  451. package/esm2022/table/services/stores/filters-operands.store.mjs +19 -0
  452. package/esm2022/table/services/upd-table-config.service.mjs +18 -0
  453. package/esm2022/table/table.component.mjs +439 -0
  454. package/esm2022/table/tools/filters.tools.mjs +48 -0
  455. package/esm2022/table/tools/table.constants.mjs +15 -0
  456. package/esm2022/table/upd-table.module.mjs +150 -0
  457. package/esm2022/table/updevs-components-table.mjs +5 -0
  458. package/esm2022/updevs-components.mjs +5 -0
  459. package/fesm2022/updevs-components-badge.mjs +89 -0
  460. package/fesm2022/updevs-components-badge.mjs.map +1 -0
  461. package/fesm2022/updevs-components-button.mjs +193 -0
  462. package/fesm2022/updevs-components-button.mjs.map +1 -0
  463. package/fesm2022/updevs-components-calendar.mjs +582 -0
  464. package/fesm2022/updevs-components-calendar.mjs.map +1 -0
  465. package/fesm2022/updevs-components-card.mjs +238 -0
  466. package/fesm2022/updevs-components-card.mjs.map +1 -0
  467. package/fesm2022/updevs-components-drag-and-drop.mjs +185 -0
  468. package/fesm2022/updevs-components-drag-and-drop.mjs.map +1 -0
  469. package/fesm2022/updevs-components-dropdown.mjs +242 -0
  470. package/fesm2022/updevs-components-dropdown.mjs.map +1 -0
  471. package/fesm2022/updevs-components-form-controls-abstractions.mjs +53 -0
  472. package/fesm2022/updevs-components-form-controls-abstractions.mjs.map +1 -0
  473. package/fesm2022/updevs-components-form-controls-checkbox.mjs +90 -0
  474. package/fesm2022/updevs-components-form-controls-checkbox.mjs.map +1 -0
  475. package/fesm2022/updevs-components-form-controls-date-picker.mjs +175 -0
  476. package/fesm2022/updevs-components-form-controls-date-picker.mjs.map +1 -0
  477. package/fesm2022/updevs-components-form-controls-file-upload.mjs +264 -0
  478. package/fesm2022/updevs-components-form-controls-file-upload.mjs.map +1 -0
  479. package/fesm2022/updevs-components-form-controls-input.mjs +259 -0
  480. package/fesm2022/updevs-components-form-controls-input.mjs.map +1 -0
  481. package/fesm2022/updevs-components-form-controls-radio.mjs +87 -0
  482. package/fesm2022/updevs-components-form-controls-radio.mjs.map +1 -0
  483. package/fesm2022/updevs-components-form-controls-select.mjs +417 -0
  484. package/fesm2022/updevs-components-form-controls-select.mjs.map +1 -0
  485. package/fesm2022/updevs-components-form-controls-textarea.mjs +72 -0
  486. package/fesm2022/updevs-components-form-controls-textarea.mjs.map +1 -0
  487. package/fesm2022/updevs-components-form-controls-time-picker.mjs +345 -0
  488. package/fesm2022/updevs-components-form-controls-time-picker.mjs.map +1 -0
  489. package/fesm2022/updevs-components-form.mjs +440 -0
  490. package/fesm2022/updevs-components-form.mjs.map +1 -0
  491. package/fesm2022/updevs-components-layout.mjs +1052 -0
  492. package/fesm2022/updevs-components-layout.mjs.map +1 -0
  493. package/fesm2022/updevs-components-link.mjs +79 -0
  494. package/fesm2022/updevs-components-link.mjs.map +1 -0
  495. package/fesm2022/updevs-components-list.mjs +206 -0
  496. package/fesm2022/updevs-components-list.mjs.map +1 -0
  497. package/fesm2022/updevs-components-modal.mjs +504 -0
  498. package/fesm2022/updevs-components-modal.mjs.map +1 -0
  499. package/fesm2022/updevs-components-paginator.mjs +160 -0
  500. package/fesm2022/updevs-components-paginator.mjs.map +1 -0
  501. package/fesm2022/updevs-components-popover.mjs +212 -0
  502. package/fesm2022/updevs-components-popover.mjs.map +1 -0
  503. package/fesm2022/updevs-components-pricing-cards.mjs +69 -0
  504. package/fesm2022/updevs-components-pricing-cards.mjs.map +1 -0
  505. package/fesm2022/updevs-components-table.mjs +1754 -0
  506. package/fesm2022/updevs-components-table.mjs.map +1 -0
  507. package/fesm2022/updevs-components.mjs +33 -0
  508. package/fesm2022/updevs-components.mjs.map +1 -0
  509. package/form/components/dynamic-field/dynamic-field.component.d.ts +57 -0
  510. package/form/form.component.d.ts +60 -0
  511. package/form/models/checkbox-field.model.d.ts +4 -0
  512. package/form/models/checkbox-group-field.model.d.ts +6 -0
  513. package/form/models/dynamic-field.model.d.ts +28 -0
  514. package/form/models/enums/dynamic-field.type.d.ts +13 -0
  515. package/form/models/enums/public-api.d.ts +1 -0
  516. package/form/models/file-upload-field.model.d.ts +16 -0
  517. package/form/models/form-config.d.ts +2 -0
  518. package/form/models/form-row.model.d.ts +10 -0
  519. package/form/models/input-field.model.d.ts +9 -0
  520. package/form/models/masked-input-field.model.d.ts +6 -0
  521. package/form/models/public-api.d.ts +15 -0
  522. package/form/models/radio-field.model.d.ts +4 -0
  523. package/form/models/radio-group-field.model.d.ts +6 -0
  524. package/form/models/select-field.model.d.ts +28 -0
  525. package/form/models/single-select-field.model.d.ts +4 -0
  526. package/form/models/textarea-field.model.d.ts +10 -0
  527. package/form/models/validator-config.d.ts +5 -0
  528. package/form/public-api.d.ts +3 -0
  529. package/form/tools/errors-helper.d.ts +11 -0
  530. package/form/upd-form.module.d.ts +22 -0
  531. package/form-controls/abstractions/base-control.d.ts +29 -0
  532. package/form-controls/abstractions/index.d.ts +2 -0
  533. package/form-controls/abstractions/public-api.d.ts +2 -0
  534. package/form-controls/checkbox/checkbox.component.d.ts +19 -0
  535. package/form-controls/checkbox/{src/public-api.ts → public-api.d.ts} +0 -1
  536. package/form-controls/checkbox/upd-checkbox.module.d.ts +10 -0
  537. package/form-controls/date-picker/date-picker.component.d.ts +66 -0
  538. package/form-controls/date-picker/public-api.d.ts +2 -0
  539. package/form-controls/date-picker/upd-date-picker.module.d.ts +12 -0
  540. package/form-controls/file-upload/file-upload-changed.event.d.ts +4 -0
  541. package/form-controls/file-upload/file-upload.component.d.ts +46 -0
  542. package/form-controls/file-upload/public-api.d.ts +3 -0
  543. package/form-controls/file-upload/upd-file-upload.module.d.ts +14 -0
  544. package/form-controls/input/directives/input-append.directive.d.ts +7 -0
  545. package/form-controls/input/directives/input-prepend.directive.d.ts +7 -0
  546. package/form-controls/input/input.component.d.ts +64 -0
  547. package/form-controls/input/upd-input.module.d.ts +13 -0
  548. package/form-controls/radio/radio.component.d.ts +17 -0
  549. package/form-controls/radio/upd-radio.module.d.ts +10 -0
  550. package/form-controls/select/components/multiple/select-multiple.component.d.ts +25 -0
  551. package/form-controls/select/components/single/select.component.d.ts +26 -0
  552. package/form-controls/select/models/abstractions/base-select.component.d.ts +77 -0
  553. package/form-controls/select/models/defaults.d.ts +8 -0
  554. package/form-controls/select/{src/models/public-api.ts → models/public-api.d.ts} +1 -0
  555. package/form-controls/select/{src/models/select-item.ts → models/select-item.d.ts} +0 -1
  556. package/form-controls/select/upd-select.module.d.ts +16 -0
  557. package/form-controls/textarea/textarea.component.d.ts +19 -0
  558. package/form-controls/textarea/upd-textarea.module.d.ts +8 -0
  559. package/form-controls/time-picker/time-picker.component.d.ts +78 -0
  560. package/form-controls/time-picker/time-selector/time-selector.component.d.ts +69 -0
  561. package/form-controls/time-picker/upd-time-picker.module.d.ts +17 -0
  562. package/index.d.ts +2 -0
  563. package/layout/abstractions/base-page.component.d.ts +12 -0
  564. package/layout/abstractions/base.layout.d.ts +15 -0
  565. package/layout/index.d.ts +1 -0
  566. package/layout/layouts/blank-layout/blank-layout.component.d.ts +9 -0
  567. package/layout/layouts/blank-layout/blank-layout.module.d.ts +15 -0
  568. package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.d.ts +6 -0
  569. package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.d.ts +21 -0
  570. package/layout/models/login-page-config.model.d.ts +46 -0
  571. package/layout/models/login-page.config.d.ts +44 -0
  572. package/layout/{src/models/public-api.ts → models/public-api.d.ts} +1 -0
  573. package/layout/models/security-layout-config.model.d.ts +12 -0
  574. package/layout/models/security-layout.config.d.ts +10 -0
  575. package/layout/models/upd-layout-config.model.d.ts +48 -0
  576. package/layout/{src/models/upd-layout.config.ts → models/upd-layout.config.d.ts} +9 -0
  577. package/layout/pages/auth-flow/auth-flow-routing.module.d.ts +12 -0
  578. package/layout/pages/auth-flow/auth-flow.module.d.ts +20 -0
  579. package/layout/pages/auth-flow/logged-out/logged-out.component.d.ts +5 -0
  580. package/layout/pages/auth-flow/login/login.component.d.ts +26 -0
  581. package/layout/pages/auth-flow/oauth-callback/oauth-callback.component.d.ts +5 -0
  582. package/layout/partials/footer/footer.component.d.ts +34 -0
  583. package/layout/partials/footer/footer.module.d.ts +9 -0
  584. package/layout/partials/footer/public-api.d.ts +2 -0
  585. package/layout/partials/header/header.component.d.ts +51 -0
  586. package/layout/partials/header/header.module.d.ts +12 -0
  587. package/layout/{src/partials/header/public-api.ts → partials/header/public-api.d.ts} +1 -0
  588. package/layout/partials/page-header/page-header.component.d.ts +7 -0
  589. package/layout/partials/sidebar/sidebar.component.d.ts +46 -0
  590. package/layout/services/upd-layout-config.service.d.ts +15 -0
  591. package/layout/{src/tools/layout.constants.ts → tools/layout.constants.d.ts} +3 -6
  592. package/layout/upd-layout.module.d.ts +19 -0
  593. package/lib/index.d.ts +2 -0
  594. package/lib/models/public-api.d.ts +2 -0
  595. package/lib/models/row-column-size.d.ts +23 -0
  596. package/lib/public-api.d.ts +5 -0
  597. package/lib/tools/column-size.helper.d.ts +6 -0
  598. package/lib/tools/public-api.d.ts +2 -0
  599. package/{src/lib/types/component-size.type.ts → lib/types/component-size.type.d.ts} +1 -0
  600. package/lib/types/horizontal-vertical.type.d.ts +2 -0
  601. package/lib/types/public-api.d.ts +4 -0
  602. package/lib/types/validation-status.type.d.ts +2 -0
  603. package/lib/upd-components.module.d.ts +7 -0
  604. package/link/index.d.ts +1 -0
  605. package/link/link.component.d.ts +22 -0
  606. package/link/upd-link.module.d.ts +8 -0
  607. package/list/index.d.ts +1 -0
  608. package/list/list.component.d.ts +46 -0
  609. package/list/{src/models/list-item.ts → models/list-item.d.ts} +3 -4
  610. package/list/models/list-item.model.d.ts +25 -0
  611. package/list/upd-list.module.d.ts +13 -0
  612. package/modal/components/modal-container/modal-container.component.d.ts +74 -0
  613. package/modal/index.d.ts +1 -0
  614. package/modal/models/base.modal.d.ts +8 -0
  615. package/modal/models/modal-config.model.d.ts +32 -0
  616. package/modal/models/modal-ref.d.ts +6 -0
  617. package/modal/models/modal.config.d.ts +30 -0
  618. package/modal/models/public-api.d.ts +3 -0
  619. package/modal/public-api.d.ts +3 -0
  620. package/modal/services/modal-alert.service.d.ts +22 -0
  621. package/modal/services/modal.service.d.ts +12 -0
  622. package/modal/services/public-api.d.ts +2 -0
  623. package/modal/types/modal-footer-style.type.d.ts +1 -0
  624. package/modal/types/modal-size.type.d.ts +1 -0
  625. package/modal/upd-modal.module.d.ts +18 -0
  626. package/package.json +175 -21
  627. package/paginator/index.d.ts +1 -0
  628. package/paginator/paginator.component.d.ts +42 -0
  629. package/paginator/public-api.d.ts +2 -0
  630. package/paginator/upd-paginator.module.d.ts +14 -0
  631. package/popover/index.d.ts +1 -0
  632. package/popover/popover.component.d.ts +22 -0
  633. package/popover/popover.directive.d.ts +33 -0
  634. package/popover/upd-popover.module.d.ts +9 -0
  635. package/pricing-cards/index.d.ts +1 -0
  636. package/pricing-cards/models/price-item-feature.model.d.ts +5 -0
  637. package/pricing-cards/models/price-item-features-group.model.d.ts +5 -0
  638. package/pricing-cards/models/price-item-tag.model.d.ts +6 -0
  639. package/pricing-cards/models/price-item.model.d.ts +20 -0
  640. package/pricing-cards/models/public-api.d.ts +4 -0
  641. package/pricing-cards/pricing-cards.component.d.ts +11 -0
  642. package/pricing-cards/public-api.d.ts +3 -0
  643. package/pricing-cards/upd-pricing-cards.module.d.ts +12 -0
  644. package/public-api.d.ts +2 -0
  645. package/table/abstractions/base-column.model.d.ts +31 -0
  646. package/table/abstractions/base.column.d.ts +26 -0
  647. package/table/abstractions/filters-operands.service.d.ts +8 -0
  648. package/table/abstractions/public-api.d.ts +2 -0
  649. package/table/components/columns/boolean-column/boolean-column.component.d.ts +9 -0
  650. package/table/components/columns/date-time-column/date-time-column.component.d.ts +7 -0
  651. package/table/components/columns/number-column/number-column.component.d.ts +7 -0
  652. package/table/components/columns/text-column/text-column.component.d.ts +9 -0
  653. package/table/components/columns-manager/columns-manager.component.d.ts +15 -0
  654. package/table/components/filter-row/filter-row.component.d.ts +40 -0
  655. package/table/components/save-search/save-search.component.d.ts +17 -0
  656. package/table/components/search-section/search-section.component.d.ts +36 -0
  657. package/table/directives/public-api.d.ts +1 -0
  658. package/table/directives/table-column.directive.d.ts +14 -0
  659. package/table/index.d.ts +1 -0
  660. package/table/models/columns/boolean-column.model.d.ts +15 -0
  661. package/table/models/columns/date-time-column.model.d.ts +8 -0
  662. package/table/models/columns/guid-column.model.d.ts +4 -0
  663. package/table/models/columns/image-column.model.d.ts +6 -0
  664. package/table/models/columns/number-column.model.d.ts +8 -0
  665. package/table/models/columns/public-api.d.ts +6 -0
  666. package/table/models/columns/text-column.model.d.ts +6 -0
  667. package/table/models/enums/column-type.enum.d.ts +13 -0
  668. package/table/models/enums/public-api.d.ts +1 -0
  669. package/table/models/filter-item.model.d.ts +6 -0
  670. package/table/models/filter-operand.config.d.ts +9 -0
  671. package/table/models/operands-lists/boolean-filter-operands-list.model.d.ts +6 -0
  672. package/table/models/operands-lists/date-filter-operands-list.model.d.ts +6 -0
  673. package/table/models/operands-lists/date-or-number-operands-list.config.d.ts +5 -0
  674. package/table/models/operands-lists/filter-operands-list.config.d.ts +5 -0
  675. package/table/models/operands-lists/guid-filter-operands-list.model.d.ts +6 -0
  676. package/table/models/operands-lists/number-filter-operands-list.model.d.ts +6 -0
  677. package/table/models/operands-lists/string-filter-operands-list.model.d.ts +6 -0
  678. package/table/models/public-api.d.ts +4 -0
  679. package/table/models/saved-view.model.d.ts +11 -0
  680. package/table/models/table-config.model.d.ts +33 -0
  681. package/table/models/table.config.d.ts +31 -0
  682. package/table/models/upd-table-config.model.d.ts +6 -0
  683. package/table/models/upd-table.config.d.ts +6 -0
  684. package/table/public-api.d.ts +5 -0
  685. package/table/services/default-filters-operands.service.d.ts +17 -0
  686. package/table/services/storages/saved-views.storage.d.ts +19 -0
  687. package/table/services/stores/filters-operands.store.d.ts +11 -0
  688. package/table/services/upd-table-config.service.d.ts +12 -0
  689. package/table/table.component.d.ts +81 -0
  690. package/table/tools/filters.tools.d.ts +9 -0
  691. package/table/tools/table.constants.d.ts +15 -0
  692. package/table/upd-table.module.d.ts +40 -0
  693. package/CHANGELOG.md +0 -8
  694. package/button/index.ts +0 -1
  695. package/button/ng-package.json +0 -7
  696. package/button/src/button.component.html +0 -8
  697. package/button/src/button.component.scss +0 -5
  698. package/button/src/button.component.spec.ts +0 -23
  699. package/button/src/button.component.ts +0 -154
  700. package/button/src/upd-button.module.ts +0 -17
  701. package/card/index.ts +0 -1
  702. package/card/ng-package.json +0 -7
  703. package/card/src/card.component.html +0 -105
  704. package/card/src/card.component.scss +0 -47
  705. package/card/src/card.component.spec.ts +0 -23
  706. package/card/src/card.component.ts +0 -112
  707. package/card/src/directives/card-actions.directive.spec.ts +0 -8
  708. package/card/src/directives/card-actions.directive.ts +0 -11
  709. package/card/src/directives/card-footer.directive.spec.ts +0 -8
  710. package/card/src/directives/card-footer.directive.ts +0 -11
  711. package/card/src/directives/card-header.directive.spec.ts +0 -8
  712. package/card/src/directives/card-header.directive.ts +0 -11
  713. package/card/src/directives/card-image.directive.spec.ts +0 -8
  714. package/card/src/directives/card-image.directive.ts +0 -11
  715. package/card/src/upd-card.module.ts +0 -32
  716. package/dropdown/index.ts +0 -1
  717. package/dropdown/ng-package.json +0 -7
  718. package/dropdown/src/dropdown.component.html +0 -32
  719. package/dropdown/src/dropdown.component.scss +0 -19
  720. package/dropdown/src/dropdown.component.spec.ts +0 -23
  721. package/dropdown/src/dropdown.component.ts +0 -182
  722. package/dropdown/src/models/public-api.ts +0 -2
  723. package/dropdown/src/upd-dropdown.module.ts +0 -25
  724. package/form/index.ts +0 -1
  725. package/form/ng-package.json +0 -7
  726. package/form/src/form.module.ts +0 -10
  727. package/form/src/public-api.ts +0 -1
  728. package/form-controls/checkbox/index.ts +0 -1
  729. package/form-controls/checkbox/ng-package.json +0 -7
  730. package/form-controls/checkbox/src/checkbox.component.html +0 -7
  731. package/form-controls/checkbox/src/checkbox.component.spec.ts +0 -23
  732. package/form-controls/checkbox/src/checkbox.component.ts +0 -48
  733. package/form-controls/checkbox/src/upd-checkbox.module.ts +0 -19
  734. package/form-controls/input/index.ts +0 -1
  735. package/form-controls/input/ng-package.json +0 -7
  736. package/form-controls/input/src/directives/input-append.directive.spec.ts +0 -8
  737. package/form-controls/input/src/directives/input-append.directive.ts +0 -11
  738. package/form-controls/input/src/directives/input-prepend.directive.spec.ts +0 -8
  739. package/form-controls/input/src/directives/input-prepend.directive.ts +0 -11
  740. package/form-controls/input/src/input.component.html +0 -82
  741. package/form-controls/input/src/input.component.scss +0 -13
  742. package/form-controls/input/src/input.component.spec.ts +0 -23
  743. package/form-controls/input/src/input.component.ts +0 -124
  744. package/form-controls/input/src/upd-input.module.ts +0 -29
  745. package/form-controls/radio/index.ts +0 -1
  746. package/form-controls/radio/ng-package.json +0 -7
  747. package/form-controls/radio/src/radio.component.html +0 -7
  748. package/form-controls/radio/src/radio.component.scss +0 -0
  749. package/form-controls/radio/src/radio.component.spec.ts +0 -23
  750. package/form-controls/radio/src/radio.component.ts +0 -47
  751. package/form-controls/radio/src/upd-radio.module.ts +0 -17
  752. package/form-controls/select/index.ts +0 -1
  753. package/form-controls/select/ng-package.json +0 -7
  754. package/form-controls/select/src/components/multiple/select-multiple.component.html +0 -41
  755. package/form-controls/select/src/components/multiple/select-multiple.component.scss +0 -6
  756. package/form-controls/select/src/components/multiple/select-multiple.component.spec.ts +0 -21
  757. package/form-controls/select/src/components/multiple/select-multiple.component.ts +0 -69
  758. package/form-controls/select/src/components/shared.scss +0 -40
  759. package/form-controls/select/src/components/single/select.component.html +0 -53
  760. package/form-controls/select/src/components/single/select.component.scss +0 -3
  761. package/form-controls/select/src/components/single/select.component.spec.ts +0 -23
  762. package/form-controls/select/src/components/single/select.component.ts +0 -58
  763. package/form-controls/select/src/models/abstractions/base-select.component.ts +0 -259
  764. package/form-controls/select/src/upd-select.module.ts +0 -32
  765. package/form-controls/textarea/index.ts +0 -1
  766. package/form-controls/textarea/ng-package.json +0 -7
  767. package/form-controls/textarea/src/textarea.component.html +0 -8
  768. package/form-controls/textarea/src/textarea.component.scss +0 -0
  769. package/form-controls/textarea/src/textarea.component.spec.ts +0 -23
  770. package/form-controls/textarea/src/textarea.component.ts +0 -47
  771. package/form-controls/textarea/src/upd-textarea.module.ts +0 -17
  772. package/form-controls/time-picker/index.ts +0 -1
  773. package/form-controls/time-picker/ng-package.json +0 -7
  774. package/form-controls/time-picker/src/time-picker.component.html +0 -17
  775. package/form-controls/time-picker/src/time-picker.component.scss +0 -10
  776. package/form-controls/time-picker/src/time-picker.component.spec.ts +0 -21
  777. package/form-controls/time-picker/src/time-picker.component.ts +0 -110
  778. package/form-controls/time-picker/src/time-selector/time-selector.component.html +0 -44
  779. package/form-controls/time-picker/src/time-selector/time-selector.component.scss +0 -47
  780. package/form-controls/time-picker/src/time-selector/time-selector.component.spec.ts +0 -21
  781. package/form-controls/time-picker/src/time-selector/time-selector.component.ts +0 -107
  782. package/form-controls/time-picker/src/upd-time-picker.module.ts +0 -39
  783. package/index.ts +0 -1
  784. package/layout/index.ts +0 -1
  785. package/layout/ng-package.json +0 -7
  786. package/layout/src/abstractions/base-page.component.ts +0 -21
  787. package/layout/src/assets/i18n/en.json +0 -5
  788. package/layout/src/assets/i18n/pt.json +0 -5
  789. package/layout/src/layouts/blank-layout/blank-layout.component.html +0 -1
  790. package/layout/src/layouts/blank-layout/blank-layout.component.scss +0 -0
  791. package/layout/src/layouts/blank-layout/blank-layout.component.spec.ts +0 -23
  792. package/layout/src/layouts/blank-layout/blank-layout.component.ts +0 -10
  793. package/layout/src/layouts/blank-layout/blank-layout.module.ts +0 -17
  794. package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.html +0 -14
  795. package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.scss +0 -0
  796. package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.spec.ts +0 -23
  797. package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.ts +0 -31
  798. package/layout/src/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.ts +0 -52
  799. package/layout/src/models/upd-layout-config.model.ts +0 -71
  800. package/layout/src/pages/auth-flow/auth-flow-routing.module.ts +0 -21
  801. package/layout/src/pages/auth-flow/auth-flow.module.ts +0 -29
  802. package/layout/src/pages/auth-flow/logged-out/logged-out.component.html +0 -1
  803. package/layout/src/pages/auth-flow/logged-out/logged-out.component.scss +0 -0
  804. package/layout/src/pages/auth-flow/logged-out/logged-out.component.spec.ts +0 -23
  805. package/layout/src/pages/auth-flow/logged-out/logged-out.component.ts +0 -10
  806. package/layout/src/pages/auth-flow/login/login.component.html +0 -96
  807. package/layout/src/pages/auth-flow/login/login.component.scss +0 -0
  808. package/layout/src/pages/auth-flow/login/login.component.spec.ts +0 -23
  809. package/layout/src/pages/auth-flow/login/login.component.ts +0 -26
  810. package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.html +0 -1
  811. package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.scss +0 -0
  812. package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.spec.ts +0 -23
  813. package/layout/src/pages/auth-flow/oauth-callback/oauth-callback.component.ts +0 -10
  814. package/layout/src/partials/footer/footer-copyright.directive.spec.ts +0 -8
  815. package/layout/src/partials/footer/footer-copyright.directive.ts +0 -9
  816. package/layout/src/partials/footer/footer.component.html +0 -30
  817. package/layout/src/partials/footer/footer.component.scss +0 -0
  818. package/layout/src/partials/footer/footer.component.spec.ts +0 -23
  819. package/layout/src/partials/footer/footer.component.ts +0 -73
  820. package/layout/src/partials/footer/public-api.ts +0 -2
  821. package/layout/src/partials/header/header.component.html +0 -163
  822. package/layout/src/partials/header/header.component.scss +0 -0
  823. package/layout/src/partials/header/header.component.spec.ts +0 -23
  824. package/layout/src/partials/header/header.component.ts +0 -86
  825. package/layout/src/partials/page-header/page-header.component.html +0 -19
  826. package/layout/src/partials/page-header/page-header.component.scss +0 -0
  827. package/layout/src/partials/page-header/page-header.component.spec.ts +0 -23
  828. package/layout/src/partials/page-header/page-header.component.ts +0 -11
  829. package/layout/src/partials/sidebar/sidebar.component.html +0 -62
  830. package/layout/src/partials/sidebar/sidebar.component.scss +0 -0
  831. package/layout/src/partials/sidebar/sidebar.component.spec.ts +0 -23
  832. package/layout/src/partials/sidebar/sidebar.component.ts +0 -161
  833. package/layout/src/services/upd-layout-config.service.spec.ts +0 -16
  834. package/layout/src/services/upd-layout-config.service.ts +0 -20
  835. package/layout/src/upd-layout.module.ts +0 -34
  836. package/link/index.ts +0 -1
  837. package/link/ng-package.json +0 -7
  838. package/link/src/link.component.html +0 -3
  839. package/link/src/link.component.scss +0 -3
  840. package/link/src/link.component.spec.ts +0 -23
  841. package/link/src/link.component.ts +0 -48
  842. package/link/src/upd-link.module.ts +0 -17
  843. package/list/index.ts +0 -1
  844. package/list/ng-package.json +0 -7
  845. package/list/src/assets/i18n/en.json +0 -5
  846. package/list/src/assets/i18n/pt.json +0 -5
  847. package/list/src/list.component.html +0 -58
  848. package/list/src/list.component.scss +0 -21
  849. package/list/src/list.component.spec.ts +0 -23
  850. package/list/src/list.component.ts +0 -147
  851. package/list/src/models/list-item.model.ts +0 -35
  852. package/list/src/upd-list.module.ts +0 -30
  853. package/ng-package.json +0 -10
  854. package/popover/index.ts +0 -1
  855. package/popover/ng-package.json +0 -7
  856. package/popover/src/popover.component.html +0 -20
  857. package/popover/src/popover.component.scss +0 -8
  858. package/popover/src/popover.component.spec.ts +0 -23
  859. package/popover/src/popover.component.ts +0 -53
  860. package/popover/src/popover.directive.spec.ts +0 -8
  861. package/popover/src/popover.directive.ts +0 -128
  862. package/popover/src/upd-popover.module.ts +0 -20
  863. package/src/lib/public-api.ts +0 -2
  864. package/src/lib/types/public-api.ts +0 -2
  865. package/src/lib/types/validation-status.type.ts +0 -1
  866. package/src/lib/upd-components.module.ts +0 -6
  867. package/src/public-api.ts +0 -1
  868. package/tsconfig.lib.json +0 -14
  869. package/tsconfig.lib.prod.json +0 -10
  870. package/tsconfig.spec.json +0 -14
  871. /package/{form-controls/checkbox/src/checkbox.component.scss → assets/styles/marketing/_filters.scss} +0 -0
  872. /package/{button/src/index.ts → badge/index.d.ts} +0 -0
  873. /package/{card/src/index.ts → button/index.d.ts} +0 -0
  874. /package/button/{src/public-api.ts → public-api.d.ts} +0 -0
  875. /package/{dropdown/src/index.ts → calendar/index.d.ts} +0 -0
  876. /package/card/{src/directives/public-api.ts → directives/public-api.d.ts} +0 -0
  877. /package/{form-controls/checkbox/src/index.ts → card/index.d.ts} +0 -0
  878. /package/card/{src/types/card-state.type.ts → types/card-state.type.d.ts} +0 -0
  879. /package/card/{src/types/card-style.type.ts → types/card-style.type.d.ts} +0 -0
  880. /package/card/{src/types/hover-effect.type.ts → types/hover-effect.type.d.ts} +0 -0
  881. /package/card/{src/types/public-api.ts → types/public-api.d.ts} +0 -0
  882. /package/card/{src/types/ribbon-style.type.ts → types/ribbon-style.type.d.ts} +0 -0
  883. /package/card/{src/types/status-position.type.ts → types/status-position.type.d.ts} +0 -0
  884. /package/{form-controls/input/src/index.ts → drag-and-drop/index.d.ts} +0 -0
  885. /package/{form-controls/radio/src/index.ts → dropdown/index.d.ts} +0 -0
  886. /package/dropdown/{src/public-api.ts → public-api.d.ts} +0 -0
  887. /package/{form-controls/time-picker/src → esm2022/form-controls/time-picker}/assets/i18n/en.json +0 -0
  888. /package/{form-controls/time-picker/src → esm2022/form-controls/time-picker}/assets/i18n/pt.json +0 -0
  889. /package/{src/lib/index.ts → form/index.d.ts} +0 -0
  890. /package/form-controls/{select/src/index.ts → checkbox/index.d.ts} +0 -0
  891. /package/form-controls/{textarea/src/index.ts → date-picker/index.d.ts} +0 -0
  892. /package/form-controls/{time-picker/src/index.ts → file-upload/index.d.ts} +0 -0
  893. /package/form-controls/input/{src/directives/public-api.ts → directives/public-api.d.ts} +0 -0
  894. /package/{form/src/index.ts → form-controls/input/index.d.ts} +0 -0
  895. /package/form-controls/input/{src/public-api.ts → public-api.d.ts} +0 -0
  896. /package/form-controls/input/{src/types/input.type.ts → types/input.type.d.ts} +0 -0
  897. /package/form-controls/input/{src/types/loader-position.type.ts → types/loader-position.type.d.ts} +0 -0
  898. /package/form-controls/input/{src/types/public-api.ts → types/public-api.d.ts} +0 -0
  899. /package/{layout/src/index.ts → form-controls/radio/index.d.ts} +0 -0
  900. /package/form-controls/radio/{src/public-api.ts → public-api.d.ts} +0 -0
  901. /package/{link/src/index.ts → form-controls/select/index.d.ts} +0 -0
  902. /package/form-controls/select/{src/public-api.ts → public-api.d.ts} +0 -0
  903. /package/{list/src/index.ts → form-controls/textarea/index.d.ts} +0 -0
  904. /package/form-controls/textarea/{src/public-api.ts → public-api.d.ts} +0 -0
  905. /package/{popover/src/index.ts → form-controls/time-picker/index.d.ts} +0 -0
  906. /package/form-controls/time-picker/{src/public-api.ts → public-api.d.ts} +0 -0
  907. /package/layout/{src/abstractions/public-api.ts → abstractions/public-api.d.ts} +0 -0
  908. /package/layout/{src/layouts/public-api.ts → layouts/public-api.d.ts} +0 -0
  909. /package/layout/{src/pages/auth-flow/public-api.ts → pages/auth-flow/public-api.d.ts} +0 -0
  910. /package/layout/{src/pages/public-api.ts → pages/public-api.d.ts} +0 -0
  911. /package/layout/{src/partials/header/header-style.type.ts → partials/header/header-style.type.d.ts} +0 -0
  912. /package/layout/{src/partials/page-header/public-api.ts → partials/page-header/public-api.d.ts} +0 -0
  913. /package/layout/{src/partials/public-api.ts → partials/public-api.d.ts} +0 -0
  914. /package/layout/{src/partials/sidebar/public-api.ts → partials/sidebar/public-api.d.ts} +0 -0
  915. /package/layout/{src/public-api.ts → public-api.d.ts} +0 -0
  916. /package/layout/{src/services/public-api.ts → services/public-api.d.ts} +0 -0
  917. /package/link/{src/public-api.ts → public-api.d.ts} +0 -0
  918. /package/link/{src/target.type.ts → target.type.d.ts} +0 -0
  919. /package/list/{src/models/badge-position.type.ts → models/badge-position.type.d.ts} +0 -0
  920. /package/list/{src/models/public-api.ts → models/public-api.d.ts} +0 -0
  921. /package/list/{src/public-api.ts → public-api.d.ts} +0 -0
  922. /package/popover/{src/public-api.ts → public-api.d.ts} +0 -0
@@ -0,0 +1,504 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, Directive, viewChild, ElementRef, inject, Renderer2, HostBinding, Component, ApplicationRef, ViewContainerRef, Injectable, signal, NgModule } from '@angular/core';
3
+ import { BaseComponent, LayoutService, ScrollbarService, Utils, DynamicComponentLoaderService, OverlayService, ButtonModel, UpdCoreLayoutModule } from '@updevs/sdk/layout';
4
+ import * as i1 from '@angular/common';
5
+ import { NgComponentOutlet, DOCUMENT, CommonModule } from '@angular/common';
6
+ import { TextService } from '@updevs/sdk';
7
+ import * as i2 from '@updevs/components/button';
8
+ import { UpdButtonModule } from '@updevs/components/button';
9
+ import * as i3 from '@updevs/icons';
10
+ import { UpdIconsModule } from '@updevs/icons';
11
+ import * as i1$1 from '@jsverse/transloco';
12
+ import { TranslocoDirective } from '@jsverse/transloco';
13
+ import { Subject } from 'rxjs';
14
+ import * as i3$1 from '@updevs/sdk/messages';
15
+ import { MessageTypeEnum, UpdMessagesModule } from '@updevs/sdk/messages';
16
+
17
+ class BaseModal {
18
+ constructor() {
19
+ this.modalRef = input.required();
20
+ this.data = input.required();
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseModal, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.0", type: BaseModal, inputs: { modalRef: { classPropertyName: "modalRef", publicName: "modalRef", isSignal: true, isRequired: true, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseModal, decorators: [{
26
+ type: Directive
27
+ }] });
28
+
29
+ class ModalConfigModel {
30
+ constructor(init) {
31
+ this.size = 'regular';
32
+ this.isVerticallyCentered = true;
33
+ this.isScrollable = false;
34
+ this.showCancelButton = false;
35
+ this.showCloseButton = true;
36
+ this.isTextCentered = true;
37
+ this.shouldDismissOnEsc = false;
38
+ this.shouldDismissOnOutsideClick = false;
39
+ this.isAlert = false;
40
+ this.titleIconPosition = 'top';
41
+ this.footerLayout = 'default';
42
+ this.actionButtons = [];
43
+ if (!!init) {
44
+ Object.assign(this, init);
45
+ }
46
+ }
47
+ }
48
+
49
+ let containerId = 1;
50
+ class ModalContainerComponent extends BaseComponent {
51
+ constructor() {
52
+ super(...arguments);
53
+ this.id = `modal-${containerId++}`;
54
+ this.hostClass = ['modal', 'modal-blur', 'fade'];
55
+ this.role = 'dialog';
56
+ this.ariaHidden = true;
57
+ this.ariaModal = false;
58
+ this.tabIndex = -1;
59
+ this.dialog = viewChild.required('dialog', { read: ElementRef });
60
+ this.content = viewChild.required('content', { read: ElementRef });
61
+ this.bodyContentOutlet = viewChild(NgComponentOutlet);
62
+ this.size = 'regular';
63
+ this.isVerticallyCentered = true;
64
+ this.isScrollable = false;
65
+ this.showCloseButton = true;
66
+ this.showCancelButton = false;
67
+ this.isTextCentered = true;
68
+ this.shouldDismissOnEsc = false;
69
+ this.shouldDismissOnOutsideClick = false;
70
+ this.isAlert = false;
71
+ this.titleIconPosition = 'top';
72
+ this.footerLayout = 'default';
73
+ this.actionButtons = [];
74
+ this.openClass = 'modal-open';
75
+ this.textService = inject(TextService);
76
+ this.elementRef = inject(ElementRef);
77
+ this.layoutService = inject(LayoutService);
78
+ this.scrollbarService = inject(ScrollbarService);
79
+ this.renderer = inject(Renderer2);
80
+ this.document = inject(DOCUMENT);
81
+ this.clickCallback = (evt) => {
82
+ if (evt.target === this.element) {
83
+ this.close();
84
+ }
85
+ };
86
+ this.escCallback = (evt) => {
87
+ if (evt.key === 'Escape') {
88
+ this.close();
89
+ }
90
+ };
91
+ }
92
+ get classes() {
93
+ return [
94
+ 'modal-dialog',
95
+ this.isVerticallyCentered ? 'modal-dialog-centered' : '',
96
+ this.isScrollable ? 'modal-dialog-scrollable' : '',
97
+ this.sizeClass
98
+ ];
99
+ }
100
+ get titleText() {
101
+ return this.textService.getText(this.title);
102
+ }
103
+ get bodyText() {
104
+ return this.textService.getText(this.body);
105
+ }
106
+ get statusColorClass() {
107
+ return `bg-${this.statusColor}`;
108
+ }
109
+ get sizeClass() {
110
+ let cls = '';
111
+ switch (this.size) {
112
+ case 'small':
113
+ cls = 'modal-sm';
114
+ break;
115
+ case 'large':
116
+ cls = 'modal-lg';
117
+ break;
118
+ case 'extra-large':
119
+ cls = 'modal-xl';
120
+ break;
121
+ }
122
+ return cls;
123
+ }
124
+ get element() {
125
+ return this.elementRef.nativeElement;
126
+ }
127
+ prepareToShow(config) {
128
+ this.setupConfig(config);
129
+ this.scrollbarService.hide();
130
+ this.layoutService.addBodyClasses(this.openClass);
131
+ this.adjustDialog();
132
+ this.setupActionButtons();
133
+ }
134
+ show() {
135
+ this.setupListeners();
136
+ this.styleDisplay = 'block';
137
+ this.ariaHidden = false;
138
+ this.ariaModal = true;
139
+ this.element.scrollTop = 0;
140
+ this.dialog().nativeElement.scrollTop = 0;
141
+ Utils.reflow(this.element);
142
+ const transitionSub = Utils.executeAfterTransition(this.element).subscribe(() => {
143
+ this.element.classList.add('show');
144
+ this.content().nativeElement.focus();
145
+ });
146
+ this.addSubscriptions(transitionSub);
147
+ }
148
+ close(result) {
149
+ const transitionSub = Utils.executeAfterTransition(this.element).subscribe(() => {
150
+ this.styleDisplay = undefined;
151
+ this.ariaHidden = true;
152
+ this.ariaModal = false;
153
+ if (!!this.afterClose) {
154
+ this.afterClose(result);
155
+ }
156
+ this.overlay.hide();
157
+ this.layoutService.removeBodyClasses(this.openClass);
158
+ this.modalContainerRef.destroy();
159
+ });
160
+ this.element.classList.remove('show');
161
+ this.addSubscriptions(transitionSub);
162
+ }
163
+ buttonClick(event, btn) {
164
+ if (!!btn.clickFunction) {
165
+ btn.clickFunction({ event, data: btn });
166
+ }
167
+ }
168
+ getBodyInstance() {
169
+ return this.bodyContentOutlet()?.['_componentRef'].instance;
170
+ }
171
+ adjustDialog() {
172
+ const isModalOverflowing = this.element.scrollHeight > this.document.documentElement.clientHeight;
173
+ const scrollbarWidth = this.scrollbarService.getWidth();
174
+ const isBodyOverflowing = scrollbarWidth > 0;
175
+ if (isBodyOverflowing && !isModalOverflowing) {
176
+ this.renderer.setStyle(this.element, 'paddingRight', `${scrollbarWidth}px`);
177
+ }
178
+ if (!isBodyOverflowing && isModalOverflowing) {
179
+ this.renderer.setStyle(this.element, 'paddingLeft', `${scrollbarWidth}px`);
180
+ }
181
+ }
182
+ setupConfig(config) {
183
+ if (!config) {
184
+ return;
185
+ }
186
+ const configModel = new ModalConfigModel(config);
187
+ this.size = configModel.size;
188
+ this.isVerticallyCentered = configModel.isVerticallyCentered;
189
+ this.isScrollable = configModel.isScrollable;
190
+ this.showCancelButton = configModel.showCancelButton;
191
+ this.showCloseButton = configModel.showCloseButton;
192
+ this.shouldDismissOnEsc = configModel.shouldDismissOnEsc;
193
+ this.shouldDismissOnOutsideClick = configModel.shouldDismissOnOutsideClick;
194
+ this.isAlert = configModel.isAlert;
195
+ this.isTextCentered = configModel.isTextCentered;
196
+ this.statusColor = configModel.statusColor;
197
+ this.headerTemplateRef = configModel.headerTemplateRef;
198
+ this.footerTemplateRef = configModel.footerTemplateRef;
199
+ this.bodyTemplateRef = configModel.bodyTemplateRef;
200
+ this.bodyContentType = configModel.bodyContentType;
201
+ this.body = configModel.body;
202
+ this.title = configModel.title;
203
+ this.titleIcon = configModel.titleIcon;
204
+ this.titleIconPosition = configModel.titleIconPosition;
205
+ this.footerLayout = configModel.footerLayout;
206
+ this.actionButtons = configModel.actionButtons;
207
+ this.data = configModel.data;
208
+ }
209
+ setupActionButtons() {
210
+ this.actionButtons.forEach(btn => {
211
+ const fnBackup = btn.clickFunction;
212
+ btn.clickFunction = event => {
213
+ event.data = this;
214
+ fnBackup(event);
215
+ };
216
+ });
217
+ }
218
+ setupListeners() {
219
+ if (this.shouldDismissOnOutsideClick) {
220
+ this.element.addEventListener('click', this.clickCallback);
221
+ }
222
+ if (this.shouldDismissOnEsc) {
223
+ this.element.addEventListener('keydown', this.escCallback);
224
+ }
225
+ }
226
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
227
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: ModalContainerComponent, selector: "upd-modal-container", host: { properties: { "id": "this.id", "class": "this.hostClass", "role": "this.role", "aria-hidden": "this.ariaHidden", "aria-modal": "this.ariaModal", "tabindex": "this.tabIndex", "style.display": "this.styleDisplay" } }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["dialog"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "bodyContentOutlet", first: true, predicate: NgComponentOutlet, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *transloco=\"let t; prefix: 'UpDevs.Modal'\">\n <div [ngClass]=\"classes\" #dialog>\n <div class=\"modal-content\" tabindex=\"-1\" #content>\n @if (!!contentType) {\n <ng-container [ngComponentOutlet]=\"contentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\"></ng-container>\n } @else {\n @if (!isAlert && (!!titleText || !!headerTemplateRef)) {\n <div class=\"modal-header\">\n @if (!!headerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"headerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <h5 class=\"modal-title\">{{ titleText }}</h5>\n @if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n }\n </div>\n } @else if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n\n <div class=\"modal-body py-4\" [class.text-center]=\"isTextCentered || isAlert\">\n @if (isAlert && !!titleText) {\n <div class=\"d-flex justify-content-center align-content-start\"\n [class.flex-row]=\"titleIconPosition === 'left' || titleIconPosition === 'right'\"\n [class.flex-column]=\"titleIconPosition === 'top' || titleIconPosition === 'bottom'\">\n @if (!!titleIcon && (titleIconPosition === 'top' || titleIconPosition === 'left')) {\n <upd-icon [model]=\"titleIcon\" [class.me-2]=\"titleIconPosition === 'left'\"\n [class.mb-2]=\"titleIconPosition === 'top'\"></upd-icon>\n }\n\n <span class=\"align-self-center fs-3 fw-bold\" [class.mb-3]=\"!!titleIcon && titleIconPosition === 'top'\">\n {{ titleText }}\n </span>\n\n @if (!!titleIcon && (titleIconPosition === 'bottom' || titleIconPosition === 'right')) {\n <upd-icon [model]=\"titleIcon\" [class.ms-2]=\"titleIconPosition === 'right'\"\n [class.mb-2]=\"titleIconPosition === 'bottom'\"></upd-icon>\n }\n </div>\n }\n\n @if (!!bodyTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"bodyTemplateRef!\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else if (!!bodyContentType) {\n <ng-container [ngComponentOutlet]=\"bodyContentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <div [innerHTML]=\"bodyText\" [class.text-secondary]=\"isAlert\"></div>\n }\n </div>\n\n @if (!!statusColor) {\n <div class=\"modal-status\" [style.position]=\"'relative'\" [ngClass]=\"statusColorClass\"></div>\n }\n\n @if (showCancelButton || actionButtons.length > 0 || !!footerTemplateRef) {\n <div class=\"modal-footer\">\n @if (!!footerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"footerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n @switch (footerLayout) {\n @case ('full-width') {\n <div class=\"w-100\">\n <div class=\"row\">\n @if (showCancelButton) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [isNavigationLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n </div>\n }\n\n @for (btn of actionButtons; track btn) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [model]=\"btn\"></upd-button>\n </div>\n }\n </div>\n </div>\n }\n @case ('centered') {\n <div class=\"d-flex justify-content-center w-100\">\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n </div>\n }\n @default {\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n }\n }\n }\n </div>\n }\n }\n </div>\n </div>\n\n <ng-template #closeBtnTpl>\n <upd-button (clicked)=\"close()\" [shouldIgnoreBtnClass]=\"true\" customClasses=\"btn-close\"></upd-button>\n </ng-template>\n\n <ng-template #buttonsTpl>\n @if (showCancelButton) {\n <upd-button colorStyle=\"secondary\" [isLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n }\n\n @for (btn of actionButtons; track btn) {\n <upd-button [model]=\"btn\" (clicked)=\"buttonClick($event, btn)\"></upd-button>\n }\n </ng-template>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { 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: "component", type: i3.IconComponent, selector: "upd-icon", inputs: ["model", "wrapperClasses", "color", "colorClass", "removeDefaultClasses", "customClasses", "tablerIcon", "tablerIconWeight", "tablerIconType", "tablerIconSize", "heroIcon", "heroIconSize", "heroIconType"] }, { kind: "directive", type: i1$1.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }] }); }
228
+ }
229
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalContainerComponent, decorators: [{
230
+ type: Component,
231
+ args: [{ selector: 'upd-modal-container', template: "<ng-container *transloco=\"let t; prefix: 'UpDevs.Modal'\">\n <div [ngClass]=\"classes\" #dialog>\n <div class=\"modal-content\" tabindex=\"-1\" #content>\n @if (!!contentType) {\n <ng-container [ngComponentOutlet]=\"contentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\"></ng-container>\n } @else {\n @if (!isAlert && (!!titleText || !!headerTemplateRef)) {\n <div class=\"modal-header\">\n @if (!!headerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"headerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <h5 class=\"modal-title\">{{ titleText }}</h5>\n @if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n }\n </div>\n } @else if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n\n <div class=\"modal-body py-4\" [class.text-center]=\"isTextCentered || isAlert\">\n @if (isAlert && !!titleText) {\n <div class=\"d-flex justify-content-center align-content-start\"\n [class.flex-row]=\"titleIconPosition === 'left' || titleIconPosition === 'right'\"\n [class.flex-column]=\"titleIconPosition === 'top' || titleIconPosition === 'bottom'\">\n @if (!!titleIcon && (titleIconPosition === 'top' || titleIconPosition === 'left')) {\n <upd-icon [model]=\"titleIcon\" [class.me-2]=\"titleIconPosition === 'left'\"\n [class.mb-2]=\"titleIconPosition === 'top'\"></upd-icon>\n }\n\n <span class=\"align-self-center fs-3 fw-bold\" [class.mb-3]=\"!!titleIcon && titleIconPosition === 'top'\">\n {{ titleText }}\n </span>\n\n @if (!!titleIcon && (titleIconPosition === 'bottom' || titleIconPosition === 'right')) {\n <upd-icon [model]=\"titleIcon\" [class.ms-2]=\"titleIconPosition === 'right'\"\n [class.mb-2]=\"titleIconPosition === 'bottom'\"></upd-icon>\n }\n </div>\n }\n\n @if (!!bodyTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"bodyTemplateRef!\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else if (!!bodyContentType) {\n <ng-container [ngComponentOutlet]=\"bodyContentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <div [innerHTML]=\"bodyText\" [class.text-secondary]=\"isAlert\"></div>\n }\n </div>\n\n @if (!!statusColor) {\n <div class=\"modal-status\" [style.position]=\"'relative'\" [ngClass]=\"statusColorClass\"></div>\n }\n\n @if (showCancelButton || actionButtons.length > 0 || !!footerTemplateRef) {\n <div class=\"modal-footer\">\n @if (!!footerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"footerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n @switch (footerLayout) {\n @case ('full-width') {\n <div class=\"w-100\">\n <div class=\"row\">\n @if (showCancelButton) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [isNavigationLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n </div>\n }\n\n @for (btn of actionButtons; track btn) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [model]=\"btn\"></upd-button>\n </div>\n }\n </div>\n </div>\n }\n @case ('centered') {\n <div class=\"d-flex justify-content-center w-100\">\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n </div>\n }\n @default {\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n }\n }\n }\n </div>\n }\n }\n </div>\n </div>\n\n <ng-template #closeBtnTpl>\n <upd-button (clicked)=\"close()\" [shouldIgnoreBtnClass]=\"true\" customClasses=\"btn-close\"></upd-button>\n </ng-template>\n\n <ng-template #buttonsTpl>\n @if (showCancelButton) {\n <upd-button colorStyle=\"secondary\" [isLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n }\n\n @for (btn of actionButtons; track btn) {\n <upd-button [model]=\"btn\" (clicked)=\"buttonClick($event, btn)\"></upd-button>\n }\n </ng-template>\n</ng-container>\n" }]
232
+ }], propDecorators: { id: [{
233
+ type: HostBinding,
234
+ args: ['id']
235
+ }], hostClass: [{
236
+ type: HostBinding,
237
+ args: ['class']
238
+ }], role: [{
239
+ type: HostBinding,
240
+ args: ['role']
241
+ }], ariaHidden: [{
242
+ type: HostBinding,
243
+ args: ['aria-hidden']
244
+ }], ariaModal: [{
245
+ type: HostBinding,
246
+ args: ['aria-modal']
247
+ }], tabIndex: [{
248
+ type: HostBinding,
249
+ args: ['tabindex']
250
+ }], styleDisplay: [{
251
+ type: HostBinding,
252
+ args: ['style.display']
253
+ }] } });
254
+
255
+ class ModalService {
256
+ constructor() {
257
+ this.dynamicComponentLoaderService = inject(DynamicComponentLoaderService);
258
+ this.overlayService = inject(OverlayService);
259
+ this.applicationRef = inject(ApplicationRef);
260
+ }
261
+ open(contentType, config, rootElement, shouldDisposeOnClick = false, shouldDisposeOnEsc = false) {
262
+ const viewContainerRef = this.applicationRef.components[0].injector.get(ViewContainerRef);
263
+ const modalContainerRef = this.dynamicComponentLoaderService.load(ModalContainerComponent, viewContainerRef);
264
+ const overlay = this.overlayService.create({ rootElement, customClasses: ['modal-backdrop'] });
265
+ modalContainerRef.instance.prepareToShow(config);
266
+ modalContainerRef.instance.modalContainerRef = modalContainerRef;
267
+ modalContainerRef.instance.overlay = overlay;
268
+ modalContainerRef.instance.contentType = contentType;
269
+ modalContainerRef.instance.shouldDismissOnOutsideClick = config?.shouldDismissOnOutsideClick || shouldDisposeOnClick;
270
+ modalContainerRef.instance.shouldDismissOnEsc = config?.shouldDismissOnEsc || shouldDisposeOnEsc;
271
+ overlay.show().subscribe(() => modalContainerRef.instance.show());
272
+ return modalContainerRef.instance;
273
+ }
274
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
275
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalService }); }
276
+ }
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalService, decorators: [{
278
+ type: Injectable
279
+ }] });
280
+
281
+ class ModalAlertService {
282
+ constructor() {
283
+ this.modalService = inject(ModalService);
284
+ this.defaultIconModel = { tablerIconWeight: 'medium-light', tablerIconSize: 48 };
285
+ }
286
+ showWarning(message, title, actionButtons = []) {
287
+ return this.open(message, title || { text: 'UpDevs.ModalAlert.WarningTitle', isTranslated: false }, 'alert-triangle', 'text-warning', 'warning', actionButtons);
288
+ }
289
+ showError(message, title, actionButtons = []) {
290
+ return this.open(message, title || { text: 'UpDevs.ModalAlert.ErrorTitle', isTranslated: false }, 'exclamation-circle', 'text-danger', 'danger', actionButtons);
291
+ }
292
+ showInfo(message, title, actionButtons = []) {
293
+ return this.open(message, title || { text: 'UpDevs.ModalAlert.InfoTitle', isTranslated: false }, 'info-circle', 'text-info', 'info', actionButtons);
294
+ }
295
+ showSuccess(message, title, actionButtons = []) {
296
+ return this.open(message, title || { text: 'UpDevs.ModalAlert.SuccessTitle', isTranslated: false }, 'circle-check', 'text-success', 'success', actionButtons);
297
+ }
298
+ showConfirm(message, title, actionButtons = []) {
299
+ // eslint-disable-next-line prefer-const
300
+ let modalRef;
301
+ const statusColor = 'indigo';
302
+ const result = new Subject();
303
+ if (actionButtons.length < 1) {
304
+ actionButtons = [
305
+ new ButtonModel({
306
+ text: signal({ text: 'UpDevs.ModalAlert.ConfirmNo', isTranslated: false }),
307
+ isOutline: signal(true),
308
+ clickFunction: () => {
309
+ result.next(false);
310
+ modalRef.close();
311
+ }
312
+ }),
313
+ new ButtonModel({
314
+ text: signal({ text: 'UpDevs.ModalAlert.ConfirmYes', isTranslated: false }),
315
+ colorStyle: signal(statusColor),
316
+ clickFunction: () => {
317
+ result.next(true);
318
+ modalRef.close();
319
+ }
320
+ })
321
+ ];
322
+ }
323
+ modalRef = this.open(message, title || { text: 'UpDevs.ModalAlert.ConfirmationTitle', isTranslated: false }, 'checklist', 'text-indigo', statusColor, actionButtons, 'full-width');
324
+ return result;
325
+ }
326
+ showCustom(message, title, titleIcon, titleIconPosition, statusColor, actionButtons = [], size = 'small', footerLayout = 'default') {
327
+ return this.modalService.open(undefined, {
328
+ isAlert: true,
329
+ title,
330
+ titleIcon,
331
+ titleIconPosition,
332
+ size,
333
+ body: message,
334
+ statusColor,
335
+ footerLayout,
336
+ actionButtons
337
+ });
338
+ }
339
+ open(message, title, titleIconType, titleIconColorClass, statusColor, actionButtons, footerLayout = 'default') {
340
+ // eslint-disable-next-line prefer-const
341
+ let modalRef;
342
+ const titleIcon = {
343
+ ...this.defaultIconModel,
344
+ tablerIcon: titleIconType,
345
+ colorClass: titleIconColorClass
346
+ };
347
+ if (actionButtons.length < 1) {
348
+ actionButtons.push(new ButtonModel({
349
+ text: signal({ text: 'UpDevs.ModalAlert.OkButtonTitle', isTranslated: false }),
350
+ colorStyle: signal(statusColor),
351
+ clickFunction: () => modalRef.close()
352
+ }));
353
+ }
354
+ modalRef = this.modalService.open(undefined, {
355
+ isAlert: true,
356
+ title,
357
+ titleIcon,
358
+ titleIconPosition: 'top',
359
+ size: 'small',
360
+ body: message,
361
+ statusColor,
362
+ footerLayout,
363
+ actionButtons,
364
+ showCloseButton: false
365
+ });
366
+ return modalRef;
367
+ }
368
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalAlertService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
369
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalAlertService }); }
370
+ }
371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ModalAlertService, decorators: [{
372
+ type: Injectable
373
+ }] });
374
+
375
+ var UpDevs$1 = {
376
+ Modal: {
377
+ Cancel: "Cancel"
378
+ },
379
+ ModalAlert: {
380
+ OkButtonTitle: "Ok",
381
+ ConfirmYes: "Yes",
382
+ ConfirmNo: "No",
383
+ WarningTitle: "Warning",
384
+ ErrorTitle: "Error",
385
+ InfoTitle: "Information",
386
+ SuccessTitle: "Success",
387
+ ConfirmationTitle: "Confirm"
388
+ }
389
+ };
390
+ var en = {
391
+ UpDevs: UpDevs$1
392
+ };
393
+
394
+ var en$1 = /*#__PURE__*/Object.freeze({
395
+ __proto__: null,
396
+ UpDevs: UpDevs$1,
397
+ default: en
398
+ });
399
+
400
+ var UpDevs = {
401
+ Modal: {
402
+ Cancel: "Cancelar"
403
+ },
404
+ ModalAlert: {
405
+ OkButtonTitle: "Ok",
406
+ ConfirmYes: "Sim",
407
+ ConfirmNo: "Não",
408
+ WarningTitle: "Alerta",
409
+ ErrorTitle: "Erro",
410
+ InfoTitle: "Informação",
411
+ SuccessTitle: "Sucesso",
412
+ ConfirmationTitle: "Confirme"
413
+ }
414
+ };
415
+ var pt = {
416
+ UpDevs: UpDevs
417
+ };
418
+
419
+ var pt$1 = /*#__PURE__*/Object.freeze({
420
+ __proto__: null,
421
+ UpDevs: UpDevs,
422
+ default: pt
423
+ });
424
+
425
+ class UpdModalModule {
426
+ constructor(translocoService, modalAlertService, messagesService) {
427
+ translocoService.setFallbackLangForMissingTranslation({ fallbackLang: 'en' });
428
+ translocoService.setTranslation(en$1, 'en');
429
+ translocoService.setTranslation(pt$1, 'pt');
430
+ this.setupMessagesService(modalAlertService, messagesService);
431
+ }
432
+ setupMessagesService(modalAlertService, messagesService) {
433
+ messagesService.onNewMessage.subscribe(msg => {
434
+ if (msg.isModal) {
435
+ if (!!msg.onShown) {
436
+ msg.onShown();
437
+ }
438
+ let modalRef;
439
+ switch (msg.type) {
440
+ case MessageTypeEnum.Warning:
441
+ modalRef = modalAlertService.showWarning(msg.message, msg.title);
442
+ break;
443
+ case MessageTypeEnum.Info:
444
+ modalRef = modalAlertService.showInfo(msg.message, msg.title);
445
+ break;
446
+ case MessageTypeEnum.Error:
447
+ modalRef = modalAlertService.showError(msg.message, msg.title);
448
+ break;
449
+ case MessageTypeEnum.Success:
450
+ modalRef = modalAlertService.showSuccess(msg.message, msg.title);
451
+ break;
452
+ case MessageTypeEnum.Confirm:
453
+ modalAlertService.showConfirm(msg.message, msg.title);
454
+ break;
455
+ }
456
+ if (!!modalRef && !!msg.onHidden) {
457
+ modalRef.afterClose = msg.onHidden;
458
+ }
459
+ }
460
+ });
461
+ }
462
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: UpdModalModule, deps: [{ token: i1$1.TranslocoService }, { token: ModalAlertService }, { token: i3$1.MessagesService }], target: i0.ɵɵFactoryTarget.NgModule }); }
463
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: UpdModalModule, declarations: [ModalContainerComponent], imports: [CommonModule,
464
+ UpdCoreLayoutModule,
465
+ UpdButtonModule,
466
+ UpdIconsModule,
467
+ UpdMessagesModule,
468
+ TranslocoDirective] }); }
469
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: UpdModalModule, providers: [
470
+ ModalService,
471
+ ModalAlertService
472
+ ], imports: [CommonModule,
473
+ UpdCoreLayoutModule,
474
+ UpdButtonModule,
475
+ UpdIconsModule,
476
+ UpdMessagesModule] }); }
477
+ }
478
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: UpdModalModule, decorators: [{
479
+ type: NgModule,
480
+ args: [{
481
+ imports: [
482
+ CommonModule,
483
+ UpdCoreLayoutModule,
484
+ UpdButtonModule,
485
+ UpdIconsModule,
486
+ UpdMessagesModule,
487
+ TranslocoDirective
488
+ ],
489
+ declarations: [
490
+ ModalContainerComponent
491
+ ],
492
+ providers: [
493
+ ModalService,
494
+ ModalAlertService
495
+ ]
496
+ }]
497
+ }], ctorParameters: () => [{ type: i1$1.TranslocoService }, { type: ModalAlertService }, { type: i3$1.MessagesService }] });
498
+
499
+ /**
500
+ * Generated bundle index. Do not edit.
501
+ */
502
+
503
+ export { BaseModal, ModalAlertService, ModalService, UpdModalModule };
504
+ //# sourceMappingURL=updevs-components-modal.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updevs-components-modal.mjs","sources":["../../../../libs/components/modal/src/models/base.modal.ts","../../../../libs/components/modal/src/models/modal-config.model.ts","../../../../libs/components/modal/src/components/modal-container/modal-container.component.ts","../../../../libs/components/modal/src/components/modal-container/modal-container.component.html","../../../../libs/components/modal/src/services/modal.service.ts","../../../../libs/components/modal/src/services/modal-alert.service.ts","../../../../libs/components/modal/src/upd-modal.module.ts","../../../../libs/components/modal/src/updevs-components-modal.ts"],"sourcesContent":["import { input, Directive } from '@angular/core';\n\nimport { ModalRef } from './modal-ref';\n\n@Directive()\nexport abstract class BaseModal<TData = any> {\n modalRef = input.required<ModalRef>();\n data = input.required<TData>();\n}\n","import { TemplateRef, Type } from '@angular/core';\nimport { ButtonModel } from '@updevs/sdk/layout';\nimport { TextModel } from '@updevs/sdk';\nimport { TopBottomLeftRightType, BgColorStyleType } from '@updevs/sdk/types';\nimport { IconModel } from '@updevs/icons';\n\nimport { ModalConfig } from './modal.config';\nimport { ModalSizeType } from '../types/modal-size.type';\nimport { ModalFooterStyleType } from '../types/modal-footer-style.type';\n\nexport class ModalConfigModel implements ModalConfig {\n size: ModalSizeType = 'regular';\n isVerticallyCentered = true;\n isScrollable = false;\n showCancelButton = false;\n showCloseButton = true;\n isTextCentered = true;\n shouldDismissOnEsc = false;\n shouldDismissOnOutsideClick = false;\n isAlert = false;\n statusColor?: BgColorStyleType;\n headerTemplateRef?: TemplateRef<any>;\n footerTemplateRef?: TemplateRef<any>;\n bodyTemplateRef?: TemplateRef<any>;\n bodyContentType?: Type<any>;\n body?: TextModel;\n title?: TextModel;\n titleIcon?: IconModel;\n titleIconPosition?: TopBottomLeftRightType = 'top';\n footerLayout?: ModalFooterStyleType = 'default';\n actionButtons: ButtonModel[] = [];\n data?: any;\n\n constructor(init?: Partial<ModalConfig>) {\n if (!!init) {\n Object.assign(this, init);\n }\n }\n}\n","import { DOCUMENT, NgComponentOutlet } from '@angular/common';\nimport { Component, HostBinding, TemplateRef, inject, Type, ElementRef, Renderer2, viewChild, ComponentRef } from '@angular/core';\nimport { TextService, TextModel } from '@updevs/sdk';\nimport {\n Utils as LayoutUtils,\n LayoutService,\n ScrollbarService,\n BaseComponent,\n Overlay,\n ButtonModel\n} from '@updevs/sdk/layout';\nimport { TopBottomLeftRightType, OptionalType, BgColorStyleType } from '@updevs/sdk/types';\nimport { IconModel } from '@updevs/icons';\n\nimport { ModalSizeType } from '../../types/modal-size.type';\nimport { ModalConfig } from '../../models/modal.config';\nimport { ModalConfigModel } from '../../models/modal-config.model';\nimport { ModalFooterStyleType } from '../../types/modal-footer-style.type';\nimport { ModalRef } from '../../models/modal-ref';\n\nlet containerId = 1;\n\n@Component({\n selector: 'upd-modal-container',\n templateUrl: './modal-container.component.html',\n styleUrl: './modal-container.component.scss'\n})\nexport class ModalContainerComponent extends BaseComponent implements ModalConfig, ModalRef {\n @HostBinding('id') id = `modal-${containerId++}`;\n @HostBinding('class') hostClass = ['modal', 'modal-blur', 'fade'];\n @HostBinding('role') role = 'dialog';\n @HostBinding('aria-hidden') ariaHidden = true;\n @HostBinding('aria-modal') ariaModal = false;\n @HostBinding('tabindex') tabIndex = -1;\n @HostBinding('style.display') styleDisplay?: string;\n\n dialog = viewChild.required('dialog', { read: ElementRef });\n content = viewChild.required('content', { read: ElementRef });\n bodyContentOutlet = viewChild<NgComponentOutlet>(NgComponentOutlet);\n size: ModalSizeType = 'regular';\n isVerticallyCentered = true;\n isScrollable = false;\n showCloseButton = true;\n showCancelButton = false;\n isTextCentered = true;\n shouldDismissOnEsc = false;\n shouldDismissOnOutsideClick = false;\n isAlert = false;\n statusColor?: BgColorStyleType;\n headerTemplateRef?: TemplateRef<any>;\n footerTemplateRef?: TemplateRef<any>;\n bodyTemplateRef?: TemplateRef<any>;\n bodyContentType?: Type<any>;\n contentType?: Type<any>;\n body?: TextModel;\n title?: TextModel;\n titleIcon?: IconModel;\n titleIconPosition?: TopBottomLeftRightType = 'top';\n footerLayout?: ModalFooterStyleType = 'default';\n actionButtons: ButtonModel[] = [];\n overlay!: Overlay;\n modalContainerRef!: ComponentRef<ModalContainerComponent>;\n data?: any;\n afterClose?: (result?: any) => void;\n\n get classes(): string[] {\n return [\n 'modal-dialog',\n this.isVerticallyCentered ? 'modal-dialog-centered' : '',\n this.isScrollable ? 'modal-dialog-scrollable' : '',\n this.sizeClass\n ];\n }\n\n get titleText(): string {\n return this.textService.getText(this.title);\n }\n\n get bodyText(): string {\n return this.textService.getText(this.body);\n }\n\n get statusColorClass(): string {\n return `bg-${this.statusColor}`;\n }\n\n get sizeClass(): string {\n let cls = '';\n\n switch (this.size) {\n case 'small':\n cls = 'modal-sm';\n break;\n case 'large':\n cls = 'modal-lg';\n break;\n case 'extra-large':\n cls = 'modal-xl';\n break;\n }\n\n return cls;\n }\n\n private readonly openClass = 'modal-open';\n private readonly textService = inject(TextService);\n private readonly elementRef = inject(ElementRef);\n private readonly layoutService = inject(LayoutService);\n private readonly scrollbarService = inject(ScrollbarService);\n private readonly renderer = inject(Renderer2);\n private readonly document = inject(DOCUMENT);\n\n private get element(): any {\n return this.elementRef.nativeElement;\n }\n\n prepareToShow(config?: ModalConfig): void {\n this.setupConfig(config);\n this.scrollbarService.hide();\n this.layoutService.addBodyClasses(this.openClass);\n this.adjustDialog();\n this.setupActionButtons();\n }\n\n show(): void {\n this.setupListeners();\n\n this.styleDisplay = 'block';\n this.ariaHidden = false;\n this.ariaModal = true;\n this.element.scrollTop = 0;\n this.dialog().nativeElement.scrollTop = 0;\n\n LayoutUtils.reflow(this.element);\n\n const transitionSub = LayoutUtils.executeAfterTransition(this.element).subscribe(() => {\n this.element.classList.add('show');\n this.content().nativeElement.focus();\n });\n\n this.addSubscriptions(transitionSub);\n }\n\n close(result?: any): void {\n const transitionSub = LayoutUtils.executeAfterTransition(this.element).subscribe(() => {\n this.styleDisplay = undefined;\n this.ariaHidden = true;\n this.ariaModal = false;\n\n if (!!this.afterClose) {\n this.afterClose(result);\n }\n\n this.overlay.hide();\n this.layoutService.removeBodyClasses(this.openClass);\n this.modalContainerRef.destroy();\n });\n\n this.element.classList.remove('show');\n this.addSubscriptions(transitionSub);\n }\n\n buttonClick(event: MouseEvent, btn: ButtonModel): void {\n if (!!btn.clickFunction) {\n btn.clickFunction({ event, data: btn });\n }\n }\n\n getBodyInstance<T>(): OptionalType<T> {\n return <T>this.bodyContentOutlet()?.['_componentRef'].instance;\n }\n\n private adjustDialog(): void {\n const isModalOverflowing = this.element.scrollHeight > this.document.documentElement.clientHeight;\n const scrollbarWidth = this.scrollbarService.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n\n if (isBodyOverflowing && !isModalOverflowing) {\n this.renderer.setStyle(this.element, 'paddingRight', `${scrollbarWidth}px`);\n }\n\n if (!isBodyOverflowing && isModalOverflowing) {\n this.renderer.setStyle(this.element, 'paddingLeft', `${scrollbarWidth}px`);\n }\n }\n\n private setupConfig(config?: ModalConfig): void {\n if (!config) {\n return;\n }\n\n const configModel = new ModalConfigModel(config);\n this.size = configModel.size;\n this.isVerticallyCentered = configModel.isVerticallyCentered;\n this.isScrollable = configModel.isScrollable;\n this.showCancelButton = configModel.showCancelButton;\n this.showCloseButton = configModel.showCloseButton;\n this.shouldDismissOnEsc = configModel.shouldDismissOnEsc;\n this.shouldDismissOnOutsideClick = configModel.shouldDismissOnOutsideClick;\n this.isAlert = configModel.isAlert;\n this.isTextCentered = configModel.isTextCentered;\n this.statusColor = configModel.statusColor;\n this.headerTemplateRef = configModel.headerTemplateRef;\n this.footerTemplateRef = configModel.footerTemplateRef;\n this.bodyTemplateRef = configModel.bodyTemplateRef;\n this.bodyContentType = configModel.bodyContentType;\n this.body = configModel.body;\n this.title = configModel.title;\n this.titleIcon = configModel.titleIcon;\n this.titleIconPosition = configModel.titleIconPosition;\n this.footerLayout = configModel.footerLayout;\n this.actionButtons = configModel.actionButtons;\n this.data = configModel.data;\n }\n\n private setupActionButtons(): void {\n this.actionButtons.forEach(btn => {\n const fnBackup = btn.clickFunction;\n btn.clickFunction = event => {\n event.data = this;\n fnBackup!(event);\n };\n });\n }\n\n private setupListeners(): void {\n if (this.shouldDismissOnOutsideClick) {\n this.element.addEventListener('click', this.clickCallback);\n }\n\n if (this.shouldDismissOnEsc) {\n this.element.addEventListener('keydown', this.escCallback);\n }\n }\n\n private clickCallback = (evt: Event) => {\n if (evt.target === this.element) {\n this.close();\n }\n };\n\n private escCallback = (evt: KeyboardEvent) => {\n if (evt.key === 'Escape') {\n this.close();\n }\n };\n}\n","<ng-container *transloco=\"let t; prefix: 'UpDevs.Modal'\">\n <div [ngClass]=\"classes\" #dialog>\n <div class=\"modal-content\" tabindex=\"-1\" #content>\n @if (!!contentType) {\n <ng-container [ngComponentOutlet]=\"contentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\"></ng-container>\n } @else {\n @if (!isAlert && (!!titleText || !!headerTemplateRef)) {\n <div class=\"modal-header\">\n @if (!!headerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"headerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <h5 class=\"modal-title\">{{ titleText }}</h5>\n @if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n }\n </div>\n } @else if (showCloseButton) {\n <ng-container [ngTemplateOutlet]=\"closeBtnTpl\"></ng-container>\n }\n\n <div class=\"modal-body py-4\" [class.text-center]=\"isTextCentered || isAlert\">\n @if (isAlert && !!titleText) {\n <div class=\"d-flex justify-content-center align-content-start\"\n [class.flex-row]=\"titleIconPosition === 'left' || titleIconPosition === 'right'\"\n [class.flex-column]=\"titleIconPosition === 'top' || titleIconPosition === 'bottom'\">\n @if (!!titleIcon && (titleIconPosition === 'top' || titleIconPosition === 'left')) {\n <upd-icon [model]=\"titleIcon\" [class.me-2]=\"titleIconPosition === 'left'\"\n [class.mb-2]=\"titleIconPosition === 'top'\"></upd-icon>\n }\n\n <span class=\"align-self-center fs-3 fw-bold\" [class.mb-3]=\"!!titleIcon && titleIconPosition === 'top'\">\n {{ titleText }}\n </span>\n\n @if (!!titleIcon && (titleIconPosition === 'bottom' || titleIconPosition === 'right')) {\n <upd-icon [model]=\"titleIcon\" [class.ms-2]=\"titleIconPosition === 'right'\"\n [class.mb-2]=\"titleIconPosition === 'bottom'\"></upd-icon>\n }\n </div>\n }\n\n @if (!!bodyTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"bodyTemplateRef!\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else if (!!bodyContentType) {\n <ng-container [ngComponentOutlet]=\"bodyContentType\" [ngComponentOutletInputs]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n <div [innerHTML]=\"bodyText\" [class.text-secondary]=\"isAlert\"></div>\n }\n </div>\n\n @if (!!statusColor) {\n <div class=\"modal-status\" [style.position]=\"'relative'\" [ngClass]=\"statusColorClass\"></div>\n }\n\n @if (showCancelButton || actionButtons.length > 0 || !!footerTemplateRef) {\n <div class=\"modal-footer\">\n @if (!!footerTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"footerTemplateRef\" [ngTemplateOutletContext]=\"{modalRef: this, data: data}\">\n </ng-container>\n } @else {\n @switch (footerLayout) {\n @case ('full-width') {\n <div class=\"w-100\">\n <div class=\"row\">\n @if (showCancelButton) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [isNavigationLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n </div>\n }\n\n @for (btn of actionButtons; track btn) {\n <div class=\"col\">\n <upd-button class=\"w-100\" [model]=\"btn\"></upd-button>\n </div>\n }\n </div>\n </div>\n }\n @case ('centered') {\n <div class=\"d-flex justify-content-center w-100\">\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n </div>\n }\n @default {\n <ng-container [ngTemplateOutlet]=\"buttonsTpl\"></ng-container>\n }\n }\n }\n </div>\n }\n }\n </div>\n </div>\n\n <ng-template #closeBtnTpl>\n <upd-button (clicked)=\"close()\" [shouldIgnoreBtnClass]=\"true\" customClasses=\"btn-close\"></upd-button>\n </ng-template>\n\n <ng-template #buttonsTpl>\n @if (showCancelButton) {\n <upd-button colorStyle=\"secondary\" [isLink]=\"true\" (clicked)=\"close()\">\n {{ t('Cancel') }}\n </upd-button>\n }\n\n @for (btn of actionButtons; track btn) {\n <upd-button [model]=\"btn\" (clicked)=\"buttonClick($event, btn)\"></upd-button>\n }\n </ng-template>\n</ng-container>\n","import { Injectable, inject, ViewContainerRef, ApplicationRef } from '@angular/core';\nimport { DynamicComponentLoaderService, OverlayService } from '@updevs/sdk/layout';\nimport { ComponentType } from '@updevs/sdk/types';\n\nimport { ModalContainerComponent } from '../components/modal-container/modal-container.component';\nimport { ModalConfig } from '../models/modal.config';\nimport { ModalRef } from '../models/modal-ref';\n\n@Injectable()\nexport class ModalService {\n private readonly dynamicComponentLoaderService = inject(DynamicComponentLoaderService);\n private readonly overlayService = inject(OverlayService);\n private readonly applicationRef = inject(ApplicationRef);\n\n open<T>(\n contentType?: ComponentType<T>,\n config?: ModalConfig,\n rootElement?: Element,\n shouldDisposeOnClick = false,\n shouldDisposeOnEsc = false\n ): ModalRef {\n const viewContainerRef = this.applicationRef.components[0].injector.get(ViewContainerRef);\n const modalContainerRef = this.dynamicComponentLoaderService.load(ModalContainerComponent, viewContainerRef);\n const overlay = this.overlayService.create({ rootElement, customClasses: ['modal-backdrop'] });\n\n modalContainerRef.instance.prepareToShow(config);\n\n modalContainerRef.instance.modalContainerRef = modalContainerRef;\n modalContainerRef.instance.overlay = overlay;\n modalContainerRef.instance.contentType = contentType;\n modalContainerRef.instance.shouldDismissOnOutsideClick = config?.shouldDismissOnOutsideClick || shouldDisposeOnClick;\n modalContainerRef.instance.shouldDismissOnEsc = config?.shouldDismissOnEsc || shouldDisposeOnEsc;\n\n overlay.show().subscribe(() => modalContainerRef.instance.show());\n\n return modalContainerRef.instance;\n }\n}\n","import { Injectable, inject, signal } from '@angular/core';\nimport { TextModel } from '@updevs/sdk';\nimport { ButtonModel } from '@updevs/sdk/layout';\nimport { TopBottomLeftRightType, BgColorStyleType } from '@updevs/sdk/types';\nimport { IconModel, TablerIconsType } from '@updevs/icons';\nimport { Observable, Subject } from 'rxjs';\n\nimport { ModalService } from './modal.service';\nimport { ModalSizeType } from '../types/modal-size.type';\nimport { ModalFooterStyleType } from '../types/modal-footer-style.type';\nimport { ModalRef } from '../models/modal-ref';\n\n@Injectable()\nexport class ModalAlertService {\n private readonly modalService = inject(ModalService);\n private readonly defaultIconModel: IconModel = { tablerIconWeight: 'medium-light', tablerIconSize: 48 };\n\n showWarning(message: TextModel, title?: TextModel, actionButtons: ButtonModel[] = []): ModalRef {\n return this.open(\n message,\n title || { text: 'UpDevs.ModalAlert.WarningTitle', isTranslated: false },\n 'alert-triangle',\n 'text-warning',\n 'warning',\n actionButtons\n );\n }\n\n showError(message: TextModel, title?: TextModel, actionButtons: ButtonModel[] = []): ModalRef {\n return this.open(\n message,\n title || { text: 'UpDevs.ModalAlert.ErrorTitle', isTranslated: false },\n 'exclamation-circle',\n 'text-danger',\n 'danger',\n actionButtons\n );\n }\n\n showInfo(message: TextModel, title?: TextModel, actionButtons: ButtonModel[] = []): ModalRef {\n return this.open(\n message,\n title || { text: 'UpDevs.ModalAlert.InfoTitle', isTranslated: false },\n 'info-circle',\n 'text-info',\n 'info',\n actionButtons\n );\n }\n\n showSuccess(message: TextModel, title?: TextModel, actionButtons: ButtonModel[] = []): ModalRef {\n return this.open(\n message,\n title || { text: 'UpDevs.ModalAlert.SuccessTitle', isTranslated: false },\n 'circle-check',\n 'text-success',\n 'success',\n actionButtons\n );\n }\n\n showConfirm(message: TextModel, title?: TextModel, actionButtons: ButtonModel[] = []): Observable<boolean> {\n // eslint-disable-next-line prefer-const\n let modalRef: ModalRef;\n const statusColor: BgColorStyleType = 'indigo';\n const result = new Subject<boolean>();\n\n if (actionButtons.length < 1) {\n actionButtons = [\n new ButtonModel({\n text: signal({ text: 'UpDevs.ModalAlert.ConfirmNo', isTranslated: false }),\n isOutline: signal(true),\n clickFunction: () => {\n result.next(false);\n modalRef.close();\n }\n }),\n new ButtonModel({\n text: signal({ text: 'UpDevs.ModalAlert.ConfirmYes', isTranslated: false }),\n colorStyle: signal(statusColor),\n clickFunction: () => {\n result.next(true);\n modalRef.close();\n }\n })\n ];\n }\n\n modalRef = this.open(\n message,\n title || { text: 'UpDevs.ModalAlert.ConfirmationTitle', isTranslated: false },\n 'checklist',\n 'text-indigo',\n statusColor,\n actionButtons,\n 'full-width'\n );\n\n return result;\n }\n\n showCustom(\n message: TextModel,\n title: TextModel,\n titleIcon: IconModel,\n titleIconPosition: TopBottomLeftRightType,\n statusColor: BgColorStyleType,\n actionButtons: ButtonModel[] = [],\n size: ModalSizeType = 'small',\n footerLayout: ModalFooterStyleType = 'default'\n ): ModalRef {\n return this.modalService.open(undefined, {\n isAlert: true,\n title,\n titleIcon,\n titleIconPosition,\n size,\n body: message,\n statusColor,\n footerLayout,\n actionButtons\n });\n }\n\n private open(\n message: TextModel,\n title: TextModel,\n titleIconType: TablerIconsType,\n titleIconColorClass: string,\n statusColor: BgColorStyleType,\n actionButtons: ButtonModel[],\n footerLayout: ModalFooterStyleType = 'default'\n ): ModalRef {\n // eslint-disable-next-line prefer-const\n let modalRef: ModalRef;\n const titleIcon: IconModel = {\n ...this.defaultIconModel,\n tablerIcon: titleIconType,\n colorClass: titleIconColorClass\n };\n\n if (actionButtons.length < 1) {\n actionButtons.push(\n new ButtonModel({\n text: signal({ text: 'UpDevs.ModalAlert.OkButtonTitle', isTranslated: false }),\n colorStyle: signal(statusColor),\n clickFunction: () => modalRef.close()\n })\n );\n }\n\n modalRef = this.modalService.open(undefined, {\n isAlert: true,\n title,\n titleIcon,\n titleIconPosition: 'top',\n size: 'small',\n body: message,\n statusColor,\n footerLayout,\n actionButtons,\n showCloseButton: false\n });\n\n return modalRef;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { UpdCoreLayoutModule } from '@updevs/sdk/layout';\nimport { UpdIconsModule } from '@updevs/icons';\nimport { UpdMessagesModule, MessagesService, MessageTypeEnum } from '@updevs/sdk/messages';\nimport { OptionalType } from '@updevs/sdk/types';\nimport { UpdButtonModule } from '@updevs/components/button';\nimport { TranslocoService, TranslocoDirective } from '@jsverse/transloco';\n\nimport * as en from './assets/i18n/en.json';\nimport * as pt from './assets/i18n/pt.json';\nimport { ModalService } from './services/modal.service';\nimport { ModalContainerComponent } from './components/modal-container/modal-container.component';\nimport { ModalAlertService } from './services/modal-alert.service';\nimport { ModalRef } from './models/modal-ref';\n\n@NgModule({\n imports: [\n CommonModule,\n UpdCoreLayoutModule,\n UpdButtonModule,\n UpdIconsModule,\n UpdMessagesModule,\n TranslocoDirective\n ],\n declarations: [\n ModalContainerComponent\n ],\n providers: [\n ModalService,\n ModalAlertService\n ]\n})\nexport class UpdModalModule {\n constructor(translocoService: TranslocoService, modalAlertService: ModalAlertService, messagesService: MessagesService) {\n translocoService.setFallbackLangForMissingTranslation({ fallbackLang: 'en' });\n translocoService.setTranslation(en, 'en');\n translocoService.setTranslation(pt, 'pt');\n this.setupMessagesService(modalAlertService, messagesService);\n }\n\n private setupMessagesService(modalAlertService: ModalAlertService, messagesService: MessagesService): void {\n messagesService.onNewMessage.subscribe(msg => {\n if (msg.isModal) {\n if (!!msg.onShown) {\n msg.onShown();\n }\n\n let modalRef: OptionalType<ModalRef>;\n\n switch (msg.type) {\n case MessageTypeEnum.Warning:\n modalRef = modalAlertService.showWarning(msg.message, msg.title);\n break;\n case MessageTypeEnum.Info:\n modalRef = modalAlertService.showInfo(msg.message, msg.title);\n break;\n case MessageTypeEnum.Error:\n modalRef = modalAlertService.showError(msg.message, msg.title);\n break;\n case MessageTypeEnum.Success:\n modalRef = modalAlertService.showSuccess(msg.message, msg.title);\n break;\n case MessageTypeEnum.Confirm:\n modalAlertService.showConfirm(msg.message, msg.title);\n break;\n }\n\n if (!!modalRef && !!msg.onHidden) {\n modalRef.afterClose = msg.onHidden;\n }\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["LayoutUtils","i4","en","pt","i1","i2.ModalAlertService","i3"],"mappings":"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"}