keevo-components 1.8.189 → 1.8.191

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/ng-package.json +7 -0
  2. package/package.json +32 -45
  3. package/src/assets/.gitkeep +0 -0
  4. package/src/assets/images/LogoEvo.png +0 -0
  5. package/src/assets/images/LogoPequenaEvo.png +0 -0
  6. package/src/assets/images/background.png +0 -0
  7. package/src/assets/images/keepass-logo.png +0 -0
  8. package/src/assets/images/keepass-logo.svg +74 -0
  9. package/src/assets/images/keevo-logo.png +0 -0
  10. package/src/assets/images/logokeevo_2.png +0 -0
  11. package/src/index.ts +1 -0
  12. package/src/lib/api/base-components/base-component-button.ts +29 -0
  13. package/src/lib/api/base-components/base-component-chart.ts +105 -0
  14. package/src/lib/api/base-components/base-component-crud-form.ts +361 -0
  15. package/src/lib/api/base-components/base-component-crud-list.ts +122 -0
  16. package/src/lib/api/base-components/base-component-crud.ts +70 -0
  17. package/src/lib/api/base-components/base-component-dropdown-external.ts +29 -0
  18. package/src/lib/api/base-components/base-component-dropdown-new.ts +112 -0
  19. package/src/lib/api/base-components/base-component-dropdown.ts +192 -0
  20. package/src/lib/api/base-components/base-component-input.ts +119 -0
  21. package/src/lib/api/base-components/base-component-multi-select.ts +136 -0
  22. package/src/lib/api/base-components/base-component-table.ts +326 -0
  23. package/src/lib/api/base-components/base-component.ts +47 -0
  24. package/src/lib/api/components/chart/chart.config.ts +12 -0
  25. package/src/lib/api/components/chart/chart.model.ts +9 -0
  26. package/src/lib/api/components/chart/orchart.config.ts +41 -0
  27. package/src/lib/api/components/chart/orchart.item.ts +33 -0
  28. package/src/lib/api/components/dropdown/filtro.combo.ts +4 -0
  29. package/src/lib/api/components/stepper/kv-stepperpanel.ts +10 -0
  30. package/src/lib/api/components/table/action-item.ts +11 -0
  31. package/src/lib/api/components/table/kv-menuitem.ts +198 -0
  32. package/src/lib/api/components/table/table-dropdown-control.ts +6 -0
  33. package/src/lib/api/components/table/table.config.column.ts +31 -0
  34. package/src/lib/api/components/table/table.config.ts +35 -0
  35. package/src/lib/api/components/table/table.paginate.ts +6 -0
  36. package/src/lib/api/components/table/tabledit.config.ts +10 -0
  37. package/src/lib/api/components/table/tableedit.config.column.ts +12 -0
  38. package/src/lib/api/components/tree-table/tree-table.config.ts +30 -0
  39. package/src/lib/api/directives/directives.module.ts +19 -0
  40. package/src/lib/api/directives/drag/drag.directive.ts +40 -0
  41. package/src/lib/api/directives/stepper/dynamicinput.directive.ts +23 -0
  42. package/src/lib/api/directives/template/template.directive.ts +15 -0
  43. package/src/lib/api/helpers/component-providers.ts +16 -0
  44. package/src/lib/api/helpers/keevo-validators.ts +97 -0
  45. package/src/lib/api/helpers/severity-color.ts +77 -0
  46. package/src/lib/api/helpers/translate-primeng.ts +25 -0
  47. package/src/lib/api/modules/primeng.module.ts +138 -0
  48. package/src/lib/api/pipes/capitalize.pipe.ts +23 -0
  49. package/src/lib/api/pipes/cpfcnpj.pipe.ts +21 -0
  50. package/src/lib/api/pipes/mask.pipe.ts +24 -0
  51. package/src/lib/api/pipes/pipes.module.ts +26 -0
  52. package/src/lib/api/pipes/telefone.pipe.ts +38 -0
  53. package/src/lib/api/services/base.api.service.ts +115 -0
  54. package/src/lib/api/services/breadcrumbs.service.ts +58 -0
  55. package/src/lib/api/services/component.service.ts +32 -0
  56. package/src/lib/api/services/docs.service.ts +129 -0
  57. package/src/lib/api/services/form.service.ts +136 -0
  58. package/src/lib/api/services/imagens.service.ts +28 -0
  59. package/src/lib/api/services/notification.service.ts +85 -0
  60. package/src/lib/api/services/object.service.ts +33 -0
  61. package/{lib/api/types/severity.d.ts → src/lib/api/types/severity.ts} +3 -2
  62. package/src/lib/api/types/stimulsoft.reports.d.ts +67463 -0
  63. package/src/lib/components/keevo-components-styles.scss +11 -0
  64. package/src/lib/components/keevo-components.module.ts +88 -0
  65. package/src/lib/components/kv-avatar/kv-avatar.component.html +12 -0
  66. package/src/lib/components/kv-avatar/kv-avatar.component.scss +45 -0
  67. package/src/lib/components/kv-avatar/kv-avatar.component.spec.ts +23 -0
  68. package/src/lib/components/kv-avatar/kv-avatar.component.ts +72 -0
  69. package/src/lib/components/kv-avatar/kv-avatar.module.ts +21 -0
  70. package/src/lib/components/kv-button/kv-button.component.css +0 -0
  71. package/src/lib/components/kv-button/kv-button.component.html +8 -0
  72. package/src/lib/components/kv-button/kv-button.component.scss +102 -0
  73. package/src/lib/components/kv-button/kv-button.component.spec.ts +23 -0
  74. package/src/lib/components/kv-button/kv-button.component.ts +22 -0
  75. package/src/lib/components/kv-button/kv-button.module.ts +20 -0
  76. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.html +14 -0
  77. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.scss +3 -0
  78. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.ts +25 -0
  79. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.html +12 -0
  80. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.scss +31 -0
  81. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.ts +36 -0
  82. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.html +12 -0
  83. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.scss +14 -0
  84. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.ts +14 -0
  85. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.html +11 -0
  86. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.scss +13 -0
  87. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.ts +14 -0
  88. package/src/lib/components/kv-buttons/kv-button.module.ts +26 -0
  89. package/src/lib/components/kv-carousel/kv-carousel.component.html +8 -0
  90. package/src/lib/components/kv-carousel/kv-carousel.component.scss +32 -0
  91. package/src/lib/components/kv-carousel/kv-carousel.component.spec.ts +23 -0
  92. package/src/lib/components/kv-carousel/kv-carousel.component.ts +31 -0
  93. package/src/lib/components/kv-carousel/kv-carousel.module.ts +19 -0
  94. package/src/lib/components/kv-chart/kv-chart.component.html +38 -0
  95. package/src/lib/components/kv-chart/kv-chart.component.scss +0 -0
  96. package/src/lib/components/kv-chart/kv-chart.component.spec.ts +28 -0
  97. package/src/lib/components/kv-chart/kv-chart.component.ts +153 -0
  98. package/src/lib/components/kv-chart/kv-chart.module.ts +21 -0
  99. package/src/lib/components/kv-error/kv-error.component.html +3 -0
  100. package/src/lib/components/kv-error/kv-error.component.scss +5 -0
  101. package/src/lib/components/kv-error/kv-error.component.ts +27 -0
  102. package/src/lib/components/kv-error/kv-error.module.ts +26 -0
  103. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.html +16 -0
  104. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.scss +18 -0
  105. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.ts +33 -0
  106. package/src/lib/components/kv-file-viewer/kv-file-viewer.module.ts +14 -0
  107. package/src/lib/components/kv-filter-card/kv-filter-card.component.html +13 -0
  108. package/src/lib/components/kv-filter-card/kv-filter-card.component.scss +74 -0
  109. package/src/lib/components/kv-filter-card/kv-filter-card.component.spec.ts +23 -0
  110. package/src/lib/components/kv-filter-card/kv-filter-card.component.ts +17 -0
  111. package/src/lib/components/kv-filter-card/kv-filter-card.module.ts +23 -0
  112. package/src/lib/components/kv-g-icon/kv-g-icon.component.html +1 -0
  113. package/src/lib/components/kv-g-icon/kv-g-icon.component.scss +0 -0
  114. package/src/lib/components/kv-g-icon/kv-g-icon.component.spec.ts +23 -0
  115. package/src/lib/components/kv-g-icon/kv-g-icon.component.ts +10 -0
  116. package/src/lib/components/kv-g-icon/kv-g-icon.module.ts +11 -0
  117. package/src/lib/components/kv-image-upload/kv-image-upload.component.html +62 -0
  118. package/src/lib/components/kv-image-upload/kv-image-upload.component.scss +0 -0
  119. package/src/lib/components/kv-image-upload/kv-image-upload.component.ts +82 -0
  120. package/src/lib/components/kv-image-upload/kv-image-upload.module.ts +10 -0
  121. package/src/lib/components/kv-inputs/kv-check/kv-check.component.html +12 -0
  122. package/src/lib/components/kv-inputs/kv-check/kv-check.component.scss +13 -0
  123. package/src/lib/components/kv-inputs/kv-check/kv-check.component.ts +33 -0
  124. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.html +89 -0
  125. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.scss +21 -0
  126. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.ts +38 -0
  127. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.html +101 -0
  128. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.scss +21 -0
  129. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.ts +113 -0
  130. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.html +31 -0
  131. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.scss +19 -0
  132. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.ts +84 -0
  133. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.html +22 -0
  134. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.scss +0 -0
  135. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.ts +35 -0
  136. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.html +23 -0
  137. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.scss +0 -0
  138. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.ts +61 -0
  139. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.html +23 -0
  140. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.scss +0 -0
  141. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.ts +26 -0
  142. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.html +22 -0
  143. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.scss +18 -0
  144. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.ts +27 -0
  145. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.html +35 -0
  146. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.scss +0 -0
  147. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.spec.ts +23 -0
  148. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.ts +43 -0
  149. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.html +23 -0
  150. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.scss +0 -0
  151. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.ts +40 -0
  152. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.html +24 -0
  153. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.scss +0 -0
  154. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.ts +27 -0
  155. package/src/lib/components/kv-inputs/kv-inputs.module.ts +78 -0
  156. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.html +45 -0
  157. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.scss +13 -0
  158. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.ts +44 -0
  159. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.html +19 -0
  160. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.scss +15 -0
  161. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.ts +60 -0
  162. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.html +26 -0
  163. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.scss +5 -0
  164. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.spec.ts +21 -0
  165. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.ts +30 -0
  166. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.html +17 -0
  167. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.scss +26 -0
  168. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.spec.ts +23 -0
  169. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.ts +29 -0
  170. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.html +20 -0
  171. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.scss +5 -0
  172. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.ts +54 -0
  173. package/src/lib/components/kv-label/kv-label.component.html +6 -0
  174. package/src/lib/components/kv-label/kv-label.component.scss +9 -0
  175. package/src/lib/components/kv-label/kv-label.component.spec.ts +23 -0
  176. package/src/lib/components/kv-label/kv-label.component.ts +14 -0
  177. package/src/lib/components/kv-label/kv-label.module.ts +17 -0
  178. package/src/lib/components/kv-loader/kv-loader.component.html +1 -0
  179. package/src/lib/components/kv-loader/kv-loader.component.ts +15 -0
  180. package/src/lib/components/kv-loader/kv-loader.module.ts +17 -0
  181. package/src/lib/components/kv-loader/kv-loader.service.ts +31 -0
  182. package/src/lib/components/kv-login/kv-login.component.html +108 -0
  183. package/src/lib/components/kv-login/kv-login.component.scss +76 -0
  184. package/src/lib/components/kv-login/kv-login.component.spec.ts +23 -0
  185. package/src/lib/components/kv-login/kv-login.component.ts +81 -0
  186. package/src/lib/components/kv-login/kv-login.module.ts +33 -0
  187. package/src/lib/components/kv-menu/kv-menu.component.html +292 -0
  188. package/src/lib/components/kv-menu/kv-menu.component.scss +214 -0
  189. package/src/lib/components/kv-menu/kv-menu.component.spec.ts +23 -0
  190. package/src/lib/components/kv-menu/kv-menu.component.ts +195 -0
  191. package/src/lib/components/kv-menu/kv-menu.module.ts +33 -0
  192. package/src/lib/components/kv-modal/kv-modal.component.html +20 -0
  193. package/src/lib/components/kv-modal/kv-modal.component.scss +84 -0
  194. package/src/lib/components/kv-modal/kv-modal.component.spec.ts +21 -0
  195. package/src/lib/components/kv-modal/kv-modal.component.ts +114 -0
  196. package/src/lib/components/kv-modal/kv-modal.module.ts +21 -0
  197. package/src/lib/components/kv-orgchart/kv-orgchart.component.html +58 -0
  198. package/src/lib/components/kv-orgchart/kv-orgchart.component.scss +21 -0
  199. package/src/lib/components/kv-orgchart/kv-orgchart.component.ts +110 -0
  200. package/src/lib/components/kv-orgchart/kv-orgchart.module.ts +14 -0
  201. package/src/lib/components/kv-page-form/kv-page-form.component.html +99 -0
  202. package/src/lib/components/kv-page-form/kv-page-form.component.scss +76 -0
  203. package/src/lib/components/kv-page-form/kv-page-form.component.spec.ts +28 -0
  204. package/src/lib/components/kv-page-form/kv-page-form.component.ts +163 -0
  205. package/src/lib/components/kv-page-form/kv-page-form.module.ts +31 -0
  206. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.html +251 -0
  207. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.scss +129 -0
  208. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.spec.ts +23 -0
  209. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.ts +223 -0
  210. package/src/lib/components/kv-page-stepper/kv-page-stepper.module.ts +34 -0
  211. package/src/lib/components/kv-pick-list/kv-pick-list.component.html +23 -0
  212. package/src/lib/components/kv-pick-list/kv-pick-list.component.scss +5 -0
  213. package/src/lib/components/kv-pick-list/kv-pick-list.component.spec.ts +26 -0
  214. package/src/lib/components/kv-pick-list/kv-pick-list.component.ts +60 -0
  215. package/src/lib/components/kv-pick-list/kv-pick-list.module.ts +21 -0
  216. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.html +38 -0
  217. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.scss +110 -0
  218. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.spec.ts +21 -0
  219. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.ts +75 -0
  220. package/src/lib/components/kv-progress-bar/kv-progress-bar.module.ts +19 -0
  221. package/src/lib/components/kv-report/kv-report.component.html +12 -0
  222. package/src/lib/components/kv-report/kv-report.component.scss +21 -0
  223. package/src/lib/components/kv-report/kv-report.component.spec.ts +28 -0
  224. package/src/lib/components/kv-report/kv-report.component.ts +50 -0
  225. package/src/lib/components/kv-report/kv-report.module.ts +18 -0
  226. package/src/lib/components/kv-stepper/kv-stepper.component.html +66 -0
  227. package/src/lib/components/kv-stepper/kv-stepper.component.scss +41 -0
  228. package/src/lib/components/kv-stepper/kv-stepper.component.spec.ts +23 -0
  229. package/src/lib/components/kv-stepper/kv-stepper.component.ts +48 -0
  230. package/src/lib/components/kv-stepper/kv-stepper.module.ts +20 -0
  231. package/src/lib/components/kv-table/kv-table.component.html +504 -0
  232. package/src/lib/components/kv-table/kv-table.component.scss +311 -0
  233. package/src/lib/components/kv-table/kv-table.component.spec.ts +28 -0
  234. package/src/lib/components/kv-table/kv-table.component.ts +589 -0
  235. package/src/lib/components/kv-table/kv-table.module.ts +23 -0
  236. package/src/lib/components/kv-table-edit/kv-table-edit.component.html +823 -0
  237. package/src/lib/components/kv-table-edit/kv-table-edit.component.scss +711 -0
  238. package/src/lib/components/kv-table-edit/kv-table-edit.component.ts +352 -0
  239. package/src/lib/components/kv-table-edit/kv-table-edit.module.ts +28 -0
  240. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.html +440 -0
  241. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.scss +356 -0
  242. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.ts +517 -0
  243. package/src/lib/components/kv-table-expandable/kv-table-expandable.module.ts +22 -0
  244. package/src/lib/components/kv-tree-table/kv-tree-table.component.html +610 -0
  245. package/src/lib/components/kv-tree-table/kv-tree-table.component.scss +77 -0
  246. package/src/lib/components/kv-tree-table/kv-tree-table.component.spec.ts +21 -0
  247. package/src/lib/components/kv-tree-table/kv-tree-table.component.ts +305 -0
  248. package/src/lib/components/kv-tree-table/kv-tree-table.module.ts +18 -0
  249. package/src/lib/components/kv-tree-view/kv-tree-view.component.html +9 -0
  250. package/src/lib/components/kv-tree-view/kv-tree-view.component.scss +0 -0
  251. package/src/lib/components/kv-tree-view/kv-tree-view.component.spec.ts +23 -0
  252. package/src/lib/components/kv-tree-view/kv-tree-view.component.ts +31 -0
  253. package/src/lib/components/kv-tree-view/kv-tree-view.module.ts +19 -0
  254. package/src/lib/components/kv-workspace/kv-workspace.component.html +53 -0
  255. package/src/lib/components/kv-workspace/kv-workspace.component.scss +117 -0
  256. package/src/lib/components/kv-workspace/kv-workspace.component.ts +201 -0
  257. package/src/lib/components/kv-workspace/kv-workspace.module.ts +35 -0
  258. package/{public-api.d.ts → src/public-api.ts} +254 -214
  259. package/tsconfig.lib.json +14 -0
  260. package/tsconfig.lib.prod.json +10 -0
  261. package/tsconfig.spec.json +14 -0
  262. package/esm2022/keevo-components.mjs +0 -5
  263. package/esm2022/lib/api/base-components/base-component-button.mjs +0 -39
  264. package/esm2022/lib/api/base-components/base-component-chart.mjs +0 -92
  265. package/esm2022/lib/api/base-components/base-component-crud-form.mjs +0 -298
  266. package/esm2022/lib/api/base-components/base-component-crud-list.mjs +0 -79
  267. package/esm2022/lib/api/base-components/base-component-crud.mjs +0 -65
  268. package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +0 -31
  269. package/esm2022/lib/api/base-components/base-component-dropdown.mjs +0 -187
  270. package/esm2022/lib/api/base-components/base-component-input.mjs +0 -98
  271. package/esm2022/lib/api/base-components/base-component-multi-select.mjs +0 -130
  272. package/esm2022/lib/api/base-components/base-component-table.mjs +0 -320
  273. package/esm2022/lib/api/base-components/base-component.mjs +0 -51
  274. package/esm2022/lib/api/components/chart/chart.config.mjs +0 -2
  275. package/esm2022/lib/api/components/chart/chart.model.mjs +0 -2
  276. package/esm2022/lib/api/components/chart/orchart.config.mjs +0 -2
  277. package/esm2022/lib/api/components/chart/orchart.item.mjs +0 -2
  278. package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +0 -2
  279. package/esm2022/lib/api/components/stepper/kv-stepperpanel.mjs +0 -2
  280. package/esm2022/lib/api/components/table/action-item.mjs +0 -2
  281. package/esm2022/lib/api/components/table/kv-menuitem.mjs +0 -46
  282. package/esm2022/lib/api/components/table/table-dropdown-control.mjs +0 -2
  283. package/esm2022/lib/api/components/table/table.config.column.mjs +0 -2
  284. package/esm2022/lib/api/components/table/table.config.mjs +0 -2
  285. package/esm2022/lib/api/components/table/table.paginate.mjs +0 -9
  286. package/esm2022/lib/api/components/table/tabledit.config.mjs +0 -2
  287. package/esm2022/lib/api/components/table/tableedit.config.column.mjs +0 -2
  288. package/esm2022/lib/api/components/tree-table/tree-table.config.mjs +0 -3
  289. package/esm2022/lib/api/directives/directives.module.mjs +0 -30
  290. package/esm2022/lib/api/directives/drag/drag.directive.mjs +0 -52
  291. package/esm2022/lib/api/directives/stepper/dynamicinput.directive.mjs +0 -31
  292. package/esm2022/lib/api/directives/template/template.directive.mjs +0 -24
  293. package/esm2022/lib/api/helpers/component-providers.mjs +0 -16
  294. package/esm2022/lib/api/helpers/keevo-validators.mjs +0 -82
  295. package/esm2022/lib/api/helpers/translate-primeng.mjs +0 -23
  296. package/esm2022/lib/api/modules/primeng.module.mjs +0 -271
  297. package/esm2022/lib/api/pipes/capitalize.pipe.mjs +0 -28
  298. package/esm2022/lib/api/pipes/cpfcnpj.pipe.mjs +0 -25
  299. package/esm2022/lib/api/pipes/mask.pipe.mjs +0 -29
  300. package/esm2022/lib/api/pipes/pipes.module.mjs +0 -39
  301. package/esm2022/lib/api/pipes/telefone.pipe.mjs +0 -45
  302. package/esm2022/lib/api/services/base.api.service.mjs +0 -74
  303. package/esm2022/lib/api/services/breadcrumbs.service.mjs +0 -57
  304. package/esm2022/lib/api/services/component.service.mjs +0 -27
  305. package/esm2022/lib/api/services/docs.service.mjs +0 -129
  306. package/esm2022/lib/api/services/form.service.mjs +0 -92
  307. package/esm2022/lib/api/services/imagens.service.mjs +0 -28
  308. package/esm2022/lib/api/services/notification.service.mjs +0 -67
  309. package/esm2022/lib/api/services/object.service.mjs +0 -39
  310. package/esm2022/lib/api/types/severity.mjs +0 -2
  311. package/esm2022/lib/components/keevo-components.module.mjs +0 -179
  312. package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +0 -78
  313. package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +0 -32
  314. package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +0 -25
  315. package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +0 -34
  316. package/esm2022/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.mjs +0 -17
  317. package/esm2022/lib/components/kv-buttons/kv-button-success/kv-button-success.component.mjs +0 -17
  318. package/esm2022/lib/components/kv-buttons/kv-button.module.mjs +0 -39
  319. package/esm2022/lib/components/kv-carousel/kv-carousel.component.mjs +0 -32
  320. package/esm2022/lib/components/kv-carousel/kv-carousel.module.mjs +0 -28
  321. package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +0 -145
  322. package/esm2022/lib/components/kv-chart/kv-chart.module.mjs +0 -32
  323. package/esm2022/lib/components/kv-error/kv-error.component.mjs +0 -26
  324. package/esm2022/lib/components/kv-error/kv-error.module.mjs +0 -35
  325. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.component.mjs +0 -34
  326. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.module.mjs +0 -20
  327. package/esm2022/lib/components/kv-filter-card/kv-filter-card.component.mjs +0 -26
  328. package/esm2022/lib/components/kv-filter-card/kv-filter-card.module.mjs +0 -34
  329. package/esm2022/lib/components/kv-g-icon/kv-g-icon.component.mjs +0 -11
  330. package/esm2022/lib/components/kv-g-icon/kv-g-icon.module.mjs +0 -19
  331. package/esm2022/lib/components/kv-image-upload/kv-image-upload.component.mjs +0 -83
  332. package/esm2022/lib/components/kv-image-upload/kv-image-upload.module.mjs +0 -18
  333. package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +0 -29
  334. package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +0 -38
  335. package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +0 -92
  336. package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +0 -89
  337. package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +0 -29
  338. package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +0 -59
  339. package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +0 -33
  340. package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +0 -25
  341. package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +0 -42
  342. package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +0 -43
  343. package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +0 -24
  344. package/esm2022/lib/components/kv-inputs/kv-inputs.module.mjs +0 -122
  345. package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +0 -44
  346. package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +0 -54
  347. package/esm2022/lib/components/kv-inputs/kv-select-button/kv-select-button.component.mjs +0 -46
  348. package/esm2022/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.mjs +0 -31
  349. package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +0 -41
  350. package/esm2022/lib/components/kv-label/kv-label.component.mjs +0 -15
  351. package/esm2022/lib/components/kv-label/kv-label.module.mjs +0 -24
  352. package/esm2022/lib/components/kv-loader/kv-loader.component.mjs +0 -17
  353. package/esm2022/lib/components/kv-loader/kv-loader.module.mjs +0 -28
  354. package/esm2022/lib/components/kv-loader/kv-loader.service.mjs +0 -29
  355. package/esm2022/lib/components/kv-login/kv-login.component.mjs +0 -52
  356. package/esm2022/lib/components/kv-login/kv-login.module.mjs +0 -47
  357. package/esm2022/lib/components/kv-menu/kv-menu.component.mjs +0 -198
  358. package/esm2022/lib/components/kv-menu/kv-menu.module.mjs +0 -47
  359. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +0 -98
  360. package/esm2022/lib/components/kv-modal/kv-modal.module.mjs +0 -31
  361. package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +0 -100
  362. package/esm2022/lib/components/kv-orgchart/kv-orgchart.module.mjs +0 -24
  363. package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +0 -191
  364. package/esm2022/lib/components/kv-page-form/kv-page-form.module.mjs +0 -38
  365. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.component.mjs +0 -207
  366. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +0 -47
  367. package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +0 -78
  368. package/esm2022/lib/components/kv-pick-list/kv-pick-list.module.mjs +0 -32
  369. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.component.mjs +0 -58
  370. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.module.mjs +0 -28
  371. package/esm2022/lib/components/kv-report/kv-report.component.mjs +0 -53
  372. package/esm2022/lib/components/kv-report/kv-report.module.mjs +0 -24
  373. package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +0 -55
  374. package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +0 -32
  375. package/esm2022/lib/components/kv-table/kv-table.component.mjs +0 -496
  376. package/esm2022/lib/components/kv-table/kv-table.module.mjs +0 -36
  377. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +0 -288
  378. package/esm2022/lib/components/kv-table-edit/kv-table-edit.module.mjs +0 -41
  379. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.component.mjs +0 -483
  380. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.module.mjs +0 -36
  381. package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +0 -296
  382. package/esm2022/lib/components/kv-tree-table/kv-tree-table.module.mjs +0 -28
  383. package/esm2022/lib/components/kv-tree-view/kv-tree-view.component.mjs +0 -30
  384. package/esm2022/lib/components/kv-tree-view/kv-tree-view.module.mjs +0 -28
  385. package/esm2022/lib/components/kv-workspace/kv-workspace.component.mjs +0 -167
  386. package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +0 -51
  387. package/esm2022/public-api.mjs +0 -218
  388. package/fesm2022/keevo-components.mjs +0 -7357
  389. package/fesm2022/keevo-components.mjs.map +0 -1
  390. package/index.d.ts +0 -5
  391. package/lib/api/base-components/base-component-button.d.ts +0 -15
  392. package/lib/api/base-components/base-component-chart.d.ts +0 -40
  393. package/lib/api/base-components/base-component-crud-form.d.ts +0 -145
  394. package/lib/api/base-components/base-component-crud-list.d.ts +0 -64
  395. package/lib/api/base-components/base-component-crud.d.ts +0 -36
  396. package/lib/api/base-components/base-component-dropdown-external.d.ts +0 -15
  397. package/lib/api/base-components/base-component-dropdown.d.ts +0 -47
  398. package/lib/api/base-components/base-component-input.d.ts +0 -32
  399. package/lib/api/base-components/base-component-multi-select.d.ts +0 -35
  400. package/lib/api/base-components/base-component-table.d.ts +0 -85
  401. package/lib/api/base-components/base-component.d.ts +0 -22
  402. package/lib/api/components/chart/chart.config.d.ts +0 -11
  403. package/lib/api/components/chart/chart.model.d.ts +0 -9
  404. package/lib/api/components/chart/orchart.config.d.ts +0 -35
  405. package/lib/api/components/chart/orchart.item.d.ts +0 -26
  406. package/lib/api/components/dropdown/filtro.combo.d.ts +0 -4
  407. package/lib/api/components/stepper/kv-stepperpanel.d.ts +0 -9
  408. package/lib/api/components/table/action-item.d.ts +0 -11
  409. package/lib/api/components/table/kv-menuitem.d.ts +0 -152
  410. package/lib/api/components/table/table-dropdown-control.d.ts +0 -6
  411. package/lib/api/components/table/table.config.column.d.ts +0 -28
  412. package/lib/api/components/table/table.config.d.ts +0 -32
  413. package/lib/api/components/table/table.paginate.d.ts +0 -6
  414. package/lib/api/components/table/tabledit.config.d.ts +0 -8
  415. package/lib/api/components/table/tableedit.config.column.d.ts +0 -10
  416. package/lib/api/components/tree-table/tree-table.config.d.ts +0 -28
  417. package/lib/api/directives/directives.module.d.ts +0 -9
  418. package/lib/api/directives/drag/drag.directive.d.ts +0 -11
  419. package/lib/api/directives/stepper/dynamicinput.directive.d.ts +0 -15
  420. package/lib/api/directives/template/template.directive.d.ts +0 -11
  421. package/lib/api/helpers/component-providers.d.ts +0 -2
  422. package/lib/api/helpers/keevo-validators.d.ts +0 -12
  423. package/lib/api/helpers/translate-primeng.d.ts +0 -4
  424. package/lib/api/modules/primeng.module.d.ts +0 -66
  425. package/lib/api/pipes/capitalize.pipe.d.ts +0 -8
  426. package/lib/api/pipes/cpfcnpj.pipe.d.ts +0 -7
  427. package/lib/api/pipes/mask.pipe.d.ts +0 -7
  428. package/lib/api/pipes/pipes.module.d.ts +0 -11
  429. package/lib/api/pipes/telefone.pipe.d.ts +0 -7
  430. package/lib/api/services/base.api.service.d.ts +0 -25
  431. package/lib/api/services/breadcrumbs.service.d.ts +0 -15
  432. package/lib/api/services/component.service.d.ts +0 -11
  433. package/lib/api/services/docs.service.d.ts +0 -12
  434. package/lib/api/services/form.service.d.ts +0 -31
  435. package/lib/api/services/imagens.service.d.ts +0 -10
  436. package/lib/api/services/notification.service.d.ts +0 -25
  437. package/lib/api/services/object.service.d.ts +0 -9
  438. package/lib/components/keevo-components.module.d.ts +0 -30
  439. package/lib/components/kv-avatar/kv-avatar.component.d.ts +0 -22
  440. package/lib/components/kv-avatar/kv-avatar.module.d.ts +0 -10
  441. package/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.d.ts +0 -11
  442. package/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.d.ts +0 -14
  443. package/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.d.ts +0 -7
  444. package/lib/components/kv-buttons/kv-button-success/kv-button-success.component.d.ts +0 -7
  445. package/lib/components/kv-buttons/kv-button.module.d.ts +0 -11
  446. package/lib/components/kv-carousel/kv-carousel.component.d.ts +0 -14
  447. package/lib/components/kv-carousel/kv-carousel.module.d.ts +0 -9
  448. package/lib/components/kv-chart/kv-chart.component.d.ts +0 -56
  449. package/lib/components/kv-chart/kv-chart.module.d.ts +0 -10
  450. package/lib/components/kv-error/kv-error.component.d.ts +0 -12
  451. package/lib/components/kv-error/kv-error.module.d.ts +0 -10
  452. package/lib/components/kv-file-viewer/kv-file-viewer.component.d.ts +0 -17
  453. package/lib/components/kv-file-viewer/kv-file-viewer.module.d.ts +0 -8
  454. package/lib/components/kv-filter-card/kv-filter-card.component.d.ts +0 -12
  455. package/lib/components/kv-filter-card/kv-filter-card.module.d.ts +0 -10
  456. package/lib/components/kv-g-icon/kv-g-icon.component.d.ts +0 -5
  457. package/lib/components/kv-g-icon/kv-g-icon.module.d.ts +0 -9
  458. package/lib/components/kv-image-upload/kv-image-upload.component.d.ts +0 -24
  459. package/lib/components/kv-image-upload/kv-image-upload.module.d.ts +0 -8
  460. package/lib/components/kv-inputs/kv-check/kv-check.component.d.ts +0 -12
  461. package/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.d.ts +0 -14
  462. package/lib/components/kv-inputs/kv-editor/kv-editor.component.d.ts +0 -21
  463. package/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.d.ts +0 -27
  464. package/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.d.ts +0 -12
  465. package/lib/components/kv-inputs/kv-input-number/kv-input-number.component.d.ts +0 -19
  466. package/lib/components/kv-inputs/kv-input-password/kv-input-password.component.d.ts +0 -13
  467. package/lib/components/kv-inputs/kv-input-text/kv-input-text.component.d.ts +0 -10
  468. package/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.d.ts +0 -16
  469. package/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.d.ts +0 -16
  470. package/lib/components/kv-inputs/kv-input-time/kv-input-time.component.d.ts +0 -10
  471. package/lib/components/kv-inputs/kv-inputs.module.d.ts +0 -28
  472. package/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.d.ts +0 -15
  473. package/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.d.ts +0 -18
  474. package/lib/components/kv-inputs/kv-select-button/kv-select-button.component.d.ts +0 -19
  475. package/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.d.ts +0 -16
  476. package/lib/components/kv-inputs/kv-switch/kv-switch.component.d.ts +0 -16
  477. package/lib/components/kv-label/kv-label.component.d.ts +0 -7
  478. package/lib/components/kv-label/kv-label.module.d.ts +0 -8
  479. package/lib/components/kv-loader/kv-loader.component.d.ts +0 -8
  480. package/lib/components/kv-loader/kv-loader.module.d.ts +0 -9
  481. package/lib/components/kv-loader/kv-loader.service.d.ts +0 -10
  482. package/lib/components/kv-login/kv-login.component.d.ts +0 -30
  483. package/lib/components/kv-login/kv-login.module.d.ts +0 -13
  484. package/lib/components/kv-menu/kv-menu.component.d.ts +0 -59
  485. package/lib/components/kv-menu/kv-menu.module.d.ts +0 -13
  486. package/lib/components/kv-modal/kv-modal.component.d.ts +0 -28
  487. package/lib/components/kv-modal/kv-modal.module.d.ts +0 -10
  488. package/lib/components/kv-orgchart/kv-orgchart.component.d.ts +0 -27
  489. package/lib/components/kv-orgchart/kv-orgchart.module.d.ts +0 -9
  490. package/lib/components/kv-page-form/kv-page-form.component.d.ts +0 -97
  491. package/lib/components/kv-page-form/kv-page-form.module.d.ts +0 -11
  492. package/lib/components/kv-page-stepper/kv-page-stepper.component.d.ts +0 -84
  493. package/lib/components/kv-page-stepper/kv-page-stepper.module.d.ts +0 -13
  494. package/lib/components/kv-pick-list/kv-pick-list.component.d.ts +0 -30
  495. package/lib/components/kv-pick-list/kv-pick-list.module.d.ts +0 -10
  496. package/lib/components/kv-progress-bar/kv-progress-bar.component.d.ts +0 -67
  497. package/lib/components/kv-progress-bar/kv-progress-bar.module.d.ts +0 -9
  498. package/lib/components/kv-report/kv-report.component.d.ts +0 -20
  499. package/lib/components/kv-report/kv-report.module.d.ts +0 -8
  500. package/lib/components/kv-stepper/kv-stepper.component.d.ts +0 -25
  501. package/lib/components/kv-stepper/kv-stepper.module.d.ts +0 -10
  502. package/lib/components/kv-table/kv-table.component.d.ts +0 -119
  503. package/lib/components/kv-table/kv-table.module.d.ts +0 -11
  504. package/lib/components/kv-table-edit/kv-table-edit.component.d.ts +0 -58
  505. package/lib/components/kv-table-edit/kv-table-edit.module.d.ts +0 -14
  506. package/lib/components/kv-table-expandable/kv-table-expandable.component.d.ts +0 -110
  507. package/lib/components/kv-table-expandable/kv-table-expandable.module.d.ts +0 -12
  508. package/lib/components/kv-tree-table/kv-tree-table.component.d.ts +0 -71
  509. package/lib/components/kv-tree-table/kv-tree-table.module.d.ts +0 -9
  510. package/lib/components/kv-tree-view/kv-tree-view.component.d.ts +0 -14
  511. package/lib/components/kv-tree-view/kv-tree-view.module.d.ts +0 -9
  512. package/lib/components/kv-workspace/kv-workspace.component.d.ts +0 -65
  513. package/lib/components/kv-workspace/kv-workspace.module.d.ts +0 -14
@@ -0,0 +1,589 @@
1
+ import { DatePipe, DecimalPipe } from '@angular/common';
2
+
3
+ import {
4
+ Component,
5
+ ContentChildren,
6
+ DoCheck,
7
+ ElementRef,
8
+ EventEmitter,
9
+ HostListener,
10
+ Input,
11
+ OnChanges,
12
+ OnInit,
13
+ Output,
14
+ QueryList,
15
+ SimpleChanges,
16
+ TemplateRef,
17
+ ViewChild,
18
+ } from '@angular/core';
19
+
20
+ import { MenuItem } from 'primeng/api';
21
+ import { Table } from 'primeng/table';
22
+
23
+ import { CpfCnpjPipe } from '../../api/pipes/cpfcnpj.pipe';
24
+ import {
25
+ KvMenuItem,
26
+ getOrExecute,
27
+ ValueOrFn,
28
+ mapToMenuItem,
29
+ } from '../../api/components/table/kv-menuitem';
30
+ import { TableConfig } from '../../api/components/table/table.config';
31
+ import { TableConfigColumn } from '../../api/components/table/table.config.column';
32
+ import { TablePaginate } from '../../api/components/table/table.paginate';
33
+ import { TelefonePipe } from '../../api/pipes/telefone.pipe';
34
+ import { TemplateDirective } from '../../api/directives/template/template.directive';
35
+
36
+ const imgDefault =
37
+ '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';
38
+
39
+ @Component({
40
+ selector: 'kv-table',
41
+ templateUrl: './kv-table.component.html',
42
+ styleUrls: ['./kv-table.component.scss'],
43
+ })
44
+ export class KvTableComponent implements OnInit, DoCheck {
45
+ config!: TableConfig;
46
+ globalFilterFields: string[] = [];
47
+
48
+ selectedSize: string = '';
49
+
50
+ tamanhoTela!: number;
51
+
52
+ //menuColumns: KvMenuItem[] = [];
53
+ checked: boolean = true;
54
+
55
+ columns: TableConfigColumn[] = [];
56
+ deletedColuns: TableConfigColumn[] = [];
57
+
58
+ prepositions: string[] = [
59
+ 'de', 'da', 'do', 'em', 'no', 'na', 'para', 'por', 'com', 'a', 'o', 'e'
60
+ ];
61
+
62
+ menuFiltro: boolean = false;
63
+ checkboxClicked: boolean = false;
64
+
65
+ showFiltrosAvancados: boolean = false;
66
+
67
+ collapsed: boolean = false;
68
+
69
+ tableActions: MenuItem[][] = [];
70
+ currDataSource: any[] = [];
71
+
72
+ dataIndex: { [key: string]: any } = {};
73
+ menuItems!: MenuItem[];
74
+
75
+ actionsOffset: number = 0;
76
+
77
+ @ContentChildren(TemplateDirective) templates!: QueryList<any>;
78
+ @Input('templates') _templates!: any;
79
+
80
+ @ViewChild('table', { static: false }) table!: Table;
81
+ deletedColumnsIndex!: any[];
82
+
83
+ @Input('config') set setConfig(value: TableConfig) {
84
+ this.config = {
85
+ enableCation: value.enableCation || true,
86
+ enableSelect: value.enableSelect || false,
87
+ enableFilter: value.enableFilter || true,
88
+ ...value,
89
+ };
90
+
91
+ if (this.config.enableFilter) {
92
+ this.config.columns.forEach((col) => {
93
+ this.globalFilterFields.push(col.field);
94
+ });
95
+ }
96
+ }
97
+
98
+ @Input() defaultSortField: string = '';
99
+ @Input() dataSource: any[] = [];
100
+ @Input() selectedItems: any[] = [];
101
+ @Input() totalRecords!: number;
102
+ @Input() paginator: boolean = true;
103
+ @Input() rowsPerPageOptions!: number[];
104
+ @Input() rows: number = 5;
105
+ @Input() tableSize!: number;
106
+ @Input() filterColumnsBtn: boolean = false;
107
+ @Input() filtrosAvancados: boolean = false;
108
+ @Input() scrollHeight: string = '';
109
+ @Input() isTableScrollable: boolean = false;
110
+ @Input() tableCaptalized: boolean = false;
111
+
112
+ @Input() rowTrackBy: Function = (index: number, item: any) => item;
113
+
114
+ @Input() responsiveLayout: boolean = true;
115
+
116
+ @Input() disabledHeaderCheckbox: boolean = false;
117
+
118
+ /**
119
+ * @deprecated Use a propriedade "tagColor" na configuração da coluna para estilizar a tag
120
+ */
121
+ @Input() applyStyle: Function = (rowData: any, col: TableConfigColumn) => '';
122
+
123
+ /**
124
+ * @deprecated O valor de pageLinks é atribuído de acordo com o tamanho da tela, essa propriedade não está sendo utilizada
125
+ */
126
+ @Input() pageLinksOptions!: number;
127
+
128
+ /**
129
+ * @deprecated A quantidade de paginitorPageIcons é atribuído de acordo com o tamanho da tela, essa propriedade não está sendo utilizada
130
+ */
131
+ @Input() showFirstLastIcon!: boolean;
132
+
133
+ @Output() onActiveItem: EventEmitter<any> = new EventEmitter();
134
+ @Output() onActiveItemLote: EventEmitter<any> = new EventEmitter();
135
+ @Output() onPaginate: EventEmitter<TablePaginate> = new EventEmitter();
136
+ @Output() onSelectionChange: EventEmitter<any> = new EventEmitter();
137
+ @Output() doubleClickEvent: EventEmitter<any> = new EventEmitter();
138
+ @Output() filterField: EventEmitter<any> = new EventEmitter();
139
+ @Output() onSwitchTableChange: EventEmitter<any> = new EventEmitter();
140
+
141
+ @ViewChild('menuFiltroDiv') menuFiltroDiv!: ElementRef;
142
+ @ViewChild('botaoFiltro') botaoFiltro!: ElementRef;
143
+
144
+ constructor(
145
+ private readonly datePipe: DatePipe,
146
+ private readonly decimalPipe: DecimalPipe,
147
+ private readonly cpfCnpjPipe: CpfCnpjPipe,
148
+ private readonly telefonePipe: TelefonePipe,
149
+ ) {
150
+ this.isRowSelectable = this.isRowSelectable.bind(this);
151
+ }
152
+
153
+ ngDoCheck(): void {
154
+ if (
155
+ JSON.stringify(this.dataSource) !== JSON.stringify(this.currDataSource)
156
+ ) {
157
+ if (this.dataSource) {
158
+ this.createTableActions();
159
+ this.currDataSource = [...this.dataSource];
160
+ this.dataSource = [...this.dataSource];
161
+ }
162
+ }
163
+ }
164
+
165
+ ngOnInit() {
166
+ this.adjustTableSize();
167
+ this.tamanhoTela = window.innerWidth;
168
+ // this.criarMenuColumns();
169
+ this.config.columns.forEach((col: any) => {
170
+ this.columns.push(col);
171
+ });
172
+ this.checkHideColumns();
173
+ if (this.defaultSortField && this.dataSource) {
174
+ this.dataSource.sort((a: any, b: any) => {
175
+ if (
176
+ typeof a[this.defaultSortField] === 'string' &&
177
+ typeof b[this.defaultSortField] === 'string'
178
+ ) {
179
+ return a[this.defaultSortField].localeCompare(
180
+ b[this.defaultSortField]
181
+ );
182
+ } else if (
183
+ typeof a[this.defaultSortField] === 'boolean' &&
184
+ typeof b[this.defaultSortField] === 'boolean'
185
+ ) {
186
+ return a[this.defaultSortField] === b[this.defaultSortField]
187
+ ? 0
188
+ : a[this.defaultSortField]
189
+ ? 1
190
+ : -1;
191
+ } else if (
192
+ typeof a[this.defaultSortField] === 'number' &&
193
+ typeof b[this.defaultSortField] === 'number'
194
+ ) {
195
+ return a[this.defaultSortField] - b[this.defaultSortField];
196
+ } else {
197
+ return 0; // Ou outra lógica dependendo do caso
198
+ }
199
+ });
200
+ }
201
+ }
202
+
203
+ @HostListener('window:resize', ['$event'])
204
+ onWindowResize() {
205
+ this.adjustTableSize();
206
+ this.tamanhoTela = window.innerWidth;
207
+ }
208
+
209
+ public activeItem(rowData: any) {
210
+ this.onActiveItem.emit(rowData);
211
+ }
212
+
213
+ getOrExecute<T>(action: ValueOrFn<T>, data: any): T {
214
+ return getOrExecute(action, data);
215
+ }
216
+
217
+ isBooleanField(rowData: any, col: TableConfigColumn): boolean {
218
+ return typeof rowData[col.field] == 'boolean';
219
+ }
220
+
221
+ isChipField(col: TableConfigColumn): boolean {
222
+ return col.fieldType == 'chip';
223
+ }
224
+
225
+ isImageField(col: TableConfigColumn): boolean {
226
+ let retorno = col.fieldType && col.fieldType === 'image' ? true : false;
227
+ return retorno;
228
+ }
229
+
230
+ isSwitchField(col: TableConfigColumn): boolean {
231
+ let retorno = col.fieldType && col.fieldType === 'switch' ? true : false;
232
+ return retorno;
233
+ }
234
+
235
+ isRowSelectable(event: any) {
236
+ return !this.isDisabledCheckbox(event.data);
237
+ }
238
+
239
+ isDisabledCheckbox(rowData: any): boolean {
240
+ return this.config.disableControlCheckboxFunction
241
+ ? this.config.disableControlCheckboxFunction(rowData)
242
+ : false;
243
+ }
244
+
245
+ loadImage(rowData: any, col: TableConfigColumn): string {
246
+ /*
247
+ Nossa coluna de imagem trabalha com strings do tipo: base64 ou url
248
+ */
249
+ let retorno = `data:image/jpg;base64, ${imgDefault}`;
250
+ if (rowData && col && rowData[col.field] && rowData[col.field] !== '') {
251
+ if (rowData[col.field].includes('http')) retorno = rowData[col.field];
252
+ else retorno = `data:image/jpg;base64, ${rowData[col.field]}`;
253
+ }
254
+
255
+ return retorno;
256
+ }
257
+
258
+ public onGlobalFilter(table: Table, event: Event) {
259
+ this.filterField.emit((event.target as HTMLInputElement).value);
260
+ table.filterGlobal((event.target as HTMLInputElement).value, 'contains');
261
+ }
262
+
263
+ public paginate(event: any) {
264
+ if (event) {
265
+ let paginaInicial =
266
+ (event?.first > 0 ? event.first / event.rows : event.first) + 1;
267
+ let termoPesquisa = '';
268
+ let ordenacao = '';
269
+
270
+ if (event.globalFilter) termoPesquisa = event.globalFilter;
271
+
272
+ if (event.sortField)
273
+ ordenacao = `${event.sortField} ${
274
+ event.sortOrder === 1 ? 'ASC' : 'DESC'
275
+ }`;
276
+
277
+ const objeto: TablePaginate = {
278
+ paginaInicial: paginaInicial,
279
+ tamanhoPagina: event.rows,
280
+ termoPesquisa: termoPesquisa,
281
+ ordenacao: ordenacao,
282
+ };
283
+
284
+ this.onPaginate.emit(objeto);
285
+
286
+ this.actionsOffset = event.first;
287
+ this.createTableActions();
288
+ }
289
+ }
290
+
291
+ selectionChange(value: any) {
292
+ this.onSelectionChange.emit(value);
293
+ }
294
+
295
+ public activeItemLote(selectedItems: any) {
296
+ this.onActiveItemLote.emit(selectedItems);
297
+ }
298
+
299
+ returnRowClass(rowData: any, col: TableConfigColumn) {
300
+ let value = rowData[col.field];
301
+ let rowClass: string;
302
+
303
+ this.tableSize > 800 ? (rowClass = 'text-base') : (rowClass = 'text-sm');
304
+
305
+ if (col.expiredDate == true) {
306
+ new Date(value) < new Date()
307
+ ? (rowClass = rowClass + ' text-red-400 font-semibold')
308
+ : '';
309
+ }
310
+ return rowClass;
311
+ }
312
+
313
+ expiredFile(rowData: any, col: TableConfigColumn): boolean {
314
+ let value = rowData['datavencimento'];
315
+ return new Date(value) < new Date() && col.field == 'area';
316
+ }
317
+
318
+ transformValue(rowData: any, col: TableConfigColumn) {
319
+ let value = rowData[col.field];
320
+
321
+ if (value != null) {
322
+ if (!col.pipe) {
323
+ return value;
324
+ }
325
+
326
+ switch (col.pipe) {
327
+ case 'date':
328
+ return this.datePipe.transform(value, 'dd/MM/yyyy');
329
+ case 'dateMonthYear':
330
+ return this.datePipe.transform(value, 'MM/yyyy');
331
+ case 'decimal':
332
+ return this.decimalPipe.transform(value, '1.2-2', 'pt-BR');
333
+ case 'cpfcnpj':
334
+ return this.cpfCnpjPipe.transform(value);
335
+ case 'telefone':
336
+ return this.telefonePipe.transform(value);
337
+ case 'capitalize':
338
+ return this.transformCapitalize(value);
339
+ case 'money':
340
+ return this.formatarValor(value);
341
+ case 'percentage':
342
+ return `${value} %`;
343
+
344
+ default:
345
+ break;
346
+ }
347
+ }
348
+ }
349
+
350
+ transformCapitalize(value: string): string {
351
+ if (!value) return value;
352
+
353
+ return value.split(' ').map((word, index) => {
354
+ if (index !== 0 && this.prepositions.includes(word.toLocaleLowerCase())) {
355
+ return word.toLocaleLowerCase();
356
+ }
357
+ return word.charAt(0).toLocaleUpperCase() + word.slice(1).toLocaleLowerCase();
358
+ }).join(' ');
359
+ }
360
+
361
+ formatarValor(valor: number): string {
362
+ const formatter = new Intl.NumberFormat('pt-BR', {
363
+ style: 'currency',
364
+ currency: 'BRL',
365
+ });
366
+
367
+ return formatter.format(valor);
368
+ }
369
+
370
+ adjustTableSize() {
371
+ if (this.tableSize < 800) {
372
+ this.selectedSize = 'p-datatable-sm';
373
+ } else {
374
+ this.selectedSize = '';
375
+ }
376
+ }
377
+
378
+ doubleClick(e: any, rowData: any) {
379
+ let eventDoubleClick = { event: e, rowData: rowData };
380
+
381
+ let array: string[] = [];
382
+ e.target.classList.forEach((x: any) => array.push(x));
383
+
384
+ this.doubleClickEvent.emit(eventDoubleClick);
385
+ }
386
+
387
+ // alignColunas(col: any): string {
388
+ // if (col.align) {
389
+ // return `text-align: ${col.align}`;
390
+ // } else return '';
391
+ // }
392
+
393
+ // alignColunasHeader(col: any): string {
394
+ // if (col.align) {
395
+ // if (col.align == 'right') return 'justify-content: end';
396
+ // else return '';
397
+ // } else return '';
398
+ // }
399
+
400
+ retornarRow(rowData: any, col: any, field: string): string {
401
+ const _rowaction = this.config.rows ? this.config.rows[col.field] : null;
402
+ const _field: string =
403
+ _rowaction && _rowaction[field]
404
+ ? _rowaction[field].constructor === Function
405
+ ? _rowaction[field].apply(this, [rowData])
406
+ : _rowaction[field]
407
+ : null;
408
+ return _field;
409
+ }
410
+
411
+ exibirCampo(field: any, rowData: any) {
412
+ let visible = field.visible ? field.visible(rowData) : true;
413
+
414
+ return visible;
415
+ }
416
+
417
+ returnClassChip(rowData: any, col: any): string {
418
+ return `chip-style w-auto border-round-2xl p-2 text-${this.retornarRow(
419
+ rowData,
420
+ col,
421
+ 'stylechip'
422
+ )} border-${this.retornarRow(rowData, col, 'stylechip')}`;
423
+ }
424
+
425
+ returnClassIcon(rowData: any, col: any): string {
426
+ return this.retornarRow(rowData, col, 'iconrow');
427
+ }
428
+
429
+ returnTooltipIcon(rowData: any, col: any): string {
430
+ return this.retornarRow(rowData, col, 'tooltipiconrow');
431
+ }
432
+
433
+ returnTooltipRow(rowData: any, col: any): any {
434
+ return this.retornarRow(rowData, col, 'tooltiprow');
435
+ }
436
+
437
+ deleteColumn(field: string) {
438
+ let index: number;
439
+
440
+ let column: TableConfigColumn | undefined = this.config.columns.find(
441
+ (x) => x.field == field
442
+ );
443
+ if (column) {
444
+ index = this.config.columns.indexOf(column);
445
+ this.config.columns.splice(index, 1);
446
+ this.deletedColuns.push(column);
447
+ }
448
+ }
449
+
450
+ addColumn(field: string) {
451
+ let index: number;
452
+
453
+ let column: TableConfigColumn | undefined = this.config.columns.find(
454
+ (x) => x.field == field
455
+ );
456
+
457
+ if (!column) {
458
+ let deletedColumn: TableConfigColumn | undefined =
459
+ this.deletedColuns.find((x) => x.field == field);
460
+
461
+ if (deletedColumn != undefined) {
462
+ index = this.deletedColuns.indexOf(deletedColumn);
463
+ this.deletedColuns.slice(index, 1);
464
+ this.config.columns.push(deletedColumn);
465
+ }
466
+ }
467
+ }
468
+
469
+ dinamicColumnSet(e: any, col: any) {
470
+ col.checked = e.checked;
471
+ if (e.checked) this.addColumn(col.field);
472
+ else this.deleteColumn(col.field);
473
+
474
+ if (col.position) this.config.columns.sort(this.sortByPosition());
475
+ }
476
+
477
+ // abrirMenuFiltro(e: any) {
478
+ // this.menuFiltro = !this.menuFiltro;
479
+ // this.checkboxClicked = false;
480
+
481
+ // if (this.tamanhoTela < 700)
482
+ // this.styleSetter('left', (this.botaoFiltro.nativeElement.offsetLeft - 288) + 'px')
483
+ // else
484
+ // this.styleSetter('left', (this.botaoFiltro.nativeElement.offsetLeft + 40) + 'px')
485
+
486
+ // this.styleSetter('top', this.botaoFiltro.nativeElement.offsetTop + 'px')
487
+ // this.styleSetter('visibility', this.menuFiltro ? 'visible' : 'hidden')
488
+ // }
489
+
490
+ // fecharMenuFiltro() {
491
+ // this.menuFiltro = false;
492
+ // this.checkboxClicked = false;
493
+
494
+ // this.styleSetter('visibility', 'hidden')
495
+ // }
496
+
497
+ // @HostListener('document:keydown.escape', ['$event'])
498
+ // onEscapeKey(event: KeyboardEvent) {
499
+ // if (this.filterColumnsBtn == true && this.menuFiltro == true) {
500
+ // this.fecharMenuFiltro();
501
+ // }
502
+ // }
503
+
504
+ // @HostListener('document:click', ['$event'])
505
+ // onClickEvent(event: any) {
506
+ // if (this.filterColumnsBtn == true && this.menuFiltro == true) {
507
+ // const clickedElement = event.target as HTMLElement;
508
+ // const menuFiltroDiv =
509
+ // this.elementRef.nativeElement.querySelector('#menuFiltroDiv');
510
+ // const botaoFiltro =
511
+ // this.elementRef.nativeElement.querySelector('#botaoFiltro');
512
+ // const isCheckboxClicked =
513
+ // clickedElement.classList.toString().includes('p-checkbox') ||
514
+ // event.target.classList.toString() == '';
515
+ // const isInsideMenu =
516
+ // menuFiltroDiv?.contains(clickedElement) ||
517
+ // botaoFiltro?.contains(clickedElement) ||
518
+ // isCheckboxClicked;
519
+
520
+ // if (!isInsideMenu) this.fecharMenuFiltro();
521
+ // }
522
+ // }
523
+
524
+ checkMenuFiltro(col: any) {
525
+ let deletedColumn: TableConfigColumn | undefined = this.deletedColuns.find(
526
+ (x: TableConfigColumn) => x.field == col.field
527
+ );
528
+ if (deletedColumn) col.checked = false;
529
+ else col.checked = true;
530
+ }
531
+
532
+ sortByPosition() {
533
+ return function (elem1: any, elem2: any) {
534
+ if (elem1.position < elem2.position) {
535
+ return -1;
536
+ } else if (elem1.position > elem2.position) {
537
+ return 1;
538
+ } else {
539
+ return 0;
540
+ }
541
+ };
542
+ }
543
+
544
+ dinamicDisableColumn(col: TableConfigColumn): boolean {
545
+ if (col.fixedColumn) return col.fixedColumn;
546
+ else return false;
547
+ }
548
+
549
+ checkHideColumns() {
550
+ let hideColumnsConfig = this.columns.filter(
551
+ (col) => col.hideColumn == true
552
+ );
553
+ hideColumnsConfig.forEach((col) => this.deleteColumn(col.field));
554
+ }
555
+
556
+ getCustomTemplate(templatename: string): TemplateRef<any> {
557
+ return this._templates[templatename];
558
+ }
559
+
560
+ // styleSetter(style: string, data: string) {
561
+ // this.renderer?.setStyle(
562
+ // this.menuFiltroDiv.nativeElement,
563
+ // style,
564
+ // data
565
+ // );
566
+ // }
567
+
568
+ onSwitchChange(estado: any, rowData: any, col: any) {
569
+ this.onSwitchTableChange.emit({
570
+ estado: estado,
571
+ rowData: rowData,
572
+ col: col,
573
+ });
574
+
575
+ rowData[col.field] = estado;
576
+ }
577
+
578
+ createTableActions() {
579
+ this.tableActions = this.dataSource?.map((x) =>
580
+ this.config.actions
581
+ ? this.config.actions.map((y) => mapToMenuItem(y, x))
582
+ : []
583
+ );
584
+ }
585
+
586
+ onSort(e: any) {
587
+ this.dataSource = [...this.dataSource];
588
+ }
589
+ }
@@ -0,0 +1,23 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { FormsModule } from '@angular/forms';
3
+ import { NgModule } from '@angular/core';
4
+
5
+ import { KvInputsModule } from '../kv-inputs/kv-inputs.module';
6
+ import { KvTableComponent } from './kv-table.component';
7
+ import { PrimeNgModule } from '../../api/modules/primeng.module';
8
+
9
+ @NgModule({
10
+ declarations: [
11
+ KvTableComponent
12
+ ],
13
+ imports: [
14
+ CommonModule,
15
+ PrimeNgModule,
16
+ FormsModule,
17
+ KvInputsModule
18
+ ],
19
+ exports: [
20
+ KvTableComponent
21
+ ]
22
+ })
23
+ export class KvTableModule { }