@koalarx/ui 12.7.18 → 13.0.2

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 +18 -6
  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 +18 -6
  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 +18 -6
  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 +18 -6
  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
@@ -0,0 +1,1367 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, Input, EventEmitter, Output, Injectable, ViewChild, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/material/progress-bar';
4
+ import { MatProgressBarModule } from '@angular/material/progress-bar';
5
+ import * as i15 from '@angular/common';
6
+ import { CommonModule, HashLocationStrategy } from '@angular/common';
7
+ import * as i1$1 from '@angular/platform-browser';
8
+ import * as i2 from '@angular/material/icon';
9
+ import { MatIconModule } from '@angular/material/icon';
10
+ import * as i3 from '@angular/material/button';
11
+ import { MatButtonModule } from '@angular/material/button';
12
+ import * as i4 from '@angular/material/list';
13
+ import { MatListModule } from '@angular/material/list';
14
+ import * as i6 from '@angular/material/tooltip';
15
+ import { MatTooltipModule } from '@angular/material/tooltip';
16
+ import * as i2$1 from '@angular/router';
17
+ import { NavigationError, NavigationEnd, NavigationCancel, NavigationStart, RouterModule } from '@angular/router';
18
+ import * as i8 from '@angular/material/core';
19
+ import { BehaviorSubject, Observable } from 'rxjs';
20
+ import jwt from 'jwt-decode';
21
+ import * as i4$1 from '@koalarx/ui/menu';
22
+ import { menuStateSubject } from '@koalarx/ui/menu';
23
+ import jwtEncode from 'jwt-encode';
24
+ import { koala } from '@koalarx/utils';
25
+ import { delay } from '@koalarx/utils/operators/delay';
26
+ import { randomString } from '@koalarx/utils/operators/string';
27
+ import * as i1$2 from '@angular/common/http';
28
+ import { HttpErrorResponse, HttpParams, HttpClientModule } from '@angular/common/http';
29
+ import * as i6$1 from 'ngx-device-detector';
30
+ import * as i7 from '@angular/material/progress-spinner';
31
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
32
+ import * as i9 from '@angular/material/sidenav';
33
+ import { MatSidenavModule } from '@angular/material/sidenav';
34
+ import * as i10 from '@angular/material/toolbar';
35
+ import { MatToolbarModule } from '@angular/material/toolbar';
36
+ import * as i13 from '@angular/material/menu';
37
+ import { MatMenuModule } from '@angular/material/menu';
38
+ import * as i16 from '@angular/material/badge';
39
+ import { MatBadgeModule } from '@angular/material/badge';
40
+ import * as i1$3 from '@koalarx/ui/alert';
41
+ import { KoalaAlertEnum, KoalaRequestCodeToAlertEnumTranslate } from '@koalarx/ui/alert';
42
+ import { map, first } from 'rxjs/operators';
43
+
44
+ class LoaderBarPageComponent {
45
+ constructor() {
46
+ this.show = false;
47
+ this.progress = 0;
48
+ this.typeLoader = 'indeterminate';
49
+ }
50
+ }
51
+ LoaderBarPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LoaderBarPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
52
+ LoaderBarPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: LoaderBarPageComponent, selector: "app-loader-page", inputs: { show: "show", progress: "progress", typeLoader: "typeLoader" }, ngImport: i0, template: "<div [ngClass]=\"{'bouncedInDown d-block': show}\" class=\"animated loader-bar-page\">\n <mat-progress-bar\n [bufferValue]=\"progress\"\n [mode]=\"typeLoader\"\n [value]=\"progress\"\n color=\"primary\">\n </mat-progress-bar>\n</div>\n", styles: [".loader-bar-page{position:absolute;display:none;top:0;left:0;width:100vw;height:100vh;z-index:100000}\n"], components: [{ type: i1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], directives: [{ type: i15.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LoaderBarPageComponent, decorators: [{
54
+ type: Component,
55
+ args: [{ selector: 'app-loader-page', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{'bouncedInDown d-block': show}\" class=\"animated loader-bar-page\">\n <mat-progress-bar\n [bufferValue]=\"progress\"\n [mode]=\"typeLoader\"\n [value]=\"progress\"\n color=\"primary\">\n </mat-progress-bar>\n</div>\n", styles: [".loader-bar-page{position:absolute;display:none;top:0;left:0;width:100vw;height:100vh;z-index:100000}\n"] }]
56
+ }], propDecorators: { show: [{
57
+ type: Input
58
+ }], progress: [{
59
+ type: Input
60
+ }], typeLoader: [{
61
+ type: Input
62
+ }] } });
63
+
64
+ class NotificationComponent {
65
+ constructor(titleService) {
66
+ this.titleService = titleService;
67
+ this.deleteAll = new EventEmitter(false);
68
+ this.delete = new EventEmitter(null);
69
+ }
70
+ ngOnChanges(changes) {
71
+ if (!this.appName) {
72
+ this.appName = this.titleService.getTitle();
73
+ }
74
+ if (changes.notifications && this.notifications.length > 0) {
75
+ this.titleService.setTitle(`(${this.notifications.length}) ${this.appName}`);
76
+ }
77
+ else {
78
+ this.titleService.setTitle(this.appName);
79
+ }
80
+ }
81
+ deleteAllNotifications() {
82
+ this.deleteAll.emit(true);
83
+ }
84
+ deleteNotification(notification) {
85
+ this.delete.emit(notification);
86
+ }
87
+ }
88
+ NotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotificationComponent, deps: [{ token: i1$1.Title }], target: i0.ɵɵFactoryTarget.Component });
89
+ NotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NotificationComponent, selector: "koala-notification-list", inputs: { notifications: "notifications" }, outputs: { deleteAll: "deleteAll", delete: "delete" }, usesOnChanges: true, ngImport: i0, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:unset!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"], components: [{ type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }], directives: [{ type: i15.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i15.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i4.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i8.MatLine, selector: "[mat-line], [matLine]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotificationComponent, decorators: [{
91
+ type: Component,
92
+ args: [{ selector: 'koala-notification-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:unset!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"] }]
93
+ }], ctorParameters: function () { return [{ type: i1$1.Title }]; }, propDecorators: { notifications: [{
94
+ type: Input
95
+ }], deleteAll: [{
96
+ type: Output
97
+ }], delete: [{
98
+ type: Output
99
+ }] } });
100
+
101
+ // @dynamic
102
+ class KoalaLanguageHelper {
103
+ static setLanguage(language) {
104
+ this.language = language;
105
+ }
106
+ static getLanguage() {
107
+ return this.language;
108
+ }
109
+ static getBtnLabel() {
110
+ switch (this.language) {
111
+ case "enUs":
112
+ return 'Send';
113
+ default:
114
+ return 'Enviar';
115
+ }
116
+ }
117
+ static getYesMessage() {
118
+ switch (this.language) {
119
+ case "enUs":
120
+ return 'Yes';
121
+ default:
122
+ return 'Sim';
123
+ }
124
+ }
125
+ static getNoMessage() {
126
+ switch (this.language) {
127
+ case "enUs":
128
+ return 'No';
129
+ default:
130
+ return 'Não';
131
+ }
132
+ }
133
+ static getInternalServerErrorMessage() {
134
+ switch (this.language) {
135
+ case "enUs":
136
+ return 'We had a problem with your request.<br/>Sorry for the inconvenience.<br/><br/>Please try again later.';
137
+ default:
138
+ return 'Tivemos um problema com sua requisição.<br/>Sinto muito pelo transtorno.<br/><br/>Gentileza tentar novamente mais tarde.';
139
+ }
140
+ }
141
+ static getRequiredMessage(label) {
142
+ switch (this.language) {
143
+ case "enUs":
144
+ return `${label} is required.`;
145
+ default:
146
+ return `Nenhum valor informado.`;
147
+ }
148
+ }
149
+ static getInvalidMessage(label) {
150
+ switch (this.language) {
151
+ case "enUs":
152
+ return `${label} is invalid.`;
153
+ default:
154
+ return `Registro inválido.`;
155
+ }
156
+ }
157
+ static getMinMessage(min) {
158
+ switch (this.language) {
159
+ case "enUs":
160
+ return `Inform at least the value of ${min}.`;
161
+ default:
162
+ return `Informe no mínimo o valor de ${min}.`;
163
+ }
164
+ }
165
+ static getMaxMessage(max) {
166
+ switch (this.language) {
167
+ case "enUs":
168
+ return `Inform at most the value of ${max}.`;
169
+ default:
170
+ return `Informe no máximo o valor de ${max}.`;
171
+ }
172
+ }
173
+ static getMinLengthMessage(minLength) {
174
+ switch (this.language) {
175
+ case "enUs":
176
+ return `Enter a value with at least ${minLength} characters.`;
177
+ default:
178
+ return `Informe um valor com no mínimo ${minLength} caracteres.`;
179
+ }
180
+ }
181
+ static getMaxLengthMessage(maxLength) {
182
+ switch (this.language) {
183
+ case "enUs":
184
+ return `Enter a value with at most ${maxLength} characters.`;
185
+ default:
186
+ return `Informe um valor com no máximo ${maxLength} caracteres.`;
187
+ }
188
+ }
189
+ static getDateMinMessage() {
190
+ switch (this.language) {
191
+ case "enUs":
192
+ return `Inform at least the date of `;
193
+ default:
194
+ return `Informe no mínimo a data de `;
195
+ }
196
+ }
197
+ static getDateMaxMessage() {
198
+ switch (this.language) {
199
+ case "enUs":
200
+ return `Inform at most the date of `;
201
+ default:
202
+ return `Informe no máximo a data de `;
203
+ }
204
+ }
205
+ static getAutocompleteMessage(label) {
206
+ switch (this.language) {
207
+ case "enUs":
208
+ return `You must select a option.`;
209
+ default:
210
+ return `Você deve selecionar uma opção.`;
211
+ }
212
+ }
213
+ }
214
+
215
+ // @dynamic
216
+ class KoalaEnvironment {
217
+ }
218
+
219
+ // @dynamic
220
+ class TokenFactory {
221
+ static init() {
222
+ if (!!localStorage.getItem(KoalaEnvironment.environment?.storageTokenName)) {
223
+ TokenFactory.setToken(localStorage.getItem(KoalaEnvironment.environment?.storageTokenName));
224
+ }
225
+ }
226
+ static setToken(token) {
227
+ localStorage.setItem(KoalaEnvironment.environment?.storageTokenName, token);
228
+ this.token = token;
229
+ }
230
+ static getToken() {
231
+ return this.token;
232
+ }
233
+ static removeToken() {
234
+ localStorage.removeItem(KoalaEnvironment.environment?.storageTokenName);
235
+ this.token = null;
236
+ }
237
+ static hasToken() {
238
+ return !!this.token && !!localStorage.getItem(KoalaEnvironment.environment?.storageTokenName);
239
+ }
240
+ static logout() {
241
+ this.removeToken();
242
+ }
243
+ }
244
+
245
+ class KoalaTokenService {
246
+ constructor() {
247
+ this.token$ = new BehaviorSubject(null);
248
+ this.verifySession();
249
+ }
250
+ ngOnDestroy() {
251
+ if (this.intervalToken) {
252
+ clearInterval(this.intervalToken);
253
+ }
254
+ }
255
+ setToken(token) {
256
+ if (TokenFactory.hasToken()) {
257
+ this.token$.next(token);
258
+ }
259
+ TokenFactory.setToken(token);
260
+ }
261
+ getToken() {
262
+ return this.token$;
263
+ }
264
+ getDecodedToken() {
265
+ return (TokenFactory.hasToken() ? jwt(TokenFactory.getToken()) : null);
266
+ }
267
+ getOAuth2Token() {
268
+ return (TokenFactory.hasToken() ? jwt(TokenFactory.getToken()) : null);
269
+ }
270
+ removeToken() {
271
+ TokenFactory.removeToken();
272
+ }
273
+ verifySession() {
274
+ TokenFactory.init();
275
+ this.token$.next(TokenFactory.getToken());
276
+ this.intervalToken = setInterval(() => {
277
+ if (!TokenFactory.hasToken() && this.token$.getValue()) {
278
+ this.token$.next(null);
279
+ }
280
+ else if (TokenFactory.hasToken() && !this.token$.getValue()) {
281
+ this.token$.next(TokenFactory.getToken());
282
+ }
283
+ }, 300);
284
+ }
285
+ }
286
+ KoalaTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaTokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
287
+ KoalaTokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaTokenService, providedIn: "any" });
288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaTokenService, decorators: [{
289
+ type: Injectable,
290
+ args: [{ providedIn: "any" }]
291
+ }], ctorParameters: function () { return []; } });
292
+
293
+ // @dynamic
294
+ class KoalaOauthConfig {
295
+ static getConfig() {
296
+ return localStorage.getItem(KoalaEnvironment.environment?.storageOAuthTypeName);
297
+ }
298
+ static hasConfig() {
299
+ return !!this.getConfig();
300
+ }
301
+ static setConfig(type) {
302
+ localStorage.setItem(KoalaEnvironment.environment?.storageOAuthTypeName, type);
303
+ this.config.next(this.getOAuthConfig(type));
304
+ }
305
+ static getOAuthConfig(type) {
306
+ const environment = KoalaEnvironment.environment?.oauthConfig?.find(config => config.name === type) ?? null;
307
+ return environment ?? {
308
+ customQueryParams: {
309
+ client_secret: null
310
+ },
311
+ clientId: null,
312
+ scope: null,
313
+ domain: null,
314
+ strictDiscoveryDocumentValidation: false,
315
+ indexLoginName: 'name'
316
+ };
317
+ }
318
+ }
319
+ KoalaOauthConfig.config = new BehaviorSubject(KoalaOauthConfig.getOAuthConfig(KoalaOauthConfig.getConfig()));
320
+
321
+ const KOALA_LOADER_SUBJECT = new BehaviorSubject({
322
+ typeLoader: 'indeterminate',
323
+ progress: 0,
324
+ show: false
325
+ });
326
+ class KoalaLoaderService {
327
+ getLoaderSubject() {
328
+ return KOALA_LOADER_SUBJECT;
329
+ }
330
+ create(loaderConfig) {
331
+ KOALA_LOADER_SUBJECT.next({
332
+ show: true,
333
+ progress: loaderConfig.progress ? loaderConfig.progress : 0,
334
+ typeLoader: loaderConfig.typeLoader ? loaderConfig.typeLoader : 'indeterminate'
335
+ });
336
+ }
337
+ dismiss() {
338
+ KOALA_LOADER_SUBJECT.next({
339
+ show: false,
340
+ progress: 0,
341
+ typeLoader: 'indeterminate'
342
+ });
343
+ }
344
+ }
345
+ KoalaLoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
346
+ KoalaLoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaLoaderService, providedIn: "any" });
347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaLoaderService, decorators: [{
348
+ type: Injectable,
349
+ args: [{ providedIn: "any" }]
350
+ }] });
351
+
352
+ const STATE_STORAGE_NAME = 'koala_openid_state';
353
+ class KoalaOAuth2Service {
354
+ constructor(http, router, tokenService) {
355
+ this.http = http;
356
+ this.router = router;
357
+ this.tokenService = tokenService;
358
+ this.events = new BehaviorSubject(null);
359
+ this.token = {};
360
+ this.generateState();
361
+ }
362
+ ngOnDestroy() {
363
+ if (this.eventSubscription) {
364
+ this.eventSubscription.unsubscribe();
365
+ }
366
+ if (this.refreshTokenInterval) {
367
+ clearInterval(this.refreshTokenInterval);
368
+ }
369
+ }
370
+ hasOpenIdConfig() {
371
+ return !!this.openIdOptions;
372
+ }
373
+ configure(options) {
374
+ this.config = options;
375
+ }
376
+ loadDiscoveryDocumentAndTryLogin() {
377
+ if (this.eventSubscription) {
378
+ this.eventSubscription.unsubscribe();
379
+ }
380
+ this.eventSubscription = this.events.subscribe(event => {
381
+ if (event === 'authenticate') {
382
+ this.generateState();
383
+ localStorage.setItem(STATE_STORAGE_NAME, this.state);
384
+ window.location.href = `${this.openIdOptions.authorization_endpoint}?response_type=${this.config.responseType}&client_id=${this.config.clientId}&state=${this.state}&redirect_uri=${this.config.redirectUri}&scope=${this.config.scope}`;
385
+ }
386
+ else if (event === 'getToken') {
387
+ const urlParams = new URLSearchParams(window.location.search);
388
+ const state = urlParams.get('state');
389
+ if (state === this.state) {
390
+ const code = urlParams.get('code');
391
+ this.getToken(code);
392
+ }
393
+ else {
394
+ this.logout();
395
+ }
396
+ }
397
+ else if (event === 'getClaims' || (event === 'refreshToken' && !this.claims)) {
398
+ this.getClaims();
399
+ }
400
+ });
401
+ return new Promise((resolve, reject) => {
402
+ this.http.get(`${this.config.issuer}/.well-known/openid-configuration`).subscribe(options => {
403
+ this.openIdOptions = options;
404
+ if (window.location.href.indexOf(`state=${this.state}`) >= 0) {
405
+ this.events.next('getToken');
406
+ }
407
+ else if (!this.tokenService.getOAuth2Token()) {
408
+ this.events.next('loadedConfig');
409
+ }
410
+ resolve(true);
411
+ }, e => {
412
+ console.error(e);
413
+ this.events.next('errorLoadConfig');
414
+ reject(e);
415
+ });
416
+ });
417
+ }
418
+ async initLoginFlow(name) {
419
+ if (name) {
420
+ KoalaOauthConfig.setConfig(name);
421
+ await delay(1000);
422
+ }
423
+ this.events.next('authenticate');
424
+ }
425
+ getIdentityClaims() {
426
+ return this.claims;
427
+ }
428
+ getAccessToken() {
429
+ return this.token.access_token;
430
+ }
431
+ getIdToken() {
432
+ return this.token.id_token;
433
+ }
434
+ getRefreshToken() {
435
+ return this.token.refresh_token;
436
+ }
437
+ getAccessTokenExpiration() {
438
+ const expires_in = new Date();
439
+ expires_in.setSeconds(this.token.expires_in);
440
+ return expires_in.toString();
441
+ }
442
+ getCode() {
443
+ return this.code;
444
+ }
445
+ logout() {
446
+ const logoutInterval = setInterval(() => {
447
+ if (this.hasOpenIdConfig()) {
448
+ if (this.openIdOptions.end_session_endpoint) {
449
+ this.claims = null;
450
+ this.token = null;
451
+ const iframeLogout = document.createElement('iframe');
452
+ iframeLogout.style.display = 'none';
453
+ iframeLogout.src = this.openIdOptions.end_session_endpoint;
454
+ document.querySelector('body').appendChild(iframeLogout);
455
+ }
456
+ this.events.next('logout');
457
+ clearInterval(logoutInterval);
458
+ }
459
+ }, 300);
460
+ }
461
+ initRefreshTokenInterval(code, refreshToken) {
462
+ if (!this.refreshTokenInterval) {
463
+ this.refreshTokenInterval = setInterval(() => {
464
+ const refreshTokenDate = new Date();
465
+ refreshTokenDate.setMinutes(refreshTokenDate.getMinutes() + 1);
466
+ const token = this.tokenService.getOAuth2Token();
467
+ if (token) {
468
+ const expires_in = token.expired;
469
+ if (expires_in) {
470
+ if (new Date(expires_in) <= refreshTokenDate) {
471
+ this.getToken(code, refreshToken);
472
+ }
473
+ }
474
+ }
475
+ }, 1000);
476
+ }
477
+ }
478
+ getToken(code, refreshToken) {
479
+ if (refreshToken) {
480
+ clearInterval(this.refreshTokenInterval);
481
+ this.refreshTokenInterval = null;
482
+ }
483
+ const formData = new URLSearchParams();
484
+ let data = koala({
485
+ grant_type: (refreshToken ? 'refresh_token' : 'authorization_code'),
486
+ code,
487
+ redirect_uri: this.config.redirectUri,
488
+ client_id: this.config.clientId
489
+ }).object().merge(this.config.customQueryParams ?? {}).getValue();
490
+ if (refreshToken) {
491
+ data = koala(data).object().merge({ refresh_token: refreshToken }).getValue();
492
+ }
493
+ if (!this.code) {
494
+ this.code = code;
495
+ }
496
+ Object.keys(data).forEach(indexName => {
497
+ formData.append(indexName, data[indexName]);
498
+ });
499
+ this.http.post(this.config.endpointToken ?? this.openIdOptions.token_endpoint, formData.toString(), {
500
+ headers: {
501
+ 'Content-Type': 'application/x-www-form-urlencoded'
502
+ }
503
+ }).subscribe((token) => {
504
+ this.token = token;
505
+ this.events.next((refreshToken ? 'refreshToken' : 'getClaims'));
506
+ }, () => this.events.next('getTokenError'));
507
+ }
508
+ getClaims() {
509
+ this.http.get(this.config.endpointClaims ?? this.openIdOptions.userinfo_endpoint, {
510
+ headers: {
511
+ Authorization: `Bearer ${this.getAccessToken()}`
512
+ }
513
+ }).subscribe(userInfo => {
514
+ this.claims = userInfo;
515
+ this.state = null;
516
+ localStorage.removeItem(STATE_STORAGE_NAME);
517
+ this.events.next(this.events.getValue() === 'refreshToken' ? 'refreshToken' : 'userAuthenticated');
518
+ }, () => this.events.next('loadedConfig'));
519
+ }
520
+ generateState() {
521
+ this.state = localStorage.getItem(STATE_STORAGE_NAME) ?
522
+ localStorage.getItem(STATE_STORAGE_NAME) :
523
+ randomString(30, {
524
+ numbers: true,
525
+ uppercase: true,
526
+ lowercase: true
527
+ });
528
+ }
529
+ }
530
+ KoalaOAuth2Service.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaOAuth2Service, deps: [{ token: i1$2.HttpClient }, { token: i2$1.Router }, { token: KoalaTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
531
+ KoalaOAuth2Service.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaOAuth2Service });
532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaOAuth2Service, decorators: [{
533
+ type: Injectable
534
+ }], ctorParameters: function () { return [{ type: i1$2.HttpClient }, { type: i2$1.Router }, { type: KoalaTokenService }]; } });
535
+
536
+ class PageComponent {
537
+ constructor(tokenService, router, loaderService, menuService, oauth2Service, deviceService) {
538
+ this.tokenService = tokenService;
539
+ this.router = router;
540
+ this.loaderService = loaderService;
541
+ this.menuService = menuService;
542
+ this.oauth2Service = oauth2Service;
543
+ this.deviceService = deviceService;
544
+ this.showMenu = true;
545
+ this.startMenuOpened = true;
546
+ this.userMenuOptions = [];
547
+ this.language = 'ptBr';
548
+ this.validatingScope = new EventEmitter(false);
549
+ this.logoutEmitter = new EventEmitter(false);
550
+ this.deleteAllNotifications = new EventEmitter(false);
551
+ this.deleteNotification = new EventEmitter(null);
552
+ this.username$ = new BehaviorSubject('');
553
+ this.firstUserLetter$ = new BehaviorSubject('');
554
+ this.logged$ = new BehaviorSubject(false);
555
+ this.validationScope$ = new BehaviorSubject(false);
556
+ this.isMobile = this.deviceService.isMobile();
557
+ this.defaultPalletColors = {
558
+ scrollbarColor: '#1976D2',
559
+ scrollbarColorHover: '#1565C0',
560
+ userPresentationBackground: '#f1f1f1',
561
+ userPresentationUserBackground: '#1976D2',
562
+ userPresentationUserFontColor: '#fff',
563
+ firstColor: '#fff',
564
+ secondColor: '#F1F1F1',
565
+ bodyBackground: '#eeeeee',
566
+ checkboxBackground: '#1976d2',
567
+ checkboxColor: '#ffffff',
568
+ fontColor: '#1976D2',
569
+ fontHoverColor: '#1976D2',
570
+ fontActiveColor: '#1565C0',
571
+ menuTitleBackground: 'rgba(0,0,0,.1)',
572
+ menuTitleColor: 'rgba(0,0,0,.3)',
573
+ menuBackground: '#fafafa',
574
+ menuOptionsBackground: '#eaeaea',
575
+ menuOptionsColor: '#a5a5a5',
576
+ menuOptionsColorHover: '#1976D2',
577
+ menuOptionsColorActive: '#1565c0',
578
+ toolbarBackground: '#ffffff',
579
+ toolbarColor: '#1976d2',
580
+ listBackground: '#fff',
581
+ listContentBackground: '#fff',
582
+ listTitleItemColor: '#838383',
583
+ listItemColor: '#3e3e3e',
584
+ listItemBackgroudHover: '#F1F1F1',
585
+ listItemBackgroundActive: '#EEE',
586
+ shadowColorTableList: 'rgba(25, 118, 210, .4)'
587
+ };
588
+ this.loaderSubject = loaderService.getLoaderSubject();
589
+ }
590
+ ngOnInit() {
591
+ KoalaLanguageHelper.setLanguage(this.language);
592
+ this.initOAuth2();
593
+ if (this.openPages) {
594
+ if (this.openPages.indexOf('/') < 0) {
595
+ this.openPages.push('/');
596
+ }
597
+ if (this.openPages.indexOf('/login') < 0) {
598
+ this.openPages.push('/login');
599
+ }
600
+ }
601
+ else {
602
+ this.openPages = [
603
+ '/',
604
+ '/login'
605
+ ];
606
+ }
607
+ this.tokenService.getToken()?.subscribe(token => {
608
+ this.logged$.next(!!token);
609
+ if (this.logged$.getValue()) {
610
+ const decodedToken = this.tokenService.getDecodedToken();
611
+ this.username$.next(decodedToken.login);
612
+ this.firstUserLetter$.next(decodedToken.login.charAt(0).toUpperCase());
613
+ if (!this.isMobile) {
614
+ this.menuService.open();
615
+ }
616
+ }
617
+ if (this.logged$.getValue() && this.openPages?.indexOf(this.currentUrl) >= 0 && this.defaultPage) {
618
+ this.router.navigate([this.defaultPage]).then();
619
+ }
620
+ else if (!this.logged$.getValue() && this.currentUrl && this.openPages?.indexOf(this.currentUrl) < 0) {
621
+ this.router.navigate(['login']).then();
622
+ return false;
623
+ }
624
+ });
625
+ this.router.events.subscribe(event => {
626
+ switch (true) {
627
+ case event instanceof NavigationStart: {
628
+ this.loaderService.create({ typeLoader: 'indeterminate' });
629
+ break;
630
+ }
631
+ case event instanceof NavigationEnd:
632
+ case event instanceof NavigationCancel:
633
+ case event instanceof NavigationError: {
634
+ this.loaderService.dismiss();
635
+ if (event instanceof NavigationEnd) {
636
+ if (this.isMobile) {
637
+ this.menuService.close();
638
+ }
639
+ this.currentUrl = event.url.split('?')[0];
640
+ if (event.url.indexOf('/login?clientId=') < 0) {
641
+ if (this.logged$.getValue() && this.defaultPage && this.openPages?.indexOf(this.currentUrl) >= 0) {
642
+ this.router.navigate([this.defaultPage]).then();
643
+ return false;
644
+ }
645
+ else if (!this.logged$.getValue() && this.openPages?.indexOf(this.currentUrl) < 0) {
646
+ this.router.navigate(['login']).then();
647
+ return false;
648
+ }
649
+ }
650
+ }
651
+ break;
652
+ }
653
+ default: {
654
+ break;
655
+ }
656
+ }
657
+ });
658
+ if (this.palletColors) {
659
+ Object.keys(this.defaultPalletColors).forEach(indexName => {
660
+ if (!this.palletColors.hasOwnProperty(indexName) ||
661
+ !this.palletColors[indexName]) {
662
+ this.palletColors[indexName] = this.defaultPalletColors[indexName];
663
+ }
664
+ });
665
+ }
666
+ else {
667
+ this.palletColors = this.defaultPalletColors;
668
+ }
669
+ this.defineColor();
670
+ if (this.showMenu) {
671
+ menuStateSubject.subscribe(async (state) => {
672
+ if (this.menu) {
673
+ if (state === 'close') {
674
+ if (this.menu.opened) {
675
+ await this.menu.close();
676
+ }
677
+ }
678
+ else if (state === 'open') {
679
+ if (!this.menu.opened) {
680
+ await this.menu.open();
681
+ }
682
+ }
683
+ }
684
+ });
685
+ if (this.startMenuOpened && this.logged$.getValue()) {
686
+ if (!this.isMobile) {
687
+ this.menuService.open();
688
+ }
689
+ }
690
+ else {
691
+ this.menuService.close();
692
+ }
693
+ }
694
+ else {
695
+ this.menuService.close();
696
+ }
697
+ this.validationScope$.subscribe(scope => this.validatingScope.emit(scope));
698
+ }
699
+ async toogleMenu() {
700
+ this.menuService.clearConfig();
701
+ if (this.menu) {
702
+ await this.menu.toggle();
703
+ }
704
+ }
705
+ async logout() {
706
+ if (KoalaEnvironment.environment?.oauthConfig) {
707
+ this.oauth2Service.logout();
708
+ }
709
+ this.menuService.close();
710
+ this.tokenService.removeToken();
711
+ this.tokenService.getToken().next(null);
712
+ this.logoutEmitter.emit(true);
713
+ }
714
+ defineColor() {
715
+ const css = `
716
+ *::-webkit-scrollbar-thumb {background: ${this.palletColors.scrollbarColor};width: 2px;}
717
+ *::-webkit-scrollbar-thumb:hover {background: ${this.palletColors.scrollbarColorHover};}
718
+ input:-webkit-autofill, input:-webkit-autofill:focus, input:-webkit-autofill:hover {color: ${this.palletColors.fontColor}!important;}
719
+ .menu-container,
720
+ body {background: ${this.palletColors.bodyBackground}!important;}
721
+ input:-webkit-autofill, input:-webkit-autofill:focus, input:-webkit-autofill:hover {-webkit-box-shadow: 0 0 0 1000px ${this.palletColors.firstColor} inset !important;}
722
+ .mat-button-disabled,
723
+ input::placeholder,
724
+ .mat-form-field-appearance-outline .mat-form-field-outline {color: ${this.palletColors.fontColor}!important;opacity: .6;}
725
+ .mat-hint,
726
+ .mat-expansion-indicator::after,
727
+ .more-items-content .items .titleForm,
728
+ fieldset legend,
729
+ .mat-paginator-container,
730
+ .mat-form-field-flex mat-icon {color: ${this.palletColors.fontColor}!important;}
731
+ .mat-paginator-container,
732
+ .mat-card,
733
+ .mat-expansion-panel,
734
+ .mat-select-panel,
735
+ .mat-autocomplete-panel,
736
+ .mat-menu-panel {background: ${this.palletColors.firstColor}}
737
+ .mat-selected {background-color: rgba(0,0,0,.3)!important;}
738
+ .question p,
739
+ .alert-message,
740
+ .mat-action-row,
741
+ .mat-option,
742
+ .mat-menu-item,
743
+ .mat-menu-item mat-icon {color: ${this.palletColors.fontColor}!important}
744
+ .mat-select-value,
745
+ .mat-select-arrow,
746
+ .mat-form-field input,
747
+ .mat-form-field textarea,
748
+ .mat-form-field-appearance-outline:not(.mat-form-field-invalid) .mat-form-field-outline-thick,
749
+ .mat-form-field label,
750
+ .select-multiple-native select {color: ${this.palletColors.fontColor}!important;caret-color: ${this.palletColors.fontColor}!important;}
751
+ .mat-form-field-underline,
752
+ .mat-form-field-appearance-fill .mat-form-field-underline::before,
753
+ .mat-form-field-ripple {background: ${this.palletColors.fontColor}!important;}
754
+ .mat-checkbox-checked.mat-accent .mat-checkbox-background, .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,
755
+ .mat-checkbox:not(.mat-checkbox-disabled).mat-accent .mat-checkbox-ripple .mat-ripple-element {background-color: ${this.palletColors.checkboxBackground} !important;}
756
+ .mat-checkbox-checkmark-path {stroke: ${this.palletColors.checkboxColor} !important;}
757
+ .mat-checkbox-checkmark {fill: ${this.palletColors.checkboxColor} !important;}
758
+ .mat-checkbox-mixedmark {background-color: ${this.palletColors.checkboxColor} !important;}
759
+ .mat-checkbox-frame {border-color: ${this.palletColors.checkboxOutlineColor}!important;}
760
+ .mat-checkbox-label {color: ${this.palletColors.fontColor}!important;}
761
+ .mat-radio-outer-circle {border-color: ${this.palletColors.checkboxBackground}!important;}
762
+ .mat-radio-ripple .mat-ripple-element, .mat-radio-inner-circle {background-color: ${this.palletColors.checkboxBackground} !important;}
763
+ .home-list-cards .list .mat-list-item-content .mat-icon {color: ${this.palletColors.fontColor};}
764
+ .home-list-cards .list button .mat-badge-content {background: ${this.palletColors.fontColor};}
765
+ .koala-dialog .mat-dialog-title h2 {color: ${this.palletColors.fontColor};}
766
+ .koala-dialog .mat-dialog-title mat-icon {color: ${this.palletColors.fontColor}!important;}
767
+ .koala-dialog .mat-dialog-container {background: ${this.palletColors.firstColor}}
768
+ .list-filter mat-icon {color: ${this.palletColors.filterIconColor}!important;}
769
+ koala-page .menu-options {background: ${this.palletColors.menuBackground};}
770
+ koala-page .toolbar {background: ${this.palletColors.toolbarBackground};}
771
+ koala-page .toolbar .btn-collapse-menu,
772
+ koala-page .btn-toolbar span{color: ${this.palletColors.toolbarColor};}
773
+ koala-page .btn-toolbar span.icon-user,
774
+ .user-presentation span.icon-user {background: ${this.palletColors.userPresentationUserBackground};color: ${this.palletColors.userPresentationUserFontColor};}
775
+ .user-presentation {background: ${this.palletColors.userPresentationBackground};}
776
+ .user-presentation span.username {color: ${this.palletColors.toolbarColor};}
777
+ .mat-drawer.mat-drawer-push {background-color: ${this.palletColors.bodyBackground};}
778
+ koala-menu .title {background: ${this.palletColors.menuTitleBackground};color: ${this.palletColors.menuTitleColor};}
779
+ koala-menu ul li,
780
+ koala-menu ul li a {color: ${this.palletColors.menuOptionsColor};}
781
+ koala-menu ul li:hover,
782
+ koala-menu ul li:hover a {color: ${this.palletColors.menuOptionsColorHover} !important;}
783
+ koala-menu ul li.active,
784
+ koala-menu ul li.expanded {color: ${this.palletColors.menuOptionsColorActive} !important;border-left: 4px solid ${this.palletColors.menuOptionsColorActive} !important;background: ${this.palletColors.menuOptionsBackground} !important;}
785
+ koala-menu ul li.active a,
786
+ koala-menu ul li.expanded a {color: ${this.palletColors.menuOptionsColorActive} !important;background: ${this.palletColors.menuOptionsBackground} !important;}
787
+ koala-menu ul li li:hover,
788
+ koala-menu ul li li:hover a {color: ${this.palletColors.menuOptionsColorHover} !important;}
789
+ koala-menu ul li li.active,
790
+ koala-menu ul li li.active a {color: ${this.palletColors.menuOptionsColorActive} !important;}
791
+ koala-menu ul li koala-icon svg *,
792
+ koala-menu ul li a koala-icon svg * {fill: ${this.palletColors.menuOptionsColor};}
793
+ koala-menu ul li:hover koala-icon svg *,
794
+ koala-menu ul li:hover a koala-icon svg * {fill: ${this.palletColors.menuOptionsColorHover} !important;}
795
+ koala-menu ul li.active koala-icon *,
796
+ koala-menu ul li.expanded koala-icon * {fill: ${this.palletColors.menuOptionsColorActive} !important;}
797
+ koala-menu ul li li:hover koala-icon *,
798
+ koala-menu ul li li:hover a koala-icon * {fill: ${this.palletColors.menuOptionsColorHover} !important;}
799
+ koala-menu ul li li.active koala-icon *,
800
+ koala-menu ul li li.active a koala-icon * {fill: ${this.palletColors.menuOptionsColorActive}!important;}
801
+ .notifications-content .title {color: ${this.palletColors.notificationTitleColor}!important;}
802
+ .notifications-content .empty,
803
+ .notifications-content .titleList {color: ${this.palletColors.notificationContentTitleColor}!important;}
804
+ .notifications-content .iconList {color: ${this.palletColors.notificationContentIconColor}!important;}
805
+ .notifications-content .textList {color: ${this.palletColors.notificationTitleColor}!important;}
806
+ .list-container {box-shadow: 0 1px 3px ${this.palletColors.shadowColorTableList};}
807
+ .list-container .list table.table-hover tr:hover {background: ${this.palletColors.listItemBackgroudHover};}
808
+ .list-container .list table.table-hover tr:active {background: ${this.palletColors.listItemBackgroundActive};}
809
+ .list-container .list-filter .advanced {background: ${this.palletColors.firstColor};}
810
+ .list-container nav.menu-list {background: ${this.palletColors.firstColor};color: rgba(25, 118, 210, .3);}
811
+ .content {background: ${this.palletColors.listContentBackground};}
812
+ .mat-tab-group .mat-tab-label {color: ${this.palletColors.fontColor};}
813
+ .mat-tab-group .mat-ink-bar {background-color: ${this.palletColors.fontColor}!important;}
814
+ .mat-table {background: ${this.palletColors.listBackground};color: ${this.palletColors.fontColor};}
815
+ .mat-table th {color: ${this.palletColors.listTitleItemColor}!important;}
816
+ .mat-sort-header-arrow {color: ${this.palletColors.listItemColor}!important;}
817
+ .mat-table td {color: ${this.palletColors.listItemColor}!important;}`;
818
+ const head = document.head || document.getElementsByTagName('head')[0];
819
+ const style = document.createElement('style');
820
+ head.appendChild(style);
821
+ style.appendChild(document.createTextNode(css));
822
+ }
823
+ initOAuth2() {
824
+ KoalaOauthConfig.config.subscribe(config => this.startConfig(config));
825
+ if (KoalaOauthConfig.hasConfig()) {
826
+ KoalaOauthConfig.setConfig(KoalaOauthConfig.getConfig());
827
+ }
828
+ }
829
+ startConfig(config) {
830
+ if (config.clientId) {
831
+ this.oauth2Service.configure({
832
+ redirectUri: window.location.origin,
833
+ redirectUriAfterAuth: this.defaultPage,
834
+ responseType: 'code',
835
+ clientId: config.clientId,
836
+ scope: config.scope,
837
+ issuer: config.domain,
838
+ customQueryParams: config.customQueryParams,
839
+ endpointToken: config.endpointToken ?? null,
840
+ endpointClaims: config.endpointClaims ?? null
841
+ });
842
+ this.oauth2Service.loadDiscoveryDocumentAndTryLogin().then();
843
+ if (this.oauthEventsSubscription) {
844
+ this.oauthEventsSubscription.unsubscribe();
845
+ }
846
+ this.oauthEventsSubscription = this.oauth2Service.events.subscribe(event => {
847
+ if (event === 'userAuthenticated' || event === 'refreshToken') {
848
+ const claims = this.oauth2Service.getIdentityClaims();
849
+ if (claims && (!TokenFactory.hasToken() ||
850
+ (TokenFactory.hasToken() && event === 'refreshToken'))) {
851
+ this.tokenService.setToken(jwtEncode({
852
+ accessToken: this.oauth2Service.getAccessToken(),
853
+ idToken: this.oauth2Service.getIdToken(),
854
+ refreshToken: this.oauth2Service.getRefreshToken(),
855
+ login: claims[config.indexLoginName] ?? 'Undefined',
856
+ expired: this.oauth2Service.getAccessTokenExpiration(),
857
+ code: this.oauth2Service.getCode()
858
+ }, 'secret'));
859
+ }
860
+ if (event === 'userAuthenticated') {
861
+ setTimeout(() => this.validationScope$.next(false), 300);
862
+ }
863
+ }
864
+ else if (event === 'getToken') {
865
+ this.validationScope$.next(true);
866
+ }
867
+ });
868
+ }
869
+ }
870
+ }
871
+ PageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageComponent, deps: [{ token: KoalaTokenService }, { token: i2$1.Router }, { token: KoalaLoaderService }, { token: i4$1.KoalaMenuService }, { token: KoalaOAuth2Service }, { token: i6$1.DeviceDetectorService }], target: i0.ɵɵFactoryTarget.Component });
872
+ PageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PageComponent, selector: "koala-page", inputs: { showMenu: "showMenu", color: "color", logo: "logo", startMenuOpened: "startMenuOpened", showLoaderPage: "showLoaderPage", messageLoaderPage: "messageLoaderPage", defaultPage: "defaultPage", openPages: "openPages", notifications: "notifications", userMenuOptions: "userMenuOptions", palletColors: "palletColors", language: "language" }, outputs: { validatingScope: "validatingScope", logoutEmitter: "logoutEmitter", deleteAllNotifications: "deleteAllNotifications", deleteNotification: "deleteNotification" }, providers: [KoalaTokenService], viewQueries: [{ propertyName: "menu", first: true, predicate: ["drawer"], descendants: true, static: true }], ngImport: i0, template: "<div *ngIf=\"showLoaderPage | async\" class=\"koala-loader-pg\">\n <div class=\"loader-content\">\n <figure>\n <img [src]=\"logo\" alt=\"Logotipo\"/>\n <figcaption *ngIf=\"(messageLoaderPage | async) as messageLoader\" [innerHTML]=\"messageLoader\"></figcaption>\n </figure>\n <mat-spinner></mat-spinner>\n </div>\n</div>\n<app-loader-page *ngIf=\"(loaderSubject | async) as loader\" [progress]=\"loader.progress\" [show]=\"loader.show\"\n [typeLoader]=\"loader.typeLoader\"></app-loader-page>\n<mat-drawer-container autosize class=\"menu-container\">\n <mat-drawer #drawer class=\"menu-options\" [mode]=\"isMobile ? 'push' : 'side'\">\n <img [src]=\"logo\" alt=\"Logotipo\" id=\"logotipo\"/>\n <ng-content *ngIf=\"showMenu\" select=\"[menu-options]\"></ng-content>\n </mat-drawer>\n\n <mat-toolbar *ngIf=\"!!(logged$ | async) && (username$ | async)\" class=\"toolbar\">\n <img *ngIf=\"!showMenu\" [src]=\"logo\" alt=\"Logotipo Toolbar\" id=\"logotipo-toolbar\"/>\n <button (click)=\"toogleMenu()\" *ngIf=\"showMenu\" [color]=\"color\" class=\"btn-collapse-menu\" mat-icon-button>\n <mat-icon>menu</mat-icon>\n </button>\n <span class=\"spacer\"></span>\n\t <div class=\"menu-toolbar\">\n\t\t <ng-content select=\"[menu-toolbar]\"></ng-content>\n\t </div>\n <div *ngIf=\"(notifications | async) as notificationList\">\n <button *ngIf=\"notifications\" [color]=\"color\" [matMenuTriggerFor]=\"notificationsMenu\" class=\"btn-toolbar\"\n mat-icon-button>\n <mat-icon\n\t [matBadgeHidden]=\"notificationList.length === 0\"\n\t [matBadge]=\"notificationList.length.toString()\"\n\t matBadgeColor=\"warn\">notifications\n </mat-icon>\n </button>\n <mat-menu #notificationsMenu=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n <koala-notification-list\n (delete)=\"deleteNotification.emit($event)\"\n (deleteAll)=\"deleteAllNotifications.emit($event)\"\n [notifications]=\"notificationList\">\n </koala-notification-list>\n </mat-menu>\n </div>\n <button [color]=\"color\" [matMenuTriggerFor]=\"userOptions\" class=\"btn-toolbar\" mat-button>\n <span>{{username$ | async}}</span>\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span>\n </button>\n <mat-menu #userOptions=\"matMenu\" class=\"user-menu menu-list\" yPosition=\"below\">\n <div class=\"user-presentation\">\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span><br/>\n <span class=\"username\">{{username$ | async}}</span>\n </div>\n <button (click)=\"btn.action()\" *ngFor=\"let btn of userMenuOptions\" mat-menu-item>\n <mat-icon>{{btn.icon}}</mat-icon>\n <span>{{btn.name}}</span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <mat-icon>exit_to_app</mat-icon>\n <span>{{language === 'ptBr' ? 'Sair' : 'Logout'}}</span>\n </button>\n </mat-menu>\n </mat-toolbar>\n\n <ng-content class=\"page-content\" select=\"[page-content]\"></ng-content>\n\n</mat-drawer-container>\n\n<ng-content class=\"loading-info-content\" select=\"[loading-info-content]\"></ng-content>\n", styles: [".menu-container{height:100vh;width:100vw}.menu-options{border:none;padding:20px 0 0;width:250px}.page-content{align-items:center;display:flex;height:100%;justify-content:center}img#logotipo,img#logotipo-toolbar{display:block;height:auto;margin:0 auto 25px;position:relative;width:120px}.toolbar{box-shadow:none;padding:0 7px 0 13px}.toolbar img#logotipo-toolbar{margin:0;padding:0 10px}.menu-toolbar{margin:0 10px}.spacer{flex:1 1 auto}.btn-toolbar{display:inline-block;margin-right:10px;position:relative}.btn-toolbar span{padding:0 10px 0 0}.btn-toolbar span.icon-user,.user-presentation span.icon-user{border-radius:50%;display:inline-block;height:10px;line-height:10px;padding:5px;width:10px}.user-presentation{min-width:260px;padding:50px 10px;text-align:center}.user-presentation span.icon-user{font-size:30px;height:30px;line-height:30px;margin-bottom:10px;width:30px}.user-presentation span.username{font-family:OpenSansLight,sans-serif;word-break:break-all}@media (max-width: 900px){.btn-toolbar span:first-child{display:none}.btn-toolbar span.icon-user,.user-presentation span.icon-user{height:20px;line-height:20px;width:20px}}\n"], components: [{ type: i7.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: LoaderBarPageComponent, selector: "app-loader-page", inputs: ["show", "progress", "typeLoader"] }, { type: i9.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { type: i9.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { type: i10.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i13.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: NotificationComponent, selector: "koala-notification-list", inputs: ["notifications"], outputs: ["deleteAll", "delete"] }, { type: i13.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i15.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i16.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i15.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i15.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
873
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageComponent, decorators: [{
874
+ type: Component,
875
+ args: [{ selector: 'koala-page', providers: [KoalaTokenService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"showLoaderPage | async\" class=\"koala-loader-pg\">\n <div class=\"loader-content\">\n <figure>\n <img [src]=\"logo\" alt=\"Logotipo\"/>\n <figcaption *ngIf=\"(messageLoaderPage | async) as messageLoader\" [innerHTML]=\"messageLoader\"></figcaption>\n </figure>\n <mat-spinner></mat-spinner>\n </div>\n</div>\n<app-loader-page *ngIf=\"(loaderSubject | async) as loader\" [progress]=\"loader.progress\" [show]=\"loader.show\"\n [typeLoader]=\"loader.typeLoader\"></app-loader-page>\n<mat-drawer-container autosize class=\"menu-container\">\n <mat-drawer #drawer class=\"menu-options\" [mode]=\"isMobile ? 'push' : 'side'\">\n <img [src]=\"logo\" alt=\"Logotipo\" id=\"logotipo\"/>\n <ng-content *ngIf=\"showMenu\" select=\"[menu-options]\"></ng-content>\n </mat-drawer>\n\n <mat-toolbar *ngIf=\"!!(logged$ | async) && (username$ | async)\" class=\"toolbar\">\n <img *ngIf=\"!showMenu\" [src]=\"logo\" alt=\"Logotipo Toolbar\" id=\"logotipo-toolbar\"/>\n <button (click)=\"toogleMenu()\" *ngIf=\"showMenu\" [color]=\"color\" class=\"btn-collapse-menu\" mat-icon-button>\n <mat-icon>menu</mat-icon>\n </button>\n <span class=\"spacer\"></span>\n\t <div class=\"menu-toolbar\">\n\t\t <ng-content select=\"[menu-toolbar]\"></ng-content>\n\t </div>\n <div *ngIf=\"(notifications | async) as notificationList\">\n <button *ngIf=\"notifications\" [color]=\"color\" [matMenuTriggerFor]=\"notificationsMenu\" class=\"btn-toolbar\"\n mat-icon-button>\n <mat-icon\n\t [matBadgeHidden]=\"notificationList.length === 0\"\n\t [matBadge]=\"notificationList.length.toString()\"\n\t matBadgeColor=\"warn\">notifications\n </mat-icon>\n </button>\n <mat-menu #notificationsMenu=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n <koala-notification-list\n (delete)=\"deleteNotification.emit($event)\"\n (deleteAll)=\"deleteAllNotifications.emit($event)\"\n [notifications]=\"notificationList\">\n </koala-notification-list>\n </mat-menu>\n </div>\n <button [color]=\"color\" [matMenuTriggerFor]=\"userOptions\" class=\"btn-toolbar\" mat-button>\n <span>{{username$ | async}}</span>\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span>\n </button>\n <mat-menu #userOptions=\"matMenu\" class=\"user-menu menu-list\" yPosition=\"below\">\n <div class=\"user-presentation\">\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span><br/>\n <span class=\"username\">{{username$ | async}}</span>\n </div>\n <button (click)=\"btn.action()\" *ngFor=\"let btn of userMenuOptions\" mat-menu-item>\n <mat-icon>{{btn.icon}}</mat-icon>\n <span>{{btn.name}}</span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <mat-icon>exit_to_app</mat-icon>\n <span>{{language === 'ptBr' ? 'Sair' : 'Logout'}}</span>\n </button>\n </mat-menu>\n </mat-toolbar>\n\n <ng-content class=\"page-content\" select=\"[page-content]\"></ng-content>\n\n</mat-drawer-container>\n\n<ng-content class=\"loading-info-content\" select=\"[loading-info-content]\"></ng-content>\n", styles: [".menu-container{height:100vh;width:100vw}.menu-options{border:none;padding:20px 0 0;width:250px}.page-content{align-items:center;display:flex;height:100%;justify-content:center}img#logotipo,img#logotipo-toolbar{display:block;height:auto;margin:0 auto 25px;position:relative;width:120px}.toolbar{box-shadow:none;padding:0 7px 0 13px}.toolbar img#logotipo-toolbar{margin:0;padding:0 10px}.menu-toolbar{margin:0 10px}.spacer{flex:1 1 auto}.btn-toolbar{display:inline-block;margin-right:10px;position:relative}.btn-toolbar span{padding:0 10px 0 0}.btn-toolbar span.icon-user,.user-presentation span.icon-user{border-radius:50%;display:inline-block;height:10px;line-height:10px;padding:5px;width:10px}.user-presentation{min-width:260px;padding:50px 10px;text-align:center}.user-presentation span.icon-user{font-size:30px;height:30px;line-height:30px;margin-bottom:10px;width:30px}.user-presentation span.username{font-family:OpenSansLight,sans-serif;word-break:break-all}@media (max-width: 900px){.btn-toolbar span:first-child{display:none}.btn-toolbar span.icon-user,.user-presentation span.icon-user{height:20px;line-height:20px;width:20px}}\n"] }]
876
+ }], ctorParameters: function () { return [{ type: KoalaTokenService }, { type: i2$1.Router }, { type: KoalaLoaderService }, { type: i4$1.KoalaMenuService }, { type: KoalaOAuth2Service }, { type: i6$1.DeviceDetectorService }]; }, propDecorators: { showMenu: [{
877
+ type: Input
878
+ }], color: [{
879
+ type: Input
880
+ }], logo: [{
881
+ type: Input
882
+ }], startMenuOpened: [{
883
+ type: Input
884
+ }], showLoaderPage: [{
885
+ type: Input
886
+ }], messageLoaderPage: [{
887
+ type: Input
888
+ }], defaultPage: [{
889
+ type: Input
890
+ }], openPages: [{
891
+ type: Input
892
+ }], notifications: [{
893
+ type: Input
894
+ }], userMenuOptions: [{
895
+ type: Input
896
+ }], palletColors: [{
897
+ type: Input
898
+ }], language: [{
899
+ type: Input
900
+ }], validatingScope: [{
901
+ type: Output
902
+ }], logoutEmitter: [{
903
+ type: Output
904
+ }], deleteAllNotifications: [{
905
+ type: Output
906
+ }], deleteNotification: [{
907
+ type: Output
908
+ }], menu: [{
909
+ type: ViewChild,
910
+ args: ['drawer', { static: true }]
911
+ }] } });
912
+
913
+ class KoalaPageModule {
914
+ }
915
+ KoalaPageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
916
+ KoalaPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaPageModule, declarations: [PageComponent,
917
+ NotificationComponent,
918
+ LoaderBarPageComponent], imports: [CommonModule,
919
+ RouterModule,
920
+ MatBadgeModule,
921
+ MatProgressSpinnerModule,
922
+ MatProgressBarModule,
923
+ MatToolbarModule,
924
+ MatTooltipModule,
925
+ MatButtonModule,
926
+ MatIconModule,
927
+ MatSidenavModule,
928
+ MatListModule,
929
+ MatMenuModule], exports: [PageComponent,
930
+ RouterModule] });
931
+ KoalaPageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaPageModule, imports: [[
932
+ CommonModule,
933
+ RouterModule,
934
+ MatBadgeModule,
935
+ MatProgressSpinnerModule,
936
+ MatProgressBarModule,
937
+ MatToolbarModule,
938
+ MatTooltipModule,
939
+ MatButtonModule,
940
+ MatIconModule,
941
+ MatSidenavModule,
942
+ MatListModule,
943
+ MatMenuModule
944
+ ], RouterModule] });
945
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaPageModule, decorators: [{
946
+ type: NgModule,
947
+ args: [{
948
+ declarations: [
949
+ PageComponent,
950
+ NotificationComponent,
951
+ LoaderBarPageComponent
952
+ ],
953
+ exports: [
954
+ PageComponent,
955
+ RouterModule
956
+ ],
957
+ imports: [
958
+ CommonModule,
959
+ RouterModule,
960
+ MatBadgeModule,
961
+ MatProgressSpinnerModule,
962
+ MatProgressBarModule,
963
+ MatToolbarModule,
964
+ MatTooltipModule,
965
+ MatButtonModule,
966
+ MatIconModule,
967
+ MatSidenavModule,
968
+ MatListModule,
969
+ MatMenuModule
970
+ ]
971
+ }]
972
+ }] });
973
+
974
+ class KoalaParameterHashLocationStrategy extends HashLocationStrategy {
975
+ prepareExternalUrl(internal) {
976
+ const hasToken = !!localStorage.getItem(KoalaEnvironment.environment?.storageTokenName);
977
+ return !hasToken ?
978
+ window.location.search + super.prepareExternalUrl(internal) :
979
+ super.prepareExternalUrl(internal);
980
+ }
981
+ }
982
+ KoalaParameterHashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaParameterHashLocationStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
983
+ KoalaParameterHashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaParameterHashLocationStrategy });
984
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaParameterHashLocationStrategy, decorators: [{
985
+ type: Injectable
986
+ }] });
987
+
988
+ class KoalaNotFoundError extends Error {
989
+ }
990
+
991
+ class KoalaUnhautorizedError extends Error {
992
+ }
993
+
994
+ class KoalaClientError extends Error {
995
+ }
996
+
997
+ class KoalaSuccessError extends Error {
998
+ }
999
+
1000
+ class KoalaErrorsHelper {
1001
+ static generate(e, urlRequest, customMessage) {
1002
+ let errorMessage = {
1003
+ error: true,
1004
+ message: (customMessage ? customMessage : e.message),
1005
+ urlRequest
1006
+ };
1007
+ if (e instanceof KoalaSuccessError) {
1008
+ errorMessage.error = false;
1009
+ errorMessage.statusCode = 200;
1010
+ errorMessage.alertEnum = KoalaAlertEnum.success;
1011
+ }
1012
+ else if (e instanceof KoalaNotFoundError) {
1013
+ errorMessage.statusCode = 404;
1014
+ errorMessage.alertEnum = KoalaAlertEnum.notFound;
1015
+ }
1016
+ else if (e instanceof KoalaUnhautorizedError) {
1017
+ errorMessage.statusCode = 401;
1018
+ errorMessage.alertEnum = KoalaAlertEnum.unhautorized;
1019
+ }
1020
+ else if (e instanceof KoalaClientError) {
1021
+ errorMessage.statusCode = 400;
1022
+ errorMessage.alertEnum = KoalaAlertEnum.badRequest;
1023
+ }
1024
+ else if (e instanceof HttpErrorResponse) {
1025
+ errorMessage.urlRequest = e.url;
1026
+ errorMessage.statusCode = e.status;
1027
+ errorMessage.alertEnum = KoalaAlertEnum.internalServerError;
1028
+ if (e.error && e.error.message) {
1029
+ errorMessage.message = e.error.message;
1030
+ }
1031
+ }
1032
+ else {
1033
+ errorMessage.statusCode = 500;
1034
+ errorMessage.alertEnum = KoalaAlertEnum.internalServerError;
1035
+ }
1036
+ return errorMessage;
1037
+ }
1038
+ }
1039
+
1040
+ class KoalaRequestHeaderHelper {
1041
+ static add(token) {
1042
+ const headers = koala({}).object();
1043
+ if (token) {
1044
+ headers.merge({ Authorization: 'Bearer ' + token });
1045
+ }
1046
+ if (KoalaOauthConfig.hasConfig()) {
1047
+ headers.merge({ Authenticator: KoalaOauthConfig.getConfig() });
1048
+ }
1049
+ return headers.getValue();
1050
+ }
1051
+ }
1052
+
1053
+ // @dynamic
1054
+ class KoalaResponseFactory {
1055
+ static async generateResponse(response, urlRequest) {
1056
+ return new Promise((resolve, reject) => {
1057
+ let alert;
1058
+ switch (response.status) {
1059
+ case 200:
1060
+ case 201:
1061
+ alert = KoalaErrorsHelper.generate(new KoalaSuccessError(response.body?.message), urlRequest);
1062
+ alert.data = response.body;
1063
+ resolve(alert);
1064
+ break;
1065
+ case 400:
1066
+ alert = KoalaErrorsHelper.generate(new KoalaClientError(response.body.message), urlRequest);
1067
+ reject(alert);
1068
+ break;
1069
+ case 404:
1070
+ alert = KoalaErrorsHelper.generate(new KoalaNotFoundError(response.body?.message), urlRequest);
1071
+ reject(alert);
1072
+ break;
1073
+ case 401:
1074
+ alert = KoalaErrorsHelper.generate(new KoalaUnhautorizedError(response.body?.message), urlRequest);
1075
+ reject(alert);
1076
+ break;
1077
+ case 405:
1078
+ alert = KoalaErrorsHelper.generate(new KoalaClientError(response.body?.message), urlRequest);
1079
+ reject(alert);
1080
+ break;
1081
+ case 500:
1082
+ default:
1083
+ alert = KoalaErrorsHelper.generate(new Error((response && response.body?.message) ? response.body?.message : KoalaLanguageHelper.getInternalServerErrorMessage()), urlRequest);
1084
+ reject(alert);
1085
+ break;
1086
+ }
1087
+ });
1088
+ }
1089
+ }
1090
+
1091
+ class KoalaApiRequesterService {
1092
+ constructor(http, oauth2Service) {
1093
+ this.http = http;
1094
+ this.oauth2Service = oauth2Service;
1095
+ this.isMockup = false;
1096
+ this.subscriptions = [];
1097
+ }
1098
+ request(method, url, data = {}) {
1099
+ if (data.__zone_symbol__state) {
1100
+ data = data.__zone_symbol__value;
1101
+ }
1102
+ switch (method) {
1103
+ case 'post':
1104
+ case 'put':
1105
+ case 'patch':
1106
+ case 'delete':
1107
+ return this.promiseSendData(this.postPutDelete(method, url, data), url);
1108
+ case 'get':
1109
+ let httpParams = new HttpParams();
1110
+ Object.keys(data ?? {}).forEach((key) => {
1111
+ let dado = data[key];
1112
+ if (typeof dado == "object") {
1113
+ if (dado && dado.hasOwnProperty('length') && dado.length > 0) {
1114
+ dado.forEach(item => {
1115
+ httpParams = httpParams.append(`${key.replace('[]', '')}[]`, item);
1116
+ });
1117
+ }
1118
+ else {
1119
+ httpParams = httpParams.append(key, dado);
1120
+ }
1121
+ }
1122
+ else {
1123
+ httpParams = httpParams.append(key, dado);
1124
+ }
1125
+ });
1126
+ return this.promiseGetData(this.get(url, httpParams));
1127
+ }
1128
+ }
1129
+ cancelRequests() {
1130
+ for (let subscribe of this.subscriptions.values()) {
1131
+ subscribe.unsubscribe();
1132
+ }
1133
+ }
1134
+ get(url, params) {
1135
+ return this.getMethod('get', url, params)
1136
+ .pipe(map(response => {
1137
+ return response.body;
1138
+ }));
1139
+ }
1140
+ postPutDelete(method, url, data) {
1141
+ return this.getMethod(method, url, data);
1142
+ }
1143
+ promiseGetData(request) {
1144
+ return new Observable(observe => {
1145
+ this.subscriptions
1146
+ .push(request.pipe(first())
1147
+ .subscribe({
1148
+ next: response => {
1149
+ observe.next(response);
1150
+ observe.complete();
1151
+ },
1152
+ error: e => {
1153
+ if (e.status === 401) {
1154
+ this.oauth2Service.logout();
1155
+ }
1156
+ observe.error(KoalaErrorsHelper.generate(e));
1157
+ }
1158
+ }));
1159
+ });
1160
+ }
1161
+ promiseSendData(request, urlRequest) {
1162
+ return new Observable(observe => {
1163
+ this.subscriptions
1164
+ .push(request.pipe(first())
1165
+ .subscribe({
1166
+ next: response => KoalaResponseFactory.generateResponse(response, urlRequest)
1167
+ .then(success => {
1168
+ observe.next(success);
1169
+ observe.complete();
1170
+ })
1171
+ .catch(error => {
1172
+ if (error.status === 401) {
1173
+ this.oauth2Service.logout();
1174
+ }
1175
+ observe.error(error);
1176
+ }),
1177
+ error: e => observe.error(KoalaErrorsHelper.generate(e))
1178
+ }));
1179
+ });
1180
+ }
1181
+ getUrlBase() {
1182
+ return this.isMockup ? `${location.origin}/assets/mockup` : this.apiUrl;
1183
+ }
1184
+ getMethod(method, url, data = {}) {
1185
+ const options = {
1186
+ observe: 'response',
1187
+ headers: KoalaRequestHeaderHelper.add(TokenFactory.getToken())
1188
+ };
1189
+ switch (method) {
1190
+ case "post":
1191
+ return this.http.post(`${this.getUrlBase()}/${url}`, data, options);
1192
+ case "put":
1193
+ return this.http.put(`${this.getUrlBase()}/${url}`, data, options);
1194
+ case "patch":
1195
+ return this.http.patch(`${this.getUrlBase()}/${url}`, data, options);
1196
+ case "delete":
1197
+ return this.http.delete(`${this.getUrlBase()}/${url}`, options);
1198
+ case "get":
1199
+ options.params = data;
1200
+ return this.http.get(`${this.getUrlBase()}/${url}`, options);
1201
+ }
1202
+ }
1203
+ }
1204
+ KoalaApiRequesterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaApiRequesterService, deps: [{ token: i1$2.HttpClient }, { token: KoalaOAuth2Service }], target: i0.ɵɵFactoryTarget.Injectable });
1205
+ KoalaApiRequesterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaApiRequesterService, providedIn: "root" });
1206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaApiRequesterService, decorators: [{
1207
+ type: Injectable,
1208
+ args: [{ providedIn: "root" }]
1209
+ }], ctorParameters: function () { return [{ type: i1$2.HttpClient }, { type: KoalaOAuth2Service }]; } });
1210
+
1211
+ class KoalaApiRequesterBase {
1212
+ constructor(koalaService, endpoint, isMockup = false) {
1213
+ this.koalaService = koalaService;
1214
+ this.endpoint = endpoint;
1215
+ koalaService.apiUrl = KoalaEnvironment.environment?.endpointApi;
1216
+ koalaService.isMockup = isMockup;
1217
+ }
1218
+ getAll(filter) {
1219
+ return this.koalaService.request('get', this.endpoint, this.getParams(filter));
1220
+ }
1221
+ getById(id) {
1222
+ return this.koalaService.request('get', this.endpoint + '/' + id);
1223
+ }
1224
+ getBySomething(something) {
1225
+ return this.koalaService.request('get', this.endpoint + '/' + something);
1226
+ }
1227
+ save(data, id) {
1228
+ return this.koalaService.request((id ? 'put' : 'post'), `${this.endpoint}${(id ? `/${id}` : '')}`, data);
1229
+ }
1230
+ delete(id) {
1231
+ return this.koalaService.request('delete', this.endpoint + '/' + id);
1232
+ }
1233
+ async cancelRequests() {
1234
+ await this.koalaService.cancelRequests();
1235
+ }
1236
+ async getParams(params) {
1237
+ let filter = {};
1238
+ if (params instanceof BehaviorSubject) {
1239
+ Object.assign(filter, params?.getValue() ?? {});
1240
+ }
1241
+ else {
1242
+ Object.assign(filter, params ?? {});
1243
+ }
1244
+ if (filter &&
1245
+ filter.hasOwnProperty('sort') &&
1246
+ filter.hasOwnProperty('order') &&
1247
+ filter.hasOwnProperty('limit') &&
1248
+ filter.hasOwnProperty('page') &&
1249
+ filter.hasOwnProperty('params')) {
1250
+ Object.keys(filter.params).forEach(indexName => {
1251
+ if (`${filter.params[indexName]}` === 'NaN' ||
1252
+ filter.params[indexName] === null) {
1253
+ filter.params[indexName] = '';
1254
+ }
1255
+ });
1256
+ return koala({})
1257
+ .object()
1258
+ .merge(filter.params)
1259
+ .merge({
1260
+ sort: filter.sort,
1261
+ order: filter.order,
1262
+ limit: filter.limit,
1263
+ page: filter.page
1264
+ })
1265
+ .getValue();
1266
+ }
1267
+ return filter ?? null;
1268
+ }
1269
+ }
1270
+
1271
+ class KoalaRequestService {
1272
+ constructor(koalaAlertService) {
1273
+ this.koalaAlertService = koalaAlertService;
1274
+ }
1275
+ request(request, success, error) {
1276
+ if (request instanceof Promise) {
1277
+ request.then((response) => {
1278
+ if (success) {
1279
+ success(response);
1280
+ }
1281
+ }).catch(e => {
1282
+ if (error) {
1283
+ error(e);
1284
+ }
1285
+ this.showAlertError(e);
1286
+ });
1287
+ }
1288
+ else {
1289
+ return request.subscribe((response) => {
1290
+ if (success) {
1291
+ success(response);
1292
+ }
1293
+ }, (e) => {
1294
+ if (error) {
1295
+ error(e);
1296
+ }
1297
+ this.showAlertError(e);
1298
+ });
1299
+ }
1300
+ }
1301
+ showAlertError(e) {
1302
+ const alertEnum = KoalaRequestCodeToAlertEnumTranslate.translate(e.statusCode);
1303
+ this.koalaAlertService.create({
1304
+ alertEnum,
1305
+ message: alertEnum === KoalaAlertEnum.internalServerError
1306
+ ? KoalaLanguageHelper.getInternalServerErrorMessage()
1307
+ : e.message
1308
+ });
1309
+ }
1310
+ }
1311
+ KoalaRequestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaRequestService, deps: [{ token: i1$3.KoalaAlertService }], target: i0.ɵɵFactoryTarget.Injectable });
1312
+ KoalaRequestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaRequestService, providedIn: "any" });
1313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: KoalaRequestService, decorators: [{
1314
+ type: Injectable,
1315
+ args: [{ providedIn: "any" }]
1316
+ }], ctorParameters: function () { return [{ type: i1$3.KoalaAlertService }]; } });
1317
+
1318
+ class NgxKoalaModule {
1319
+ static forRoot(environment) {
1320
+ environment.storageOAuthTypeName = environment.storageOAuthTypeName ?? 'koala_ui_oauth_type';
1321
+ environment.storageTokenName = environment.storageTokenName ?? 'koala_ui_token';
1322
+ KoalaEnvironment.environment = environment;
1323
+ return {
1324
+ ngModule: NgxKoalaModule,
1325
+ providers: [KoalaOAuth2Service]
1326
+ };
1327
+ }
1328
+ }
1329
+ NgxKoalaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxKoalaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1330
+ NgxKoalaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxKoalaModule, imports: [CommonModule,
1331
+ HttpClientModule,
1332
+ KoalaPageModule], exports: [HttpClientModule,
1333
+ KoalaPageModule] });
1334
+ NgxKoalaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxKoalaModule, providers: [
1335
+ KoalaOAuth2Service
1336
+ ], imports: [[
1337
+ CommonModule,
1338
+ HttpClientModule,
1339
+ KoalaPageModule
1340
+ ], HttpClientModule,
1341
+ KoalaPageModule] });
1342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NgxKoalaModule, decorators: [{
1343
+ type: NgModule,
1344
+ args: [{
1345
+ imports: [
1346
+ CommonModule,
1347
+ HttpClientModule,
1348
+ KoalaPageModule
1349
+ ],
1350
+ exports: [
1351
+ HttpClientModule,
1352
+ KoalaPageModule
1353
+ ],
1354
+ providers: [
1355
+ KoalaOAuth2Service
1356
+ ]
1357
+ }]
1358
+ }] });
1359
+
1360
+ //#region [COMPONENTS]
1361
+
1362
+ /**
1363
+ * Generated bundle index. Do not edit.
1364
+ */
1365
+
1366
+ export { KOALA_LOADER_SUBJECT, KoalaApiRequesterBase, KoalaApiRequesterService, KoalaClientError, KoalaErrorsHelper, KoalaLanguageHelper, KoalaLoaderService, KoalaNotFoundError, KoalaOAuth2Service, KoalaOauthConfig, KoalaPageModule, KoalaParameterHashLocationStrategy, KoalaRequestHeaderHelper, KoalaRequestService, KoalaResponseFactory, KoalaSuccessError, KoalaTokenService, KoalaUnhautorizedError, LoaderBarPageComponent, NgxKoalaModule, NotificationComponent, PageComponent };
1367
+ //# sourceMappingURL=koalarx-ui-core.mjs.map