@koalarx/ui 12.7.17 → 13.0.1

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 (433) hide show
  1. package/alert/{esm2015/index.js → esm2020/index.mjs} +0 -0
  2. package/alert/{esm2015/koalarx-ui-alert.js → esm2020/koalarx-ui-alert.mjs} +0 -0
  3. package/alert/esm2020/lib/dialog-alert.component.mjs +48 -0
  4. package/alert/{esm2015/lib/koala.alert-config.interface.js → esm2020/lib/koala.alert-config.interface.mjs} +0 -0
  5. package/alert/{esm2015/lib/koala.alert.enum.js → esm2020/lib/koala.alert.enum.mjs} +0 -0
  6. package/alert/esm2020/lib/koala.alert.module.mjs +48 -0
  7. package/alert/esm2020/lib/koala.alert.service.mjs +19 -0
  8. package/alert/{esm2015/lib/koala.request-code-to-alert-enum.translate.js → esm2020/lib/koala.request-code-to-alert-enum.translate.mjs} +0 -0
  9. package/alert/fesm2015/koalarx-ui-alert.mjs +141 -0
  10. package/alert/fesm2015/koalarx-ui-alert.mjs.map +1 -0
  11. package/alert/fesm2020/koalarx-ui-alert.mjs +139 -0
  12. package/alert/fesm2020/koalarx-ui-alert.mjs.map +1 -0
  13. package/alert/koalarx-ui-alert.d.ts +1 -0
  14. package/alert/lib/dialog-alert.component.d.ts +3 -0
  15. package/alert/lib/koala.alert.module.d.ts +10 -0
  16. package/alert/lib/koala.alert.service.d.ts +3 -0
  17. package/alert/package.json +18 -6
  18. package/button/{esm2015/index.js → esm2020/index.mjs} +0 -0
  19. package/button/{esm2015/koalarx-ui-button.js → esm2020/koalarx-ui-button.mjs} +0 -0
  20. package/button/esm2020/lib/button.component.mjs +44 -0
  21. package/button/esm2020/lib/koala.button.module.mjs +42 -0
  22. package/button/fesm2015/koalarx-ui-button.mjs +90 -0
  23. package/button/fesm2015/koalarx-ui-button.mjs.map +1 -0
  24. package/button/fesm2020/koalarx-ui-button.mjs +90 -0
  25. package/button/fesm2020/koalarx-ui-button.mjs.map +1 -0
  26. package/button/koalarx-ui-button.d.ts +1 -0
  27. package/button/lib/button.component.d.ts +6 -1
  28. package/button/lib/koala.button.module.d.ts +10 -0
  29. package/button/package.json +18 -6
  30. package/common/{esm2015/index.js → esm2020/index.mjs} +0 -0
  31. package/common/{esm2015/koalarx-ui-common.js → esm2020/koalarx-ui-common.mjs} +0 -0
  32. package/common/{esm2015/lib/mask-options.js → esm2020/lib/mask-options.mjs} +0 -0
  33. package/common/esm2020/lib/services/csv/koala.csv.service.mjs +36 -0
  34. package/common/{esm2015/lib/services/xlsx/koala.xlsx-config.interface.js → esm2020/lib/services/xlsx/koala.xlsx-config.interface.mjs} +0 -0
  35. package/common/esm2020/lib/services/xlsx/koala.xlsx.service.mjs +73 -0
  36. package/common/fesm2015/{koalarx-ui-common.js → koalarx-ui-common.mjs} +14 -14
  37. package/common/fesm2015/koalarx-ui-common.mjs.map +1 -0
  38. package/common/fesm2020/koalarx-ui-common.mjs +118 -0
  39. package/common/fesm2020/koalarx-ui-common.mjs.map +1 -0
  40. package/common/koalarx-ui-common.d.ts +1 -0
  41. package/common/lib/services/csv/koala.csv.service.d.ts +3 -0
  42. package/common/lib/services/xlsx/koala.xlsx.service.d.ts +3 -0
  43. package/common/package.json +18 -6
  44. package/core/esm2020/index.mjs +35 -0
  45. package/core/esm2020/koalarx-ui-core.mjs +5 -0
  46. package/core/{esm2015/lib/environments/koalaEnvironment.js → esm2020/lib/environments/koalaEnvironment.mjs} +0 -0
  47. package/core/esm2020/lib/loader/loader-bar-page.component.mjs +24 -0
  48. package/core/{esm2015/lib/loader/loader-bar-page.interface.js → esm2020/lib/loader/loader-bar-page.interface.mjs} +0 -0
  49. package/core/{esm2015/lib/loader/loader-config.interface.js → esm2020/lib/loader/loader-config.interface.mjs} +0 -0
  50. package/core/esm2020/lib/ngx-koala.module.mjs +49 -0
  51. package/core/{esm2015/lib/page/koala-language.helper.js → esm2020/lib/page/koala-language.helper.mjs} +0 -0
  52. package/core/{esm2015/lib/page/koala-page-pallet-colors.interface.js → esm2020/lib/page/koala-page-pallet-colors.interface.mjs} +0 -0
  53. package/core/esm2020/lib/page/koala.page.module.mjs +78 -0
  54. package/core/{esm2015/lib/page/koala.user-menu-options.interface.js → esm2020/lib/page/koala.user-menu-options.interface.mjs} +0 -0
  55. package/core/{esm2015/lib/page/notifications/koala.notification.interface.js → esm2020/lib/page/notifications/koala.notification.interface.mjs} +0 -0
  56. package/core/esm2020/lib/page/notifications/notification.component.mjs +47 -0
  57. package/core/esm2020/lib/page/page.component.mjs +404 -0
  58. package/core/esm2020/lib/router/koala.parameter-hash-location-stategy.mjs +18 -0
  59. package/core/esm2020/lib/services/api-requester/factory/koala.response.factory.mjs +44 -0
  60. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.client.error.js → esm2020/lib/services/api-requester/helpers/error/koala.client.error.mjs} +0 -0
  61. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.errors.helper.js → esm2020/lib/services/api-requester/helpers/error/koala.errors.helper.mjs} +0 -0
  62. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.not-found.error.js → esm2020/lib/services/api-requester/helpers/error/koala.not-found.error.mjs} +0 -0
  63. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.success.error.js → esm2020/lib/services/api-requester/helpers/error/koala.success.error.mjs} +0 -0
  64. package/core/{esm2015/lib/services/api-requester/helpers/error/koala.unhautorized.error.js → esm2020/lib/services/api-requester/helpers/error/koala.unhautorized.error.mjs} +0 -0
  65. package/core/{esm2015/lib/services/api-requester/helpers/service/koala.request-header.helper.js → esm2020/lib/services/api-requester/helpers/service/koala.request-header.helper.mjs} +0 -0
  66. package/core/esm2020/lib/services/api-requester/koala.api-requester.base.mjs +63 -0
  67. package/core/esm2020/lib/services/api-requester/koala.api-requester.service.mjs +131 -0
  68. package/core/esm2020/lib/services/loader/koala.loader.service.mjs +34 -0
  69. package/core/{esm2015/lib/services/openid/koala-oauth2-config.interface.js → esm2020/lib/services/openid/koala-oauth2-config.interface.mjs} +0 -0
  70. package/core/esm2020/lib/services/openid/koala.oauth.config.mjs +30 -0
  71. package/core/esm2020/lib/services/openid/koala.oauth2.service.mjs +194 -0
  72. package/core/esm2020/lib/services/request/koala.request.service.mjs +52 -0
  73. package/core/{esm2015/lib/services/token/koala.token.service.js → esm2020/lib/services/token/koala.token.service.mjs} +7 -6
  74. package/core/esm2020/lib/services/token/token.factory.mjs +27 -0
  75. package/core/fesm2015/{koalarx-ui-core.js → koalarx-ui-core.mjs} +249 -191
  76. package/core/fesm2015/koalarx-ui-core.mjs.map +1 -0
  77. package/core/fesm2020/koalarx-ui-core.mjs +1367 -0
  78. package/core/fesm2020/koalarx-ui-core.mjs.map +1 -0
  79. package/core/index.d.ts +1 -0
  80. package/core/koalarx-ui-core.d.ts +1 -2
  81. package/core/lib/loader/loader-bar-page.component.d.ts +5 -1
  82. package/core/lib/ngx-koala.module.d.ts +7 -0
  83. package/core/lib/page/koala.page.module.d.ts +19 -0
  84. package/core/lib/page/notifications/notification.component.d.ts +3 -0
  85. package/core/lib/page/page.component.d.ts +3 -0
  86. package/core/lib/router/koala.parameter-hash-location-stategy.d.ts +3 -0
  87. package/core/lib/services/api-requester/koala.api-requester.service.d.ts +3 -0
  88. package/core/lib/services/loader/koala.loader.service.d.ts +3 -0
  89. package/core/lib/services/openid/koala.oauth2.service.d.ts +3 -0
  90. package/core/lib/services/request/koala.request.service.d.ts +3 -0
  91. package/core/lib/services/token/koala.token.service.d.ts +3 -0
  92. package/core/package.json +20 -7
  93. package/dialog/{esm2015/index.js → esm2020/index.mjs} +0 -0
  94. package/dialog/{esm2015/koalarx-ui-dialog.js → esm2020/koalarx-ui-dialog.mjs} +0 -0
  95. package/dialog/esm2020/lib/dialog.component.mjs +25 -0
  96. package/dialog/{esm2015/lib/koala.dialog-template.interface.js → esm2020/lib/koala.dialog-template.interface.mjs} +0 -0
  97. package/dialog/esm2020/lib/koala.dialog.module.mjs +38 -0
  98. package/dialog/esm2020/lib/koala.dialog.service.mjs +57 -0
  99. package/dialog/fesm2015/koalarx-ui-dialog.mjs +121 -0
  100. package/dialog/fesm2015/koalarx-ui-dialog.mjs.map +1 -0
  101. package/dialog/fesm2020/koalarx-ui-dialog.mjs +121 -0
  102. package/dialog/fesm2020/koalarx-ui-dialog.mjs.map +1 -0
  103. package/dialog/koalarx-ui-dialog.d.ts +1 -0
  104. package/dialog/lib/dialog.component.d.ts +3 -0
  105. package/dialog/lib/koala.dialog.module.d.ts +9 -0
  106. package/dialog/lib/koala.dialog.service.d.ts +3 -0
  107. package/dialog/package.json +20 -7
  108. package/dynamic-component/{esm2015/index.js → esm2020/index.mjs} +0 -0
  109. package/dynamic-component/{esm2015/koalarx-ui-dynamic-component.js → esm2020/koalarx-ui-dynamic-component.mjs} +0 -0
  110. package/dynamic-component/{esm2015/lib/koala-dynamic-component.component.js → esm2020/lib/koala-dynamic-component.component.mjs} +0 -0
  111. package/dynamic-component/esm2020/lib/koala-dynamic-component.directive.mjs +16 -0
  112. package/dynamic-component/esm2020/lib/koala-dynamic-component.factory.mjs +41 -0
  113. package/dynamic-component/{esm2015/lib/koala-dynamic-component.js → esm2020/lib/koala-dynamic-component.mjs} +0 -0
  114. package/dynamic-component/esm2020/lib/koala-dynamic-component.module.mjs +23 -0
  115. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs +87 -0
  116. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs.map +1 -0
  117. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs +86 -0
  118. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs.map +1 -0
  119. package/dynamic-component/koalarx-ui-dynamic-component.d.ts +1 -0
  120. package/dynamic-component/lib/koala-dynamic-component.directive.d.ts +3 -0
  121. package/dynamic-component/lib/koala-dynamic-component.factory.d.ts +3 -0
  122. package/dynamic-component/lib/koala-dynamic-component.module.d.ts +6 -0
  123. package/dynamic-component/package.json +18 -6
  124. package/file-button/{esm2015/index.js → esm2020/index.mjs} +0 -0
  125. package/file-button/{esm2015/koalarx-ui-file-button.js → esm2020/koalarx-ui-file-button.mjs} +0 -0
  126. package/file-button/esm2020/lib/file-button.component.mjs +125 -0
  127. package/file-button/esm2020/lib/koala.btn-file.service.mjs +25 -0
  128. package/file-button/esm2020/lib/koala.file-button.module.mjs +38 -0
  129. package/file-button/{esm2015/lib/koala.file.interface.js → esm2020/lib/koala.file.interface.mjs} +0 -0
  130. package/file-button/fesm2015/koalarx-ui-file-button.mjs +199 -0
  131. package/file-button/fesm2015/koalarx-ui-file-button.mjs.map +1 -0
  132. package/file-button/fesm2020/koalarx-ui-file-button.mjs +189 -0
  133. package/file-button/fesm2020/koalarx-ui-file-button.mjs.map +1 -0
  134. package/file-button/koalarx-ui-file-button.d.ts +1 -0
  135. package/file-button/lib/file-button.component.d.ts +4 -1
  136. package/file-button/lib/koala.btn-file.service.d.ts +3 -0
  137. package/file-button/lib/koala.file-button.module.d.ts +9 -0
  138. package/file-button/package.json +18 -6
  139. package/folder-page/{esm2015/index.js → esm2020/index.mjs} +0 -0
  140. package/folder-page/{esm2015/koalarx-ui-folder-page.js → esm2020/koalarx-ui-folder-page.mjs} +0 -0
  141. package/folder-page/esm2020/lib/folder.component.mjs +70 -0
  142. package/folder-page/{esm2015/lib/koala-navigate-history.interface.js → esm2020/lib/koala-navigate-history.interface.mjs} +0 -0
  143. package/folder-page/esm2020/lib/koala.folder-page.module.mjs +42 -0
  144. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs +117 -0
  145. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs.map +1 -0
  146. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs +116 -0
  147. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs.map +1 -0
  148. package/folder-page/koalarx-ui-folder-page.d.ts +1 -0
  149. package/folder-page/lib/folder.component.d.ts +6 -2
  150. package/folder-page/lib/koala.folder-page.module.d.ts +10 -0
  151. package/folder-page/package.json +18 -6
  152. package/form/{esm2015/index.js → esm2020/index.mjs} +0 -0
  153. package/form/{esm2015/koalarx-ui-form.js → esm2020/koalarx-ui-form.mjs} +0 -0
  154. package/form/esm2020/lib/btn-submit/btn-submit.component.mjs +49 -0
  155. package/form/esm2020/lib/directives/koala-autofocus.directive.mjs +25 -0
  156. package/form/esm2020/lib/dynamic-form/builder/dynamic-form.builder.mjs +138 -0
  157. package/form/{esm2015/lib/dynamic-form/builder/fields/autocomplete.builder.js → esm2020/lib/dynamic-form/builder/fields/autocomplete.builder.mjs} +0 -0
  158. package/form/esm2020/lib/dynamic-form/builder/fields/field.base.mjs +148 -0
  159. package/form/{esm2015/lib/dynamic-form/builder/fields/field.builder.js → esm2020/lib/dynamic-form/builder/fields/field.builder.mjs} +0 -0
  160. package/form/esm2020/lib/dynamic-form/builder/fields/more-items.builder.mjs +57 -0
  161. package/form/esm2020/lib/dynamic-form/dynamic-form.component.mjs +581 -0
  162. package/form/{esm2015/lib/dynamic-form/enums/dynamic-form-type-field.enum.js → esm2020/lib/dynamic-form/enums/dynamic-form-type-field.enum.mjs} +0 -0
  163. package/form/{esm2015/lib/dynamic-form/interfaces/koala-custom-validator-fn.interface.js → esm2020/lib/dynamic-form/interfaces/koala-custom-validator-fn.interface.mjs} +0 -0
  164. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-autocomplete-options.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-autocomplete-options.interface.mjs} +0 -0
  165. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-autocomplete-multiple-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-autocomplete-multiple-config.interface.mjs} +0 -0
  166. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.mjs} +0 -0
  167. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.mjs} +0 -0
  168. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-more-itens-show-field-config.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-more-itens-show-field-config.interface.mjs} +0 -0
  169. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-form-show-field.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-show-field.interface.mjs} +0 -0
  170. package/form/{esm2015/lib/dynamic-form/interfaces/koala.dynamic-set-value.interface.js → esm2020/lib/dynamic-form/interfaces/koala.dynamic-set-value.interface.mjs} +0 -0
  171. package/form/esm2020/lib/dynamic-form/koala.dynamic-form.service.mjs +199 -0
  172. package/form/{esm2015/lib/dynamic-form/validators/autocomplete-selected.validator.js → esm2020/lib/dynamic-form/validators/autocomplete-selected.validator.mjs} +0 -0
  173. package/form/{esm2015/lib/dynamic-form/validators/cnpj.validator.js → esm2020/lib/dynamic-form/validators/cnpj.validator.mjs} +0 -0
  174. package/form/{esm2015/lib/dynamic-form/validators/cpf.validator.js → esm2020/lib/dynamic-form/validators/cpf.validator.mjs} +0 -0
  175. package/form/{esm2015/lib/dynamic-form/validators/date-max.validator.js → esm2020/lib/dynamic-form/validators/date-max.validator.mjs} +0 -0
  176. package/form/{esm2015/lib/dynamic-form/validators/date-min.validator.js → esm2020/lib/dynamic-form/validators/date-min.validator.mjs} +0 -0
  177. package/form/{esm2015/lib/dynamic-form/validators/koala-dynamic-form-validator-result.helper.js → esm2020/lib/dynamic-form/validators/koala-dynamic-form-validator-result.helper.mjs} +0 -0
  178. package/form/{esm2015/lib/dynamic-form/validators/validation.helper.js → esm2020/lib/dynamic-form/validators/validation.helper.mjs} +0 -0
  179. package/form/{esm2015/lib/form.abstract.js → esm2020/lib/form.abstract.mjs} +0 -0
  180. package/form/esm2020/lib/koala.form.module.mjs +134 -0
  181. package/form/{esm2015/lib/show-invalid-fields/show-invalid-fields.js → esm2020/lib/show-invalid-fields/show-invalid-fields.mjs} +0 -0
  182. package/form/fesm2015/koalarx-ui-form.mjs +1575 -0
  183. package/form/fesm2015/koalarx-ui-form.mjs.map +1 -0
  184. package/form/fesm2020/koalarx-ui-form.mjs +1557 -0
  185. package/form/fesm2020/koalarx-ui-form.mjs.map +1 -0
  186. package/form/koalarx-ui-form.d.ts +1 -0
  187. package/form/lib/btn-submit/btn-submit.component.d.ts +3 -0
  188. package/form/lib/directives/koala-autofocus.directive.d.ts +3 -0
  189. package/form/lib/dynamic-form/builder/fields/field.base.d.ts +1 -1
  190. package/form/lib/dynamic-form/dynamic-form.component.d.ts +8 -1
  191. package/form/lib/dynamic-form/koala.dynamic-form.service.d.ts +3 -0
  192. package/form/lib/koala.form.module.d.ts +23 -0
  193. package/form/package.json +20 -7
  194. package/icon/{esm2015/index.js → esm2020/index.mjs} +2 -1
  195. package/icon/{esm2015/koalarx-ui-icon.js → esm2020/koalarx-ui-icon.mjs} +0 -0
  196. package/icon/esm2020/lib/icon.component.mjs +46 -0
  197. package/icon/esm2020/lib/koala.icon.module.mjs +26 -0
  198. package/icon/esm2020/lib/koala.icon.type.mjs +2 -0
  199. package/icon/fesm2015/koalarx-ui-icon.mjs +77 -0
  200. package/icon/{esm2015/lib/icon.component.js → fesm2015/koalarx-ui-icon.mjs.map} +1 -45
  201. package/icon/fesm2020/koalarx-ui-icon.mjs +76 -0
  202. package/icon/{fesm2015/koalarx-ui-icon.js → fesm2020/koalarx-ui-icon.mjs.map} +1 -69
  203. package/icon/index.d.ts +1 -0
  204. package/icon/koalarx-ui-icon.d.ts +1 -0
  205. package/icon/lib/icon.component.d.ts +4 -1
  206. package/icon/lib/koala.icon.module.d.ts +6 -0
  207. package/icon/lib/koala.icon.type.d.ts +1 -0
  208. package/icon/package.json +18 -6
  209. package/icons-animated/{esm2015/index.js → esm2020/index.mjs} +0 -0
  210. package/icons-animated/esm2020/koalarx-ui-icons-animated.mjs +5 -0
  211. package/icons-animated/esm2020/lib/icons/downloading/downloading-icon-animated.component.mjs +23 -0
  212. package/icons-animated/esm2020/lib/icons/loading/loading-icon-animated.component.mjs +23 -0
  213. package/icons-animated/esm2020/lib/icons-animated.component.mjs +20 -0
  214. package/icons-animated/esm2020/lib/icons-animated.service.mjs +32 -0
  215. package/icons-animated/esm2020/lib/koala-icons-animated.module.mjs +32 -0
  216. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs +122 -0
  217. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs.map +1 -0
  218. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs +120 -0
  219. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs.map +1 -0
  220. package/icons-animated/koalarx-ui-icons-animated.d.ts +1 -1
  221. package/icons-animated/lib/icons/downloading/downloading-icon-animated.component.d.ts +5 -2
  222. package/icons-animated/lib/icons/loading/loading-icon-animated.component.d.ts +5 -2
  223. package/icons-animated/lib/icons-animated.component.d.ts +3 -0
  224. package/icons-animated/lib/icons-animated.service.d.ts +3 -0
  225. package/icons-animated/lib/koala-icons-animated.module.d.ts +8 -0
  226. package/icons-animated/package.json +18 -6
  227. package/list/{esm2015/index.js → esm2020/index.mjs} +0 -0
  228. package/list/{esm2015/koalarx-ui-list.js → esm2020/koalarx-ui-list.mjs} +0 -0
  229. package/list/{esm2015/lib/koala-list-btn-collapse-sub-list-config.interface.js → esm2020/lib/koala-list-btn-collapse-sub-list-config.interface.mjs} +0 -0
  230. package/list/{esm2015/lib/koala-list-filter.interface.js → esm2020/lib/koala-list-filter.interface.mjs} +0 -0
  231. package/list/{esm2015/lib/koala-list-form-filter.interface.js → esm2020/lib/koala-list-form-filter.interface.mjs} +0 -0
  232. package/list/{esm2015/lib/koala-list-item-menu-option.interface.js → esm2020/lib/koala-list-item-menu-option.interface.mjs} +0 -0
  233. package/list/{esm2015/lib/koala-list-item.interface.js → esm2020/lib/koala-list-item.interface.mjs} +0 -0
  234. package/list/{esm2015/lib/koala.list-config.interface.js → esm2020/lib/koala.list-config.interface.mjs} +0 -0
  235. package/list/esm2020/lib/koala.list.module.mjs +70 -0
  236. package/list/esm2020/lib/koala.list.service.mjs +15 -0
  237. package/list/esm2020/lib/list-builder/list.builder.mjs +97 -0
  238. package/list/esm2020/lib/list.abstract.mjs +157 -0
  239. package/list/esm2020/lib/list.component.mjs +171 -0
  240. package/list/esm2020/lib/providers/pagination/pagination.provider.mjs +32 -0
  241. package/list/fesm2015/koalarx-ui-list.mjs +559 -0
  242. package/list/fesm2015/koalarx-ui-list.mjs.map +1 -0
  243. package/list/fesm2020/koalarx-ui-list.mjs +529 -0
  244. package/list/fesm2020/koalarx-ui-list.mjs.map +1 -0
  245. package/list/koalarx-ui-list.d.ts +1 -0
  246. package/list/lib/koala.list.module.d.ts +15 -0
  247. package/list/lib/koala.list.service.d.ts +3 -0
  248. package/list/lib/list.component.d.ts +3 -0
  249. package/list/lib/providers/pagination/pagination.provider.d.ts +3 -0
  250. package/list/package.json +20 -7
  251. package/menu/{esm2015/index.js → esm2020/index.mjs} +0 -0
  252. package/menu/{esm2015/koalarx-ui-menu.js → esm2020/koalarx-ui-menu.mjs} +0 -0
  253. package/menu/{esm2015/lib/koala.menu-module.interface.js → esm2020/lib/koala.menu-module.interface.mjs} +0 -0
  254. package/menu/{esm2015/lib/koala.menu-tool.interface.js → esm2020/lib/koala.menu-tool.interface.mjs} +0 -0
  255. package/menu/esm2020/lib/koala.menu.module.mjs +38 -0
  256. package/menu/esm2020/lib/koala.menu.service.mjs +24 -0
  257. package/menu/esm2020/lib/menu.component.mjs +100 -0
  258. package/menu/fesm2015/koalarx-ui-menu.mjs +167 -0
  259. package/menu/fesm2015/koalarx-ui-menu.mjs.map +1 -0
  260. package/menu/fesm2020/koalarx-ui-menu.mjs +162 -0
  261. package/menu/fesm2020/koalarx-ui-menu.mjs.map +1 -0
  262. package/menu/koalarx-ui-menu.d.ts +1 -0
  263. package/menu/lib/koala.menu.module.d.ts +9 -0
  264. package/menu/lib/koala.menu.service.d.ts +3 -0
  265. package/menu/lib/menu.component.d.ts +6 -0
  266. package/menu/package.json +18 -6
  267. package/package.json +9 -9
  268. package/question/{esm2015/index.js → esm2020/index.mjs} +0 -0
  269. package/question/{esm2015/koalarx-ui-question.js → esm2020/koalarx-ui-question.mjs} +0 -0
  270. package/question/esm2020/lib/dialog-question.component.mjs +25 -0
  271. package/question/{esm2015/lib/koala-question-config.interface.js → esm2020/lib/koala-question-config.interface.mjs} +0 -0
  272. package/question/esm2020/lib/koala.question.module.mjs +42 -0
  273. package/question/esm2020/lib/koala.question.service.mjs +26 -0
  274. package/question/fesm2015/koalarx-ui-question.mjs +95 -0
  275. package/question/fesm2015/koalarx-ui-question.mjs.map +1 -0
  276. package/question/fesm2020/koalarx-ui-question.mjs +93 -0
  277. package/question/fesm2020/koalarx-ui-question.mjs.map +1 -0
  278. package/question/koalarx-ui-question.d.ts +1 -0
  279. package/question/lib/dialog-question.component.d.ts +3 -0
  280. package/question/lib/koala.question.module.d.ts +10 -0
  281. package/question/lib/koala.question.service.d.ts +3 -0
  282. package/question/package.json +18 -6
  283. package/snackbar/{esm2015/index.js → esm2020/index.mjs} +0 -0
  284. package/snackbar/{esm2015/koalarx-ui-snackbar.js → esm2020/koalarx-ui-snackbar.mjs} +0 -0
  285. package/snackbar/esm2020/lib/koala.snackbar.component.mjs +22 -0
  286. package/snackbar/{esm2015/lib/koala.snackbar.interface.js → esm2020/lib/koala.snackbar.interface.mjs} +0 -0
  287. package/snackbar/esm2020/lib/koala.snackbar.module.mjs +38 -0
  288. package/snackbar/esm2020/lib/koala.snackbar.service.mjs +35 -0
  289. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs +95 -0
  290. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs.map +1 -0
  291. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs +93 -0
  292. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs.map +1 -0
  293. package/snackbar/koalarx-ui-snackbar.d.ts +1 -0
  294. package/snackbar/lib/koala.snackbar.component.d.ts +3 -0
  295. package/snackbar/lib/koala.snackbar.module.d.ts +8 -0
  296. package/snackbar/lib/koala.snackbar.service.d.ts +3 -0
  297. package/snackbar/package.json +18 -6
  298. package/alert/bundles/koalarx-ui-alert.umd.js +0 -153
  299. package/alert/bundles/koalarx-ui-alert.umd.js.map +0 -1
  300. package/alert/esm2015/lib/dialog-alert.component.js +0 -43
  301. package/alert/esm2015/lib/koala.alert.module.js +0 -31
  302. package/alert/esm2015/lib/koala.alert.service.js +0 -21
  303. package/alert/fesm2015/koalarx-ui-alert.js +0 -121
  304. package/alert/fesm2015/koalarx-ui-alert.js.map +0 -1
  305. package/alert/koalarx-ui-alert.metadata.json +0 -1
  306. package/button/bundles/koalarx-ui-button.umd.js +0 -71
  307. package/button/bundles/koalarx-ui-button.umd.js.map +0 -1
  308. package/button/esm2015/lib/button.component.js +0 -31
  309. package/button/esm2015/lib/koala.button.module.js +0 -27
  310. package/button/fesm2015/koalarx-ui-button.js +0 -63
  311. package/button/fesm2015/koalarx-ui-button.js.map +0 -1
  312. package/button/koalarx-ui-button.metadata.json +0 -1
  313. package/common/bundles/koalarx-ui-common.umd.js +0 -481
  314. package/common/bundles/koalarx-ui-common.umd.js.map +0 -1
  315. package/common/esm2015/lib/services/csv/koala.csv.service.js +0 -38
  316. package/common/esm2015/lib/services/xlsx/koala.xlsx.service.js +0 -74
  317. package/common/fesm2015/koalarx-ui-common.js.map +0 -1
  318. package/common/koalarx-ui-common.metadata.json +0 -1
  319. package/core/bundles/koalarx-ui-core.umd.js +0 -1716
  320. package/core/bundles/koalarx-ui-core.umd.js.map +0 -1
  321. package/core/esm2015/index.js +0 -34
  322. package/core/esm2015/koalarx-ui-core.js +0 -7
  323. package/core/esm2015/lib/loader/loader-bar-page.component.js +0 -22
  324. package/core/esm2015/lib/ngx-koala.module.js +0 -35
  325. package/core/esm2015/lib/page/koala.page.module.js +0 -46
  326. package/core/esm2015/lib/page/notifications/notification.component.js +0 -43
  327. package/core/esm2015/lib/page/page.component.js +0 -396
  328. package/core/esm2015/lib/router/koala.parameter-hash-location-stategy.js +0 -16
  329. package/core/esm2015/lib/services/api-requester/factory/koala.response.factory.js +0 -48
  330. package/core/esm2015/lib/services/api-requester/koala.api-requester.base.js +0 -70
  331. package/core/esm2015/lib/services/api-requester/koala.api-requester.service.js +0 -134
  332. package/core/esm2015/lib/services/loader/koala.loader.service.js +0 -32
  333. package/core/esm2015/lib/services/openid/koala.oauth.config.js +0 -33
  334. package/core/esm2015/lib/services/openid/koala.oauth2.service.js +0 -201
  335. package/core/esm2015/lib/services/request/koala.request.service.js +0 -53
  336. package/core/esm2015/lib/services/token/token.factory.js +0 -31
  337. package/core/fesm2015/koalarx-ui-core.js.map +0 -1
  338. package/core/koalarx-ui-core.metadata.json +0 -1
  339. package/dialog/bundles/koalarx-ui-dialog.umd.js +0 -139
  340. package/dialog/bundles/koalarx-ui-dialog.umd.js.map +0 -1
  341. package/dialog/esm2015/lib/dialog.component.js +0 -18
  342. package/dialog/esm2015/lib/koala.dialog.module.js +0 -25
  343. package/dialog/esm2015/lib/koala.dialog.service.js +0 -61
  344. package/dialog/fesm2015/koalarx-ui-dialog.js +0 -107
  345. package/dialog/fesm2015/koalarx-ui-dialog.js.map +0 -1
  346. package/dialog/koalarx-ui-dialog.metadata.json +0 -1
  347. package/dynamic-component/bundles/koalarx-ui-dynamic-component.umd.js +0 -95
  348. package/dynamic-component/bundles/koalarx-ui-dynamic-component.umd.js.map +0 -1
  349. package/dynamic-component/esm2015/lib/koala-dynamic-component.directive.js +0 -15
  350. package/dynamic-component/esm2015/lib/koala-dynamic-component.factory.js +0 -38
  351. package/dynamic-component/esm2015/lib/koala-dynamic-component.module.js +0 -17
  352. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.js +0 -79
  353. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.js.map +0 -1
  354. package/dynamic-component/koalarx-ui-dynamic-component.metadata.json +0 -1
  355. package/file-button/bundles/koalarx-ui-file-button.umd.js +0 -553
  356. package/file-button/bundles/koalarx-ui-file-button.umd.js.map +0 -1
  357. package/file-button/esm2015/lib/file-button.component.js +0 -118
  358. package/file-button/esm2015/lib/koala.btn-file.service.js +0 -26
  359. package/file-button/esm2015/lib/koala.file-button.module.js +0 -25
  360. package/file-button/fesm2015/koalarx-ui-file-button.js +0 -171
  361. package/file-button/fesm2015/koalarx-ui-file-button.js.map +0 -1
  362. package/file-button/koalarx-ui-file-button.metadata.json +0 -1
  363. package/folder-page/bundles/koalarx-ui-folder-page.umd.js +0 -97
  364. package/folder-page/bundles/koalarx-ui-folder-page.umd.js.map +0 -1
  365. package/folder-page/esm2015/lib/folder.component.js +0 -56
  366. package/folder-page/esm2015/lib/koala.folder-page.module.js +0 -27
  367. package/folder-page/fesm2015/koalarx-ui-folder-page.js +0 -88
  368. package/folder-page/fesm2015/koalarx-ui-folder-page.js.map +0 -1
  369. package/folder-page/koalarx-ui-folder-page.metadata.json +0 -1
  370. package/form/bundles/koalarx-ui-form.umd.js +0 -1944
  371. package/form/bundles/koalarx-ui-form.umd.js.map +0 -1
  372. package/form/esm2015/lib/btn-submit/btn-submit.component.js +0 -39
  373. package/form/esm2015/lib/directives/koala-autofocus.directive.js +0 -25
  374. package/form/esm2015/lib/dynamic-form/builder/dynamic-form.builder.js +0 -141
  375. package/form/esm2015/lib/dynamic-form/builder/fields/field.base.js +0 -150
  376. package/form/esm2015/lib/dynamic-form/builder/fields/more-items.builder.js +0 -57
  377. package/form/esm2015/lib/dynamic-form/dynamic-form.component.js +0 -551
  378. package/form/esm2015/lib/dynamic-form/koala.dynamic-form.service.js +0 -204
  379. package/form/esm2015/lib/koala.form.module.js +0 -69
  380. package/form/fesm2015/koalarx-ui-form.js +0 -1473
  381. package/form/fesm2015/koalarx-ui-form.js.map +0 -1
  382. package/form/koalarx-ui-form.metadata.json +0 -1
  383. package/icon/bundles/koalarx-ui-icon.umd.js +0 -76
  384. package/icon/bundles/koalarx-ui-icon.umd.js.map +0 -1
  385. package/icon/esm2015/lib/koala.icon.module.js +0 -19
  386. package/icon/fesm2015/koalarx-ui-icon.js.map +0 -1
  387. package/icon/koalarx-ui-icon.metadata.json +0 -1
  388. package/icons-animated/bundles/koalarx-ui-icons-animated.umd.js +0 -138
  389. package/icons-animated/bundles/koalarx-ui-icons-animated.umd.js.map +0 -1
  390. package/icons-animated/esm2015/koalarx-ui-icons-animated.js +0 -6
  391. package/icons-animated/esm2015/lib/icons/downloading/downloading-icon-animated.component.js +0 -28
  392. package/icons-animated/esm2015/lib/icons/loading/loading-icon-animated.component.js +0 -28
  393. package/icons-animated/esm2015/lib/icons-animated.component.js +0 -15
  394. package/icons-animated/esm2015/lib/icons-animated.service.js +0 -29
  395. package/icons-animated/esm2015/lib/koala-icons-animated.module.js +0 -23
  396. package/icons-animated/fesm2015/koalarx-ui-icons-animated.js +0 -121
  397. package/icons-animated/fesm2015/koalarx-ui-icons-animated.js.map +0 -1
  398. package/icons-animated/koalarx-ui-icons-animated.metadata.json +0 -1
  399. package/list/bundles/koalarx-ui-list.umd.js +0 -914
  400. package/list/bundles/koalarx-ui-list.umd.js.map +0 -1
  401. package/list/esm2015/lib/koala.list.module.js +0 -42
  402. package/list/esm2015/lib/koala.list.service.js +0 -13
  403. package/list/esm2015/lib/list-builder/list.builder.js +0 -101
  404. package/list/esm2015/lib/list.abstract.js +0 -174
  405. package/list/esm2015/lib/list.component.js +0 -166
  406. package/list/esm2015/lib/providers/pagination/pagination.provider.js +0 -30
  407. package/list/fesm2015/koalarx-ui-list.js +0 -514
  408. package/list/fesm2015/koalarx-ui-list.js.map +0 -1
  409. package/list/koalarx-ui-list.metadata.json +0 -1
  410. package/menu/bundles/koalarx-ui-menu.umd.js +0 -511
  411. package/menu/bundles/koalarx-ui-menu.umd.js.map +0 -1
  412. package/menu/esm2015/lib/koala.menu.module.js +0 -25
  413. package/menu/esm2015/lib/koala.menu.service.js +0 -22
  414. package/menu/esm2015/lib/menu.component.js +0 -104
  415. package/menu/fesm2015/koalarx-ui-menu.js +0 -153
  416. package/menu/fesm2015/koalarx-ui-menu.js.map +0 -1
  417. package/menu/koalarx-ui-menu.metadata.json +0 -1
  418. package/question/bundles/koalarx-ui-question.umd.js +0 -104
  419. package/question/bundles/koalarx-ui-question.umd.js.map +0 -1
  420. package/question/esm2015/lib/dialog-question.component.js +0 -20
  421. package/question/esm2015/lib/koala.question.module.js +0 -27
  422. package/question/esm2015/lib/koala.question.service.js +0 -28
  423. package/question/fesm2015/koalarx-ui-question.js +0 -77
  424. package/question/fesm2015/koalarx-ui-question.js.map +0 -1
  425. package/question/koalarx-ui-question.metadata.json +0 -1
  426. package/snackbar/bundles/koalarx-ui-snackbar.umd.js +0 -93
  427. package/snackbar/bundles/koalarx-ui-snackbar.umd.js.map +0 -1
  428. package/snackbar/esm2015/lib/koala.snackbar.component.js +0 -20
  429. package/snackbar/esm2015/lib/koala.snackbar.module.js +0 -26
  430. package/snackbar/esm2015/lib/koala.snackbar.service.js +0 -35
  431. package/snackbar/fesm2015/koalarx-ui-snackbar.js +0 -81
  432. package/snackbar/fesm2015/koalarx-ui-snackbar.js.map +0 -1
  433. package/snackbar/koalarx-ui-snackbar.metadata.json +0 -1
@@ -1,514 +0,0 @@
1
- import { MatPaginatorIntl, MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
2
- import * as i0 from '@angular/core';
3
- import { Injectable, Component, ChangeDetectionStrategy, Input, ViewChild, NgModule } from '@angular/core';
4
- import { KoalaDynamicComponent, KoalaDynamicComponentModule } from '@koalarx/ui/dynamic-component';
5
- import { Observable, BehaviorSubject, merge } from 'rxjs';
6
- import { first, startWith, switchMap, debounceTime, map } from 'rxjs/operators';
7
- import { __awaiter } from 'tslib';
8
- import { SelectionModel } from '@angular/cdk/collections';
9
- import { FormAbstract, KoalaDynamicFormService, KoalaFormModule } from '@koalarx/ui/form';
10
- import { MatTableDataSource, MatTableModule } from '@angular/material/table';
11
- import { delay } from '@koalarx/utils/operators/delay';
12
- import { FormControl, FormBuilder } from '@angular/forms';
13
- import { MatSort, MatSortModule } from '@angular/material/sort';
14
- import { koala } from '@koalarx/utils';
15
- import { DeviceDetectorService } from 'ngx-device-detector';
16
- import { trigger, state, style, transition, animate } from '@angular/animations';
17
- import { CommonModule } from '@angular/common';
18
- import { MatMenuModule } from '@angular/material/menu';
19
- import { KoalaFolderPageModule } from '@koalarx/ui/folder-page';
20
- import { MatTooltipModule } from '@angular/material/tooltip';
21
- import { KoalaButtonModule } from '@koalarx/ui/button';
22
-
23
- class PaginationProvider extends MatPaginatorIntl {
24
- constructor() {
25
- super();
26
- this.getRangeLabel = (page, pageSize, length) => {
27
- if (length === 0 || pageSize === 0) {
28
- return `0 / ${length}`;
29
- }
30
- length = Math.max(length, 0);
31
- const startIndex = page * pageSize;
32
- const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize;
33
- return `${startIndex + 1} - ${endIndex} / ${length}`;
34
- };
35
- this.getAndInitTranslations();
36
- }
37
- getAndInitTranslations() {
38
- this.itemsPerPageLabel = "Itens por Página";
39
- this.firstPageLabel = "Primeira Página";
40
- this.nextPageLabel = "Próxima Página";
41
- this.previousPageLabel = "Página Anterior";
42
- this.lastPageLabel = "Última Página";
43
- this.changes.next();
44
- }
45
- }
46
- PaginationProvider.decorators = [
47
- { type: Injectable }
48
- ];
49
- PaginationProvider.ctorParameters = () => [];
50
-
51
- class ListBuilder {
52
- constructor() {
53
- this.config = {};
54
- }
55
- service(service, type = "all", resultIndexName, qtdResultIndexName) {
56
- var _a, _b, _c, _d, _e, _f, _g, _h;
57
- this.config.typeRequest = type;
58
- this.config.responseIndexName = resultIndexName;
59
- this.config.responseQtdResultIndexName = response => { var _a; return (_a = response[qtdResultIndexName !== null && qtdResultIndexName !== void 0 ? qtdResultIndexName : '']) !== null && _a !== void 0 ? _a : []; };
60
- this.config.columnSort = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.filterParams) === null || _b === void 0 ? void 0 : _b.getValue()) === null || _c === void 0 ? void 0 : _c.sort;
61
- this.config.sortDirection = (_g = (_f = (_e = (_d = this.config) === null || _d === void 0 ? void 0 : _d.filterParams) === null || _e === void 0 ? void 0 : _e.getValue()) === null || _f === void 0 ? void 0 : _f.order) !== null && _g !== void 0 ? _g : 'asc';
62
- const response = service((_h = this.config.filterParams) !== null && _h !== void 0 ? _h : null);
63
- if (response instanceof Promise) {
64
- this.config.request = new Observable(observe => {
65
- response.then(response => observe.next(response))
66
- .catch(error => observe.error(error));
67
- }).pipe(first());
68
- }
69
- else {
70
- this.config.request = new Observable(observe => {
71
- var _a;
72
- service((_a = this.config.filterParams) !== null && _a !== void 0 ? _a : null).pipe(first()).subscribe(observe);
73
- }).pipe(first());
74
- }
75
- return this;
76
- }
77
- filterConfig(config) {
78
- this.config.filterFormConfig = config;
79
- return this;
80
- }
81
- defaultFilter(config) {
82
- this.config.filterParams = new BehaviorSubject(config);
83
- return this;
84
- }
85
- pageSize(size) {
86
- this.config.pageSize = size;
87
- return this;
88
- }
89
- columns(columns) {
90
- this.config.columnsToShowInList = columns;
91
- return this;
92
- }
93
- itemColumn(item) {
94
- var _a;
95
- (((_a = this.config.itemsList) === null || _a === void 0 ? void 0 : _a.length) > 0) ?
96
- this.config.itemsList.push(item) :
97
- this.config.itemsList = [item];
98
- return this;
99
- }
100
- actionList(item) {
101
- var _a, _b, _c;
102
- ((_b = (_a = this.config.itemsMenuListOptions) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0 > 0) ?
103
- (_c = this.config.itemsMenuListOptions) === null || _c === void 0 ? void 0 : _c.push(item) :
104
- this.config.itemsMenuListOptions = [item];
105
- return this;
106
- }
107
- getDataSource(fn) {
108
- this.config.getDataSource = fn;
109
- return this;
110
- }
111
- getSelectionList(fn) {
112
- this.config.getSelectionList = fn;
113
- return this;
114
- }
115
- emptyListComponent(component, data) {
116
- this.config.emptyListComponent = new KoalaDynamicComponent(component, data);
117
- return this;
118
- }
119
- errorListComponent(component, data) {
120
- this.config.errorListComponent = new KoalaDynamicComponent(component, data);
121
- return this;
122
- }
123
- disableCheckboxItemList(fn) {
124
- this.config.disabledCheckboxItemList = fn;
125
- return this;
126
- }
127
- setSubList(config) {
128
- this.config.subListConfig = config;
129
- return this;
130
- }
131
- defineBtnCollapseSubListConfig(config) {
132
- this.config.btnCollapseSubListConfig = config;
133
- return this;
134
- }
135
- hidePaginator(hide = true) {
136
- this.config.hidePaginator = hide;
137
- return this;
138
- }
139
- setCustomClass(className) {
140
- this.config.customClass = className;
141
- return this;
142
- }
143
- getConfig() {
144
- this.config.reload = new BehaviorSubject(false);
145
- return this.config;
146
- }
147
- }
148
-
149
- class KoalaListService {
150
- build() {
151
- return new ListBuilder();
152
- }
153
- }
154
- KoalaListService.ɵprov = i0.ɵɵdefineInjectable({ factory: function KoalaListService_Factory() { return new KoalaListService(); }, token: KoalaListService, providedIn: "any" });
155
- KoalaListService.decorators = [
156
- { type: Injectable, args: [{ providedIn: "any" },] }
157
- ];
158
-
159
- class ListAbstract extends FormAbstract {
160
- constructor(requestFunction, requestResponseFunction, formSearch) {
161
- super(formSearch);
162
- this.requestFunction = requestFunction;
163
- this.requestResponseFunction = requestResponseFunction;
164
- this.selection = new SelectionModel(true, []);
165
- this.limitOptions = [10, 20, 30, 50, 100];
166
- this.showMenuList = false;
167
- this.allSelected$ = new BehaviorSubject(false);
168
- this.dataSource = new MatTableDataSource([]);
169
- this.typeRequest = 'onDemand';
170
- this.filterParams = new BehaviorSubject(null);
171
- this.filterError$ = new BehaviorSubject(null);
172
- }
173
- selectAll() {
174
- this.isAllSelected() ?
175
- this.selection.clear() :
176
- this.dataSource.data.forEach(item => {
177
- var _a, _b;
178
- if ((((_a = this.config) === null || _a === void 0 ? void 0 : _a.disabledCheckboxItemList) && !this.config.disabledCheckboxItemList(item)) ||
179
- !((_b = this.config) === null || _b === void 0 ? void 0 : _b.disabledCheckboxItemList)) {
180
- this.selection.select(item);
181
- }
182
- });
183
- this.isAllSelected();
184
- }
185
- defineStatusSelectAll(status) {
186
- this.allSelected$.next(status);
187
- return this.allSelected$.getValue();
188
- }
189
- selectItem() {
190
- setTimeout(() => {
191
- this.showMenuList = this.selection.hasValue();
192
- this.isAllSelected();
193
- }, 50);
194
- }
195
- search(filter) {
196
- var _a, _b, _c, _d, _e, _f, _g, _h;
197
- return __awaiter(this, void 0, void 0, function* () {
198
- this.loading(true);
199
- this.selection.clear();
200
- if (this.paginator) {
201
- this.paginator.firstPage();
202
- }
203
- this.filterParams.next({
204
- params: filter,
205
- sort: (_b = (_a = this.sort) === null || _a === void 0 ? void 0 : _a.active) !== null && _b !== void 0 ? _b : '',
206
- order: (_d = (_c = this.sort) === null || _c === void 0 ? void 0 : _c.direction) !== null && _d !== void 0 ? _d : 'asc',
207
- page: (_f = (_e = this.paginator) === null || _e === void 0 ? void 0 : _e.pageIndex) !== null && _f !== void 0 ? _f : 0,
208
- limit: (_h = (_g = this.paginator) === null || _g === void 0 ? void 0 : _g.pageSize) !== null && _h !== void 0 ? _h : 30
209
- });
210
- });
211
- }
212
- onDestroy() {
213
- var _a, _b;
214
- (_a = this.subscriptionSortList) === null || _a === void 0 ? void 0 : _a.unsubscribe();
215
- (_b = this.subscriptionList) === null || _b === void 0 ? void 0 : _b.unsubscribe();
216
- clearInterval(this.intervalSortList);
217
- }
218
- afterViewInit() {
219
- return __awaiter(this, void 0, void 0, function* () {
220
- let tentativas = 0;
221
- let stop = false;
222
- do {
223
- tentativas++;
224
- yield delay(400);
225
- if (this.sort || this.emptyListComponent) {
226
- this.prepareSearch().then();
227
- if (this.emptyListComponent)
228
- stop = true;
229
- }
230
- else if (tentativas > 10) {
231
- stop = true;
232
- }
233
- } while (!this.sort && !stop);
234
- });
235
- }
236
- prepareSearch() {
237
- var _a, _b;
238
- return __awaiter(this, void 0, void 0, function* () {
239
- this.intervalSortList = setInterval(() => {
240
- if (this.sort && !this.subscriptionSortList) {
241
- this.subscriptionSortList = this.sort.sortChange.subscribe(() => {
242
- var _a, _b, _c, _d, _e;
243
- const filter = (_a = this.filterParams.value) !== null && _a !== void 0 ? _a : {};
244
- filter.sort = (_c = (_b = this.sort) === null || _b === void 0 ? void 0 : _b.active) !== null && _c !== void 0 ? _c : '';
245
- filter.order = (_e = (_d = this.sort) === null || _d === void 0 ? void 0 : _d.direction) !== null && _e !== void 0 ? _e : '';
246
- this.filterParams.next(filter);
247
- });
248
- }
249
- else if (!this.sort && this.subscriptionSortList) {
250
- this.subscriptionSortList.unsubscribe();
251
- }
252
- }, 50);
253
- if (this.typeRequest === 'onDemand') {
254
- this.subscriptionList = merge((_b = (_a = this.paginator) === null || _a === void 0 ? void 0 : _a.page) !== null && _b !== void 0 ? _b : new Observable(), this.filterParams).pipe(startWith({}), switchMap(() => new Observable(observe => {
255
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
256
- this.loading(true);
257
- this.selection.clear();
258
- if (this.filterParams.value) {
259
- this.filterParams.value.sort = (_d = (_b = (_a = this.sort) === null || _a === void 0 ? void 0 : _a.active) !== null && _b !== void 0 ? _b : (_c = this.config) === null || _c === void 0 ? void 0 : _c.columnSort) !== null && _d !== void 0 ? _d : '';
260
- this.filterParams.value.order = (_h = (_f = (_e = this.sort) === null || _e === void 0 ? void 0 : _e.direction) !== null && _f !== void 0 ? _f : (_g = this.config) === null || _g === void 0 ? void 0 : _g.sortDirection) !== null && _h !== void 0 ? _h : '';
261
- this.filterParams.value.page = (_k = (_j = this.paginator) === null || _j === void 0 ? void 0 : _j.pageIndex) !== null && _k !== void 0 ? _k : 0;
262
- this.filterParams.value.limit = (_m = (_l = this.paginator) === null || _l === void 0 ? void 0 : _l.pageSize) !== null && _m !== void 0 ? _m : 30;
263
- }
264
- observe.next(true);
265
- })), debounceTime(300), switchMap(() => this.runRequestFunction()), map((response) => {
266
- this.loading(false);
267
- return this.requestResponseFunction(response);
268
- })).subscribe();
269
- }
270
- else {
271
- if (this.paginator)
272
- this.dataSource.paginator = this.paginator;
273
- this.subscriptionList = this.filterParams.pipe(startWith({}), debounceTime(300), switchMap(() => this.runRequestFunction()), map((response) => {
274
- this.loading(false);
275
- return this.requestResponseFunction(response);
276
- })).subscribe();
277
- }
278
- if (this.emptyListComponent) {
279
- do {
280
- yield delay(301);
281
- if (this.sort) {
282
- if (this.typeRequest === "onDemand") {
283
- this.sort.sortChange.subscribe(() => {
284
- if (this.paginator)
285
- this.paginator.pageIndex = 0;
286
- });
287
- }
288
- else {
289
- this.dataSource.sort = this.sort;
290
- }
291
- }
292
- } while (!this.sort);
293
- }
294
- });
295
- }
296
- isAllSelected() {
297
- var _a;
298
- const numSelected = this.selection.selected.length;
299
- const numRows = (((_a = this.config) === null || _a === void 0 ? void 0 : _a.disabledCheckboxItemList) ?
300
- this.dataSource.data.filter(item => {
301
- var _a;
302
- return !(((_a = this.config) === null || _a === void 0 ? void 0 : _a.disabledCheckboxItemList)
303
- ? this.config.disabledCheckboxItemList(item)
304
- : '');
305
- }) :
306
- this.dataSource.data).length;
307
- return this.defineStatusSelectAll(numSelected === numRows);
308
- }
309
- runRequestFunction() {
310
- return new Observable(observe => {
311
- this.requestFunction().pipe(first()).subscribe({
312
- next: response => observe.next(response),
313
- error: err => {
314
- if (this.errorListComponent) {
315
- this.filterError$.next(err);
316
- this.errorListComponent.data = err;
317
- }
318
- this.loading(false);
319
- observe.next([]);
320
- }
321
- });
322
- });
323
- }
324
- }
325
-
326
- class ListComponent extends ListAbstract {
327
- constructor(fb, dynamicFormService, deviceService) {
328
- super(() => { var _a, _b; return (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.request) !== null && _b !== void 0 ? _b : new Observable(); }, (response) => {
329
- var _a, _b, _c, _d, _e, _f, _g;
330
- this.responseRequest = response;
331
- this.dataSource.data = ((_a = this.config) === null || _a === void 0 ? void 0 : _a.responseIndexName)
332
- ? (this.config.responseIndexName
333
- ? response[this.config.responseIndexName]
334
- : [])
335
- : response;
336
- if ((_b = this.config) === null || _b === void 0 ? void 0 : _b.getDataSource)
337
- (_c = this.config) === null || _c === void 0 ? void 0 : _c.getDataSource(this.dataSource.data);
338
- this.qtdListResult = ((_d = this.config) === null || _d === void 0 ? void 0 : _d.responseQtdResultIndexName)
339
- ? (_e = this.config.responseQtdResultIndexName(response)) !== null && _e !== void 0 ? _e : 0
340
- : (_g = (_f = this.dataSource.data) === null || _f === void 0 ? void 0 : _f.length) !== null && _g !== void 0 ? _g : 0;
341
- }, () => { var _a; return (_a = this.formFilter) !== null && _a !== void 0 ? _a : fb.group({}); });
342
- this.fb = fb;
343
- this.dynamicFormService = dynamicFormService;
344
- this.deviceService = deviceService;
345
- this.hidePaginator = false;
346
- this.sortDirection = 'asc';
347
- this.typeRequest = 'all';
348
- this.showAdvancedFilter = false;
349
- this.qtdListResult = 0;
350
- this.expandedElement = false;
351
- }
352
- ngOnInit() {
353
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
354
- this.initConfig();
355
- this.formFilter = this.fb.group({
356
- formSearch: (_c = (_b = (_a = this.filterFormConfig) === null || _a === void 0 ? void 0 : _a.main) === null || _b === void 0 ? void 0 : _b.form) !== null && _c !== void 0 ? _c : [''],
357
- formAdvancedSearch: (_f = (_e = (_d = this.filterFormConfig) === null || _d === void 0 ? void 0 : _d.advanced) === null || _e === void 0 ? void 0 : _e.form) !== null && _f !== void 0 ? _f : ['']
358
- });
359
- this.loading(true);
360
- if (this.filterFormConfig) {
361
- (_j = (_h = (_g = this.filterFormConfig) === null || _g === void 0 ? void 0 : _g.main) === null || _h === void 0 ? void 0 : _h.formConfig) === null || _j === void 0 ? void 0 : _j.map(item => {
362
- item.class += ' padding-none w-99';
363
- return item;
364
- });
365
- (_m = (_l = (_k = this.filterFormConfig) === null || _k === void 0 ? void 0 : _k.advanced) === null || _l === void 0 ? void 0 : _l.formConfig) === null || _m === void 0 ? void 0 : _m.map(item => {
366
- item.class += ' padding-none';
367
- return item;
368
- });
369
- if ((_o = this.filterFormConfig) === null || _o === void 0 ? void 0 : _o.checkAndSearch) {
370
- this.formFilter.addControl(this.filterFormConfig.checkAndSearch.formControlName, new FormControl((_p = this.filterFormConfig.checkAndSearch.isChecked) !== null && _p !== void 0 ? _p : false));
371
- }
372
- }
373
- if (this.config.getSelectionList)
374
- this.config.getSelectionList(this.selection);
375
- if (this.reload) {
376
- this.reload.subscribe((reload) => __awaiter(this, void 0, void 0, function* () {
377
- if (reload) {
378
- yield this.filterSubmit();
379
- }
380
- }));
381
- }
382
- }
383
- ngOnDestroy() {
384
- super.onDestroy();
385
- }
386
- ngAfterViewInit() {
387
- super.afterViewInit().then();
388
- }
389
- filterSubmit() {
390
- const _super = Object.create(null, {
391
- search: { get: () => super.search }
392
- });
393
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
394
- return __awaiter(this, void 0, void 0, function* () {
395
- this.showAdvancedFilter = false;
396
- yield delay(1);
397
- let dados = koala(((_b = (_a = this.filterFormConfig) === null || _a === void 0 ? void 0 : _a.main) === null || _b === void 0 ? void 0 : _b.form)
398
- ? this.dynamicFormService.emitData((_d = (_c = this.filterFormConfig) === null || _c === void 0 ? void 0 : _c.main) === null || _d === void 0 ? void 0 : _d.form)
399
- : {})
400
- .object()
401
- .merge(((_f = (_e = this.filterFormConfig) === null || _e === void 0 ? void 0 : _e.advanced) === null || _f === void 0 ? void 0 : _f.form)
402
- ? this.dynamicFormService.emitData((_h = (_g = this.filterFormConfig) === null || _g === void 0 ? void 0 : _g.advanced) === null || _h === void 0 ? void 0 : _h.form)
403
- : {})
404
- .getValue();
405
- if ((_j = this.filterFormConfig) === null || _j === void 0 ? void 0 : _j.checkAndSearch) {
406
- const controlName = this.filterFormConfig.checkAndSearch.formControlName;
407
- dados[controlName] = this.formFilter.get(controlName).value;
408
- }
409
- yield _super.search.call(this, dados);
410
- });
411
- }
412
- toogleFilter() {
413
- this.showAdvancedFilter = !this.showAdvancedFilter;
414
- }
415
- haveOptionsOnItemLine(item) {
416
- return this.itemsMenuListOptions.filter(option => option.havePermission && (!option.showByItemList ||
417
- option.showByItemList(item))).length > 0;
418
- }
419
- hasFooter() {
420
- return !!this.itemsList.find(item => !!item.footer);
421
- }
422
- initConfig() {
423
- var _a, _b, _c, _d, _e, _f, _g;
424
- this.columnSort = (_a = this.config.columnSort) !== null && _a !== void 0 ? _a : null;
425
- this.sortDirection = (_b = this.config.sortDirection) !== null && _b !== void 0 ? _b : 'asc';
426
- this.itemsMenuListOptions = (_c = this.config.itemsMenuListOptions) !== null && _c !== void 0 ? _c : [];
427
- this.typeRequest = (_d = this.config.typeRequest) !== null && _d !== void 0 ? _d : 'all';
428
- this.qtdListResult = (_e = this.config.qtdListResult) !== null && _e !== void 0 ? _e : 0;
429
- this.columnsToShowInList = this.config.columnsToShowInList;
430
- this.itemsList = this.config.itemsList.map(item => {
431
- if (!item.dblClick) {
432
- item.dblClick = () => {
433
- };
434
- }
435
- return item;
436
- });
437
- this.showAdvancedFilter = this.config.showAdvancedFilter;
438
- this.filterFormConfig = this.config.filterFormConfig;
439
- this.request = this.config.request;
440
- this.reload = this.config.reload;
441
- this.responseIndexName = this.config.responseIndexName;
442
- this.responseQtdResultIndexName = this.config.responseQtdResultIndexName;
443
- this.filterParams = (_f = this.config.filterParams) !== null && _f !== void 0 ? _f : new BehaviorSubject(null);
444
- this.emptyListComponent = this.config.emptyListComponent;
445
- this.errorListComponent = this.config.errorListComponent;
446
- this.pageSize = (_g = this.config.pageSize) !== null && _g !== void 0 ? _g : 30;
447
- this.disabledCheckboxItemList = this.config.disabledCheckboxItemList;
448
- this.subListConfig = this.config.subListConfig;
449
- this.btnCollapseSubListConfig = this.config.btnCollapseSubListConfig;
450
- this.hidePaginator = this.config.hidePaginator;
451
- this.customClass = this.config.customClass;
452
- }
453
- }
454
- ListComponent.decorators = [
455
- { type: Component, args: [{
456
- selector: 'koala-list',
457
- template: "<div class=\"list-container\" [ngClass]=\"customClass\">\n <div *ngIf=\"filterFormConfig\" class=\"list-filter\">\n <form (ngSubmit)=\"filterSubmit()\" [formGroup]=\"formFilter\">\n <div class=\"main\">\n <koala-dynamic-form\n *ngIf=\"filterFormConfig.main\"\n [form]=\"filterFormConfig.main.form\"\n [formConfig]=\"filterFormConfig.main.formConfig\"\n [setValues]=\"filterFormConfig.main.setValues\"\n [showFields]=\"filterFormConfig.main.showFields\">\n </koala-dynamic-form>\n <ul>\n <li *ngIf=\"filterFormConfig.advanced\" class=\"option\">\n <button (click)=\"toogleFilter()\" color=\"primary\" mat-icon-button matTooltip=\"Filtro Avan\u00E7ado\"\n matTooltipPosition=\"below\" type=\"button\">\n <mat-icon>tune</mat-icon>\n </button>\n </li>\n <li *ngIf=\"filterFormConfig.checkAndSearch\" class=\"checkbox-filter\">\n <mat-checkbox (click)=\"filterSubmit()\"\n [formControlName]=\"filterFormConfig.checkAndSearch.formControlName\">\n {{filterFormConfig.checkAndSearch.label}}\n </mat-checkbox>\n </li>\n <li class=\"option\">\n <koala-submit\n [btnSubmitDisabled]=\"btnSubmitDisabled\"\n [fg]=\"formFilter\"\n [iconButton]=\"true\"\n [loader]=\"loader\"\n icon=\"search\">\n </koala-submit>\n </li>\n </ul>\n </div>\n <div *ngIf=\"filterFormConfig.advanced\" [ngClass]=\"{'show': showAdvancedFilter}\" class=\"advanced\">\n <div class=\"container-filter\">\n <koala-dynamic-form\n [form]=\"filterFormConfig.advanced.form\"\n [formConfig]=\"filterFormConfig.advanced.formConfig\"\n [setValues]=\"filterFormConfig.advanced.setValues\"\n [showFields]=\"filterFormConfig.advanced.showFields\">\n </koala-dynamic-form>\n </div>\n </div>\n </form>\n </div>\n <nav class=\"menu-list\">\n <ul class=\"menu\">\n <li *ngIf=\"selection.hasValue()\">\n <ng-content select=\"[itemsSelectList]\"></ng-content>\n </li>\n <li *ngIf=\"selection.hasValue()\" class=\"text-center\">|</li>\n <li>\n <ng-content select=\"[itemsList]\"></ng-content>\n </li>\n </ul>\n </nav>\n <div *ngIf=\"loader | async\" class=\"spinner-container\" [ngClass]=\"{\n 'no-filter': !filterFormConfig\n }\">\n <mat-spinner diameter=\"40\"></mat-spinner>\n </div>\n <div class=\"list\">\n <table\n *ngIf=\"!emptyListComponent || (emptyListComponent && dataSource?.data?.length > 0) else emptyList\"\n [dataSource]=\"dataSource\"\n [matSortActive]=\"columnSort\"\n multiTemplateDataRows\n class=\"table-hover\"\n mat-table\n matSort\n [matSortDirection]=\"sortDirection\" matSortDisableClear>\n <ng-container matColumnDef=\"select\">\n <th *matHeaderCellDef mat-header-cell>\n <mat-checkbox (change)=\"$event ? selectAll() : null\"\n [checked]=\"selection.hasValue() && allSelected$ | async\"\n [indeterminate]=\"selection.hasValue() && !(allSelected$ | async)\">\n </mat-checkbox>\n </th>\n <td *matCellDef=\"let item\" mat-cell>\n <mat-checkbox *ngIf=\"disabledCheckboxItemList ? !disabledCheckboxItemList(item) : true\"\n (change)=\"$event ? selection.toggle(item) : null\"\n (click)=\"$event.stopPropagation(); selectItem();\"\n [checked]=\"selection.isSelected(item)\">\n </mat-checkbox>\n </td>\n <td *matFooterCellDef mat-footer-cell></td>\n </ng-container>\n\n <ng-container *ngIf=\"subListConfig && btnCollapseSubListConfig\" matColumnDef=\"collapseButton\">\n <th *matHeaderCellDef mat-header-cell></th>\n <td *matCellDef=\"let item\" mat-cell>\n <koala-button\n *ngIf=\"btnCollapseSubListConfig.show(item)\"\n (click)=\"expandedElement = expandedElement === item ? null : item\"\n [koalaIcon]=\"btnCollapseSubListConfig.koalaIcon\"\n [icon]=\"btnCollapseSubListConfig.icon\"\n [tooltip]=\"btnCollapseSubListConfig.tooltip\"\n [color]=\"btnCollapseSubListConfig.iconColor\"\n [backgroundColor]=\"btnCollapseSubListConfig.backgroundColor\"\n [koalaIconSize]=\"22\">\n </koala-button>\n </td>\n <td *matFooterCellDef mat-footer-cell></td>\n </ng-container>\n\n <ng-container *ngFor=\"let itemList of itemsList\" [matColumnDef]=\"itemList.columnDef\">\n <th *matHeaderCellDef [mat-sort-header]=\"itemList.sortHeader\" [disabled]=\"!itemList.sortHeader\" mat-header-cell>{{itemList.label}}</th>\n <td (dblclick)=\"itemList.dblClick(item)\" *matCellDef=\"let item\" mat-cell>\n\t <koala-dynamic-component *ngIf=\"itemList.itemComponent else itemText\"\n\t [dynamicComponent]=\"itemList.itemComponent(item)\"></koala-dynamic-component>\n\t <ng-template #itemText>\n\t {{itemList.itemNameProperty(item)}}\n\t </ng-template>\n </td>\n <td *matFooterCellDef mat-footer-cell>\n <koala-dynamic-component *ngIf=\"itemList.footer?.itemComponent else itemFooterText\"\n [dynamicComponent]=\"itemList.footer?.itemComponent(responseRequest)\"></koala-dynamic-component>\n <ng-template #itemFooterText>\n {{itemList.footer?.itemNameProperty(responseRequest)}}\n </ng-template>\n </td>\n </ng-container>\n\n <ng-container *ngIf=\"subListConfig && btnCollapseSubListConfig\" matColumnDef=\"koalaListDetails\">\n <th *matHeaderCellDef mat-header-cell></th>\n <td *matCellDef=\"let item\" [attr.colspan]=\"columnsToShowInList.length\" mat-cell>\n <div class=\"item-detail\" [@detailExpand]=\"item == expandedElement ? 'expanded' : 'collapsed'\">\n <koala-list [config]=\"subListConfig(item)\"></koala-list>\n </div>\n </td>\n <td *matFooterCellDef mat-footer-cell></td>\n </ng-container>\n\n <ng-container matColumnDef=\"options\">\n <th *matHeaderCellDef mat-header-cell></th>\n <td *matCellDef=\"let item\" mat-cell>\n <div *ngIf=\"haveOptionsOnItemLine(item)\">\n <button [matMenuTriggerFor]=\"options\" mat-icon-button type=\"button\">\n <i class='material-icons'>more_vert</i>\n </button>\n <mat-menu #options=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n\t <div *ngFor=\"let option of itemsMenuListOptions\">\n\t <button\n\t\t (click)=\"option.action(item)\"\n\t\t *ngIf=\"option.havePermission && (\n\t\t !option.showByItemList ||\n\t\t option.showByItemList(item)\n\t )\"\n\t\t mat-menu-item>\n\t <mat-icon>{{option.icon}}</mat-icon>\n\t <span>{{option.name}}</span>\n\t </button>\n\t </div>\n </mat-menu>\n </div>\n </td>\n <td *matFooterCellDef mat-footer-cell></td>\n </ng-container>\n\n <tr *matHeaderRowDef=\"columnsToShowInList; sticky: true\" mat-header-row></tr>\n <tr *matRowDef=\"let item; columns: columnsToShowInList;\" mat-row></tr>\n <ng-container *ngIf=\"subListConfig && btnCollapseSubListConfig\">\n <tr mat-row *matRowDef=\"let row; columns: ['koalaListDetails']\" class=\"item-detail-row\"></tr>\n </ng-container>\n <ng-container *ngIf=\"hasFooter()\">\n <tr *matFooterRowDef=\"columnsToShowInList; sticky: true\" mat-footer-row></tr>\n </ng-container>\n </table>\n <ng-template #emptyList>\n <koala-dynamic-component *ngIf=\"!(filterError$ | async) else errorList\" [dynamicComponent]=\"emptyListComponent\"></koala-dynamic-component>\n <ng-template #errorList>\n <koala-dynamic-component [dynamicComponent]=\"errorListComponent\"></koala-dynamic-component>\n </ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"!hidePaginator\" class=\"content-paginator\">\n <mat-paginator\n [length]=\"qtdListResult\"\n [pageSizeOptions]=\"limitOptions\"\n [pageSize]=\"pageSize\"\n showFirstLastButtons>\n </mat-paginator>\n </div>\n</div>\n",
458
- changeDetection: ChangeDetectionStrategy.OnPush,
459
- animations: [
460
- trigger('detailExpand', [
461
- state('collapsed', style({ height: '0px', minHeight: '0' })),
462
- state('expanded', style({ height: '*' })),
463
- transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
464
- ]),
465
- ],
466
- styles: [".list-container{border-radius:10px;margin:0 auto;overflow-x:hidden;width:calc(100% - 40px);position:relative}.list-container .spinner-container{position:absolute;width:100%;height:calc(100vh - 320px);top:100px;left:0;background:rgba(0,0,0,.15);z-index:2;display:flex;align-items:center;justify-content:center}.list-container .spinner-container.no-filter{top:40px}.list-container .list{display:block;height:calc(100vh - 320px);overflow-y:auto;position:relative;top:0;width:100%;z-index:1}.list-container .list table:not(.table-not-selection) .mat-header-cell:first-child,.list-container .list .mat-header-cell:last-child,.list-container .list .mat-header-cell.mat-column-collapseButton{width:5%}.list-container .list .mat-header-cell:last-child{text-align:center}.list-container .list .mat-header-row,.list-container .list .mat-row,.list-container .list .mat-footer-row{height:35px}.list-container .list .mat-row .mat-icon-button{height:35px;line-height:35px;width:35px}.list-container .list tr.detail-row:not(.expanded-row){height:0}.list-container .list .element-detail{display:flex;overflow:hidden}.list-container .list table{position:relative;width:100%;font-family:OpenSans,sans-serif;font-size:1em}.list-container .list table.table-hover tr{cursor:pointer;transition:.2s}.list-container .list table th:first-child,.list-container .list table td:first-child{padding:0 8px 0 20px}.list-container .list table th{font-size:.7em;padding:0 8px;font-family:\"OpenSans\",sans-serif;line-height:1em}.list-container .list table td{font-size:.8em;padding:0 8px;font-family:OpenSans,sans-serif}.list-container .list table th:last-child,.list-container .list table td:last-child{padding:0 20px 0 8px}.list-container .list .mat-list-item-content,.list-container .list .mat-list-item-content .mat-list-text{padding:0}.list-container .list-filter{box-shadow:0 1px 3px #0000004d;height:60px;position:relative;z-index:3}.list-container .list-filter .main{display:flex;justify-content:space-between;font-size:1.05em;height:60px;overflow:hidden;padding-left:2.5px;position:relative;width:100%}.list-container .list-filter .main koala-dynamic-form{width:100%}.list-container .list-filter .main mat-form-field{display:inline-block}.list-container .list-filter .main .mat-form-field-appearance-fill .mat-form-field-flex{background:transparent}.list-container .list-filter .main .mat-form-field .mat-form-field-wrapper{padding-bottom:0}.list-container .list-filter .main .mat-form-field-underline{display:none}.list-container .list-filter .main .mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{display:none}.list-container .list-filter .main .mat-form-field-wrapper .mat-form-field-subscript-wrapper{display:none}.list-container .list-filter ul{display:flex;align-items:center;font-size:0;list-style:none;margin:0;padding:0 15px 0 0;position:relative;text-align:right}.list-container .list-filter ul li{display:inline-block;font-size:14px;padding:5px;position:relative}.list-container .list-filter ul li.option button{transition:.2s}.list-container .list-filter ul li.option button:hover{background:rgba(0,0,0,.1)}.list-container .list-filter ul li.checkbox-filter{text-align:center}.list-container .list-filter ul li.checkbox-filter .checkbox-inline{top:-5px}.list-container .list-filter ul li.checkbox-filter input[type=checkbox]{margin-left:0}.list-container .list-filter ul li.checkbox-filter label{padding:0!important;width:auto}.list-container .list-filter .advanced{border-top:1px solid #dddddd;box-shadow:0 3px 10px #0000004d;height:0;overflow-x:hidden;overflow-y:auto;position:absolute;top:60px;transition:.2s;width:100%;z-index:1}.list-container .list-filter .advanced .container-filter{padding:15px}.list-container .list-filter .advanced.show{height:360px}.list-container nav.menu-list{height:40px;margin:0;padding:3px 0;position:relative;transition:.2s;width:100%;z-index:2;box-sizing:border-box}.list-container nav.menu-list ul.menu{float:left;font-size:0;list-style:none;margin:0;padding:0 10px;position:relative;text-align:left}.list-container nav.menu-list ul.menu li{color:#616161;display:inline-block;font-size:16px;padding:0 4px}.list-container nav.menu-list ul.menu li button.mat-button,.list-container nav.menu-list ul.menu li button.koala-icon-button{display:inline-block}.list-container .content-paginator mat-paginator .mat-paginator-container{height:40px!important;min-height:40px!important}.list-container .content-paginator mat-paginator .mat-paginator-container .mat-paginator-page-size-select{height:40px;margin-top:0!important}.list-container .content-paginator mat-paginator .mat-paginator-container .mat-paginator-range-label{margin-top:3px}.list-container .content-paginator{position:relative;background:transparent!important;z-index:2;box-shadow:-3px 1px 3px #0000004d}.list-container .item-detail{overflow:hidden}.list-container tr.item-detail-row{height:0!important}.list-container tr.item-detail-row .list-container{width:100%!important}.list-container tr.item-detail-row .list-container .list{height:auto!important;max-height:250px!important}.list-container tr.item-detail-row .list-container nav.menu-list{display:none}@media (max-width: 900px){.list-container{width:100%;box-shadow:none!important;padding:15px 10px 15px 15px;box-sizing:border-box}.list-container .list{height:auto;overflow:unset}.list-container .list-filter .main{justify-content:flex-end}}\n"]
467
- },] }
468
- ];
469
- ListComponent.ctorParameters = () => [
470
- { type: FormBuilder },
471
- { type: KoalaDynamicFormService },
472
- { type: DeviceDetectorService }
473
- ];
474
- ListComponent.propDecorators = {
475
- config: [{ type: Input }],
476
- paginator: [{ type: ViewChild, args: [MatPaginator,] }],
477
- sort: [{ type: ViewChild, args: [MatSort, { static: false },] }]
478
- };
479
-
480
- class KoalaListModule {
481
- }
482
- KoalaListModule.decorators = [
483
- { type: NgModule, args: [{
484
- declarations: [
485
- ListComponent
486
- ],
487
- imports: [
488
- CommonModule,
489
- KoalaFolderPageModule,
490
- KoalaFormModule,
491
- KoalaDynamicComponentModule,
492
- KoalaButtonModule,
493
- MatMenuModule,
494
- MatTableModule,
495
- MatSortModule,
496
- MatTooltipModule,
497
- MatPaginatorModule
498
- ],
499
- exports: [
500
- ListComponent
501
- ],
502
- providers: [{
503
- provide: MatPaginatorIntl,
504
- useClass: PaginationProvider
505
- }]
506
- },] }
507
- ];
508
-
509
- /**
510
- * Generated bundle index. Do not edit.
511
- */
512
-
513
- export { KoalaListModule, KoalaListService, ListAbstract, ListComponent, PaginationProvider };
514
- //# sourceMappingURL=koalarx-ui-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"koalarx-ui-list.js","sources":["../../../projects/list/src/lib/providers/pagination/pagination.provider.ts","../../../projects/list/src/lib/list-builder/list.builder.ts","../../../projects/list/src/lib/koala.list.service.ts","../../../projects/list/src/lib/list.abstract.ts","../../../projects/list/src/lib/list.component.ts","../../../projects/list/src/lib/koala.list.module.ts","../../../projects/list/src/koalarx-ui-list.ts"],"sourcesContent":["import { MatPaginatorIntl } from '@angular/material/paginator';\nimport { Injectable } from '@angular/core';\n\n@Injectable()\nexport class PaginationProvider extends MatPaginatorIntl {\n constructor() {\n super();\n this.getAndInitTranslations();\n }\n\n public getAndInitTranslations() {\n this.itemsPerPageLabel = \"Itens por Página\";\n this.firstPageLabel = \"Primeira Página\";\n this.nextPageLabel = \"Próxima Página\";\n this.previousPageLabel = \"Página Anterior\";\n this.lastPageLabel = \"Última Página\";\n this.changes.next();\n }\n\n public getRangeLabel = (page: number, pageSize: number, length: number) => {\n if (length === 0 || pageSize === 0) {\n return `0 / ${length}`;\n }\n length = Math.max(length, 0);\n const startIndex = page * pageSize;\n const endIndex = startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize;\n return `${startIndex + 1} - ${endIndex} / ${length}`;\n }\n}\n","import { KoalaListConfigInterface } from \"../koala.list-config.interface\";\nimport { KoalaListItemInterface } from \"../koala-list-item.interface\";\nimport { Type } from \"@angular/core\";\nimport { KoalaDynamicComponent } from \"@koalarx/ui/dynamic-component\";\nimport { KoalaListFilterInterface } from \"../koala-list-filter.interface\";\nimport { BehaviorSubject, Observable } from \"rxjs\";\nimport { KoalaListFormFilterInterface } from \"../koala-list-form-filter.interface\";\nimport { KoalaListItemMenuOptionInterface } from \"../koala-list-item-menu-option.interface\";\nimport { SelectionModel } from \"@angular/cdk/collections\";\nimport { KoalaListPageSize } from \"../list.abstract\";\nimport { first } from \"rxjs/operators\";\nimport { KoalaListBtnCollapseSubListConfigInterface } from \"../koala-list-btn-collapse-sub-list-config.interface\";\n\nexport class ListBuilder<DataType> {\n private config = {} as KoalaListConfigInterface;\n\n public service(\n service: (filter: BehaviorSubject<KoalaListFormFilterInterface>) => Observable<any> | Promise<any>,\n type: 'all' | 'onDemand' = \"all\",\n resultIndexName?: string,\n qtdResultIndexName?: string\n ) {\n this.config.typeRequest = type;\n this.config.responseIndexName = resultIndexName;\n this.config.responseQtdResultIndexName = response => response[qtdResultIndexName ?? ''] ?? [];\n this.config.columnSort = this.config?.filterParams?.getValue()?.sort;\n this.config.sortDirection = this.config?.filterParams?.getValue()?.order ?? 'asc';\n\n const response = service(this.config.filterParams ?? null);\n\n if (response instanceof Promise) {\n this.config.request = new Observable<any>(observe => {\n response.then(response => observe.next(response))\n .catch(error => observe.error(error));\n }).pipe(first());\n } else {\n this.config.request = new Observable<any>(observe => {\n (service(this.config.filterParams ?? null) as Observable<any>).pipe(first()).subscribe(observe);\n }).pipe(first());\n }\n\n return this;\n }\n\n public filterConfig(config: KoalaListFilterInterface) {\n this.config.filterFormConfig = config;\n return this;\n }\n\n public defaultFilter(config: KoalaListFormFilterInterface) {\n this.config.filterParams = new BehaviorSubject<KoalaListFormFilterInterface>(config);\n return this;\n }\n\n public pageSize(size: KoalaListPageSize) {\n this.config.pageSize = size;\n return this;\n }\n\n public columns(columns: string[]) {\n this.config.columnsToShowInList = columns;\n return this;\n }\n\n public itemColumn(item: KoalaListItemInterface<DataType>) {\n (this.config.itemsList?.length > 0) ?\n this.config.itemsList.push(item) :\n this.config.itemsList = [item];\n\n return this;\n }\n\n public actionList(item: KoalaListItemMenuOptionInterface<DataType>) {\n (this.config.itemsMenuListOptions?.length ?? 0 > 0) ?\n this.config.itemsMenuListOptions?.push(item) :\n this.config.itemsMenuListOptions = [item];\n\n return this;\n }\n\n public getDataSource(fn: (dataSource: DataType[]) => void) {\n this.config.getDataSource = fn;\n return this;\n }\n\n public getSelectionList(fn: (selection: SelectionModel<DataType>) => void) {\n this.config.getSelectionList = fn;\n return this;\n }\n\n public emptyListComponent(component: Type<any>, data?: any) {\n this.config.emptyListComponent = new KoalaDynamicComponent(component, data);\n return this;\n }\n\n public errorListComponent(component: Type<any>, data?: any) {\n this.config.errorListComponent = new KoalaDynamicComponent(component, data);\n return this;\n }\n\n public disableCheckboxItemList(fn: (item: DataType) => boolean) {\n this.config.disabledCheckboxItemList = fn;\n return this;\n }\n\n public setSubList(config: (item: DataType) => KoalaListConfigInterface) {\n this.config.subListConfig = config;\n return this;\n }\n\n public defineBtnCollapseSubListConfig(config: KoalaListBtnCollapseSubListConfigInterface<DataType>) {\n this.config.btnCollapseSubListConfig = config;\n return this;\n }\n\n public hidePaginator(hide: boolean = true) {\n this.config.hidePaginator = hide;\n return this;\n }\n\n public setCustomClass(className: string) {\n this.config.customClass = className;\n return this;\n }\n\n public getConfig(): KoalaListConfigInterface {\n this.config.reload = new BehaviorSubject<boolean>(false);\n return this.config;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ListBuilder } from \"./list-builder/list.builder\";\n\n@Injectable({providedIn: \"any\"})\nexport class KoalaListService {\n\n public build<DataType>() {\n return new ListBuilder<DataType>();\n }\n}\n","import { SelectionModel } from '@angular/cdk/collections';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort } from '@angular/material/sort';\nimport { BehaviorSubject, merge, Observable, Subscription } from 'rxjs';\nimport { FormAbstract } from '@koalarx/ui/form';\nimport { FormGroup } from '@angular/forms';\nimport { debounceTime, first, map, startWith, switchMap } from 'rxjs/operators';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { KoalaListFormFilterInterface } from './koala-list-form-filter.interface';\nimport { KoalaDynamicComponent } from \"@koalarx/ui/dynamic-component\";\nimport { delay } from \"@koalarx/utils/operators/delay\";\nimport { KoalaListConfigInterface } from \"./koala.list-config.interface\";\n\nexport type KoalaListPageSize = 10 | 20 | 30 | 50 | 100;\n\nexport abstract class ListAbstract extends FormAbstract {\n public selection = new SelectionModel<object>(true, []);\n public limitOptions: number[] = [10, 20, 30, 50, 100];\n public showMenuList: boolean = false;\n public allSelected$ = new BehaviorSubject<boolean>(false);\n public dataSource = new MatTableDataSource<any>([]);\n public typeRequest: 'all' | 'onDemand' = 'onDemand';\n public filterParams = new BehaviorSubject<KoalaListFormFilterInterface|null>(null);\n public filterError$ = new BehaviorSubject<any>(null);\n public emptyListComponent?: KoalaDynamicComponent;\n public errorListComponent?: KoalaDynamicComponent;\n public pageSize: KoalaListPageSize;\n\n protected config?: KoalaListConfigInterface;\n protected paginator?: MatPaginator;\n protected sort?: MatSort;\n\n private subscriptionList?: Subscription;\n private subscriptionSortList?: Subscription;\n private intervalSortList: any;\n\n protected constructor(\n private requestFunction: () => Observable<any>,\n private requestResponseFunction: <T>(results: T[]) => void,\n formSearch: () => FormGroup\n ) {\n super(formSearch);\n }\n\n public selectAll() {\n this.isAllSelected() ?\n this.selection.clear() :\n this.dataSource.data.forEach(item => {\n if (\n (this.config?.disabledCheckboxItemList && !this.config.disabledCheckboxItemList(item)) ||\n !this.config?.disabledCheckboxItemList\n ) {\n this.selection.select(item);\n }\n });\n\n this.isAllSelected();\n }\n\n public defineStatusSelectAll(status: boolean) {\n this.allSelected$.next(status);\n return this.allSelected$.getValue();\n }\n\n public selectItem() {\n setTimeout(() => {\n this.showMenuList = this.selection.hasValue();\n this.isAllSelected();\n }, 50);\n }\n\n public async search(filter?: any) {\n this.loading(true);\n this.selection.clear();\n if (this.paginator) {\n this.paginator.firstPage();\n }\n this.filterParams.next({\n params: filter,\n sort: this.sort?.active ?? '',\n order: this.sort?.direction ?? 'asc',\n page: this.paginator?.pageIndex ?? 0,\n limit: this.paginator?.pageSize ?? 30\n });\n }\n\n protected onDestroy() {\n this.subscriptionSortList?.unsubscribe();\n this.subscriptionList?.unsubscribe();\n clearInterval(this.intervalSortList);\n }\n\n protected async afterViewInit() {\n let tentativas = 0;\n let stop = false;\n do {\n tentativas++;\n await delay(400);\n if (this.sort || this.emptyListComponent) {\n this.prepareSearch().then();\n if (this.emptyListComponent) stop = true;\n } else if (tentativas > 10) {\n stop = true;\n }\n } while (!this.sort && !stop);\n }\n\n private async prepareSearch() {\n this.intervalSortList = setInterval(() => {\n if (this.sort && !this.subscriptionSortList) {\n this.subscriptionSortList = this.sort.sortChange.subscribe(() => {\n const filter = this.filterParams.value ?? {} as any;\n filter.sort = this.sort?.active ?? '';\n filter.order = this.sort?.direction ?? '';\n this.filterParams.next(filter);\n });\n } else if (!this.sort && this.subscriptionSortList) {\n this.subscriptionSortList.unsubscribe();\n }\n }, 50);\n\n if (this.typeRequest === 'onDemand') {\n this.subscriptionList = merge(this.paginator?.page ?? new Observable(), this.filterParams).pipe(\n startWith({}),\n switchMap(() => new Observable(observe => {\n this.loading(true);\n this.selection.clear();\n if (this.filterParams.value) {\n this.filterParams.value.sort = this.sort?.active ?? this.config?.columnSort ?? '';\n this.filterParams.value.order = this.sort?.direction ?? this.config?.sortDirection ?? '';\n this.filterParams.value.page = this.paginator?.pageIndex ?? 0;\n this.filterParams.value.limit = this.paginator?.pageSize ?? 30;\n }\n observe.next(true);\n })),\n debounceTime(300),\n switchMap(() => this.runRequestFunction()),\n map((response) => {\n this.loading(false);\n return this.requestResponseFunction(response);\n })\n ).subscribe();\n } else {\n if (this.paginator) this.dataSource.paginator = this.paginator;\n this.subscriptionList = this.filterParams.pipe(\n startWith({}),\n debounceTime(300),\n switchMap(() => this.runRequestFunction()),\n map((response) => {\n this.loading(false);\n return this.requestResponseFunction(response);\n })\n ).subscribe();\n }\n\n if (this.emptyListComponent) {\n do {\n await delay(301);\n if (this.sort) {\n if (this.typeRequest === \"onDemand\") {\n this.sort.sortChange.subscribe(() => {\n if (this.paginator) this.paginator.pageIndex = 0\n });\n } else {\n this.dataSource.sort = this.sort;\n }\n }\n } while (!this.sort);\n }\n }\n\n private isAllSelected() {\n const numSelected = this.selection.selected.length;\n const numRows = (this.config?.disabledCheckboxItemList ?\n this.dataSource.data.filter(item => !(this.config?.disabledCheckboxItemList\n ? this.config.disabledCheckboxItemList(item)\n : '')) :\n this.dataSource.data).length;\n\n return this.defineStatusSelectAll(numSelected === numRows);\n }\n\n private runRequestFunction() {\n return new Observable<unknown[]>(observe => {\n this.requestFunction().pipe(first()).subscribe({\n next: response => observe.next(response),\n error: err => {\n if (this.errorListComponent) {\n this.filterError$.next(err);\n this.errorListComponent.data = err;\n }\n this.loading(false);\n observe.next([]);\n }\n })\n })\n }\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { ListAbstract } from './list.abstract';\nimport { KoalaListItemMenuOptionInterface } from './koala-list-item-menu-option.interface';\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { KoalaListFilterInterface } from './koala-list-filter.interface';\nimport { KoalaDynamicFormService, KoalaDynamicFormConfigInterface } from '@koalarx/ui/form';\nimport { KoalaListItemInterface } from './koala-list-item.interface';\nimport { KoalaListFormFilterInterface } from \"./koala-list-form-filter.interface\";\nimport { MatSort, SortDirection } from \"@angular/material/sort\";\nimport { delay } from \"@koalarx/utils/operators/delay\";\nimport { koala } from \"@koalarx/utils\";\nimport { DeviceDetectorService } from \"ngx-device-detector\";\nimport { KoalaListConfigInterface } from \"./koala.list-config.interface\";\nimport { MatPaginator } from \"@angular/material/paginator\";\nimport { KoalaListBtnCollapseSubListConfigInterface } from \"./koala-list-btn-collapse-sub-list-config.interface\";\nimport { animate, state, style, transition, trigger } from \"@angular/animations\";\n\n@Component({\n selector: 'koala-list',\n templateUrl: 'list.component.html',\n styleUrls: ['list.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('detailExpand', [\n state('collapsed', style({height: '0px', minHeight: '0'})),\n state('expanded', style({height: '*'})),\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n ]),\n ],\n})\nexport class ListComponent extends ListAbstract implements OnInit, AfterViewInit, OnDestroy {\n @Input() public config?: KoalaListConfigInterface;\n\n @ViewChild(MatPaginator) protected paginator: MatPaginator;\n @ViewChild(MatSort, {static: false}) protected sort: MatSort;\n\n public customClass?: string;\n public columnsToShowInList?: string[];\n public hidePaginator?: boolean = false;\n public columnSort?: string;\n public sortDirection: SortDirection = 'asc';\n public itemsMenuListOptions?: KoalaListItemMenuOptionInterface<any>[];\n public itemsList?: KoalaListItemInterface<any>[];\n public request?: Observable<any>;\n public responseIndexName?: string;\n public responseQtdResultIndexName?: (response: any) => number;\n public responseRequest?: any;\n public typeRequest: 'all' | 'onDemand' = 'all'\n public filterFormConfig?: KoalaListFilterInterface;\n public reload?: BehaviorSubject<boolean>;\n public formFilter?: FormGroup;\n public showAdvancedFilter: boolean = false;\n public qtdListResult = 0;\n public disabledCheckboxItemList?: (item: any) => boolean;\n public expandedElement = false;\n public btnCollapseSubListConfig?: KoalaListBtnCollapseSubListConfigInterface<any>;\n public subListConfig?: (item: any) => KoalaListConfigInterface;\n\n constructor(\n private fb: FormBuilder,\n private dynamicFormService: KoalaDynamicFormService,\n private deviceService: DeviceDetectorService\n ) {\n super(\n () => this.config?.request ?? new Observable<any>(),\n (response) => {\n this.responseRequest = response;\n this.dataSource.data = this.config?.responseIndexName\n ? (this.config.responseIndexName\n ? response[this.config.responseIndexName]\n : [])\n : response;\n if (this.config?.getDataSource) this.config?.getDataSource(this.dataSource.data);\n this.qtdListResult = this.config?.responseQtdResultIndexName\n ? this.config.responseQtdResultIndexName(response) ?? 0\n : this.dataSource.data?.length ?? 0;\n },\n () => this.formFilter ?? fb.group({})\n );\n }\n\n ngOnInit() {\n this.initConfig();\n this.formFilter = this.fb.group({\n formSearch: this.filterFormConfig?.main?.form ?? [''],\n formAdvancedSearch: this.filterFormConfig?.advanced?.form ?? ['']\n });\n this.loading(true);\n if (this.filterFormConfig) {\n this.filterFormConfig?.main?.formConfig?.map(item => {\n item.class += ' padding-none w-99';\n return item;\n });\n this.filterFormConfig?.advanced?.formConfig?.map(item => {\n item.class += ' padding-none';\n return item;\n });\n if (this.filterFormConfig?.checkAndSearch) {\n this.formFilter.addControl(this.filterFormConfig.checkAndSearch.formControlName, new FormControl(this.filterFormConfig.checkAndSearch.isChecked ?? false));\n }\n }\n\n if (this.config.getSelectionList) this.config.getSelectionList(this.selection);\n\n if (this.reload) {\n this.reload.subscribe(async reload => {\n if (reload) {\n await this.filterSubmit();\n }\n });\n }\n }\n\n ngOnDestroy() {\n super.onDestroy();\n }\n\n ngAfterViewInit() {\n super.afterViewInit().then();\n }\n\n public async filterSubmit() {\n this.showAdvancedFilter = false;\n await delay(1);\n let dados = koala(\n this.filterFormConfig?.main?.form\n ? this.dynamicFormService.emitData(this.filterFormConfig?.main?.form)\n : {}\n )\n .object()\n .merge(\n this.filterFormConfig?.advanced?.form\n ? this.dynamicFormService.emitData(this.filterFormConfig?.advanced?.form)\n : {})\n .getValue();\n\n if (this.filterFormConfig?.checkAndSearch) {\n const controlName = this.filterFormConfig.checkAndSearch.formControlName;\n dados[controlName] = this.formFilter.get(controlName).value;\n }\n await super.search(dados);\n }\n\n public toogleFilter() {\n this.showAdvancedFilter = !this.showAdvancedFilter;\n }\n\n public haveOptionsOnItemLine(item: any) {\n return this.itemsMenuListOptions.filter(option => option.havePermission && (\n !option.showByItemList ||\n option.showByItemList(item)\n )).length > 0\n }\n\n public hasFooter() {\n return !!this.itemsList.find(item => !!item.footer);\n }\n\n private initConfig() {\n this.columnSort = this.config.columnSort ?? null;\n this.sortDirection = this.config.sortDirection ?? 'asc';\n this.itemsMenuListOptions = this.config.itemsMenuListOptions ?? [];\n this.typeRequest = this.config.typeRequest ?? 'all';\n this.qtdListResult = this.config.qtdListResult ?? 0;\n this.columnsToShowInList = this.config.columnsToShowInList;\n this.itemsList = this.config.itemsList.map(item => {\n if (!item.dblClick) {\n item.dblClick = () => {\n };\n }\n return item;\n });\n this.showAdvancedFilter = this.config.showAdvancedFilter;\n this.filterFormConfig = this.config.filterFormConfig;\n this.request = this.config.request;\n this.reload = this.config.reload;\n this.responseIndexName = this.config.responseIndexName;\n this.responseQtdResultIndexName = this.config.responseQtdResultIndexName;\n this.filterParams = this.config.filterParams ?? new BehaviorSubject<KoalaListFormFilterInterface>(null);\n this.emptyListComponent = this.config.emptyListComponent;\n this.errorListComponent = this.config.errorListComponent;\n this.pageSize = this.config.pageSize ?? 30;\n this.disabledCheckboxItemList = this.config.disabledCheckboxItemList;\n this.subListConfig = this.config.subListConfig;\n this.btnCollapseSubListConfig = this.config.btnCollapseSubListConfig;\n this.hidePaginator = this.config.hidePaginator;\n this.customClass = this.config.customClass;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ListComponent } from './list.component';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatPaginatorIntl, MatPaginatorModule } from '@angular/material/paginator';\nimport { CommonModule } from '@angular/common';\nimport { KoalaFormModule } from '@koalarx/ui/form';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { PaginationProvider } from './providers/pagination/pagination.provider';\nimport { KoalaFolderPageModule } from '@koalarx/ui/folder-page';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { KoalaDynamicComponentModule } from '@koalarx/ui/dynamic-component';\nimport { KoalaButtonModule } from \"@koalarx/ui/button\";\n\n@NgModule({\n declarations: [\n ListComponent\n ],\n imports: [\n CommonModule,\n KoalaFolderPageModule,\n KoalaFormModule,\n KoalaDynamicComponentModule,\n KoalaButtonModule,\n MatMenuModule,\n MatTableModule,\n MatSortModule,\n MatTooltipModule,\n MatPaginatorModule\n ],\n exports: [\n ListComponent\n ],\n providers: [{\n provide: MatPaginatorIntl,\n useClass: PaginationProvider\n }]\n})\nexport class KoalaListModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}