keevo-components 1.8.541 → 1.8.543

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 (613) hide show
  1. package/esm2022/keevo-components.mjs +5 -0
  2. package/esm2022/lib/api/base-components/base-component-button.mjs +39 -0
  3. package/esm2022/lib/api/base-components/base-component-chart.mjs +104 -0
  4. package/esm2022/lib/api/base-components/base-component-crud-form.mjs +302 -0
  5. package/esm2022/lib/api/base-components/base-component-crud-list.mjs +91 -0
  6. package/esm2022/lib/api/base-components/base-component-crud.mjs +80 -0
  7. package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +31 -0
  8. package/esm2022/lib/api/base-components/base-component-dropdown.mjs +238 -0
  9. package/esm2022/lib/api/base-components/base-component-input.mjs +101 -0
  10. package/esm2022/lib/api/base-components/base-component-multi-select.mjs +174 -0
  11. package/esm2022/lib/api/base-components/base-component-table.mjs +354 -0
  12. package/esm2022/lib/api/base-components/base-component.mjs +51 -0
  13. package/esm2022/lib/api/components/chart/chart.config.mjs +2 -0
  14. package/esm2022/lib/api/components/chart/chart.model.mjs +2 -0
  15. package/esm2022/lib/api/components/chart/orchart.config.mjs +2 -0
  16. package/esm2022/lib/api/components/chart/orchartnode.mjs +2 -0
  17. package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +2 -0
  18. package/esm2022/lib/api/components/stepper/kv-stepperpanel.mjs +2 -0
  19. package/esm2022/lib/api/components/table/action-item.mjs +2 -0
  20. package/esm2022/lib/api/components/table/kv-menuitem.mjs +46 -0
  21. package/esm2022/lib/api/components/table/table-dropdown-control.mjs +2 -0
  22. package/esm2022/lib/api/components/table/table.config.column.mjs +2 -0
  23. package/esm2022/lib/api/components/table/table.config.mjs +2 -0
  24. package/esm2022/lib/api/components/table/table.paginate.mjs +10 -0
  25. package/esm2022/lib/api/components/table/tabledit.config.mjs +2 -0
  26. package/esm2022/lib/api/components/table/tableedit.config.column.mjs +2 -0
  27. package/esm2022/lib/api/components/tree-table/tree-table-keys.mjs +2 -0
  28. package/esm2022/lib/api/components/tree-table/tree-table.config.mjs +3 -0
  29. package/esm2022/lib/api/directives/directives.module.mjs +30 -0
  30. package/esm2022/lib/api/directives/drag/drag.directive.mjs +52 -0
  31. package/esm2022/lib/api/directives/stepper/dynamicinput.directive.mjs +31 -0
  32. package/esm2022/lib/api/directives/template/template.directive.mjs +24 -0
  33. package/esm2022/lib/api/helpers/component-providers.mjs +16 -0
  34. package/esm2022/lib/api/helpers/keevo-validators.mjs +131 -0
  35. package/esm2022/lib/api/helpers/translate-primeng.mjs +23 -0
  36. package/esm2022/lib/api/modules/primeng.module.mjs +275 -0
  37. package/esm2022/lib/api/pipes/capitalize.pipe.mjs +47 -0
  38. package/esm2022/lib/api/pipes/cpfcnpj.pipe.mjs +25 -0
  39. package/esm2022/lib/api/pipes/mask.pipe.mjs +29 -0
  40. package/esm2022/lib/api/pipes/pipes.module.mjs +39 -0
  41. package/esm2022/lib/api/pipes/telefone.pipe.mjs +45 -0
  42. package/esm2022/lib/api/services/base.api.service.mjs +74 -0
  43. package/esm2022/lib/api/services/breadcrumbs.service.mjs +62 -0
  44. package/esm2022/lib/api/services/chat.service.mjs +37 -0
  45. package/esm2022/lib/api/services/component.service.mjs +37 -0
  46. package/esm2022/lib/api/services/docs.service.mjs +129 -0
  47. package/esm2022/lib/api/services/form.service.mjs +95 -0
  48. package/esm2022/lib/api/services/image.cutter.service.mjs +191 -0
  49. package/esm2022/lib/api/services/imagens.service.mjs +28 -0
  50. package/esm2022/lib/api/services/notification.service.mjs +69 -0
  51. package/esm2022/lib/api/services/object.service.mjs +39 -0
  52. package/esm2022/lib/api/services/orgchart.service.mjs +64 -0
  53. package/esm2022/lib/api/types/breadcrumb.model.mjs +2 -0
  54. package/esm2022/lib/components/keevo-components.module.mjs +207 -0
  55. package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +133 -0
  56. package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +55 -0
  57. package/esm2022/lib/components/kv-button/kv-button.component.mjs +23 -0
  58. package/esm2022/lib/components/kv-button/kv-button.module.mjs +28 -0
  59. package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +25 -0
  60. package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +35 -0
  61. package/esm2022/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.mjs +17 -0
  62. package/esm2022/lib/components/kv-buttons/kv-button-success/kv-button-success.component.mjs +17 -0
  63. package/esm2022/lib/components/kv-buttons/kv-button.module.mjs +39 -0
  64. package/esm2022/lib/components/kv-card-selection/kv-card-selection.component.mjs +60 -0
  65. package/esm2022/lib/components/kv-card-selection/kv-card-selection.module.mjs +31 -0
  66. package/esm2022/lib/components/kv-carousel/kv-carousel.component.mjs +34 -0
  67. package/esm2022/lib/components/kv-carousel/kv-carousel.module.mjs +28 -0
  68. package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +166 -0
  69. package/esm2022/lib/components/kv-chart/kv-chart.module.mjs +32 -0
  70. package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.component.mjs +143 -0
  71. package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.module.mjs +36 -0
  72. package/esm2022/lib/components/kv-error/kv-error.component.mjs +26 -0
  73. package/esm2022/lib/components/kv-error/kv-error.module.mjs +35 -0
  74. package/esm2022/lib/components/kv-file-upload/kv-file-upload.component.mjs +160 -0
  75. package/esm2022/lib/components/kv-file-upload/kv-file-upload.module.mjs +18 -0
  76. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.component.mjs +46 -0
  77. package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.module.mjs +20 -0
  78. package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.mjs +68 -0
  79. package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.mjs +24 -0
  80. package/esm2022/lib/components/kv-filter-card/kv-filter-card.component.mjs +29 -0
  81. package/esm2022/lib/components/kv-filter-card/kv-filter-card.module.mjs +34 -0
  82. package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.mjs +26 -0
  83. package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.mjs +28 -0
  84. package/esm2022/lib/components/kv-g-icon/kv-g-icon.component.mjs +11 -0
  85. package/esm2022/lib/components/kv-g-icon/kv-g-icon.module.mjs +19 -0
  86. package/esm2022/lib/components/kv-home-card/kv-home-card.component.mjs +27 -0
  87. package/esm2022/lib/components/kv-home-card/kv-home-card.module.mjs +32 -0
  88. package/esm2022/lib/components/kv-image-upload/kv-image-upload.component.mjs +136 -0
  89. package/esm2022/lib/components/kv-image-upload/kv-image-upload.module.mjs +18 -0
  90. package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +29 -0
  91. package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +102 -0
  92. package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +148 -0
  93. package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +168 -0
  94. package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +30 -0
  95. package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +59 -0
  96. package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +33 -0
  97. package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +38 -0
  98. package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +47 -0
  99. package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +43 -0
  100. package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +24 -0
  101. package/esm2022/lib/components/kv-inputs/kv-inputs.module.mjs +131 -0
  102. package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +57 -0
  103. package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +60 -0
  104. package/esm2022/lib/components/kv-inputs/kv-select-button/kv-select-button.component.mjs +46 -0
  105. package/esm2022/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.mjs +36 -0
  106. package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +42 -0
  107. package/esm2022/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.mjs +58 -0
  108. package/esm2022/lib/components/kv-label/kv-label.component.mjs +15 -0
  109. package/esm2022/lib/components/kv-label/kv-label.module.mjs +24 -0
  110. package/esm2022/lib/components/kv-layout/dropdown-master/dropdown-master.component.mjs +28 -0
  111. package/esm2022/lib/components/kv-layout/kv-layout.module.mjs +50 -0
  112. package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +285 -0
  113. package/esm2022/lib/components/kv-loader/kv-loader.component.mjs +16 -0
  114. package/esm2022/lib/components/kv-loader/kv-loader.module.mjs +28 -0
  115. package/esm2022/lib/components/kv-loader/kv-loader.service.mjs +29 -0
  116. package/esm2022/lib/components/kv-login/kv-login.component.mjs +62 -0
  117. package/esm2022/lib/components/kv-login/kv-login.module.mjs +47 -0
  118. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +98 -0
  119. package/esm2022/lib/components/kv-modal/kv-modal.module.mjs +20 -0
  120. package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +225 -0
  121. package/esm2022/lib/components/kv-orgchart/kv-orgchart.module.mjs +59 -0
  122. package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +217 -0
  123. package/esm2022/lib/components/kv-page-form/kv-page-form.module.mjs +41 -0
  124. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.component.mjs +207 -0
  125. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +47 -0
  126. package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +144 -0
  127. package/esm2022/lib/components/kv-pick-list/kv-pick-list.module.mjs +39 -0
  128. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.component.mjs +58 -0
  129. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.module.mjs +28 -0
  130. package/esm2022/lib/components/kv-report/kv-report.component.mjs +44 -0
  131. package/esm2022/lib/components/kv-report/kv-report.module.mjs +24 -0
  132. package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +76 -0
  133. package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +40 -0
  134. package/esm2022/lib/components/kv-table/kv-table.component.mjs +673 -0
  135. package/esm2022/lib/components/kv-table/kv-table.module.mjs +40 -0
  136. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +323 -0
  137. package/esm2022/lib/components/kv-table-edit/kv-table-edit.module.mjs +45 -0
  138. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.component.mjs +516 -0
  139. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.module.mjs +40 -0
  140. package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +331 -0
  141. package/esm2022/lib/components/kv-tree-table/kv-tree-table.module.mjs +39 -0
  142. package/esm2022/lib/components/kv-tree-view/kv-tree-view.component.mjs +70 -0
  143. package/esm2022/lib/components/kv-tree-view/kv-tree-view.module.mjs +28 -0
  144. package/esm2022/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.mjs +72 -0
  145. package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +64 -0
  146. package/esm2022/lib/components/kv-workspace/logo/kv-workspace-logo.component.mjs +22 -0
  147. package/esm2022/lib/components/kv-workspace/master/kv-workspace-master.component.mjs +63 -0
  148. package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +74 -0
  149. package/esm2022/public-api.mjs +256 -0
  150. package/fesm2022/keevo-components.mjs +9772 -0
  151. package/fesm2022/keevo-components.mjs.map +1 -0
  152. package/index.d.ts +5 -0
  153. package/lib/api/base-components/base-component-button.d.ts +15 -0
  154. package/lib/api/base-components/base-component-chart.d.ts +40 -0
  155. package/lib/api/base-components/base-component-crud-form.d.ts +149 -0
  156. package/lib/api/base-components/base-component-crud-list.d.ts +70 -0
  157. package/lib/api/base-components/base-component-crud.d.ts +36 -0
  158. package/lib/api/base-components/base-component-dropdown-external.d.ts +15 -0
  159. package/lib/api/base-components/base-component-dropdown.d.ts +57 -0
  160. package/lib/api/base-components/base-component-input.d.ts +33 -0
  161. package/lib/api/base-components/base-component-multi-select.d.ts +40 -0
  162. package/lib/api/base-components/base-component-table.d.ts +88 -0
  163. package/lib/api/base-components/base-component.d.ts +22 -0
  164. package/lib/api/components/chart/chart.config.d.ts +14 -0
  165. package/lib/api/components/chart/chart.model.d.ts +12 -0
  166. package/lib/api/components/chart/orchart.config.d.ts +41 -0
  167. package/lib/api/components/chart/orchartnode.d.ts +34 -0
  168. package/lib/api/components/dropdown/filtro.combo.d.ts +4 -0
  169. package/lib/api/components/stepper/kv-stepperpanel.d.ts +9 -0
  170. package/lib/api/components/table/action-item.d.ts +13 -0
  171. package/lib/api/components/table/kv-menuitem.d.ts +152 -0
  172. package/lib/api/components/table/table-dropdown-control.d.ts +6 -0
  173. package/lib/api/components/table/table.config.column.d.ts +38 -0
  174. package/lib/api/components/table/table.config.d.ts +33 -0
  175. package/lib/api/components/table/table.paginate.d.ts +10 -0
  176. package/{src/lib/api/components/table/tabledit.config.ts → lib/api/components/table/tabledit.config.d.ts} +8 -9
  177. package/lib/api/components/table/tableedit.config.column.d.ts +10 -0
  178. package/lib/api/components/tree-table/tree-table-keys.d.ts +12 -0
  179. package/lib/api/components/tree-table/tree-table.config.d.ts +31 -0
  180. package/lib/api/directives/directives.module.d.ts +9 -0
  181. package/lib/api/directives/drag/drag.directive.d.ts +11 -0
  182. package/lib/api/directives/stepper/dynamicinput.directive.d.ts +15 -0
  183. package/lib/api/directives/template/template.directive.d.ts +11 -0
  184. package/lib/api/helpers/component-providers.d.ts +2 -0
  185. package/lib/api/helpers/keevo-validators.d.ts +17 -0
  186. package/lib/api/helpers/translate-primeng.d.ts +4 -0
  187. package/lib/api/modules/primeng.module.d.ts +67 -0
  188. package/lib/api/pipes/capitalize.pipe.d.ts +10 -0
  189. package/lib/api/pipes/cpfcnpj.pipe.d.ts +7 -0
  190. package/lib/api/pipes/mask.pipe.d.ts +7 -0
  191. package/lib/api/pipes/pipes.module.d.ts +11 -0
  192. package/lib/api/pipes/telefone.pipe.d.ts +7 -0
  193. package/lib/api/services/base.api.service.d.ts +25 -0
  194. package/lib/api/services/breadcrumbs.service.d.ts +16 -0
  195. package/lib/api/services/chat.service.d.ts +17 -0
  196. package/lib/api/services/component.service.d.ts +11 -0
  197. package/lib/api/services/docs.service.d.ts +12 -0
  198. package/lib/api/services/form.service.d.ts +31 -0
  199. package/lib/api/services/image.cutter.service.d.ts +15 -0
  200. package/lib/api/services/imagens.service.d.ts +10 -0
  201. package/lib/api/services/notification.service.d.ts +26 -0
  202. package/lib/api/services/object.service.d.ts +9 -0
  203. package/lib/api/services/orgchart.service.d.ts +20 -0
  204. package/lib/api/types/breadcrumb.model.d.ts +5 -0
  205. package/lib/components/keevo-components.module.d.ts +34 -0
  206. package/lib/components/kv-avatar/kv-avatar.component.d.ts +35 -0
  207. package/lib/components/kv-avatar/kv-avatar.module.d.ts +15 -0
  208. package/lib/components/kv-button/kv-button.component.d.ts +14 -0
  209. package/lib/components/kv-button/kv-button.module.d.ts +9 -0
  210. package/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.d.ts +11 -0
  211. package/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.d.ts +15 -0
  212. package/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.d.ts +7 -0
  213. package/lib/components/kv-buttons/kv-button-success/kv-button-success.component.d.ts +7 -0
  214. package/lib/components/kv-buttons/kv-button.module.d.ts +11 -0
  215. package/lib/components/kv-card-selection/kv-card-selection.component.d.ts +25 -0
  216. package/lib/components/kv-card-selection/kv-card-selection.module.d.ts +10 -0
  217. package/lib/components/kv-carousel/kv-carousel.component.d.ts +17 -0
  218. package/lib/components/kv-carousel/kv-carousel.module.d.ts +9 -0
  219. package/lib/components/kv-chart/kv-chart.component.d.ts +57 -0
  220. package/lib/components/kv-chart/kv-chart.module.d.ts +10 -0
  221. package/lib/components/kv-content-viewer/kv-content-viewer.component.d.ts +44 -0
  222. package/lib/components/kv-content-viewer/kv-content-viewer.module.d.ts +12 -0
  223. package/lib/components/kv-error/kv-error.component.d.ts +12 -0
  224. package/lib/components/kv-error/kv-error.module.d.ts +10 -0
  225. package/lib/components/kv-file-upload/kv-file-upload.component.d.ts +32 -0
  226. package/lib/components/kv-file-upload/kv-file-upload.module.d.ts +8 -0
  227. package/lib/components/kv-file-viewer/kv-file-viewer.component.d.ts +21 -0
  228. package/lib/components/kv-file-viewer/kv-file-viewer.module.d.ts +8 -0
  229. package/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.d.ts +24 -0
  230. package/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.d.ts +9 -0
  231. package/lib/components/kv-filter-card/kv-filter-card.component.d.ts +13 -0
  232. package/lib/components/kv-filter-card/kv-filter-card.module.d.ts +10 -0
  233. package/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.d.ts +10 -0
  234. package/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.d.ts +9 -0
  235. package/lib/components/kv-g-icon/kv-g-icon.component.d.ts +5 -0
  236. package/lib/components/kv-g-icon/kv-g-icon.module.d.ts +9 -0
  237. package/lib/components/kv-home-card/kv-home-card.component.d.ts +24 -0
  238. package/lib/components/kv-home-card/kv-home-card.module.d.ts +11 -0
  239. package/lib/components/kv-image-upload/kv-image-upload.component.d.ts +33 -0
  240. package/lib/components/kv-image-upload/kv-image-upload.module.d.ts +8 -0
  241. package/lib/components/kv-inputs/kv-check/kv-check.component.d.ts +12 -0
  242. package/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.d.ts +33 -0
  243. package/lib/components/kv-inputs/kv-editor/kv-editor.component.d.ts +30 -0
  244. package/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.d.ts +34 -0
  245. package/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.d.ts +12 -0
  246. package/lib/components/kv-inputs/kv-input-number/kv-input-number.component.d.ts +19 -0
  247. package/lib/components/kv-inputs/kv-input-password/kv-input-password.component.d.ts +13 -0
  248. package/lib/components/kv-inputs/kv-input-text/kv-input-text.component.d.ts +11 -0
  249. package/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.d.ts +17 -0
  250. package/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.d.ts +16 -0
  251. package/lib/components/kv-inputs/kv-input-time/kv-input-time.component.d.ts +10 -0
  252. package/lib/components/kv-inputs/kv-inputs.module.d.ts +30 -0
  253. package/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.d.ts +19 -0
  254. package/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.d.ts +20 -0
  255. package/lib/components/kv-inputs/kv-select-button/kv-select-button.component.d.ts +19 -0
  256. package/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.d.ts +24 -0
  257. package/lib/components/kv-inputs/kv-switch/kv-switch.component.d.ts +16 -0
  258. package/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.d.ts +25 -0
  259. package/lib/components/kv-label/kv-label.component.d.ts +7 -0
  260. package/lib/components/kv-label/kv-label.module.d.ts +8 -0
  261. package/lib/components/kv-layout/dropdown-master/dropdown-master.component.d.ts +12 -0
  262. package/lib/components/kv-layout/kv-layout.module.d.ts +14 -0
  263. package/lib/components/kv-layout/layout/kv-layout.component.d.ts +123 -0
  264. package/lib/components/kv-loader/kv-loader.component.d.ts +7 -0
  265. package/lib/components/kv-loader/kv-loader.module.d.ts +9 -0
  266. package/lib/components/kv-loader/kv-loader.service.d.ts +10 -0
  267. package/lib/components/kv-login/kv-login.component.d.ts +32 -0
  268. package/lib/components/kv-login/kv-login.module.d.ts +13 -0
  269. package/lib/components/kv-modal/kv-modal.component.d.ts +27 -0
  270. package/lib/components/kv-modal/kv-modal.module.d.ts +10 -0
  271. package/lib/components/kv-orgchart/kv-orgchart.component.d.ts +45 -0
  272. package/lib/components/kv-orgchart/kv-orgchart.module.d.ts +17 -0
  273. package/lib/components/kv-page-form/kv-page-form.component.d.ts +104 -0
  274. package/lib/components/kv-page-form/kv-page-form.module.d.ts +12 -0
  275. package/lib/components/kv-page-stepper/kv-page-stepper.component.d.ts +84 -0
  276. package/lib/components/kv-page-stepper/kv-page-stepper.module.d.ts +13 -0
  277. package/lib/components/kv-pick-list/kv-pick-list.component.d.ts +50 -0
  278. package/lib/components/kv-pick-list/kv-pick-list.module.d.ts +11 -0
  279. package/lib/components/kv-progress-bar/kv-progress-bar.component.d.ts +67 -0
  280. package/lib/components/kv-progress-bar/kv-progress-bar.module.d.ts +9 -0
  281. package/lib/components/kv-report/kv-report.component.d.ts +18 -0
  282. package/lib/components/kv-report/kv-report.module.d.ts +8 -0
  283. package/lib/components/kv-stepper/kv-stepper.component.d.ts +32 -0
  284. package/lib/components/kv-stepper/kv-stepper.module.d.ts +12 -0
  285. package/lib/components/kv-table/kv-table.component.d.ts +154 -0
  286. package/lib/components/kv-table/kv-table.module.d.ts +12 -0
  287. package/lib/components/kv-table-edit/kv-table-edit.component.d.ts +61 -0
  288. package/lib/components/kv-table-edit/kv-table-edit.module.d.ts +15 -0
  289. package/lib/components/kv-table-expandable/kv-table-expandable.component.d.ts +119 -0
  290. package/lib/components/kv-table-expandable/kv-table-expandable.module.d.ts +13 -0
  291. package/lib/components/kv-tree-table/kv-tree-table.component.d.ts +86 -0
  292. package/lib/components/kv-tree-table/kv-tree-table.module.d.ts +11 -0
  293. package/lib/components/kv-tree-view/kv-tree-view.component.d.ts +21 -0
  294. package/lib/components/kv-tree-view/kv-tree-view.module.d.ts +9 -0
  295. package/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.d.ts +20 -0
  296. package/lib/components/kv-workspace/kv-workspace.module.d.ts +18 -0
  297. package/lib/components/kv-workspace/logo/kv-workspace-logo.component.d.ts +11 -0
  298. package/lib/components/kv-workspace/master/kv-workspace-master.component.d.ts +18 -0
  299. package/lib/components/kv-workspace/workspace/kv-workspace.component.d.ts +29 -0
  300. package/package.json +40 -27
  301. package/{src/public-api.ts → public-api.d.ts} +251 -298
  302. package/ng-package.json +0 -12
  303. package/src/assets/.gitkeep +0 -0
  304. package/src/assets/images/LogoEvo.png +0 -0
  305. package/src/assets/images/LogoPequenaEvo.png +0 -0
  306. package/src/assets/images/background.png +0 -0
  307. package/src/assets/images/keepass-logo.png +0 -0
  308. package/src/assets/images/keepass-logo.svg +0 -74
  309. package/src/assets/images/keevo-logo.png +0 -0
  310. package/src/assets/images/logokeevo_2.png +0 -0
  311. package/src/index.ts +0 -1
  312. package/src/lib/api/base-components/base-component-button.ts +0 -29
  313. package/src/lib/api/base-components/base-component-chart.ts +0 -118
  314. package/src/lib/api/base-components/base-component-crud-form.ts +0 -367
  315. package/src/lib/api/base-components/base-component-crud-list.ts +0 -129
  316. package/src/lib/api/base-components/base-component-crud.ts +0 -92
  317. package/src/lib/api/base-components/base-component-dropdown-external.ts +0 -29
  318. package/src/lib/api/base-components/base-component-dropdown-new.ts +0 -112
  319. package/src/lib/api/base-components/base-component-dropdown.ts +0 -257
  320. package/src/lib/api/base-components/base-component-input.ts +0 -121
  321. package/src/lib/api/base-components/base-component-multi-select.ts +0 -187
  322. package/src/lib/api/base-components/base-component-table.ts +0 -366
  323. package/src/lib/api/base-components/base-component.ts +0 -47
  324. package/src/lib/api/components/chart/chart.config.ts +0 -15
  325. package/src/lib/api/components/chart/chart.model.ts +0 -12
  326. package/src/lib/api/components/chart/orchart.config.ts +0 -51
  327. package/src/lib/api/components/chart/orchartnode.ts +0 -44
  328. package/src/lib/api/components/dropdown/filtro.combo.ts +0 -4
  329. package/src/lib/api/components/stepper/kv-stepperpanel.ts +0 -10
  330. package/src/lib/api/components/table/action-item.ts +0 -13
  331. package/src/lib/api/components/table/kv-menuitem.ts +0 -198
  332. package/src/lib/api/components/table/table-dropdown-control.ts +0 -6
  333. package/src/lib/api/components/table/table.config.column.ts +0 -38
  334. package/src/lib/api/components/table/table.config.ts +0 -36
  335. package/src/lib/api/components/table/table.paginate.ts +0 -7
  336. package/src/lib/api/components/table/tableedit.config.column.ts +0 -11
  337. package/src/lib/api/components/tree-table/tree-table-keys.ts +0 -12
  338. package/src/lib/api/components/tree-table/tree-table.config.ts +0 -34
  339. package/src/lib/api/directives/directives.module.ts +0 -19
  340. package/src/lib/api/directives/drag/drag.directive.ts +0 -40
  341. package/src/lib/api/directives/stepper/dynamicinput.directive.ts +0 -23
  342. package/src/lib/api/directives/template/template.directive.ts +0 -15
  343. package/src/lib/api/helpers/component-providers.ts +0 -16
  344. package/src/lib/api/helpers/keevo-validators.ts +0 -157
  345. package/src/lib/api/helpers/severity-color.ts +0 -77
  346. package/src/lib/api/helpers/translate-primeng.ts +0 -25
  347. package/src/lib/api/modules/primeng.module.ts +0 -139
  348. package/src/lib/api/pipes/capitalize.pipe.ts +0 -47
  349. package/src/lib/api/pipes/cpfcnpj.pipe.ts +0 -21
  350. package/src/lib/api/pipes/mask.pipe.ts +0 -24
  351. package/src/lib/api/pipes/pipes.module.ts +0 -26
  352. package/src/lib/api/pipes/telefone.pipe.ts +0 -38
  353. package/src/lib/api/services/base.api.service.ts +0 -115
  354. package/src/lib/api/services/breadcrumbs.service.ts +0 -71
  355. package/src/lib/api/services/chat.service.ts +0 -39
  356. package/src/lib/api/services/component.service.ts +0 -44
  357. package/src/lib/api/services/docs.service.ts +0 -129
  358. package/src/lib/api/services/form.service.ts +0 -139
  359. package/src/lib/api/services/image.cutter.service.ts +0 -290
  360. package/src/lib/api/services/imagens.service.ts +0 -28
  361. package/src/lib/api/services/notification.service.ts +0 -88
  362. package/src/lib/api/services/object.service.ts +0 -33
  363. package/src/lib/api/services/orgchart.service.ts +0 -77
  364. package/src/lib/api/types/breadcrumb.model.ts +0 -5
  365. package/src/lib/api/types/severity.ts +0 -3
  366. package/src/lib/api/types/stimulsoft.reports.d.ts +0 -67463
  367. package/src/lib/components/keevo-components.module.ts +0 -94
  368. package/src/lib/components/kv-avatar/kv-avatar.component.html +0 -34
  369. package/src/lib/components/kv-avatar/kv-avatar.component.scss +0 -114
  370. package/src/lib/components/kv-avatar/kv-avatar.component.spec.ts +0 -23
  371. package/src/lib/components/kv-avatar/kv-avatar.component.ts +0 -154
  372. package/src/lib/components/kv-avatar/kv-avatar.module.ts +0 -32
  373. package/src/lib/components/kv-button/kv-button.component.html +0 -20
  374. package/src/lib/components/kv-button/kv-button.component.spec.ts +0 -23
  375. package/src/lib/components/kv-button/kv-button.component.ts +0 -21
  376. package/src/lib/components/kv-button/kv-button.module.ts +0 -20
  377. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.html +0 -14
  378. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.scss +0 -6
  379. package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.ts +0 -25
  380. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.html +0 -12
  381. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.scss +0 -28
  382. package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.ts +0 -38
  383. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.html +0 -12
  384. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.scss +0 -18
  385. package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.ts +0 -14
  386. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.html +0 -11
  387. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.scss +0 -17
  388. package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.ts +0 -14
  389. package/src/lib/components/kv-buttons/kv-button.module.ts +0 -26
  390. package/src/lib/components/kv-card-selection/kv-card-selection.component.html +0 -72
  391. package/src/lib/components/kv-card-selection/kv-card-selection.component.scss +0 -54
  392. package/src/lib/components/kv-card-selection/kv-card-selection.component.spec.ts +0 -23
  393. package/src/lib/components/kv-card-selection/kv-card-selection.component.ts +0 -73
  394. package/src/lib/components/kv-card-selection/kv-card-selection.module.ts +0 -19
  395. package/src/lib/components/kv-carousel/kv-carousel.component.html +0 -26
  396. package/src/lib/components/kv-carousel/kv-carousel.component.scss +0 -32
  397. package/src/lib/components/kv-carousel/kv-carousel.component.spec.ts +0 -23
  398. package/src/lib/components/kv-carousel/kv-carousel.component.ts +0 -40
  399. package/src/lib/components/kv-carousel/kv-carousel.module.ts +0 -19
  400. package/src/lib/components/kv-chart/kv-chart.component.html +0 -38
  401. package/src/lib/components/kv-chart/kv-chart.component.scss +0 -0
  402. package/src/lib/components/kv-chart/kv-chart.component.spec.ts +0 -28
  403. package/src/lib/components/kv-chart/kv-chart.component.ts +0 -174
  404. package/src/lib/components/kv-chart/kv-chart.module.ts +0 -21
  405. package/src/lib/components/kv-content-viewer/kv-content-viewer.component.html +0 -151
  406. package/src/lib/components/kv-content-viewer/kv-content-viewer.component.scss +0 -159
  407. package/src/lib/components/kv-content-viewer/kv-content-viewer.component.spec.ts +0 -23
  408. package/src/lib/components/kv-content-viewer/kv-content-viewer.component.ts +0 -133
  409. package/src/lib/components/kv-content-viewer/kv-content-viewer.module.ts +0 -21
  410. package/src/lib/components/kv-error/kv-error.component.html +0 -3
  411. package/src/lib/components/kv-error/kv-error.component.scss +0 -5
  412. package/src/lib/components/kv-error/kv-error.component.ts +0 -27
  413. package/src/lib/components/kv-error/kv-error.module.ts +0 -26
  414. package/src/lib/components/kv-file-upload/kv-file-upload.component.html +0 -56
  415. package/src/lib/components/kv-file-upload/kv-file-upload.component.scss +0 -9
  416. package/src/lib/components/kv-file-upload/kv-file-upload.component.spec.ts +0 -23
  417. package/src/lib/components/kv-file-upload/kv-file-upload.component.ts +0 -163
  418. package/src/lib/components/kv-file-upload/kv-file-upload.module.ts +0 -10
  419. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.html +0 -16
  420. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.scss +0 -18
  421. package/src/lib/components/kv-file-viewer/kv-file-viewer.component.ts +0 -42
  422. package/src/lib/components/kv-file-viewer/kv-file-viewer.module.ts +0 -14
  423. package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.html +0 -34
  424. package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.scss +0 -17
  425. package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.ts +0 -80
  426. package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.ts +0 -15
  427. package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.html +0 -103
  428. package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.scss +0 -153
  429. package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.spec.ts +0 -23
  430. package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.ts +0 -73
  431. package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.module.ts +0 -18
  432. package/src/lib/components/kv-filter-card/kv-filter-card.component.html +0 -18
  433. package/src/lib/components/kv-filter-card/kv-filter-card.component.scss +0 -74
  434. package/src/lib/components/kv-filter-card/kv-filter-card.component.spec.ts +0 -23
  435. package/src/lib/components/kv-filter-card/kv-filter-card.component.ts +0 -18
  436. package/src/lib/components/kv-filter-card/kv-filter-card.module.ts +0 -23
  437. package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.html +0 -25
  438. package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.scss +0 -22
  439. package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.spec.ts +0 -23
  440. package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.ts +0 -20
  441. package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.ts +0 -20
  442. package/src/lib/components/kv-g-icon/kv-g-icon.component.html +0 -1
  443. package/src/lib/components/kv-g-icon/kv-g-icon.component.scss +0 -0
  444. package/src/lib/components/kv-g-icon/kv-g-icon.component.spec.ts +0 -23
  445. package/src/lib/components/kv-g-icon/kv-g-icon.component.ts +0 -10
  446. package/src/lib/components/kv-g-icon/kv-g-icon.module.ts +0 -11
  447. package/src/lib/components/kv-home-card/kv-home-card.component.html +0 -35
  448. package/src/lib/components/kv-home-card/kv-home-card.component.scss +0 -5
  449. package/src/lib/components/kv-home-card/kv-home-card.component.spec.ts +0 -23
  450. package/src/lib/components/kv-home-card/kv-home-card.component.ts +0 -33
  451. package/src/lib/components/kv-home-card/kv-home-card.module.ts +0 -18
  452. package/src/lib/components/kv-image-upload/kv-image-upload.component.html +0 -64
  453. package/src/lib/components/kv-image-upload/kv-image-upload.component.scss +0 -0
  454. package/src/lib/components/kv-image-upload/kv-image-upload.component.ts +0 -154
  455. package/src/lib/components/kv-image-upload/kv-image-upload.module.ts +0 -10
  456. package/src/lib/components/kv-inputs/kv-check/kv-check.component.html +0 -12
  457. package/src/lib/components/kv-inputs/kv-check/kv-check.component.scss +0 -38
  458. package/src/lib/components/kv-inputs/kv-check/kv-check.component.ts +0 -32
  459. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.html +0 -87
  460. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.scss +0 -56
  461. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.ts +0 -119
  462. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.html +0 -102
  463. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.scss +0 -45
  464. package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.ts +0 -177
  465. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.html +0 -37
  466. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.scss +0 -23
  467. package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.ts +0 -197
  468. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.html +0 -24
  469. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.scss +0 -0
  470. package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.ts +0 -35
  471. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.html +0 -23
  472. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.scss +0 -0
  473. package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.ts +0 -61
  474. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.html +0 -24
  475. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.scss +0 -0
  476. package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.ts +0 -26
  477. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.html +0 -23
  478. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.scss +0 -18
  479. package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.ts +0 -40
  480. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.html +0 -53
  481. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.scss +0 -41
  482. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.spec.ts +0 -23
  483. package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.ts +0 -46
  484. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.html +0 -23
  485. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.scss +0 -0
  486. package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.ts +0 -40
  487. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.html +0 -24
  488. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.scss +0 -0
  489. package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.ts +0 -27
  490. package/src/lib/components/kv-inputs/kv-inputs.module.ts +0 -83
  491. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.html +0 -85
  492. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.scss +0 -44
  493. package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.ts +0 -53
  494. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.html +0 -19
  495. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.scss +0 -22
  496. package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.ts +0 -63
  497. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.html +0 -26
  498. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.scss +0 -5
  499. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.spec.ts +0 -21
  500. package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.ts +0 -30
  501. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.html +0 -26
  502. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.scss +0 -41
  503. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.spec.ts +0 -23
  504. package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.ts +0 -41
  505. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.html +0 -23
  506. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.scss +0 -35
  507. package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.ts +0 -54
  508. package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.html +0 -68
  509. package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.scss +0 -86
  510. package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.ts +0 -59
  511. package/src/lib/components/kv-label/kv-label.component.html +0 -6
  512. package/src/lib/components/kv-label/kv-label.component.scss +0 -9
  513. package/src/lib/components/kv-label/kv-label.component.spec.ts +0 -23
  514. package/src/lib/components/kv-label/kv-label.component.ts +0 -14
  515. package/src/lib/components/kv-label/kv-label.module.ts +0 -17
  516. package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.html +0 -15
  517. package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.scss +0 -0
  518. package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.spec.ts +0 -28
  519. package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.ts +0 -34
  520. package/src/lib/components/kv-layout/kv-layout.module.ts +0 -35
  521. package/src/lib/components/kv-layout/layout/kv-layout.component.html +0 -507
  522. package/src/lib/components/kv-layout/layout/kv-layout.component.scss +0 -290
  523. package/src/lib/components/kv-layout/layout/kv-layout.component.spec.ts +0 -23
  524. package/src/lib/components/kv-layout/layout/kv-layout.component.ts +0 -344
  525. package/src/lib/components/kv-loader/kv-loader.component.html +0 -1
  526. package/src/lib/components/kv-loader/kv-loader.component.ts +0 -11
  527. package/src/lib/components/kv-loader/kv-loader.module.ts +0 -17
  528. package/src/lib/components/kv-loader/kv-loader.service.ts +0 -29
  529. package/src/lib/components/kv-login/kv-login.component.html +0 -101
  530. package/src/lib/components/kv-login/kv-login.component.scss +0 -99
  531. package/src/lib/components/kv-login/kv-login.component.spec.ts +0 -23
  532. package/src/lib/components/kv-login/kv-login.component.ts +0 -97
  533. package/src/lib/components/kv-login/kv-login.module.ts +0 -33
  534. package/src/lib/components/kv-modal/kv-modal.component.html +0 -20
  535. package/src/lib/components/kv-modal/kv-modal.component.scss +0 -37
  536. package/src/lib/components/kv-modal/kv-modal.component.spec.ts +0 -21
  537. package/src/lib/components/kv-modal/kv-modal.component.ts +0 -111
  538. package/src/lib/components/kv-modal/kv-modal.module.ts +0 -12
  539. package/src/lib/components/kv-orgchart/kv-orgchart.component.html +0 -125
  540. package/src/lib/components/kv-orgchart/kv-orgchart.component.scss +0 -73
  541. package/src/lib/components/kv-orgchart/kv-orgchart.component.ts +0 -283
  542. package/src/lib/components/kv-orgchart/kv-orgchart.module.ts +0 -31
  543. package/src/lib/components/kv-page-form/kv-page-form.component.html +0 -116
  544. package/src/lib/components/kv-page-form/kv-page-form.component.scss +0 -74
  545. package/src/lib/components/kv-page-form/kv-page-form.component.spec.ts +0 -28
  546. package/src/lib/components/kv-page-form/kv-page-form.component.ts +0 -206
  547. package/src/lib/components/kv-page-form/kv-page-form.module.ts +0 -33
  548. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.html +0 -251
  549. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.scss +0 -129
  550. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.spec.ts +0 -23
  551. package/src/lib/components/kv-page-stepper/kv-page-stepper.component.ts +0 -223
  552. package/src/lib/components/kv-page-stepper/kv-page-stepper.module.ts +0 -34
  553. package/src/lib/components/kv-pick-list/kv-pick-list.component.html +0 -31
  554. package/src/lib/components/kv-pick-list/kv-pick-list.component.scss +0 -19
  555. package/src/lib/components/kv-pick-list/kv-pick-list.component.spec.ts +0 -26
  556. package/src/lib/components/kv-pick-list/kv-pick-list.component.ts +0 -130
  557. package/src/lib/components/kv-pick-list/kv-pick-list.module.ts +0 -24
  558. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.html +0 -38
  559. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.scss +0 -128
  560. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.spec.ts +0 -21
  561. package/src/lib/components/kv-progress-bar/kv-progress-bar.component.ts +0 -75
  562. package/src/lib/components/kv-progress-bar/kv-progress-bar.module.ts +0 -19
  563. package/src/lib/components/kv-report/kv-report.component.html +0 -3
  564. package/src/lib/components/kv-report/kv-report.component.scss +0 -14
  565. package/src/lib/components/kv-report/kv-report.component.spec.ts +0 -28
  566. package/src/lib/components/kv-report/kv-report.component.ts +0 -44
  567. package/src/lib/components/kv-report/kv-report.module.ts +0 -18
  568. package/src/lib/components/kv-stepper/kv-stepper.component.html +0 -63
  569. package/src/lib/components/kv-stepper/kv-stepper.component.scss +0 -41
  570. package/src/lib/components/kv-stepper/kv-stepper.component.spec.ts +0 -23
  571. package/src/lib/components/kv-stepper/kv-stepper.component.ts +0 -73
  572. package/src/lib/components/kv-stepper/kv-stepper.module.ts +0 -24
  573. package/src/lib/components/kv-table/kv-table.component.html +0 -637
  574. package/src/lib/components/kv-table/kv-table.component.spec.ts +0 -28
  575. package/src/lib/components/kv-table/kv-table.component.ts +0 -792
  576. package/src/lib/components/kv-table/kv-table.module.ts +0 -25
  577. package/src/lib/components/kv-table-edit/kv-table-edit.component.html +0 -775
  578. package/src/lib/components/kv-table-edit/kv-table-edit.component.scss +0 -727
  579. package/src/lib/components/kv-table-edit/kv-table-edit.component.ts +0 -388
  580. package/src/lib/components/kv-table-edit/kv-table-edit.module.ts +0 -31
  581. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.html +0 -634
  582. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.scss +0 -387
  583. package/src/lib/components/kv-table-expandable/kv-table-expandable.component.ts +0 -546
  584. package/src/lib/components/kv-table-expandable/kv-table-expandable.module.ts +0 -22
  585. package/src/lib/components/kv-tree-table/kv-tree-table.component.html +0 -492
  586. package/src/lib/components/kv-tree-table/kv-tree-table.component.scss +0 -187
  587. package/src/lib/components/kv-tree-table/kv-tree-table.component.spec.ts +0 -21
  588. package/src/lib/components/kv-tree-table/kv-tree-table.component.ts +0 -355
  589. package/src/lib/components/kv-tree-table/kv-tree-table.module.ts +0 -23
  590. package/src/lib/components/kv-tree-view/kv-tree-view.component.html +0 -16
  591. package/src/lib/components/kv-tree-view/kv-tree-view.component.scss +0 -19
  592. package/src/lib/components/kv-tree-view/kv-tree-view.component.spec.ts +0 -23
  593. package/src/lib/components/kv-tree-view/kv-tree-view.component.ts +0 -73
  594. package/src/lib/components/kv-tree-view/kv-tree-view.module.ts +0 -19
  595. package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.html +0 -14
  596. package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.scss +0 -0
  597. package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.spec.ts +0 -28
  598. package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.ts +0 -77
  599. package/src/lib/components/kv-workspace/kv-workspace.module.ts +0 -43
  600. package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.html +0 -20
  601. package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.scss +0 -0
  602. package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.spec.ts +0 -28
  603. package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.ts +0 -18
  604. package/src/lib/components/kv-workspace/master/kv-workspace-master.component.html +0 -12
  605. package/src/lib/components/kv-workspace/master/kv-workspace-master.component.scss +0 -0
  606. package/src/lib/components/kv-workspace/master/kv-workspace-master.component.spec.ts +0 -28
  607. package/src/lib/components/kv-workspace/master/kv-workspace-master.component.ts +0 -72
  608. package/src/lib/components/kv-workspace/workspace/kv-workspace.component.html +0 -50
  609. package/src/lib/components/kv-workspace/workspace/kv-workspace.component.scss +0 -17
  610. package/src/lib/components/kv-workspace/workspace/kv-workspace.component.ts +0 -60
  611. package/tsconfig.lib.json +0 -14
  612. package/tsconfig.lib.prod.json +0 -10
  613. package/tsconfig.spec.json +0 -14
@@ -0,0 +1,19 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { KvGIconComponent } from './kv-g-icon.component';
4
+ import { PrimeNgModule } from '../../api/modules/primeng.module';
5
+ import * as i0 from "@angular/core";
6
+ export class KvGIconModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvGIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvGIconModule, declarations: [KvGIconComponent], imports: [CommonModule, PrimeNgModule], exports: [KvGIconComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvGIconModule, imports: [CommonModule, PrimeNgModule] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvGIconModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [KvGIconComponent],
15
+ imports: [CommonModule, PrimeNgModule],
16
+ exports: [KvGIconComponent],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZy1pY29uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWctaWNvbi9rdi1nLWljb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFPakUsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLGlCQUpULGdCQUFnQixhQUNyQixZQUFZLEVBQUMsYUFBYSxhQUMxQixnQkFBZ0I7K0dBRWYsYUFBYSxZQUhkLFlBQVksRUFBQyxhQUFhOzsyRkFHekIsYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFDLGFBQWEsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgS3ZHSWNvbkNvbXBvbmVudCB9IGZyb20gJy4va3YtZy1pY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaW1lTmdNb2R1bGUgfSBmcm9tICcuLi8uLi9hcGkvbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0t2R0ljb25Db21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsUHJpbWVOZ01vZHVsZV0sXHJcbiAgZXhwb3J0czogW0t2R0ljb25Db21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZHSWNvbk1vZHVsZSB7fVxyXG4iXX0=
@@ -0,0 +1,27 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../kv-button/kv-button.component";
5
+ export class KvHomeCardComponent {
6
+ constructor() {
7
+ this.borderCalss = 'border-round-xl';
8
+ this.contentOverflow = 'none';
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvHomeCardComponent, selector: "kv-home-card", inputs: { titulo: "titulo", headerActions: "headerActions", headerTemplate: "headerTemplate", borderCalss: "borderCalss", contentOverflow: "contentOverflow" }, ngImport: i0, template: "<div class=\"p-card flex-auto flex flex-column h-full {{ borderCalss }}\">\r\n <div class=\"h-auto\">\r\n <div class=\"h-auto flex flex-row justify-content-between formgrid grid p-fluid p-2 ml-2\">\r\n <div class=\"h-full flex align-items-center justify-content-start w-auto\">\r\n <span class=\"text-base font-bold\">\r\n {{ titulo }}\r\n <div class=\"marcador-titulo\"></div>\r\n </span>\r\n </div>\r\n\r\n <div class=\" h-full ml-3 mr-3 flex flex-row lex-grow-1 gap-2 justify-content-end flex-grow-1 z-5\"\r\n >\r\n @if (headerTemplate) {\r\n <ng-container class=\"flex-grow-1\" [ngTemplateOutlet]=\"headerTemplate\">\r\n </ng-container>\r\n }\r\n\r\n <div class=\"w-auto\">\r\n @for (item of headerActions; track $index) {\r\n\r\n <kv-button\r\n [icon]=\"item.icon || 'add'\"\r\n [severity]=\"item.severity || 'primary'\"\r\n (onClick)=\"item?.command($event)\"\r\n />\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex-grow-1\" [style.overflow-y]=\"contentOverflow\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".marcador-titulo{background-color:#1c801f;width:100%;height:3px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "label", "disabled"], outputs: ["onClick"] }] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'kv-home-card', template: "<div class=\"p-card flex-auto flex flex-column h-full {{ borderCalss }}\">\r\n <div class=\"h-auto\">\r\n <div class=\"h-auto flex flex-row justify-content-between formgrid grid p-fluid p-2 ml-2\">\r\n <div class=\"h-full flex align-items-center justify-content-start w-auto\">\r\n <span class=\"text-base font-bold\">\r\n {{ titulo }}\r\n <div class=\"marcador-titulo\"></div>\r\n </span>\r\n </div>\r\n\r\n <div class=\" h-full ml-3 mr-3 flex flex-row lex-grow-1 gap-2 justify-content-end flex-grow-1 z-5\"\r\n >\r\n @if (headerTemplate) {\r\n <ng-container class=\"flex-grow-1\" [ngTemplateOutlet]=\"headerTemplate\">\r\n </ng-container>\r\n }\r\n\r\n <div class=\"w-auto\">\r\n @for (item of headerActions; track $index) {\r\n\r\n <kv-button\r\n [icon]=\"item.icon || 'add'\"\r\n [severity]=\"item.severity || 'primary'\"\r\n (onClick)=\"item?.command($event)\"\r\n />\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex-grow-1\" [style.overflow-y]=\"contentOverflow\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".marcador-titulo{background-color:#1c801f;width:100%;height:3px}\n"] }]
16
+ }], propDecorators: { titulo: [{
17
+ type: Input
18
+ }], headerActions: [{
19
+ type: Input
20
+ }], headerTemplate: [{
21
+ type: Input
22
+ }], borderCalss: [{
23
+ type: Input
24
+ }], contentOverflow: [{
25
+ type: Input
26
+ }] } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaG9tZS1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWhvbWUtY2FyZC9rdi1ob21lLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaG9tZS1jYXJkL2t2LWhvbWUtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsTUFBTSxlQUFlLENBQUM7Ozs7QUFRdEUsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQTJCVyxnQkFBVyxHQUFRLGlCQUFpQixDQUFDO1FBQ3JDLG9CQUFlLEdBQVcsTUFBTSxDQUFDO0tBQzNDOzhHQXhCWSxtQkFBbUI7a0dBQW5CLG1CQUFtQixvTkNSaEMsb3RDQW1DQTs7MkZEM0JhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxjQUFjOzhCQVVmLE1BQU07c0JBQWQsS0FBSztnQkFPRyxhQUFhO3NCQUFyQixLQUFLO2dCQU9HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSAnLi4vLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvYWN0aW9uLWl0ZW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1ob21lLWNhcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1ob21lLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9rdi1ob21lLWNhcmQuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkhvbWVDYXJkQ29tcG9uZW50IHtcclxuXHJcbiAgLyoqXHJcbiAgICogVGl0dWxvIGRvIGNhcmRcclxuICAgKiBAdHlwZSAge3N0cmluZ31cclxuICAgKi9cclxuICBASW5wdXQoKSB0aXR1bG8hOiBzdHJpbmc7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBBYXJyYXkgZGUgYcOnw7VlcyBleGliaWRhcyBubyBoZWFkZXIgZG8gbW9kYWwuIChyZWNvbWVuZG8gbm8gbWF4aW1vIDMpXHJcbiAgICogQHR5cGUgIHtBY3Rpb25JdGVtW119XHJcbiAgICovXHJcbiAgQElucHV0KCkgaGVhZGVyQWN0aW9ucyE6IEFjdGlvbkl0ZW1bXTtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIFRlbXBsYXRlIHF1ZSBzZXJhIGV4aWJpZG8gZG8gbGFkbyBkbyB0aXR1bG8gKGVudHJlIG9zIGJvdMO1ZXMgZSBvIHRpdHVsbylcclxuICAgKiBAdHlwZSAge1RlbXBsYXRlUmVmfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGhlYWRlclRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgYm9yZGVyQ2Fsc3M6IGFueSA9ICdib3JkZXItcm91bmQteGwnO1xyXG4gIEBJbnB1dCgpIGNvbnRlbnRPdmVyZmxvdzogc3RyaW5nID0gJ25vbmUnO1xyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJwLWNhcmQgZmxleC1hdXRvIGZsZXggZmxleC1jb2x1bW4gaC1mdWxsICB7eyBib3JkZXJDYWxzcyB9fVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJoLWF1dG9cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoLWF1dG8gZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBmb3JtZ3JpZCBncmlkIHAtZmx1aWQgcC0yIG1sLTJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImgtZnVsbCBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgdy1hdXRvXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkXCI+XHJcbiAgICAgICAgICB7eyB0aXR1bG8gfX1cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXJjYWRvci10aXR1bG9cIj48L2Rpdj5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIiBoLWZ1bGwgbWwtMyBtci0zIGZsZXggZmxleC1yb3cgbGV4LWdyb3ctMSBnYXAtMiBqdXN0aWZ5LWNvbnRlbnQtZW5kIGZsZXgtZ3Jvdy0xIHotNVwiXHJcbiAgICAgID5cclxuICAgICAgICBAaWYgKGhlYWRlclRlbXBsYXRlKSB7XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVGVtcGxhdGVcIj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3LWF1dG9cIj5cclxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaGVhZGVyQWN0aW9uczsgdHJhY2sgJGluZGV4KSB7XHJcblxyXG4gICAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgICBbaWNvbl09XCJpdGVtLmljb24gfHwgJ2FkZCdcIlxyXG4gICAgICAgICAgICBbc2V2ZXJpdHldPVwiaXRlbS5zZXZlcml0eSB8fCAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAob25DbGljayk9XCJpdGVtPy5jb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgW3N0eWxlLm92ZXJmbG93LXldPVwiY29udGVudE92ZXJmbG93XCI+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { KvHomeCardComponent } from './kv-home-card.component';
4
+ import { KvInputsModule } from '../kv-inputs/kv-inputs.module';
5
+ import { PrimeNgModule } from '../../api/modules/primeng.module';
6
+ import { KvButtonModule } from '../kv-button/kv-button.module';
7
+ import * as i0 from "@angular/core";
8
+ export class KvHomeCardModule {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardModule, declarations: [KvHomeCardComponent], imports: [CommonModule,
11
+ KvInputsModule,
12
+ PrimeNgModule,
13
+ KvButtonModule], exports: [KvHomeCardComponent] }); }
14
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardModule, imports: [CommonModule,
15
+ KvInputsModule,
16
+ PrimeNgModule,
17
+ KvButtonModule] }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvHomeCardModule, decorators: [{
20
+ type: NgModule,
21
+ args: [{
22
+ declarations: [KvHomeCardComponent],
23
+ imports: [
24
+ CommonModule,
25
+ KvInputsModule,
26
+ PrimeNgModule,
27
+ KvButtonModule
28
+ ],
29
+ exports: [KvHomeCardComponent]
30
+ }]
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaG9tZS1jYXJkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWhvbWUtY2FyZC9rdi1ob21lLWNhcmQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQVkvRCxNQUFNLE9BQU8sZ0JBQWdCOzhHQUFoQixnQkFBZ0I7K0dBQWhCLGdCQUFnQixpQkFUWixtQkFBbUIsYUFFaEMsWUFBWTtZQUNaLGNBQWM7WUFDZCxhQUFhO1lBQ2IsY0FBYyxhQUVOLG1CQUFtQjsrR0FFbEIsZ0JBQWdCLFlBUHpCLFlBQVk7WUFDWixjQUFjO1lBQ2QsYUFBYTtZQUNiLGNBQWM7OzJGQUlMLGdCQUFnQjtrQkFWNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGNBQWM7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgS3ZIb21lQ2FyZENvbXBvbmVudCB9IGZyb20gJy4va3YtaG9tZS1jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEt2SW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4va3YtaW5wdXRzL2t2LWlucHV0cy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQcmltZU5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdkJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uL2t2LWJ1dHRvbi9rdi1idXR0b24ubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbS3ZIb21lQ2FyZENvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgS3ZJbnB1dHNNb2R1bGUsXHJcbiAgICBQcmltZU5nTW9kdWxlLFxyXG4gICAgS3ZCdXR0b25Nb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtLdkhvbWVDYXJkQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZIb21lQ2FyZE1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,136 @@
1
+ import { Component, EventEmitter, input, Input, Output, ViewChild } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../api/services/notification.service";
4
+ import * as i2 from "./../../api/services/image.cutter.service";
5
+ import * as i3 from "primeng/button";
6
+ import * as i4 from "@angular/common";
7
+ export class KvImageUploadComponent {
8
+ constructor(notificationService, imageCutterService) {
9
+ this.notificationService = notificationService;
10
+ this.imageCutterService = imageCutterService;
11
+ this.file = null;
12
+ this.fileSrc = null;
13
+ this.widthComponent = '400px';
14
+ this.heightComponent = 'auto';
15
+ this.cutImage = input(false);
16
+ this.cutWidth = input(0);
17
+ this.cutHeight = input(0);
18
+ this.cutCircle = input(false);
19
+ this.maxHeightImage = '400px';
20
+ this.fileEmit = new EventEmitter();
21
+ this.deleteEmit = new EventEmitter();
22
+ }
23
+ onDragOver(event) {
24
+ event.preventDefault();
25
+ event.stopPropagation();
26
+ this.addDragOverClass(event);
27
+ }
28
+ onDragLeave(event) {
29
+ event.preventDefault();
30
+ event.stopPropagation();
31
+ this.removeDragOverClass(event);
32
+ }
33
+ onDrop(event) {
34
+ event.preventDefault();
35
+ event.stopPropagation();
36
+ this.removeDragOverClass(event);
37
+ if (event.dataTransfer && event.dataTransfer.files.length > 0) {
38
+ this.handleFile(event.dataTransfer.files[0]);
39
+ }
40
+ }
41
+ onFileSelected(event) {
42
+ const input = event.target;
43
+ if (input.files && input.files.length > 0) {
44
+ this.handleFile(input.files[0]);
45
+ }
46
+ }
47
+ handleFile(file) {
48
+ if (file.type.startsWith('image/')) {
49
+ if (this.cutImage() == true) {
50
+ this.file = file;
51
+ const reader = new FileReader();
52
+ reader.onload = async () => {
53
+ try {
54
+ const result = await this.imageCutterService.cut(reader.result?.toString() ?? '', this.cutWidth(), this.cutHeight(), this.cutCircle());
55
+ this.fileSrc = result;
56
+ const file = this.base64ToFile(this.fileSrc, this.file?.name ?? 'file.png');
57
+ this.fileEmit.emit(file);
58
+ }
59
+ catch (error) {
60
+ this.deleteImage();
61
+ }
62
+ };
63
+ reader.readAsDataURL(file);
64
+ }
65
+ else {
66
+ // ?! Comportamneto padrão --> Preservar <-- !!!
67
+ this.file = file;
68
+ const reader = new FileReader();
69
+ reader.onload = (e) => {
70
+ this.fileSrc = reader.result;
71
+ };
72
+ reader.readAsDataURL(file);
73
+ this.fileEmit.emit(file);
74
+ }
75
+ }
76
+ else {
77
+ this.notificationService.toastError('Apenas arquivos de imagem são permitidos.');
78
+ }
79
+ }
80
+ base64ToFile(base64String, fileName) {
81
+ // Extrair o tipo MIME da string base64
82
+ const arr = base64String.split(',');
83
+ const mime = arr[0].match(/:(.*?);/)[1];
84
+ // Converter Base64 para Binário
85
+ const binaryString = atob(arr[1]);
86
+ const len = binaryString.length;
87
+ const uint8Array = new Uint8Array(len);
88
+ for (let i = 0; i < len; i++) {
89
+ uint8Array[i] = binaryString.charCodeAt(i);
90
+ }
91
+ // Criar um Blob e, em seguida, um objeto File
92
+ const blob = new Blob([uint8Array], { type: mime });
93
+ const file = new File([blob], fileName, { type: mime });
94
+ return file;
95
+ }
96
+ addDragOverClass(event) {
97
+ const container = event.target;
98
+ container.classList.add('dragover');
99
+ }
100
+ removeDragOverClass(event) {
101
+ const container = event.target;
102
+ container.classList.remove('dragover');
103
+ }
104
+ deleteImage() {
105
+ this.file = null;
106
+ this.fileSrc = null;
107
+ if (this.fileInput) {
108
+ this.fileInput.nativeElement.value = '';
109
+ }
110
+ this.deleteEmit.emit();
111
+ }
112
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadComponent, deps: [{ token: i1.NotificationService }, { token: i2.ImageCutterService }], target: i0.ɵɵFactoryTarget.Component }); }
113
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvImageUploadComponent, selector: "kv-image-upload", inputs: { fileSrc: { classPropertyName: "fileSrc", publicName: "fileSrc", isSignal: false, isRequired: false, transformFunction: null }, widthComponent: { classPropertyName: "widthComponent", publicName: "widthComponent", isSignal: false, isRequired: false, transformFunction: null }, heightComponent: { classPropertyName: "heightComponent", publicName: "heightComponent", isSignal: false, isRequired: false, transformFunction: null }, cutImage: { classPropertyName: "cutImage", publicName: "cutImage", isSignal: true, isRequired: false, transformFunction: null }, cutWidth: { classPropertyName: "cutWidth", publicName: "cutWidth", isSignal: true, isRequired: false, transformFunction: null }, cutHeight: { classPropertyName: "cutHeight", publicName: "cutHeight", isSignal: true, isRequired: false, transformFunction: null }, cutCircle: { classPropertyName: "cutCircle", publicName: "cutCircle", isSignal: true, isRequired: false, transformFunction: null }, maxHeightImage: { classPropertyName: "maxHeightImage", publicName: "maxHeightImage", isSignal: false, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { fileEmit: "fileEmit", deleteEmit: "deleteEmit" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<div\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onDrop($event)\"\r\n class=\"relative overflow-hidden border-dashed border-2 border-round-lg border-gray-400 flex justify-content-end\"\r\n [style.width]=\"widthComponent\"\r\n [style.height]=\"heightComponent\"\r\n>\r\n\r\n <div\r\n class=\"w-full flex align-items-center justify-content-center\"\r\n style=\"cursor: pointer;\"\r\n (click)=\"fileInput.click()\"\r\n >\r\n <input\r\n type=\"file\"\r\n (change)=\"onFileSelected($event)\"\r\n #fileInput\r\n hidden\r\n accept=\"image/*\"\r\n >\r\n <div\r\n *ngIf=\"!fileSrc\"\r\n class=\"flex flex-column align-items-center justify-content-center\"\r\n >\r\n <span\r\n class=\"material-symbols-outlined mt-2\"\r\n style=\"font-size: 3rem;\"\r\n >\r\n cloud_upload\r\n </span>\r\n\r\n @if(description) {\r\n <p class=\"font-semibold\">{{description}}</p>\r\n } @else {\r\n <p class=\"font-semibold\">Arraste e solte uma imagem aqui, ou</p>\r\n <p class=\"font-semibold\">clique para selecion\u00E1-la</p>\r\n }\r\n\r\n </div>\r\n <div *ngIf=\"fileSrc || file\">\r\n <img\r\n [src]=\"fileSrc\"\r\n [alt]=\"file?.name\"\r\n class=\"w-full\"\r\n [style.maxHeight]=\"maxHeightImage\"\r\n >\r\n </div>\r\n </div>\r\n\r\n @if(fileSrc || file) {\r\n <button\r\n style=\"background-color: transparent;\"\r\n pButton\r\n (click)=\"deleteImage()\"\r\n class=\"absolute transition-colors transition-duration-500 text-red-700 hover:text-red-500 w-2rem h-2rem\"\r\n [text]=\"true\"\r\n [icon]=\"'pi pi-trash'\"\r\n >\r\n </button>\r\n }\r\n\r\n\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
114
+ }
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadComponent, decorators: [{
116
+ type: Component,
117
+ args: [{ selector: 'kv-image-upload', template: "<div\r\n (dragover)=\"onDragOver($event)\"\r\n (dragleave)=\"onDragLeave($event)\"\r\n (drop)=\"onDrop($event)\"\r\n class=\"relative overflow-hidden border-dashed border-2 border-round-lg border-gray-400 flex justify-content-end\"\r\n [style.width]=\"widthComponent\"\r\n [style.height]=\"heightComponent\"\r\n>\r\n\r\n <div\r\n class=\"w-full flex align-items-center justify-content-center\"\r\n style=\"cursor: pointer;\"\r\n (click)=\"fileInput.click()\"\r\n >\r\n <input\r\n type=\"file\"\r\n (change)=\"onFileSelected($event)\"\r\n #fileInput\r\n hidden\r\n accept=\"image/*\"\r\n >\r\n <div\r\n *ngIf=\"!fileSrc\"\r\n class=\"flex flex-column align-items-center justify-content-center\"\r\n >\r\n <span\r\n class=\"material-symbols-outlined mt-2\"\r\n style=\"font-size: 3rem;\"\r\n >\r\n cloud_upload\r\n </span>\r\n\r\n @if(description) {\r\n <p class=\"font-semibold\">{{description}}</p>\r\n } @else {\r\n <p class=\"font-semibold\">Arraste e solte uma imagem aqui, ou</p>\r\n <p class=\"font-semibold\">clique para selecion\u00E1-la</p>\r\n }\r\n\r\n </div>\r\n <div *ngIf=\"fileSrc || file\">\r\n <img\r\n [src]=\"fileSrc\"\r\n [alt]=\"file?.name\"\r\n class=\"w-full\"\r\n [style.maxHeight]=\"maxHeightImage\"\r\n >\r\n </div>\r\n </div>\r\n\r\n @if(fileSrc || file) {\r\n <button\r\n style=\"background-color: transparent;\"\r\n pButton\r\n (click)=\"deleteImage()\"\r\n class=\"absolute transition-colors transition-duration-500 text-red-700 hover:text-red-500 w-2rem h-2rem\"\r\n [text]=\"true\"\r\n [icon]=\"'pi pi-trash'\"\r\n >\r\n </button>\r\n }\r\n\r\n\r\n</div>\r\n" }]
118
+ }], ctorParameters: () => [{ type: i1.NotificationService }, { type: i2.ImageCutterService }], propDecorators: { fileSrc: [{
119
+ type: Input
120
+ }], widthComponent: [{
121
+ type: Input
122
+ }], heightComponent: [{
123
+ type: Input
124
+ }], maxHeightImage: [{
125
+ type: Input
126
+ }], description: [{
127
+ type: Input
128
+ }], fileEmit: [{
129
+ type: Output
130
+ }], deleteEmit: [{
131
+ type: Output
132
+ }], fileInput: [{
133
+ type: ViewChild,
134
+ args: ['fileInput']
135
+ }] } });
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaW1hZ2UtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWltYWdlLXVwbG9hZC9rdi1pbWFnZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW1hZ2UtdXBsb2FkL2t2LWltYWdlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVFyRyxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQW9CLG1CQUF3QyxFQUFtQixrQkFBc0M7UUFBakcsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFtQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBR3JILFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBQ2hCLFlBQU8sR0FBZ0MsSUFBSSxDQUFDO1FBRzVDLG1CQUFjLEdBQVcsT0FBTyxDQUFDO1FBQ2pDLG9CQUFlLEdBQVcsTUFBTSxDQUFDO1FBRzFDLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakMsYUFBUSxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQTtRQUMzQixjQUFTLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFBO1FBQzVCLGNBQVMsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUE7UUFHeEIsbUJBQWMsR0FBVyxPQUFPLENBQUM7UUFJaEMsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pELGVBQVUsR0FBc0IsSUFBSSxZQUFZ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ZSB9IGZyb20gJy4vLi4vLi4vYXBpL3NlcnZpY2VzL2ltYWdlLmN1dHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGlucHV0LCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2FwaS9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWltYWdlLXVwbG9hZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LWltYWdlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2t2LWltYWdlLXVwbG9hZC5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2SW1hZ2VVcGxvYWRDb21wb25lbnQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgaW1hZ2VDdXR0ZXJTZXJ2aWNlOiBJbWFnZUN1dHRlclNlcnZpY2UpIHtcclxuXHJcbiAgfVxyXG4gIGZpbGU6IEZpbGUgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBmaWxlU3JjOiBzdHJpbmcgfCBBcnJheUJ1ZmZlciB8IG51bGwgPSBudWxsO1xyXG5cclxuXHJcbiAgQElucHV0KCkgd2lkdGhDb21wb25lbnQ6IHN0cmluZyA9ICc0MDBweCc7XHJcbiAgQElucHV0KCkgaGVpZ2h0Q29tcG9uZW50OiBzdHJpbmcgPSAnYXV0byc7XHJcblxyXG5cclxuICBjdXRJbWFnZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBjdXRXaWR0aCA9IGlucHV0PG51bWJlcj4oMClcclxuICBjdXRIZWlnaHQgPSBpbnB1dDxudW1iZXI+KDApXHJcbiAgY3V0Q2lyY2xlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpXHJcblxyXG5cclxuICBASW5wdXQoKSBtYXhIZWlnaHRJbWFnZTogc3RyaW5nID0gJzQwMHB4JztcclxuXHJcbiAgQElucHV0KCkgZGVzY3JpcHRpb24hOiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKSBmaWxlRW1pdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGRlbGV0ZUVtaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdmaWxlSW5wdXQnKSBmaWxlSW5wdXQ/OiBFbGVtZW50UmVmO1xyXG5cclxuXHJcblxyXG5cclxuICBvbkRyYWdPdmVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuYWRkRHJhZ092ZXJDbGFzcyhldmVudCk7XHJcbiAgfVxyXG5cclxuICBvbkRyYWdMZWF2ZShldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLnJlbW92ZURyYWdPdmVyQ2xhc3MoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25Ecm9wKGV2ZW50OiBEcmFnRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMucmVtb3ZlRHJhZ092ZXJDbGFzcyhldmVudCk7XHJcblxyXG4gICAgaWYgKGV2ZW50LmRhdGFUcmFuc2ZlciAmJiBldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmhhbmRsZUZpbGUoZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzWzBdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRmlsZVNlbGVjdGVkKGV2ZW50OiBFdmVudCkge1xyXG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcclxuXHJcbiAgICBpZiAoaW5wdXQuZmlsZXMgJiYgaW5wdXQuZmlsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmhhbmRsZUZpbGUoaW5wdXQuZmlsZXNbMF0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRmlsZShmaWxlOiBGaWxlKSB7XHJcbiAgICBpZiAoZmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSB7XHJcblxyXG4gICAgICBpZih0aGlzLmN1dEltYWdlKCkgPT0gdHJ1ZSl7XHJcbiAgICAgICAgdGhpcy5maWxlID0gZmlsZTtcclxuXHJcbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRyeSB7XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5pbWFnZUN1dHRlclNlcnZpY2UuY3V0KHJlYWRlci5yZXN1bHQ/LnRvU3RyaW5nKCkgPz8gJycsdGhpcy5jdXRXaWR0aCgpLHRoaXMuY3V0SGVpZ2h0KCksdGhpcy5jdXRDaXJjbGUoKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpbGVTcmMgPSByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlID0gdGhpcy5iYXNlNjRUb0ZpbGUodGhpcy5maWxlU3JjIGFzIHN0cmluZywgdGhpcy5maWxlPy5uYW1lID8/ICdmaWxlLnBuZycpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5maWxlRW1pdC5lbWl0KGZpbGUpXHJcblxyXG4gICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kZWxldGVJbWFnZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuXHJcblxyXG5cclxuXHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIC8vID8hIENvbXBvcnRhbW5ldG8gcGFkcsOjbyAtLT4gUHJlc2VydmFyIDwtLSAhISFcclxuICAgICAgICB0aGlzLmZpbGUgPSBmaWxlO1xyXG4gICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9IChlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZpbGVTcmMgPSByZWFkZXIucmVzdWx0O1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgICAgICAgdGhpcy5maWxlRW1pdC5lbWl0KGZpbGUpXHJcblxyXG4gICAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnRvYXN0RXJyb3IoJ0FwZW5hcyBhcnF1aXZvcyBkZSBpbWFnZW0gc8OjbyBwZXJtaXRpZG9zLicpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBiYXNlNjRUb0ZpbGUoYmFzZTY0U3RyaW5nOnN0cmluZywgZmlsZU5hbWU6c3RyaW5nKSB7XHJcbiAgICAvLyBFeHRyYWlyIG8gdGlwbyBNSU1FIGRhIHN0cmluZyBiYXNlNjRcclxuICAgIGNvbnN0IGFyciA9IGJhc2U2NFN0cmluZy5zcGxpdCgnLCcpO1xyXG4gICAgY29uc3QgbWltZSA9IGFyclswXS5tYXRjaCgvOiguKj8pOy8pIVsxXTtcclxuXHJcbiAgICAvLyBDb252ZXJ0ZXIgQmFzZTY0IHBhcmEgQmluw6FyaW9cclxuICAgIGNvbnN0IGJpbmFyeVN0cmluZyA9IGF0b2IoYXJyWzFdKTtcclxuICAgIGNvbnN0IGxlbiA9IGJpbmFyeVN0cmluZy5sZW5ndGg7XHJcbiAgICBjb25zdCB1aW50OEFycmF5ID0gbmV3IFVpbnQ4QXJyYXkobGVuKTtcclxuXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgdWludDhBcnJheVtpXSA9IGJpbmFyeVN0cmluZy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENyaWFyIHVtIEJsb2IgZSwgZW0gc2VndWlkYSwgdW0gb2JqZXRvIEZpbGVcclxuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbdWludDhBcnJheV0sIHsgdHlwZTogbWltZSB9KTtcclxuICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShbYmxvYl0sIGZpbGVOYW1lLCB7IHR5cGU6IG1pbWUgfSk7XHJcblxyXG4gICAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbiAgYWRkRHJhZ092ZXJDbGFzcyhldmVudDogRHJhZ0V2ZW50KSB7XHJcbiAgICBjb25zdCBjb250YWluZXIgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb250YWluZXIuY2xhc3NMaXN0LmFkZCgnZHJhZ292ZXInKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZURyYWdPdmVyQ2xhc3MoZXZlbnQ6IERyYWdFdmVudCkge1xyXG4gICAgY29uc3QgY29udGFpbmVyID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgY29udGFpbmVyLmNsYXNzTGlzdC5yZW1vdmUoJ2RyYWdvdmVyJyk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVJbWFnZSgpIHtcclxuICAgIHRoaXMuZmlsZSA9IG51bGw7XHJcbiAgICB0aGlzLmZpbGVTcmMgPSBudWxsO1xyXG4gICAgaWYgKHRoaXMuZmlsZUlucHV0KSB7XHJcbiAgICAgIHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIH1cclxuICAgIHRoaXMuZGVsZXRlRW1pdC5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAgIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxyXG4gICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZSgkZXZlbnQpXCJcclxuICAgIChkcm9wKT1cIm9uRHJvcCgkZXZlbnQpXCJcclxuICAgIGNsYXNzPVwicmVsYXRpdmUgb3ZlcmZsb3ctaGlkZGVuIGJvcmRlci1kYXNoZWQgYm9yZGVyLTIgYm9yZGVyLXJvdW5kLWxnIGJvcmRlci1ncmF5LTQwMCBmbGV4IGp1c3RpZnktY29udGVudC1lbmRcIlxyXG4gICAgW3N0eWxlLndpZHRoXT1cIndpZHRoQ29tcG9uZW50XCJcclxuICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0Q29tcG9uZW50XCJcclxuPlxyXG5cclxuICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cInctZnVsbCBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCJcclxuICAgICAgICBzdHlsZT1cImN1cnNvcjogcG9pbnRlcjtcIlxyXG4gICAgICAgIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiXHJcbiAgICA+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgI2ZpbGVJbnB1dFxyXG4gICAgICAgICAgICBoaWRkZW5cclxuICAgICAgICAgICAgYWNjZXB0PVwiaW1hZ2UvKlwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgKm5nSWY9XCIhZmlsZVNyY1wiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIG10LTJcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJmb250LXNpemU6IDNyZW07XCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgY2xvdWRfdXBsb2FkXHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgIEBpZihkZXNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICA8cCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57e2Rlc2NyaXB0aW9ufX08L3A+XHJcbiAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICA8cCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj5BcnJhc3RlIGUgc29sdGUgdW1hIGltYWdlbSBhcXVpLCBvdTwvcD5cclxuICAgICAgICAgICAgPHAgY2xhc3M9XCJmb250LXNlbWlib2xkXCI+Y2xpcXVlIHBhcmEgc2VsZWNpb27DoS1sYTwvcD5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZmlsZVNyYyB8fCBmaWxlXCI+XHJcbiAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgIFtzcmNdPVwiZmlsZVNyY1wiXHJcbiAgICAgICAgICAgICAgICBbYWx0XT1cImZpbGU/Lm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxyXG4gICAgICAgICAgICAgICAgW3N0eWxlLm1heEhlaWdodF09XCJtYXhIZWlnaHRJbWFnZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZihmaWxlU3JjIHx8IGZpbGUpIHtcclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XCJcclxuICAgICAgICAgICAgcEJ1dHRvblxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlSW1hZ2UoKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgdHJhbnNpdGlvbi1jb2xvcnMgdHJhbnNpdGlvbi1kdXJhdGlvbi01MDAgdGV4dC1yZWQtNzAwIGhvdmVyOnRleHQtcmVkLTUwMCB3LTJyZW0gaC0ycmVtXCJcclxuICAgICAgICAgICAgW3RleHRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtpY29uXT1cIidwaSBwaS10cmFzaCdcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { KvImageUploadComponent } from "./kv-image-upload.component";
3
+ import { PrimeNgModule } from "../../api/modules/primeng.module";
4
+ import * as i0 from "@angular/core";
5
+ export class KvImageUploadModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadModule, declarations: [KvImageUploadComponent], imports: [PrimeNgModule], exports: [KvImageUploadComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadModule, imports: [PrimeNgModule] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvImageUploadModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ declarations: [KvImageUploadComponent],
14
+ imports: [PrimeNgModule],
15
+ exports: [KvImageUploadComponent]
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaW1hZ2UtdXBsb2FkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWltYWdlLXVwbG9hZC9rdi1pbWFnZS11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQU9qRSxNQUFNLE9BQU8sbUJBQW1COzhHQUFuQixtQkFBbUI7K0dBQW5CLG1CQUFtQixpQkFKYixzQkFBc0IsYUFDM0IsYUFBYSxhQUNiLHNCQUFzQjsrR0FFdkIsbUJBQW1CLFlBSGxCLGFBQWE7OzJGQUdkLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUN4QixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEt2SW1hZ2VVcGxvYWRDb21wb25lbnQgfSBmcm9tIFwiLi9rdi1pbWFnZS11cGxvYWQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFByaW1lTmdNb2R1bGUgfSBmcm9tIFwiLi4vLi4vYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtLdkltYWdlVXBsb2FkQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFtQcmltZU5nTW9kdWxlXSxcclxuICAgIGV4cG9ydHM6IFtLdkltYWdlVXBsb2FkQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZJbWFnZVVwbG9hZE1vZHVsZSB7IH0iXX0=
@@ -0,0 +1,29 @@
1
+ import { Component, EventEmitter, Output } from '@angular/core';
2
+ import { BaseComponentInput } from '../../../api/base-components/base-component-input';
3
+ import { ComponentProviders } from '../../../api/helpers/component-providers';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../api/services/component.service";
6
+ import * as i2 from "@angular/forms";
7
+ import * as i3 from "../../kv-error/kv-error.component";
8
+ import * as i4 from "primeng/checkbox";
9
+ export class KvCheckComponent extends BaseComponentInput {
10
+ constructor(componentService) {
11
+ super(componentService);
12
+ this.onCheckChange = new EventEmitter();
13
+ }
14
+ ngOnInit() {
15
+ super.ngOnInit();
16
+ }
17
+ emitOnCheckChange(event) {
18
+ this.onCheckChange.emit(event);
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCheckComponent, deps: [{ token: i1.ComponentService }], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvCheckComponent, selector: "kv-check", outputs: { onCheckChange: "onCheckChange" }, providers: ComponentProviders(KvCheckComponent), usesInheritance: true, ngImport: i0, template: "<div class=\"field-checkbox flex flex-column align-items-start\">\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [disabled]=\"disabled\"\r\n [label]=\"label\"\r\n [inputId]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n (onChange)=\"emitOnCheckChange($event)\"\r\n >\r\n </p-checkbox>\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep .p-checkbox-label{font-size:.75rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}::ng-deep .p-inputgroup-addon .p-checkbox.p-component{width:100%!important;height:100%!important}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem}::ng-deep .p-checkbox-label{margin-left:.1rem}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}\n"], dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.KvErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "component", type: i4.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }] }); }
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvCheckComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'kv-check', providers: ComponentProviders(KvCheckComponent), template: "<div class=\"field-checkbox flex flex-column align-items-start\">\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [disabled]=\"disabled\"\r\n [label]=\"label\"\r\n [inputId]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n (onChange)=\"emitOnCheckChange($event)\"\r\n >\r\n </p-checkbox>\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</div>\r\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep .p-checkbox-label{font-size:.75rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}::ng-deep .p-inputgroup-addon .p-checkbox.p-component{width:100%!important;height:100%!important}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem}::ng-deep .p-checkbox-label{margin-left:.1rem}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}\n"] }]
26
+ }], ctorParameters: () => [{ type: i1.ComponentService }], propDecorators: { onCheckChange: [{
27
+ type: Output
28
+ }] } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtY2hlY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWNoZWNrL2t2LWNoZWNrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1jaGVjay9rdi1jaGVjay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7OztBQVk5RSxNQUFNLE9BQU8sZ0JBQ1gsU0FBUSxrQkFBMkI7SUFJbkMsWUFBWSxnQkFBa0M7UUFDNUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFIaEIsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUloRSxDQUFDO0lBRVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBVTtRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQWZVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLGdGQUZoQixrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENiakQsMFlBWUE7OzJGREdhLGdCQUFnQjtrQkFUNUIsU0FBUzsrQkFDRSxVQUFVLGFBTVQsa0JBQWtCLGtCQUFrQjtxRkFLckMsYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudElucHV0IH0gZnJvbSAnLi4vLi4vLi4vYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1pbnB1dCc7XHJcbmltcG9ydCB7IENvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uLy4uLy4uL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtY2hlY2snLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1jaGVjay5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICAnLi9rdi1jaGVjay5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi4vLi4va2Vldm8tY29tcG9uZW50cy1zdHlsZXMuc2NzcycsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IENvbXBvbmVudFByb3ZpZGVycyhLdkNoZWNrQ29tcG9uZW50KSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2Q2hlY2tDb21wb25lbnRcclxuICBleHRlbmRzIEJhc2VDb21wb25lbnRJbnB1dDxib29sZWFuPlxyXG4gIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAT3V0cHV0KCkgb25DaGVja0NoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbXBvbmVudFNlcnZpY2U6IENvbXBvbmVudFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxuXHJcbiAgZW1pdE9uQ2hlY2tDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5vbkNoZWNrQ2hhbmdlLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmllbGQtY2hlY2tib3ggZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1zdGFydFwiPlxyXG4gIDxwLWNoZWNrYm94XHJcbiAgICBbYmluYXJ5XT1cInRydWVcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgICBbaW5wdXRJZF09XCJjb21wb25lbnRJZFwiXHJcbiAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcclxuICAgIChvbkNoYW5nZSk9XCJlbWl0T25DaGVja0NoYW5nZSgkZXZlbnQpXCJcclxuICA+XHJcbiAgPC9wLWNoZWNrYm94PlxyXG4gIDxrdi1lcnJvciBbaGFzRXJyb3JdPVwiaGFzQ29udHJvbEVycm9yKClcIj57eyBlcnJvTWVzc2FnZSgpIH19PC9rdi1lcnJvcj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,102 @@
1
+ import { Component, computed, EventEmitter, HostListener, input, Input, Output, signal, viewChild } from '@angular/core';
2
+ import { BaseComponentDropDown } from '../../../api/base-components/base-component-dropdown';
3
+ import { ComponentProviders } from '../../../api/helpers/component-providers';
4
+ import { Dropdown } from 'primeng/dropdown';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../api/services/component.service";
7
+ import * as i2 from "primeng/dynamicdialog";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "@angular/forms";
10
+ import * as i5 from "../../kv-error/kv-error.component";
11
+ import * as i6 from "../../kv-label/kv-label.component";
12
+ import * as i7 from "primeng/api";
13
+ import * as i8 from "primeng/tooltip";
14
+ import * as i9 from "primeng/button";
15
+ import * as i10 from "primeng/divider";
16
+ import * as i11 from "primeng/dropdown";
17
+ export class KvDropdownComponent extends BaseComponentDropDown {
18
+ constructor(componentService, dialogService, elRef) {
19
+ super(componentService, dialogService);
20
+ this.elRef = elRef;
21
+ this.filterPlaceholder = '';
22
+ this.placeholder = ' ';
23
+ this.virtualScroll = false;
24
+ this.appendTo = input('body');
25
+ this.changes = signal(0);
26
+ this.onLazyLoad = new EventEmitter();
27
+ this.pDropDown = viewChild(Dropdown);
28
+ // pDropDownWidth = signal<string>('');
29
+ this.pDropDownWidth = computed(() => {
30
+ this.changes(); //registra este sinal para considerar a detecção de mudanças
31
+ const el = this.pDropDown().el.nativeElement;
32
+ const dimensions = el.getBoundingClientRect();
33
+ return `${dimensions.width}` + 'px';
34
+ });
35
+ this.dropDownWidth = signal(0);
36
+ this.dropDownWidthPx = computed(() => `${this.dropDownWidth()}px`);
37
+ this.disabledOptions = input([]);
38
+ this.isOptionDisabled = computed(() => (option) => {
39
+ return this.disabledOptions().some(disabledOption => disabledOption.id === option[this.optionValue]);
40
+ });
41
+ this.getOptionTooltip = (option) => {
42
+ const disabledOption = this.disabledOptions().find(disabledOption => disabledOption.id === option[this.optionValue]);
43
+ return disabledOption ? disabledOption.tooltip : '';
44
+ };
45
+ }
46
+ ngOnInit() {
47
+ super.ngOnInit();
48
+ if (this.dropDowValue)
49
+ this.value = this.dropDowValue;
50
+ this.capitalizeOptions(this.options);
51
+ }
52
+ ngAfterViewInit() {
53
+ super.ngAfterViewInit();
54
+ const el = this.elRef.nativeElement;
55
+ const resizeObserver = new ResizeObserver((entries) => {
56
+ for (const entry of entries) {
57
+ const target = entry.target;
58
+ this.dropDownWidth.set(target.offsetWidth);
59
+ }
60
+ });
61
+ resizeObserver.observe(el);
62
+ setTimeout(() => {
63
+ this.setWidth();
64
+ }, 400);
65
+ }
66
+ onWindowResize() {
67
+ this.setWidth();
68
+ }
69
+ setWidth() {
70
+ const el = this.elRef.nativeElement;
71
+ this.dropDownWidth.set(el.offsetWidth);
72
+ }
73
+ onInputLazyLoad(event) {
74
+ this.onLazyLoad.emit(event);
75
+ }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvDropdownComponent, deps: [{ token: i1.ComponentService }, { token: i2.DialogService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "17.3.8", type: KvDropdownComponent, selector: "kv-dropdown", inputs: { filterPlaceholder: { classPropertyName: "filterPlaceholder", publicName: "filterPlaceholder", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, dropDowValue: { classPropertyName: "dropDowValue", publicName: "dropDowValue", isSignal: false, isRequired: false, transformFunction: null }, itemTemplate: { classPropertyName: "itemTemplate", publicName: "itemTemplate", isSignal: false, isRequired: false, transformFunction: null }, selectedItemTemplate: { classPropertyName: "selectedItemTemplate", publicName: "selectedItemTemplate", isSignal: false, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: false, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: false, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, disabledOptions: { classPropertyName: "disabledOptions", publicName: "disabledOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onLazyLoad: "onLazyLoad" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, providers: ComponentProviders(KvDropdownComponent), viewQueries: [{ propertyName: "pDropDown", first: true, predicate: Dropdown, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label && label + (showAsterisk ? '*' : '')\"\r\n />\r\n\r\n <p-dropdown\r\n [appendTo]=\"appendTo()\"\r\n scrollHeight=\"250px\"\r\n styleClass=\"inputs\"\r\n [(ngModel)]=\"value\"\r\n [class]=\"baseInputClass\"\r\n [disabled]=\"disabled\"\r\n [emptyMessage]=\"emptyMessage()\"\r\n [filter]=\"filter\"\r\n [group]=\"group\"\r\n [inputId]=\"componentId\"\r\n [lazy]=\"lazy\"\r\n [loading]=\"loading\"\r\n [optionDisabled]=\"optionDisabled\"\r\n [optionGroupChildren]=\"optionGroupChildren\"\r\n [optionGroupLabel]=\"optionGroupLabel\"\r\n [optionLabel]=\"optionLabel\"\r\n [options]=\"filteredOptions\"\r\n [optionValue]=\"optionValue\"\r\n [panelStyle]=\"{ width: dropDownWidthPx() }\"\r\n [showClear]=\"showClear\"\r\n [filterPlaceholder]=\"filterPlaceholder\"\r\n [placeholder]=\"placeholder\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onChange)=\"onInputChange($event)\"\r\n (onClick)=\"onInputClick($event)\"\r\n (onFilter)=\"onInputFilter($event)\"\r\n (onLazyLoad)=\"onInputLazyLoad($event)\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [virtualScrollItemSize]=\"virtualScrollItemSize\"\r\n >\r\n <ng-template *ngIf=\"showAddButton\" pTemplate=\"footer\">\r\n <p-divider></p-divider>\r\n <div class=\"flex flex-wrap card-container p-1\">\r\n <div class=\"flex justify-content-center\">\r\n <button\r\n pButton\r\n label=\"Incluir\"\r\n pTooltip=\"Clique aqui para incluir um novo registro\"\r\n tooltipPosition=\"bottom\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-button-rounded p-button-success mr-2\"\r\n (click)=\"addClick($event)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template let-item pTemplate=\"item\">\r\n <div\r\n [pTooltip]=\"getOptionTooltip(item)\"\r\n tooltipPosition=\"left\"\r\n class=\"p-2 {{ isOptionDisabled()(item) && 'disable' }}\"\r\n >\r\n <ng-container\r\n *ngIf=\"itemTemplate\"\r\n [ngTemplateOutlet]=\"itemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n >\r\n </ng-container>\r\n <span *ngIf=\"!itemTemplate\">{{ item[optionLabel] }}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n let-selectedItem\r\n pTemplate=\"selectedItem\"\r\n *ngIf=\"selectedItemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"selectedItemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n\r\n <!-- :: -->\r\n </p-dropdown>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}::ng-deep .p-dropdown{width:100%}::ng-deep .p-dropdown-item{font-size:.875rem;padding:.5rem;text-overflow:ellipsis;width:100%}::ng-deep .p-dropdown-filter{height:1.875rem}::ng-deep .p-dropdown-panel .p-dropdown-header{padding:.75rem}::ng-deep .p-dropdown-panel .p-dropdown-items{padding:.75rem}::ng-deep p-dropdown p-overlay .p-overlay{max-width:100%}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-empty-message{padding:.75rem;font-size:.875rem}::ng-deep .p-inputtext{font-size:.875rem}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item{padding:0}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item:has(.disable){background-color:#f0f0f0;opacity:.5;cursor:not-allowed;pointer-events:auto}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item:has(.disable):active{pointer-events:none}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.KvErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "component", type: i6.KvLabelComponent, selector: "kv-label", inputs: ["componentId", "label"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i9.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i10.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i11.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }] }); }
78
+ }
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvDropdownComponent, decorators: [{
80
+ type: Component,
81
+ args: [{ selector: 'kv-dropdown', providers: ComponentProviders(KvDropdownComponent), template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label && label + (showAsterisk ? '*' : '')\"\r\n />\r\n\r\n <p-dropdown\r\n [appendTo]=\"appendTo()\"\r\n scrollHeight=\"250px\"\r\n styleClass=\"inputs\"\r\n [(ngModel)]=\"value\"\r\n [class]=\"baseInputClass\"\r\n [disabled]=\"disabled\"\r\n [emptyMessage]=\"emptyMessage()\"\r\n [filter]=\"filter\"\r\n [group]=\"group\"\r\n [inputId]=\"componentId\"\r\n [lazy]=\"lazy\"\r\n [loading]=\"loading\"\r\n [optionDisabled]=\"optionDisabled\"\r\n [optionGroupChildren]=\"optionGroupChildren\"\r\n [optionGroupLabel]=\"optionGroupLabel\"\r\n [optionLabel]=\"optionLabel\"\r\n [options]=\"filteredOptions\"\r\n [optionValue]=\"optionValue\"\r\n [panelStyle]=\"{ width: dropDownWidthPx() }\"\r\n [showClear]=\"showClear\"\r\n [filterPlaceholder]=\"filterPlaceholder\"\r\n [placeholder]=\"placeholder\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onChange)=\"onInputChange($event)\"\r\n (onClick)=\"onInputClick($event)\"\r\n (onFilter)=\"onInputFilter($event)\"\r\n (onLazyLoad)=\"onInputLazyLoad($event)\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [virtualScrollItemSize]=\"virtualScrollItemSize\"\r\n >\r\n <ng-template *ngIf=\"showAddButton\" pTemplate=\"footer\">\r\n <p-divider></p-divider>\r\n <div class=\"flex flex-wrap card-container p-1\">\r\n <div class=\"flex justify-content-center\">\r\n <button\r\n pButton\r\n label=\"Incluir\"\r\n pTooltip=\"Clique aqui para incluir um novo registro\"\r\n tooltipPosition=\"bottom\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-button-rounded p-button-success mr-2\"\r\n (click)=\"addClick($event)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template let-item pTemplate=\"item\">\r\n <div\r\n [pTooltip]=\"getOptionTooltip(item)\"\r\n tooltipPosition=\"left\"\r\n class=\"p-2 {{ isOptionDisabled()(item) && 'disable' }}\"\r\n >\r\n <ng-container\r\n *ngIf=\"itemTemplate\"\r\n [ngTemplateOutlet]=\"itemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n >\r\n </ng-container>\r\n <span *ngIf=\"!itemTemplate\">{{ item[optionLabel] }}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n let-selectedItem\r\n pTemplate=\"selectedItem\"\r\n *ngIf=\"selectedItemTemplate\"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"selectedItemTemplate\"\r\n [ngTemplateOutletContext]=\"{ $implicit: selectedItem }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n\r\n <!-- :: -->\r\n </p-dropdown>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-dropdown .p-dropdown-label{display:flex;align-items:center}::ng-deep .p-dropdown{width:100%}::ng-deep .p-dropdown-item{font-size:.875rem;padding:.5rem;text-overflow:ellipsis;width:100%}::ng-deep .p-dropdown-filter{height:1.875rem}::ng-deep .p-dropdown-panel .p-dropdown-header{padding:.75rem}::ng-deep .p-dropdown-panel .p-dropdown-items{padding:.75rem}::ng-deep p-dropdown p-overlay .p-overlay{max-width:100%}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-empty-message{padding:.75rem;font-size:.875rem}::ng-deep .p-inputtext{font-size:.875rem}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item{padding:0}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item:has(.disable){background-color:#f0f0f0;opacity:.5;cursor:not-allowed;pointer-events:auto}::ng-deep .p-dropdown-panel .p-dropdown-items .p-dropdown-item:has(.disable):active{pointer-events:none}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter var,Inter,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter var,Inter,sans-serif!important}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:#fff!important;background:#002542!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word}::ng-deep .p-dialog .p-dialog-content{padding-top:1rem}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}\n"] }]
82
+ }], ctorParameters: () => [{ type: i1.ComponentService }, { type: i2.DialogService }, { type: i0.ElementRef }], propDecorators: { filterPlaceholder: [{
83
+ type: Input
84
+ }], placeholder: [{
85
+ type: Input
86
+ }], dropDowValue: [{
87
+ type: Input
88
+ }], itemTemplate: [{
89
+ type: Input
90
+ }], selectedItemTemplate: [{
91
+ type: Input
92
+ }], virtualScroll: [{
93
+ type: Input
94
+ }], virtualScrollItemSize: [{
95
+ type: Input
96
+ }], onLazyLoad: [{
97
+ type: Output
98
+ }], onWindowResize: [{
99
+ type: HostListener,
100
+ args: ['window:resize', ['$event']]
101
+ }] } });
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWRyb3Bkb3duL2t2LWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1kcm9wZG93bi9rdi1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFFBQVEsRUFFUixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxLQUFLLEVBRUwsTUFBTSxFQUNOLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFOUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBVzVDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxxQkFBcUI7SUFDNUQsWUFDRSxnQkFBa0MsRUFDbEMsYUFBNEIsRUFDcEIsS0FBaUI7UUFFekIsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRi9CLFVBQUssR0FBTCxLQUFLLENBQVk7UUFLbEIsc0JBQWlCLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGdCQUFXLEdBQVcsR0FBRyxDQUFDO1FBS25DLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBR3hDLGFBQVEsR0FBUSxLQUFLLENBQU0sTUFBTSxDQUFDLENBQUM7UUFHbkMsWUFBTyxHQUFHLE1BQU0sQ0FBUyxDQUFDLENBQUMs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LENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFVO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBN0VVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHc5Q0FGbkIsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMscUVBMkJ2QixRQUFRLHVGQ3hEckMscTRGQXVGQTs7MkZEeERhLG1CQUFtQjtrQkFUL0IsU0FBUzsrQkFDRSxhQUFhLGFBTVosa0JBQWtCLHFCQUFxQjswSUFXekMsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNZLFdBQVc7c0JBQTVCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFPSSxVQUFVO3NCQUFuQixNQUFNO2dCQTJDQSxjQUFjO3NCQURwQixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIGNvbXB1dGVkLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBpbnB1dCxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIHNpZ25hbCxcclxuICBUZW1wbGF0ZVJlZixcclxuICB2aWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudERyb3BEb3duIH0gZnJvbSAnLi4vLi4vLi4vYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1kcm9wZG93bic7XHJcbmltcG9ydCB7IENvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uLy4uLy4uL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRHJvcGRvd24gfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtZHJvcGRvd24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICAnLi9rdi1kcm9wZG93bi5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi4vLi4va2Vldm8tY29tcG9uZW50cy1zdHlsZXMuc2NzcydcclxuICBdLFxyXG4gIHByb3ZpZGVyczogQ29tcG9uZW50UHJvdmlkZXJzKEt2RHJvcGRvd25Db21wb25lbnQpLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnREcm9wRG93biBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBjb21wb25lbnRTZXJ2aWNlOiBDb21wb25lbnRTZXJ2aWNlLFxyXG4gICAgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWZcclxuICApIHtcclxuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UsIGRpYWxvZ1NlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgZmlsdGVyUGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnICc7XHJcbiAgQElucHV0KCkgZHJvcERvd1ZhbHVlITogYW55O1xyXG4gIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKSB2aXJ0dWFsU2Nyb2xsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdmlydHVhbFNjcm9sbEl0ZW1TaXplITogbnVtYmVyO1xyXG5cclxuICBhcHBlbmRUbzogYW55ID0gaW5wdXQ8YW55PignYm9keScpO1xyXG5cclxuXHJcbiAgY2hhbmdlcyA9IHNpZ25hbDxudW1iZXI+KDApO1xyXG5cclxuICBAT3V0cHV0KCkgb25MYXp5TG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHBEcm9wRG93biA9IHZpZXdDaGlsZDxhbnk+KERyb3Bkb3duKTtcclxuXHJcbiAgLy8gcERyb3BEb3duV2lkdGggPSBzaWduYWw8c3RyaW5nPignJyk7XHJcbiAgcERyb3BEb3duV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICB0aGlzLmNoYW5nZXMoKTsgLy9yZWdpc3RyYSBlc3RlIHNpbmFsIHBhcmEgY29uc2lkZXJhciBhIGRldGVjw6fDo28gZGUgbXVkYW7Dp2FzXHJcblxyXG4gICAgY29uc3QgZWwgPSB0aGlzLnBEcm9wRG93bigpLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBkaW1lbnNpb25zID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICByZXR1cm4gYCR7ZGltZW5zaW9ucy53aWR0aH1gICsgJ3B4JztcclxuICB9KTtcclxuXHJcbiAgZHJvcERvd25XaWR0aCA9IHNpZ25hbDxudW1iZXI+KDApO1xyXG4gIGRyb3BEb3duV2lkdGhQeCA9IGNvbXB1dGVkKCgpID0+IGAke3RoaXMuZHJvcERvd25XaWR0aCgpfXB4YCk7XHJcblxyXG4gIGRpc2FibGVkT3B0aW9ucyA9IGlucHV0PGFueVtdPihbXSk7XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIGlmICh0aGlzLmRyb3BEb3dWYWx1ZSkgdGhpcy52YWx1ZSA9IHRoaXMuZHJvcERvd1ZhbHVlO1xyXG5cclxuICAgIHRoaXMuY2FwaXRhbGl6ZU9wdGlvbnModGhpcy5vcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xyXG4gICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGVudHJpZXMpIHtcclxuICAgICAgICBjb25zdCB0YXJnZXQgPSBlbnRyeS50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgICAgdGhpcy5kcm9wRG93bldpZHRoLnNldCh0YXJnZXQub2Zmc2V0V2lkdGgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKGVsKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5zZXRXaWR0aCgpO1xyXG4gICAgfSwgNDAwKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBvbldpbmRvd1Jlc2l6ZSgpIHtcclxuICAgIHRoaXMuc2V0V2lkdGgoKTtcclxuICB9XHJcblxyXG4gIHNldFdpZHRoKCkge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLmRyb3BEb3duV2lkdGguc2V0KGVsLm9mZnNldFdpZHRoKTtcclxuICB9XHJcblxyXG4gIG9uSW5wdXRMYXp5TG9hZChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uTGF6eUxvYWQuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICBpc09wdGlvbkRpc2FibGVkID0gY29tcHV0ZWQoKCkgPT4gKG9wdGlvbjogYW55KSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZE9wdGlvbnMoKS5zb21lKGRpc2FibGVkT3B0aW9uID0+IGRpc2FibGVkT3B0aW9uLmlkID09PSBvcHRpb25bdGhpcy5vcHRpb25WYWx1ZV0pO1xyXG4gIH0pXHJcblxyXG4gIGdldE9wdGlvblRvb2x0aXAgPSAob3B0aW9uOiBhbnkpID0+IHtcclxuICAgIGNvbnN0IGRpc2FibGVkT3B0aW9uID0gdGhpcy5kaXNhYmxlZE9wdGlvbnMoKS5maW5kKGRpc2FibGVkT3B0aW9uID0+IGRpc2FibGVkT3B0aW9uLmlkID09PSBvcHRpb25bdGhpcy5vcHRpb25WYWx1ZV0pO1xyXG4gICAgcmV0dXJuIGRpc2FibGVkT3B0aW9uID8gZGlzYWJsZWRPcHRpb24udG9vbHRpcCA6ICcnO1xyXG4gIH1cclxufSIsIjxzcGFuPlxyXG4gIDxrdi1sYWJlbFxyXG4gICAgW2NvbXBvbmVudElkXT1cImNvbXBvbmVudElkXCJcclxuICAgIFtsYWJlbF09XCJsYWJlbCAmJiBsYWJlbCArIChzaG93QXN0ZXJpc2sgPyAnKicgOiAnJylcIlxyXG4gIC8+XHJcblxyXG4gIDxwLWRyb3Bkb3duXHJcbiAgICBbYXBwZW5kVG9dPVwiYXBwZW5kVG8oKVwiXHJcbiAgICBzY3JvbGxIZWlnaHQ9XCIyNTBweFwiXHJcbiAgICBzdHlsZUNsYXNzPVwiaW5wdXRzXCJcclxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgW2NsYXNzXT1cImJhc2VJbnB1dENsYXNzXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICBbZW1wdHlNZXNzYWdlXT1cImVtcHR5TWVzc2FnZSgpXCJcclxuICAgIFtmaWx0ZXJdPVwiZmlsdGVyXCJcclxuICAgIFtncm91cF09XCJncm91cFwiXHJcbiAgICBbaW5wdXRJZF09XCJjb21wb25lbnRJZFwiXHJcbiAgICBbbGF6eV09XCJsYXp5XCJcclxuICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxyXG4gICAgW29wdGlvbkRpc2FibGVkXT1cIm9wdGlvbkRpc2FibGVkXCJcclxuICAgIFtvcHRpb25Hcm91cENoaWxkcmVuXT1cIm9wdGlvbkdyb3VwQ2hpbGRyZW5cIlxyXG4gICAgW29wdGlvbkdyb3VwTGFiZWxdPVwib3B0aW9uR3JvdXBMYWJlbFwiXHJcbiAgICBbb3B0aW9uTGFiZWxdPVwib3B0aW9uTGFiZWxcIlxyXG4gICAgW29wdGlvbnNdPVwiZmlsdGVyZWRPcHRpb25zXCJcclxuICAgIFtvcHRpb25WYWx1ZV09XCJvcHRpb25WYWx1ZVwiXHJcbiAgICBbcGFuZWxTdHlsZV09XCJ7IHdpZHRoOiBkcm9wRG93bldpZHRoUHgoKSB9XCJcclxuICAgIFtzaG93Q2xlYXJdPVwic2hvd0NsZWFyXCJcclxuICAgIFtmaWx0ZXJQbGFjZWhvbGRlcl09XCJmaWx0ZXJQbGFjZWhvbGRlclwiXHJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgKG9uQmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCJcclxuICAgIChvbkNoYW5nZSk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgKG9uQ2xpY2spPVwib25JbnB1dENsaWNrKCRldmVudClcIlxyXG4gICAgKG9uRmlsdGVyKT1cIm9uSW5wdXRGaWx0ZXIoJGV2ZW50KVwiXHJcbiAgICAob25MYXp5TG9hZCk9XCJvbklucHV0TGF6eUxvYWQoJGV2ZW50KVwiXHJcbiAgICBbdmlydHVhbFNjcm9sbF09XCJ2aXJ0dWFsU2Nyb2xsXCJcclxuICAgIFt2aXJ0dWFsU2Nyb2xsSXRlbVNpemVdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplXCJcclxuICA+XHJcbiAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJzaG93QWRkQnV0dG9uXCIgcFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICAgIDxwLWRpdmlkZXI+PC9wLWRpdmlkZXI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBjYXJkLWNvbnRhaW5lciBwLTFcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIHBCdXR0b25cclxuICAgICAgICAgICAgbGFiZWw9XCJJbmNsdWlyXCJcclxuICAgICAgICAgICAgcFRvb2x0aXA9XCJDbGlxdWUgYXF1aSBwYXJhIGluY2x1aXIgdW0gbm92byByZWdpc3Ryb1wiXHJcbiAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgIGljb249XCJwaSBwaS1wbHVzXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXN1Y2Nlc3MgbXItMlwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJhZGRDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlIGxldC1pdGVtIHBUZW1wbGF0ZT1cIml0ZW1cIj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIFtwVG9vbHRpcF09XCJnZXRPcHRpb25Ub29sdGlwKGl0ZW0pXCJcclxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJsZWZ0XCJcclxuICAgICAgICBjbGFzcz1cInAtMiB7eyBpc09wdGlvbkRpc2FibGVkKCkoaXRlbSkgJiYgJ2Rpc2FibGUnIH19XCJcclxuICAgICAgPlxyXG4gICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICpuZ0lmPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW1UZW1wbGF0ZVwiPnt7IGl0ZW1bb3B0aW9uTGFiZWxdIH19PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgIGxldC1zZWxlY3RlZEl0ZW1cclxuICAgICAgcFRlbXBsYXRlPVwic2VsZWN0ZWRJdGVtXCJcclxuICAgICAgKm5nSWY9XCJzZWxlY3RlZEl0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJzZWxlY3RlZEl0ZW1UZW1wbGF0ZVwiXHJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBzZWxlY3RlZEl0ZW0gfVwiXHJcbiAgICAgID5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDwhLS0gOjogLS0+XHJcbiAgPC9wLWRyb3Bkb3duPlxyXG5cclxuICA8a3YtZXJyb3IgW2hhc0Vycm9yXT1cImhhc0NvbnRyb2xFcnJvcigpXCI+e3sgZXJyb01lc3NhZ2UoKSB9fTwva3YtZXJyb3I+XHJcbjwvc3Bhbj5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4iXX0=