monkey-front-core 0.0.468 → 0.0.469

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 (376) hide show
  1. package/README.md +24 -24
  2. package/esm2020/lib/components/alerts/alerts.component.mjs +45 -45
  3. package/esm2020/lib/components/alerts/alerts.module.mjs +21 -21
  4. package/esm2020/lib/components/alerts/index.mjs +3 -3
  5. package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.component.mjs +29 -29
  6. package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.module.mjs +43 -43
  7. package/esm2020/lib/components/closed-to-maintenance/index.mjs +3 -3
  8. package/esm2020/lib/components/currency-config/currency-config.component.mjs +39 -39
  9. package/esm2020/lib/components/currency-config/currency-config.module.mjs +39 -39
  10. package/esm2020/lib/components/currency-config/index.mjs +3 -3
  11. package/esm2020/lib/components/index.mjs +6 -6
  12. package/esm2020/lib/components/progress-bar/index.mjs +4 -4
  13. package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +23 -23
  14. package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +18 -18
  15. package/esm2020/lib/components/progress-bar/progress-bar.service.mjs +50 -50
  16. package/esm2020/lib/components/version-changed/index.mjs +3 -3
  17. package/esm2020/lib/components/version-changed/version-changed.component.mjs +24 -24
  18. package/esm2020/lib/components/version-changed/version-changed.module.mjs +39 -39
  19. package/esm2020/lib/core/decorators/index.mjs +5 -5
  20. package/esm2020/lib/core/decorators/monkeyecx-charts-decorators.mjs +40 -40
  21. package/esm2020/lib/core/decorators/monkeyecx-decorators.mjs +111 -111
  22. package/esm2020/lib/core/decorators/monkeyecx-download-decorators.mjs +26 -26
  23. package/esm2020/lib/core/decorators/monkeyecx-upload-decorators.mjs +26 -26
  24. package/esm2020/lib/core/directives/index.mjs +13 -13
  25. package/esm2020/lib/core/directives/monkeyecx-directives-module.mjs +73 -73
  26. package/esm2020/lib/core/directives/monkeyecx-drag-drop.mjs +57 -57
  27. package/esm2020/lib/core/directives/monkeyecx-feature-by-program-directive.mjs +54 -54
  28. package/esm2020/lib/core/directives/monkeyecx-feature-directive.mjs +68 -68
  29. package/esm2020/lib/core/directives/monkeyecx-format-currency.mjs +44 -44
  30. package/esm2020/lib/core/directives/monkeyecx-format-upper.mjs +67 -67
  31. package/esm2020/lib/core/directives/monkeyecx-only-alpha-numeric-directive.mjs +28 -28
  32. package/esm2020/lib/core/directives/monkeyecx-only-number-directive.mjs +28 -28
  33. package/esm2020/lib/core/directives/monkeyecx-popover-options.directive.mjs +39 -39
  34. package/esm2020/lib/core/directives/monkeyecx-popover.directive.mjs +212 -212
  35. package/esm2020/lib/core/directives/monkeyecx-security-directive.mjs +75 -75
  36. package/esm2020/lib/core/directives/monkeyecx-tooltip-directive.mjs +123 -123
  37. package/esm2020/lib/core/index.mjs +10 -10
  38. package/esm2020/lib/core/interceptors/index.mjs +6 -6
  39. package/esm2020/lib/core/interceptors/monkeyecx-http-config-error.interceptor.mjs +49 -49
  40. package/esm2020/lib/core/interceptors/monkeyecx-http-config-header.interceptor.mjs +59 -59
  41. package/esm2020/lib/core/interceptors/monkeyecx-http-config-interceptor.module.mjs +47 -47
  42. package/esm2020/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.mjs +43 -43
  43. package/esm2020/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.mjs +37 -37
  44. package/esm2020/lib/core/interfaces/index.mjs +35 -35
  45. package/esm2020/lib/core/interfaces/monkeyecx-auth-credentials.mjs +2 -2
  46. package/esm2020/lib/core/interfaces/monkeyecx-company-pendencies.mjs +2 -2
  47. package/esm2020/lib/core/interfaces/monkeyecx-company.mjs +2 -2
  48. package/esm2020/lib/core/interfaces/monkeyecx-config-bootstrap.mjs +1 -1
  49. package/esm2020/lib/core/interfaces/monkeyecx-config.mjs +2 -2
  50. package/esm2020/lib/core/interfaces/monkeyecx-country-security.mjs +2 -2
  51. package/esm2020/lib/core/interfaces/monkeyecx-error-response.mjs +2 -2
  52. package/esm2020/lib/core/interfaces/monkeyecx-filter.mjs +2 -2
  53. package/esm2020/lib/core/interfaces/monkeyecx-handled-error-response.mjs +2 -2
  54. package/esm2020/lib/core/interfaces/monkeyecx-header-credentials.mjs +2 -2
  55. package/esm2020/lib/core/interfaces/monkeyecx-intercom-options.mjs +2 -2
  56. package/esm2020/lib/core/interfaces/monkeyecx-interface.mjs +1 -1
  57. package/esm2020/lib/core/interfaces/monkeyecx-me-credentials.mjs +2 -2
  58. package/esm2020/lib/core/interfaces/monkeyecx-navigation.mjs +2 -2
  59. package/esm2020/lib/core/interfaces/monkeyecx-pagination.mjs +2 -2
  60. package/esm2020/lib/core/interfaces/monkeyecx-program.mjs +2 -2
  61. package/esm2020/lib/core/interfaces/monkeyecx-releases.mjs +2 -2
  62. package/esm2020/lib/core/interfaces/monkeyecx-request-in-progress.mjs +2 -2
  63. package/esm2020/lib/core/interfaces/monkeyecx-request-paged.mjs +2 -2
  64. package/esm2020/lib/core/interfaces/monkeyecx-resolver.mjs +2 -2
  65. package/esm2020/lib/core/interfaces/monkeyecx-response-links.mjs +2 -2
  66. package/esm2020/lib/core/interfaces/monkeyecx-response-paged.mjs +2 -2
  67. package/esm2020/lib/core/interfaces/monkeyecx-saved-state.mjs +2 -2
  68. package/esm2020/lib/core/interfaces/monkeyecx-scroll-options.mjs +2 -2
  69. package/esm2020/lib/core/interfaces/monkeyecx-service-credentials.mjs +2 -2
  70. package/esm2020/lib/core/interfaces/monkeyecx-storage.mjs +2 -2
  71. package/esm2020/lib/core/interfaces/monkeyecx-store.mjs +2 -2
  72. package/esm2020/lib/core/interfaces/monkeyecx-support-options.mjs +2 -2
  73. package/esm2020/lib/core/interfaces/monkeyecx-token-credentials.mjs +1 -1
  74. package/esm2020/lib/core/interfaces/monkeyecx-translate-options.mjs +2 -2
  75. package/esm2020/lib/core/interfaces/request-download/index.mjs +4 -4
  76. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-download.mjs +2 -2
  77. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-downloaded.mjs +2 -2
  78. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-item-download.mjs +2 -2
  79. package/esm2020/lib/core/interfaces/request-queue/index.mjs +4 -4
  80. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.mjs +2 -2
  81. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.mjs +2 -2
  82. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-queue.mjs +2 -2
  83. package/esm2020/lib/core/interfaces/request-upload/index.mjs +3 -3
  84. package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.mjs +2 -2
  85. package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-upload.mjs +2 -2
  86. package/esm2020/lib/core/interfaces/schedules/index.mjs +2 -2
  87. package/esm2020/lib/core/interfaces/schedules/monkeyecx-request-schedule.mjs +2 -2
  88. package/esm2020/lib/core/model/index.mjs +3 -3
  89. package/esm2020/lib/core/model/monkeyecx-links.model.mjs +8 -8
  90. package/esm2020/lib/core/model/monkeyecx-model.mjs +25 -25
  91. package/esm2020/lib/core/pipes/index.mjs +22 -22
  92. package/esm2020/lib/core/pipes/monkeyecx-blob-secure.mjs +26 -26
  93. package/esm2020/lib/core/pipes/monkeyecx-display-first-name.mjs +19 -19
  94. package/esm2020/lib/core/pipes/monkeyecx-display-initials.mjs +21 -21
  95. package/esm2020/lib/core/pipes/monkeyecx-display-support-phone.mjs +33 -33
  96. package/esm2020/lib/core/pipes/monkeyecx-format-address.mjs +20 -20
  97. package/esm2020/lib/core/pipes/monkeyecx-format-beautify-json.mjs +38 -38
  98. package/esm2020/lib/core/pipes/monkeyecx-format-currency.mjs +27 -27
  99. package/esm2020/lib/core/pipes/monkeyecx-format-date-group.mjs +45 -45
  100. package/esm2020/lib/core/pipes/monkeyecx-format-date-timelapse.mjs +32 -32
  101. package/esm2020/lib/core/pipes/monkeyecx-format-date-unix-timelapse.mjs +36 -36
  102. package/esm2020/lib/core/pipes/monkeyecx-format-document.mjs +20 -20
  103. package/esm2020/lib/core/pipes/monkeyecx-format-number.mjs +20 -20
  104. package/esm2020/lib/core/pipes/monkeyecx-format-phone.mjs +42 -42
  105. package/esm2020/lib/core/pipes/monkeyecx-format-size.mjs +20 -20
  106. package/esm2020/lib/core/pipes/monkeyecx-format-tax.mjs +23 -23
  107. package/esm2020/lib/core/pipes/monkeyecx-format-type-document.mjs +19 -19
  108. package/esm2020/lib/core/pipes/monkeyecx-format-value.mjs +19 -19
  109. package/esm2020/lib/core/pipes/monkeyecx-format-zipcode.mjs +19 -19
  110. package/esm2020/lib/core/pipes/monkeyecx-pipes.module.mjs +117 -117
  111. package/esm2020/lib/core/pipes/monkeyecx-text-truncate.mjs +23 -23
  112. package/esm2020/lib/core/pipes/monkeyecx-truncate-qtd.mjs +16 -16
  113. package/esm2020/lib/core/services/alerts/index.mjs +2 -2
  114. package/esm2020/lib/core/services/alerts/monkeyecx-alerts.service.mjs +42 -42
  115. package/esm2020/lib/core/services/auth/index.mjs +6 -6
  116. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-company.service.mjs +28 -28
  117. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-login.service.mjs +27 -27
  118. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-role.service.mjs +79 -79
  119. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard.service.mjs +26 -26
  120. package/esm2020/lib/core/services/auth/monkeyecx-authentication.service.mjs +78 -78
  121. package/esm2020/lib/core/services/commons/index.mjs +3 -3
  122. package/esm2020/lib/core/services/commons/monkeyecx-commons-resolve.service.mjs +127 -126
  123. package/esm2020/lib/core/services/commons/monkeyecx-commons.service.mjs +362 -362
  124. package/esm2020/lib/core/services/config/monkeyecx-alerts-config.service.mjs +42 -42
  125. package/esm2020/lib/core/services/config/monkeyecx-config.module.mjs +28 -28
  126. package/esm2020/lib/core/services/config/monkeyecx-config.service.mjs +107 -107
  127. package/esm2020/lib/core/services/config/monkeyecx-currency-config.service.mjs +84 -84
  128. package/esm2020/lib/core/services/config/monkeyecx-error-config.service.mjs +85 -85
  129. package/esm2020/lib/core/services/config/monkeyecx-feature-toggle.service.mjs +76 -76
  130. package/esm2020/lib/core/services/config/monkeyecx-gtm-config.service.mjs +50 -50
  131. package/esm2020/lib/core/services/config/monkeyecx-i18n-config.service.mjs +152 -152
  132. package/esm2020/lib/core/services/config/monkeyecx-logs-config.service.mjs +34 -34
  133. package/esm2020/lib/core/services/config/monkeyecx-maintenance-config.service.mjs +37 -37
  134. package/esm2020/lib/core/services/config/monkeyecx-security-console-config.service.mjs +47 -47
  135. package/esm2020/lib/core/services/config/monkeyecx-service-worker-config.service.mjs +53 -53
  136. package/esm2020/lib/core/services/error/index.mjs +5 -5
  137. package/esm2020/lib/core/services/error/monkeyecx-error-handling.module.mjs +27 -27
  138. package/esm2020/lib/core/services/error/monkeyecx-error-handling.service.mjs +37 -37
  139. package/esm2020/lib/core/services/error/monkeyecx-http-error-handling.service.mjs +138 -138
  140. package/esm2020/lib/core/services/error/monkeyecx-others-errors-handling.service.mjs +29 -29
  141. package/esm2020/lib/core/services/index.mjs +26 -26
  142. package/esm2020/lib/core/services/logged/index.mjs +2 -2
  143. package/esm2020/lib/core/services/logged/monkeyecx-logged-handling.service.mjs +40 -40
  144. package/esm2020/lib/core/services/monkeyecx-handling.service.mjs +50 -50
  145. package/esm2020/lib/core/services/monkeyecx-service.service.mjs +104 -104
  146. package/esm2020/lib/core/services/pagination/index.mjs +2 -2
  147. package/esm2020/lib/core/services/pagination/monkeyecx-pagination.service.mjs +29 -29
  148. package/esm2020/lib/core/services/request-download/index.mjs +3 -3
  149. package/esm2020/lib/core/services/request-download/monkeyecx-request-download-handling.service.mjs +93 -93
  150. package/esm2020/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.mjs +61 -61
  151. package/esm2020/lib/core/services/request-paged/index.mjs +2 -2
  152. package/esm2020/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.mjs +42 -42
  153. package/esm2020/lib/core/services/request-queue/index.mjs +3 -3
  154. package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.mjs +114 -114
  155. package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.mjs +119 -119
  156. package/esm2020/lib/core/services/routes/index.mjs +2 -2
  157. package/esm2020/lib/core/services/routes/monkeyecx-dicovery-params.service.mjs +54 -54
  158. package/esm2020/lib/core/services/schedules/index.mjs +2 -2
  159. package/esm2020/lib/core/services/schedules/monkeyecx-request-schedule.service.mjs +188 -188
  160. package/esm2020/lib/core/services/storage/index.mjs +3 -3
  161. package/esm2020/lib/core/services/storage/monkeyecx-cookie-storage.service.mjs +32 -32
  162. package/esm2020/lib/core/services/storage/monkeyecx-token-storage.service.mjs +236 -236
  163. package/esm2020/lib/core/services/store/index.mjs +3 -3
  164. package/esm2020/lib/core/services/store/monkeyecx-store.actions.mjs +25 -25
  165. package/esm2020/lib/core/services/store/monkeyecx-store.selector.mjs +75 -75
  166. package/esm2020/lib/core/services/store/monkeyecx-store.service.mjs +189 -189
  167. package/esm2020/lib/core/specification-search/index.mjs +2 -2
  168. package/esm2020/lib/core/specification-search/monkeyecx-specification-search.mjs +108 -108
  169. package/esm2020/lib/core/utils/decorators-utils.mjs +40 -40
  170. package/esm2020/lib/core/utils/index.mjs +8 -8
  171. package/esm2020/lib/core/utils/statics.mjs +45 -45
  172. package/esm2020/lib/core/utils/utils.mjs +267 -267
  173. package/esm2020/lib/core/utils/validate-utils.mjs +205 -205
  174. package/esm2020/lib/core/utils/validators.mjs +268 -268
  175. package/esm2020/lib/monkey-front-core.module.mjs +71 -71
  176. package/esm2020/lib/store/actions/index.mjs +2 -2
  177. package/esm2020/lib/store/actions/monkeyecx-storage.actions.mjs +8 -8
  178. package/esm2020/lib/store/index.mjs +4 -4
  179. package/esm2020/lib/store/reducers/index.mjs +3 -3
  180. package/esm2020/lib/store/reducers/monkeyecx-seeder.reducer.mjs +53 -53
  181. package/esm2020/lib/store/reducers/monkeyecx-storage.reducer.mjs +40 -40
  182. package/esm2020/lib/store/selectors/index.mjs +2 -2
  183. package/esm2020/lib/store/selectors/monkeyecx-storage.selector.mjs +17 -17
  184. package/esm2020/monkey-front-core.mjs +4 -4
  185. package/esm2020/public-api.mjs +8 -8
  186. package/fesm2015/monkey-front-core.mjs +5963 -5962
  187. package/fesm2015/monkey-front-core.mjs.map +1 -1
  188. package/fesm2020/monkey-front-core.mjs +6021 -6020
  189. package/fesm2020/monkey-front-core.mjs.map +1 -1
  190. package/lib/components/alerts/alerts.component.d.ts +22 -22
  191. package/lib/components/alerts/alerts.module.d.ts +10 -10
  192. package/lib/components/alerts/index.d.ts +2 -2
  193. package/lib/components/closed-to-maintenance/closed-to-maintenance.component.d.ts +13 -13
  194. package/lib/components/closed-to-maintenance/closed-to-maintenance.module.d.ts +11 -11
  195. package/lib/components/closed-to-maintenance/index.d.ts +2 -2
  196. package/lib/components/currency-config/currency-config.component.d.ts +17 -17
  197. package/lib/components/currency-config/currency-config.module.d.ts +10 -10
  198. package/lib/components/currency-config/index.d.ts +2 -2
  199. package/lib/components/index.d.ts +5 -5
  200. package/lib/components/progress-bar/index.d.ts +3 -3
  201. package/lib/components/progress-bar/progress-bar.component.d.ts +11 -11
  202. package/lib/components/progress-bar/progress-bar.module.d.ts +8 -8
  203. package/lib/components/progress-bar/progress-bar.service.d.ts +14 -14
  204. package/lib/components/version-changed/index.d.ts +2 -2
  205. package/lib/components/version-changed/version-changed.component.d.ts +9 -9
  206. package/lib/components/version-changed/version-changed.module.d.ts +10 -10
  207. package/lib/core/decorators/index.d.ts +4 -4
  208. package/lib/core/decorators/monkeyecx-charts-decorators.d.ts +1 -1
  209. package/lib/core/decorators/monkeyecx-decorators.d.ts +7 -7
  210. package/lib/core/decorators/monkeyecx-download-decorators.d.ts +2 -2
  211. package/lib/core/decorators/monkeyecx-upload-decorators.d.ts +2 -2
  212. package/lib/core/directives/index.d.ts +12 -12
  213. package/lib/core/directives/monkeyecx-directives-module.d.ts +19 -19
  214. package/lib/core/directives/monkeyecx-drag-drop.d.ts +12 -12
  215. package/lib/core/directives/monkeyecx-feature-by-program-directive.d.ts +16 -16
  216. package/lib/core/directives/monkeyecx-feature-directive.d.ts +17 -17
  217. package/lib/core/directives/monkeyecx-format-currency.d.ts +16 -16
  218. package/lib/core/directives/monkeyecx-format-upper.d.ts +18 -18
  219. package/lib/core/directives/monkeyecx-only-alpha-numeric-directive.d.ts +9 -9
  220. package/lib/core/directives/monkeyecx-only-number-directive.d.ts +9 -9
  221. package/lib/core/directives/monkeyecx-popover-options.directive.d.ts +19 -19
  222. package/lib/core/directives/monkeyecx-popover.directive.d.ts +43 -43
  223. package/lib/core/directives/monkeyecx-security-directive.d.ts +18 -18
  224. package/lib/core/directives/monkeyecx-tooltip-directive.d.ts +23 -23
  225. package/lib/core/index.d.ts +9 -9
  226. package/lib/core/interceptors/index.d.ts +5 -5
  227. package/lib/core/interceptors/monkeyecx-http-config-error.interceptor.d.ts +18 -18
  228. package/lib/core/interceptors/monkeyecx-http-config-header.interceptor.d.ts +16 -16
  229. package/lib/core/interceptors/monkeyecx-http-config-interceptor.module.d.ts +9 -9
  230. package/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.d.ts +12 -12
  231. package/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.d.ts +14 -14
  232. package/lib/core/interfaces/index.d.ts +34 -34
  233. package/lib/core/interfaces/monkeyecx-auth-credentials.d.ts +15 -15
  234. package/lib/core/interfaces/monkeyecx-company-pendencies.d.ts +14 -14
  235. package/lib/core/interfaces/monkeyecx-company.d.ts +10 -10
  236. package/lib/core/interfaces/monkeyecx-config-bootstrap.d.ts +14 -14
  237. package/lib/core/interfaces/monkeyecx-config.d.ts +132 -132
  238. package/lib/core/interfaces/monkeyecx-country-security.d.ts +4 -4
  239. package/lib/core/interfaces/monkeyecx-error-response.d.ts +5 -5
  240. package/lib/core/interfaces/monkeyecx-filter.d.ts +42 -42
  241. package/lib/core/interfaces/monkeyecx-handled-error-response.d.ts +10 -10
  242. package/lib/core/interfaces/monkeyecx-header-credentials.d.ts +4 -4
  243. package/lib/core/interfaces/monkeyecx-intercom-options.d.ts +4 -4
  244. package/lib/core/interfaces/monkeyecx-interface.d.ts +11 -11
  245. package/lib/core/interfaces/monkeyecx-me-credentials.d.ts +22 -22
  246. package/lib/core/interfaces/monkeyecx-navigation.d.ts +27 -27
  247. package/lib/core/interfaces/monkeyecx-pagination.d.ts +26 -26
  248. package/lib/core/interfaces/monkeyecx-program.d.ts +10 -10
  249. package/lib/core/interfaces/monkeyecx-releases.d.ts +9 -9
  250. package/lib/core/interfaces/monkeyecx-request-in-progress.d.ts +3 -3
  251. package/lib/core/interfaces/monkeyecx-request-paged.d.ts +23 -23
  252. package/lib/core/interfaces/monkeyecx-resolver.d.ts +39 -39
  253. package/lib/core/interfaces/monkeyecx-response-links.d.ts +11 -11
  254. package/lib/core/interfaces/monkeyecx-response-paged.d.ts +6 -6
  255. package/lib/core/interfaces/monkeyecx-saved-state.d.ts +5 -5
  256. package/lib/core/interfaces/monkeyecx-scroll-options.d.ts +5 -5
  257. package/lib/core/interfaces/monkeyecx-service-credentials.d.ts +12 -12
  258. package/lib/core/interfaces/monkeyecx-storage.d.ts +38 -38
  259. package/lib/core/interfaces/monkeyecx-store.d.ts +35 -35
  260. package/lib/core/interfaces/monkeyecx-support-options.d.ts +4 -4
  261. package/lib/core/interfaces/monkeyecx-token-credentials.d.ts +21 -21
  262. package/lib/core/interfaces/monkeyecx-translate-options.d.ts +4 -4
  263. package/lib/core/interfaces/request-download/index.d.ts +3 -3
  264. package/lib/core/interfaces/request-download/monkeyecx-request-download.d.ts +10 -10
  265. package/lib/core/interfaces/request-download/monkeyecx-request-downloaded.d.ts +7 -7
  266. package/lib/core/interfaces/request-download/monkeyecx-request-item-download.d.ts +7 -7
  267. package/lib/core/interfaces/request-queue/index.d.ts +3 -3
  268. package/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.d.ts +7 -7
  269. package/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.d.ts +6 -6
  270. package/lib/core/interfaces/request-queue/monkeyecx-request-queue.d.ts +8 -8
  271. package/lib/core/interfaces/request-upload/index.d.ts +2 -2
  272. package/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.d.ts +5 -5
  273. package/lib/core/interfaces/request-upload/monkeyecx-request-upload.d.ts +10 -10
  274. package/lib/core/interfaces/schedules/index.d.ts +1 -1
  275. package/lib/core/interfaces/schedules/monkeyecx-request-schedule.d.ts +13 -13
  276. package/lib/core/model/index.d.ts +2 -2
  277. package/lib/core/model/monkeyecx-links.model.d.ts +4 -4
  278. package/lib/core/model/monkeyecx-model.d.ts +13 -13
  279. package/lib/core/pipes/index.d.ts +21 -21
  280. package/lib/core/pipes/monkeyecx-blob-secure.d.ts +13 -13
  281. package/lib/core/pipes/monkeyecx-display-first-name.d.ts +7 -7
  282. package/lib/core/pipes/monkeyecx-display-initials.d.ts +7 -7
  283. package/lib/core/pipes/monkeyecx-display-support-phone.d.ts +18 -18
  284. package/lib/core/pipes/monkeyecx-format-address.d.ts +14 -14
  285. package/lib/core/pipes/monkeyecx-format-beautify-json.d.ts +8 -8
  286. package/lib/core/pipes/monkeyecx-format-currency.d.ts +11 -11
  287. package/lib/core/pipes/monkeyecx-format-date-group.d.ts +11 -11
  288. package/lib/core/pipes/monkeyecx-format-date-timelapse.d.ts +7 -7
  289. package/lib/core/pipes/monkeyecx-format-date-unix-timelapse.d.ts +7 -7
  290. package/lib/core/pipes/monkeyecx-format-document.d.ts +7 -7
  291. package/lib/core/pipes/monkeyecx-format-number.d.ts +7 -7
  292. package/lib/core/pipes/monkeyecx-format-phone.d.ts +7 -7
  293. package/lib/core/pipes/monkeyecx-format-size.d.ts +7 -7
  294. package/lib/core/pipes/monkeyecx-format-tax.d.ts +7 -7
  295. package/lib/core/pipes/monkeyecx-format-type-document.d.ts +7 -7
  296. package/lib/core/pipes/monkeyecx-format-value.d.ts +7 -7
  297. package/lib/core/pipes/monkeyecx-format-zipcode.d.ts +7 -7
  298. package/lib/core/pipes/monkeyecx-pipes.module.d.ts +26 -26
  299. package/lib/core/pipes/monkeyecx-text-truncate.d.ts +7 -7
  300. package/lib/core/pipes/monkeyecx-truncate-qtd.d.ts +7 -7
  301. package/lib/core/services/alerts/index.d.ts +1 -1
  302. package/lib/core/services/alerts/monkeyecx-alerts.service.d.ts +21 -21
  303. package/lib/core/services/auth/index.d.ts +5 -5
  304. package/lib/core/services/auth/monkeyecx-auth-guard-company.service.d.ts +10 -10
  305. package/lib/core/services/auth/monkeyecx-auth-guard-login.service.d.ts +10 -10
  306. package/lib/core/services/auth/monkeyecx-auth-guard-role.service.d.ts +16 -16
  307. package/lib/core/services/auth/monkeyecx-auth-guard.service.d.ts +10 -10
  308. package/lib/core/services/auth/monkeyecx-authentication.service.d.ts +35 -35
  309. package/lib/core/services/commons/index.d.ts +2 -2
  310. package/lib/core/services/commons/monkeyecx-commons-resolve.service.d.ts +60 -60
  311. package/lib/core/services/commons/monkeyecx-commons.service.d.ts +120 -120
  312. package/lib/core/services/config/monkeyecx-alerts-config.service.d.ts +11 -11
  313. package/lib/core/services/config/monkeyecx-config.module.d.ts +9 -9
  314. package/lib/core/services/config/monkeyecx-config.service.d.ts +36 -36
  315. package/lib/core/services/config/monkeyecx-currency-config.service.d.ts +15 -15
  316. package/lib/core/services/config/monkeyecx-error-config.service.d.ts +8 -8
  317. package/lib/core/services/config/monkeyecx-feature-toggle.service.d.ts +16 -16
  318. package/lib/core/services/config/monkeyecx-gtm-config.service.d.ts +8 -8
  319. package/lib/core/services/config/monkeyecx-i18n-config.service.d.ts +18 -18
  320. package/lib/core/services/config/monkeyecx-logs-config.service.d.ts +7 -7
  321. package/lib/core/services/config/monkeyecx-maintenance-config.service.d.ts +13 -13
  322. package/lib/core/services/config/monkeyecx-security-console-config.service.d.ts +12 -12
  323. package/lib/core/services/config/monkeyecx-service-worker-config.service.d.ts +16 -16
  324. package/lib/core/services/error/index.d.ts +4 -4
  325. package/lib/core/services/error/monkeyecx-error-handling.module.d.ts +9 -9
  326. package/lib/core/services/error/monkeyecx-error-handling.service.d.ts +9 -9
  327. package/lib/core/services/error/monkeyecx-http-error-handling.service.d.ts +26 -26
  328. package/lib/core/services/error/monkeyecx-others-errors-handling.service.d.ts +9 -9
  329. package/lib/core/services/index.d.ts +25 -25
  330. package/lib/core/services/logged/index.d.ts +1 -1
  331. package/lib/core/services/logged/monkeyecx-logged-handling.service.d.ts +14 -14
  332. package/lib/core/services/monkeyecx-handling.service.d.ts +22 -22
  333. package/lib/core/services/monkeyecx-service.service.d.ts +18 -18
  334. package/lib/core/services/pagination/index.d.ts +1 -1
  335. package/lib/core/services/pagination/monkeyecx-pagination.service.d.ts +9 -9
  336. package/lib/core/services/request-download/index.d.ts +2 -2
  337. package/lib/core/services/request-download/monkeyecx-request-download-handling.service.d.ts +18 -18
  338. package/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.d.ts +16 -16
  339. package/lib/core/services/request-paged/index.d.ts +1 -1
  340. package/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.d.ts +11 -11
  341. package/lib/core/services/request-queue/index.d.ts +2 -2
  342. package/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.d.ts +21 -21
  343. package/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.d.ts +23 -23
  344. package/lib/core/services/routes/index.d.ts +1 -1
  345. package/lib/core/services/routes/monkeyecx-dicovery-params.service.d.ts +13 -13
  346. package/lib/core/services/schedules/index.d.ts +1 -1
  347. package/lib/core/services/schedules/monkeyecx-request-schedule.service.d.ts +47 -47
  348. package/lib/core/services/storage/index.d.ts +2 -2
  349. package/lib/core/services/storage/monkeyecx-cookie-storage.service.d.ts +11 -11
  350. package/lib/core/services/storage/monkeyecx-token-storage.service.d.ts +30 -30
  351. package/lib/core/services/store/index.d.ts +3 -3
  352. package/lib/core/services/store/monkeyecx-store.actions.d.ts +56 -56
  353. package/lib/core/services/store/monkeyecx-store.selector.d.ts +31 -31
  354. package/lib/core/services/store/monkeyecx-store.service.d.ts +50 -50
  355. package/lib/core/specification-search/index.d.ts +1 -1
  356. package/lib/core/specification-search/monkeyecx-specification-search.d.ts +20 -20
  357. package/lib/core/utils/decorators-utils.d.ts +5 -5
  358. package/lib/core/utils/index.d.ts +6 -6
  359. package/lib/core/utils/statics.d.ts +34 -34
  360. package/lib/core/utils/utils.d.ts +26 -26
  361. package/lib/core/utils/validate-utils.d.ts +66 -66
  362. package/lib/core/utils/validators.d.ts +36 -36
  363. package/lib/monkey-front-core.module.d.ts +19 -19
  364. package/lib/store/actions/index.d.ts +1 -1
  365. package/lib/store/actions/monkeyecx-storage.actions.d.ts +23 -23
  366. package/lib/store/index.d.ts +3 -3
  367. package/lib/store/reducers/index.d.ts +2 -2
  368. package/lib/store/reducers/monkeyecx-seeder.reducer.d.ts +2 -2
  369. package/lib/store/reducers/monkeyecx-storage.reducer.d.ts +13 -13
  370. package/lib/store/selectors/index.d.ts +1 -1
  371. package/lib/store/selectors/monkeyecx-storage.selector.d.ts +8 -8
  372. package/monkey-front-core-0.0.469.tgz +0 -0
  373. package/monkey-front-core.d.ts +5 -5
  374. package/package.json +1 -1
  375. package/public-api.d.ts +4 -4
  376. package/monkey-front-core-0.0.468.tgz +0 -0
@@ -1,126 +1,127 @@
1
- import { inject } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { Store } from '@ngrx/store';
4
- import { TranslateService } from '@ngx-translate/core';
5
- import { MonkeyEcxCommonsService } from '.';
6
- import { MonkeyEcxDiscoveryParamsService, MonkeyEcxPaginationService } from '../..';
7
- import { MonkeyEcxUtils } from '../../utils';
8
- export class MonkeyEcxCommonsResolveService extends MonkeyEcxCommonsService {
9
- constructor(monkeyecxService, tokenStorage, config) {
10
- super(monkeyecxService, tokenStorage);
11
- this.route = null;
12
- this.currentRoute = null;
13
- this.paginationService = inject(MonkeyEcxPaginationService);
14
- this.translateService = inject(TranslateService);
15
- this.router = inject(Router);
16
- this.store = inject(Store);
17
- this.monkeyDiscovery = inject(MonkeyEcxDiscoveryParamsService);
18
- const { actions, selectors } = config;
19
- this.action = actions;
20
- this.selector = selectors;
21
- }
22
- async getData() {
23
- try {
24
- const { store, route, action, selector, tokenStorage } = this;
25
- const { companyId, companyType, governmentId } = await tokenStorage?.getToken();
26
- const identifier = `${companyId || governmentId}-${companyType}`;
27
- if (!route)
28
- return;
29
- const url = MonkeyEcxUtils.replaceVariables(route, { companyId });
30
- store.dispatch(action.load({ url, identifier }));
31
- this.__control$ = store.select(selector.selectControl());
32
- if (selector?.selectByIdentifier) {
33
- this.__data$ = store.select(selector.selectByIdentifier({ identifier }));
34
- }
35
- if (selector?.selectOneByIdentifier) {
36
- this.__data$ = store.select(selector.selectOneByIdentifier({ identifier }));
37
- }
38
- if (selector?.selectLinks) {
39
- this.__pagination$ = store.select(selector.selectLinks({ identifier }));
40
- }
41
- if (selector?.selectPage) {
42
- this.__page$ = store.select(selector.selectPage({ identifier }));
43
- }
44
- }
45
- catch (e) {
46
- throw new Error(`MECX Core - Method getData -> ${e}`);
47
- }
48
- }
49
- async loadPage() {
50
- try {
51
- const { store, tokenStorage, action } = this;
52
- const { companyId, companyType, governmentId } = await tokenStorage?.getToken();
53
- store.dispatch(action.loadPagination({
54
- identifier: `${companyId || governmentId}-${companyType}`,
55
- pagination: {
56
- action: 'next'
57
- }
58
- }));
59
- }
60
- catch (e) {
61
- throw new Error(`MECX Core - Method loadPage -> ${e}`);
62
- }
63
- }
64
- /**
65
- * @description Inicializar a class genérica
66
- * @param (args: MonkeyEcxInitialResolverConfig)
67
- * => route é obrigátorio pois ele quem inicializa a store.
68
- * A searchClass se faz necessaria quando for usar filtros
69
- */
70
- init(args) {
71
- try {
72
- const { searchClass, route } = args;
73
- this.route = route;
74
- if (searchClass) {
75
- // eslint-disable-next-line new-cap
76
- const searchInstance = new searchClass(this.__search);
77
- this.route = `${route}${searchInstance.buildParams()}`;
78
- this.__onSearchChanged$.next(searchInstance);
79
- }
80
- this.getData();
81
- }
82
- catch (e) {
83
- throw new Error(`${e?.message}`);
84
- }
85
- }
86
- resolve(route, state, otherArgs) {
87
- this.__search = route?.queryParams;
88
- const [currentRoute] = state?.url.split('?') || [null];
89
- this.currentRoute = currentRoute;
90
- super.resolve(route, state, otherArgs);
91
- }
92
- /**
93
- * @description Atualizar os filtros da tela
94
- * @param (search: T, route?: string)
95
- * => route é opcional, passar ele apenas se a rota for diferente do padrão
96
- */
97
- setSearch(search, route) {
98
- try {
99
- const { currentRoute, router } = this;
100
- this.setSearchByUrl(router, route || `${currentRoute}`, search);
101
- }
102
- catch (e) {
103
- throw new Error(`MECX Core - Method setSearch -> ${e}`);
104
- }
105
- }
106
- /**
107
- * @description Navegação para details.
108
- * Por padrão sera redirecionado para '${currentRoute}/details'
109
- * @param (detailsData: T, route?: string)
110
- * => route é opcional, passar ele apenas se a rota for diferente do padrão
111
- */
112
- navigateToDetails(detailsData, route) {
113
- try {
114
- const { router, currentRoute } = this;
115
- router.navigate([route || `${currentRoute}/details`], {
116
- state: {
117
- detailsData
118
- }
119
- });
120
- }
121
- catch (e) {
122
- throw new Error(`MECX Core - Method navigateToDetails -> ${e}`);
123
- }
124
- }
125
- }
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbW1vbnMtcmVzb2x2ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2NvbW1vbnMvbW9ua2V5ZWN4LWNvbW1vbnMtcmVzb2x2ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUEwQixNQUFNLEVBQXVCLE1BQU0saUJBQWlCLENBQUM7QUFDdEYsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7QUFDNUMsT0FBTyxFQUNMLCtCQUErQixFQUMvQiwwQkFBMEIsRUFFM0IsTUFBTSxPQUFPLENBQUM7QUFNZixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBaUI3QyxNQUFNLE9BQWdCLDhCQUErQixTQUFRLHVCQUF1QjtJQW1CbEYsWUFDRSxnQkFBa0MsRUFDbEMsWUFBMEMsRUFDMUMsTUFNQztRQUVELEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsQ0FBQztRQXpCOUIsVUFBSyxHQUFrQixJQUFJLENBQUM7UUFFNUIsaUJBQVksR0FBa0IsSUFBSSxDQUFDO1FBRW5DLHNCQUFpQixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRXZELHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0QixvQkFBZSxH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QUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDakU7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxpQkFBaUIsQ0FBSSxXQUFjLEVBQUUsS0FBYztRQUN4RCxJQUFJO1lBQ0YsTUFBTSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUM7WUFFdEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssSUFBSSxHQUFHLFlBQVksVUFBVSxDQUFDLEVBQUU7Z0JBQ3BELEtBQUssRUFBRTtvQkFDTCxXQUFXO2lCQUNaO2FBQ0YsQ0FBQyxDQUFDO1NBQ0o7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsMkNBQTJDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlciwgUm91dGVyU3RhdGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBY3Rpb24sIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2UgfSBmcm9tICcuJztcbmltcG9ydCB7XG4gIE1vbmtleUVjeERpc2NvdmVyeVBhcmFtc1NlcnZpY2UsXG4gIE1vbmtleUVjeFBhZ2luYXRpb25TZXJ2aWNlLFxuICBNb25rZXlFY3hUb2tlblN0b3JhZ2VTZXJ2aWNlXG59IGZyb20gJy4uLy4uJztcbmltcG9ydCB7XG4gIE1vbmtleUVjeENvbW1vbnNDb25maWcsXG4gIE1vbmtleUVjeENvbW1vbnNTZWFyY2gsXG4gIE1vbmtleUVjeEluaXRpYWxSZXNvbHZlckNvbmZpZ1xufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE1vbmtleUVjeFV0aWxzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTW9ua2V5RWN4U2VydmljZSB9IGZyb20gJy4uL21vbmtleWVjeC1zZXJ2aWNlLnNlcnZpY2UnO1xuXG5kZWNsYXJlIHR5cGUgU2VsZWN0b3JzID1cbiAgfCB7XG4gICAgICBzZWxlY3RCeUlkZW50aWZpZXI6IEZ1bmN0aW9uO1xuICAgICAgc2VsZWN0T25lQnlJZGVudGlmaWVyPzogbmV2ZXI7XG4gICAgICBzZWxlY3RDb250cm9sOiBGdW5jdGlvbjtcbiAgICAgIHNlbGVjdExpbmtzPzogRnVuY3Rpb247XG4gICAgICBzZWxlY3RQYWdlPzogRnVuY3Rpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHNlbGVjdE9uZUJ5SWRlbnRpZmllcjogRnVuY3Rpb247XG4gICAgICBzZWxlY3RCeUlkZW50aWZpZXI/OiBuZXZlcjtcbiAgICAgIHNlbGVjdENvbnRyb2w6IEZ1bmN0aW9uO1xuICAgIH07XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb25rZXlFY3hDb21tb25zUmVzb2x2ZVNlcnZpY2UgZXh0ZW5kcyBNb25rZXlFY3hDb21tb25zU2VydmljZSB7XG4gIHByaXZhdGUgYWN0aW9uOiBhbnk7XG5cbiAgcHJpdmF0ZSBzZWxlY3RvcjogYW55O1xuXG4gIHByb3RlY3RlZCByb3V0ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIGN1cnJlbnRSb3V0ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIHBhZ2luYXRpb25TZXJ2aWNlID0gaW5qZWN0KE1vbmtleUVjeFBhZ2luYXRpb25TZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgdHJhbnNsYXRlU2VydmljZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgcHJvdGVjdGVkIHN0b3JlID0gaW5qZWN0KFN0b3JlKTtcblxuICBwcm90ZWN0ZWQgbW9ua2V5RGlzY292ZXJ5ID0gaW5qZWN0KE1vbmtleUVjeERpc2NvdmVyeVBhcmFtc1NlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1vbmtleWVjeFNlcnZpY2U6IE1vbmtleUVjeFNlcnZpY2UsXG4gICAgdG9rZW5TdG9yYWdlOiBNb25rZXlFY3hUb2tlblN0b3JhZ2VTZXJ2aWNlLFxuICAgIGNvbmZpZzoge1xuICAgICAgYWN0aW9uczoge1xuICAgICAgICBsb2FkOiBBY3Rpb247XG4gICAgICAgIGxvYWRQYWdpbmF0aW9uPzogQWN0aW9uO1xuICAgICAgfTtcbiAgICAgIHNlbGVjdG9yczogU2VsZWN0b3JzO1xuICAgIH1cbiAgKSB7XG4gICAgc3VwZXIobW9ua2V5ZWN4U2VydmljZSwgdG9rZW5TdG9yYWdlKTtcbiAgICBjb25zdCB7IGFjdGlvbnMsIHNlbGVjdG9ycyB9ID0gY29uZmlnO1xuXG4gICAgdGhpcy5hY3Rpb24gPSBhY3Rpb25zO1xuICAgIHRoaXMuc2VsZWN0b3IgPSBzZWxlY3RvcnM7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0RGF0YSgpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzdG9yZSwgcm91dGUsIGFjdGlvbiwgc2VsZWN0b3IsIHRva2VuU3RvcmFnZSB9ID0gdGhpcztcblxuICAgICAgY29uc3QgeyBjb21wYW55SWQsIGNvbXBhbnlUeXBlLCBnb3Zlcm5tZW50SWQgfSA9IGF3YWl0IHRva2VuU3RvcmFnZT8uZ2V0VG9rZW4oKTtcblxuICAgICAgY29uc3QgaWRlbnRpZmllciA9IGAke2NvbXBhbnlJZCB8fCBnb3Zlcm5tZW50SWR9LSR7Y29tcGFueVR5cGV9YDtcblxuICAgICAgaWYgKCFyb3V0ZSkgcmV0dXJuO1xuXG4gICAgICBjb25zdCB1cmwgPSBNb25rZXlFY3hVdGlscy5yZXBsYWNlVmFyaWFibGVzKHJvdXRlLCB7IGNvbXBhbnlJZCB9KTtcblxuICAgICAgc3RvcmUuZGlzcGF0Y2goYWN0aW9uLmxvYWQoeyB1cmwsIGlkZW50aWZpZXIgfSkpO1xuXG4gICAgICB0aGlzLl9fY29udHJvbCQgPSBzdG9yZS5zZWxlY3Qoc2VsZWN0b3Iuc2VsZWN0Q29udHJvbCgpKTtcblxuICAgICAgaWYgKHNlbGVjdG9yPy5zZWxlY3RCeUlkZW50aWZpZXIpIHtcbiAgICAgICAgdGhpcy5fX2RhdGEkID0gc3RvcmUuc2VsZWN0KHNlbGVjdG9yLnNlbGVjdEJ5SWRlbnRpZmllcih7IGlkZW50aWZpZXIgfSkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc2VsZWN0b3I/LnNlbGVjdE9uZUJ5SWRlbnRpZmllcikge1xuICAgICAgICB0aGlzLl9fZGF0YSQgPSBzdG9yZS5zZWxlY3Qoc2VsZWN0b3Iuc2VsZWN0T25lQnlJZGVudGlmaWVyKHsgaWRlbnRpZmllciB9KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChzZWxlY3Rvcj8uc2VsZWN0TGlua3MpIHtcbiAgICAgICAgdGhpcy5fX3BhZ2luYXRpb24kID0gc3RvcmUuc2VsZWN0KHNlbGVjdG9yLnNlbGVjdExpbmtzKHsgaWRlbnRpZmllciB9KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChzZWxlY3Rvcj8uc2VsZWN0UGFnZSkge1xuICAgICAgICB0aGlzLl9fcGFnZSQgPSBzdG9yZS5zZWxlY3Qoc2VsZWN0b3Iuc2VsZWN0UGFnZSh7IGlkZW50aWZpZXIgfSkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIGdldERhdGEgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBsb2FkUGFnZSgpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzdG9yZSwgdG9rZW5TdG9yYWdlLCBhY3Rpb24gfSA9IHRoaXM7XG4gICAgICBjb25zdCB7IGNvbXBhbnlJZCwgY29tcGFueVR5cGUsIGdvdmVybm1lbnRJZCB9ID0gYXdhaXQgdG9rZW5TdG9yYWdlPy5nZXRUb2tlbigpO1xuXG4gICAgICBzdG9yZS5kaXNwYXRjaChcbiAgICAgICAgYWN0aW9uLmxvYWRQYWdpbmF0aW9uKHtcbiAgICAgICAgICBpZGVudGlmaWVyOiBgJHtjb21wYW55SWQgfHwgZ292ZXJubWVudElkfS0ke2NvbXBhbnlUeXBlfWAsXG4gICAgICAgICAgcGFnaW5hdGlvbjoge1xuICAgICAgICAgICAgYWN0aW9uOiAnbmV4dCdcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIGxvYWRQYWdlIC0+ICR7ZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEluaWNpYWxpemFyIGEgY2xhc3MgZ2Vuw6lyaWNhXG4gICAqIEBwYXJhbSAoYXJnczogTW9ua2V5RWN4SW5pdGlhbFJlc29sdmVyQ29uZmlnKVxuICAgKiA9PiByb3V0ZSDDqSBvYnJpZ8OhdG9yaW8gcG9pcyBlbGUgcXVlbSBpbmljaWFsaXphIGEgc3RvcmUuXG4gICAqIEEgc2VhcmNoQ2xhc3Mgc8OzIHNlIGZheiBuZWNlc3NhcmlhIHF1YW5kbyBmb3IgdXNhciBmaWx0cm9zXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdChhcmdzOiBNb25rZXlFY3hJbml0aWFsUmVzb2x2ZXJDb25maWcpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzZWFyY2hDbGFzcywgcm91dGUgfSA9IGFyZ3M7XG5cbiAgICAgIHRoaXMucm91dGUgPSByb3V0ZTtcblxuICAgICAgaWYgKHNlYXJjaENsYXNzKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuZXctY2FwXG4gICAgICAgIGNvbnN0IHNlYXJjaEluc3RhbmNlOiBNb25rZXlFY3hDb21tb25zU2VhcmNoID0gbmV3IHNlYXJjaENsYXNzKHRoaXMuX19zZWFyY2gpO1xuXG4gICAgICAgIHRoaXMucm91dGUgPSBgJHtyb3V0ZX0ke3NlYXJjaEluc3RhbmNlLmJ1aWxkUGFyYW1zKCl9YDtcblxuICAgICAgICB0aGlzLl9fb25TZWFyY2hDaGFuZ2VkJC5uZXh0KHNlYXJjaEluc3RhbmNlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5nZXREYXRhKCk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7ZT8ubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICByZXNvbHZlKFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IHwgbnVsbCxcbiAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCB8IG51bGwsXG4gICAgb3RoZXJBcmdzPzogTW9ua2V5RWN4Q29tbW9uc0NvbmZpZ1xuICApIHtcbiAgICB0aGlzLl9fc2VhcmNoID0gcm91dGU/LnF1ZXJ5UGFyYW1zO1xuXG4gICAgY29uc3QgW2N1cnJlbnRSb3V0ZV0gPSBzdGF0ZT8udXJsLnNwbGl0KCc/JykgfHwgW251bGxdO1xuXG4gICAgdGhpcy5jdXJyZW50Um91dGUgPSBjdXJyZW50Um91dGU7XG5cbiAgICBzdXBlci5yZXNvbHZlKHJvdXRlLCBzdGF0ZSwgb3RoZXJBcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQXR1YWxpemFyIG9zIGZpbHRyb3MgZGEgdGVsYVxuICAgKiBAcGFyYW0gKHNlYXJjaDogVCwgcm91dGU/OiBzdHJpbmcpXG4gICAqID0+IHJvdXRlIMOpIG9wY2lvbmFsLCBwYXNzYXIgZWxlIGFwZW5hcyBzZSBhIHJvdGEgZm9yIGRpZmVyZW50ZSBkbyBwYWRyw6NvXG4gICAqL1xuICBwdWJsaWMgc2V0U2VhcmNoPFQ+KHNlYXJjaDogVCwgcm91dGU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBjdXJyZW50Um91dGUsIHJvdXRlciB9ID0gdGhpcztcblxuICAgICAgdGhpcy5zZXRTZWFyY2hCeVVybChyb3V0ZXIsIHJvdXRlIHx8IGAke2N1cnJlbnRSb3V0ZX1gLCBzZWFyY2gpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIHNldFNlYXJjaCAtPiAke2V9YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOYXZlZ2HDp8OjbyBwYXJhIGRldGFpbHMuXG4gICAqIFBvciBwYWRyw6NvIHNlcmEgcmVkaXJlY2lvbmFkbyBwYXJhICcke2N1cnJlbnRSb3V0ZX0vZGV0YWlscydcbiAgICogQHBhcmFtIChkZXRhaWxzRGF0YTogVCwgcm91dGU/OiBzdHJpbmcpXG4gICAqID0+IHJvdXRlIMOpIG9wY2lvbmFsLCBwYXNzYXIgZWxlIGFwZW5hcyBzZSBhIHJvdGEgZm9yIGRpZmVyZW50ZSBkbyBwYWRyw6NvXG4gICAqL1xuICBwdWJsaWMgbmF2aWdhdGVUb0RldGFpbHM8VD4oZGV0YWlsc0RhdGE6IFQsIHJvdXRlPzogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgcm91dGVyLCBjdXJyZW50Um91dGUgfSA9IHRoaXM7XG5cbiAgICAgIHJvdXRlci5uYXZpZ2F0ZShbcm91dGUgfHwgYCR7Y3VycmVudFJvdXRlfS9kZXRhaWxzYF0sIHtcbiAgICAgICAgc3RhdGU6IHtcbiAgICAgICAgICBkZXRhaWxzRGF0YVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCBuYXZpZ2F0ZVRvRGV0YWlscyAtPiAke2V9YCk7XG4gICAgfVxuICB9XG59XG4iXX0=
1
+ import { inject } from '@angular/core';
2
+ import { Router } from '@angular/router';
3
+ import { Store } from '@ngrx/store';
4
+ import { TranslateService } from '@ngx-translate/core';
5
+ import { MonkeyEcxCommonsService } from '.';
6
+ import { MonkeyEcxDiscoveryParamsService, MonkeyEcxPaginationService } from '../..';
7
+ import { MonkeyEcxUtils } from '../../utils';
8
+ export class MonkeyEcxCommonsResolveService extends MonkeyEcxCommonsService {
9
+ constructor(monkeyecxService, tokenStorage, config) {
10
+ super(monkeyecxService, tokenStorage);
11
+ this.route = null;
12
+ this.currentRoute = null;
13
+ this.paginationService = inject(MonkeyEcxPaginationService);
14
+ this.translateService = inject(TranslateService);
15
+ this.router = inject(Router);
16
+ this.store = inject(Store);
17
+ this.monkeyDiscovery = inject(MonkeyEcxDiscoveryParamsService);
18
+ const { actions, selectors } = config;
19
+ this.action = actions;
20
+ this.selector = selectors;
21
+ }
22
+ async getData() {
23
+ try {
24
+ const { store, route, action, selector, tokenStorage } = this;
25
+ const { companyId, companyType, governmentId } = await tokenStorage?.getToken();
26
+ const identifier = `${companyId || governmentId}-${companyType}`;
27
+ if (!route)
28
+ return;
29
+ const url = MonkeyEcxUtils.replaceVariables(route, { companyId });
30
+ store.dispatch(action.load({ url, identifier }));
31
+ this.__control$ = store.select(selector.selectControl());
32
+ if (selector?.selectByIdentifier) {
33
+ this.__data$ = store.select(selector.selectByIdentifier({ identifier }));
34
+ }
35
+ if (selector?.selectOneByIdentifier) {
36
+ this.__data$ = store.select(selector.selectOneByIdentifier({ identifier }));
37
+ }
38
+ if (selector?.selectLinks) {
39
+ this.__pagination$ = store.select(selector.selectLinks({ identifier }));
40
+ }
41
+ if (selector?.selectPage) {
42
+ this.__page$ = store.select(selector.selectPage({ identifier }));
43
+ }
44
+ this.__onDataChanged$.next(null);
45
+ }
46
+ catch (e) {
47
+ throw new Error(`MECX Core - Method getData -> ${e}`);
48
+ }
49
+ }
50
+ async loadPage() {
51
+ try {
52
+ const { store, tokenStorage, action } = this;
53
+ const { companyId, companyType, governmentId } = await tokenStorage?.getToken();
54
+ store.dispatch(action.loadPagination({
55
+ identifier: `${companyId || governmentId}-${companyType}`,
56
+ pagination: {
57
+ action: 'next'
58
+ }
59
+ }));
60
+ }
61
+ catch (e) {
62
+ throw new Error(`MECX Core - Method loadPage -> ${e}`);
63
+ }
64
+ }
65
+ /**
66
+ * @description Inicializar a class genérica
67
+ * @param (args: MonkeyEcxInitialResolverConfig)
68
+ * => route é obrigátorio pois ele quem inicializa a store.
69
+ * A searchClass só se faz necessaria quando for usar filtros
70
+ */
71
+ init(args) {
72
+ try {
73
+ const { searchClass, route } = args;
74
+ this.route = route;
75
+ if (searchClass) {
76
+ // eslint-disable-next-line new-cap
77
+ const searchInstance = new searchClass(this.__search);
78
+ this.route = `${route}${searchInstance.buildParams()}`;
79
+ this.__onSearchChanged$.next(searchInstance);
80
+ }
81
+ this.getData();
82
+ }
83
+ catch (e) {
84
+ throw new Error(`${e?.message}`);
85
+ }
86
+ }
87
+ resolve(route, state, otherArgs) {
88
+ this.__search = route?.queryParams;
89
+ const [currentRoute] = state?.url.split('?') || [null];
90
+ this.currentRoute = currentRoute;
91
+ super.resolve(route, state, otherArgs);
92
+ }
93
+ /**
94
+ * @description Atualizar os filtros da tela
95
+ * @param (search: T, route?: string)
96
+ * => route é opcional, passar ele apenas se a rota for diferente do padrão
97
+ */
98
+ setSearch(search, route) {
99
+ try {
100
+ const { currentRoute, router } = this;
101
+ this.setSearchByUrl(router, route || `${currentRoute}`, search);
102
+ }
103
+ catch (e) {
104
+ throw new Error(`MECX Core - Method setSearch -> ${e}`);
105
+ }
106
+ }
107
+ /**
108
+ * @description Navegação para details.
109
+ * Por padrão sera redirecionado para '${currentRoute}/details'
110
+ * @param (detailsData: T, route?: string)
111
+ * => route é opcional, passar ele apenas se a rota for diferente do padrão
112
+ */
113
+ navigateToDetails(detailsData, route) {
114
+ try {
115
+ const { router, currentRoute } = this;
116
+ router.navigate([route || `${currentRoute}/details`], {
117
+ state: {
118
+ detailsData
119
+ }
120
+ });
121
+ }
122
+ catch (e) {
123
+ throw new Error(`MECX Core - Method navigateToDetails -> ${e}`);
124
+ }
125
+ }
126
+ }
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbW1vbnMtcmVzb2x2ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2NvbW1vbnMvbW9ua2V5ZWN4LWNvbW1vbnMtcmVzb2x2ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUEwQixNQUFNLEVBQXVCLE1BQU0saUJBQWlCLENBQUM7QUFDdEYsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7QUFDNUMsT0FBTyxFQUNMLCtCQUErQixFQUMvQiwwQkFBMEIsRUFFM0IsTUFBTSxPQUFPLENBQUM7QUFNZixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBaUI3QyxNQUFNLE9BQWdCLDhCQUErQixTQUFRLHVCQUF1QjtJQW1CbEYsWUFDRSxnQkFBa0MsRUFDbEMsWUFBMEMsRUFDMUMsTUFNQztRQUVELEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsQ0FBQztRQXpCOUIsVUFBSyxHQUFrQixJQUFJLENBQUM7UUFFNUIsaUJBQVksR0FBa0IsSUFBSSxDQUFDO1FBRW5DLHNCQUFpQixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRXZELHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0QixvQkFBZSxH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QyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksR0FBRyxZQUFZLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNqRTtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGlCQUFpQixDQUFJLFdBQWMsRUFBRSxLQUFjO1FBQ3hELElBQUk7WUFDRixNQUFNLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQztZQUV0QyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxJQUFJLEdBQUcsWUFBWSxVQUFVLENBQUMsRUFBRTtnQkFDcEQsS0FBSyxFQUFFO29CQUNMLFdBQVc7aUJBQ1o7YUFDRixDQUFDLENBQUM7U0FDSjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFjdGlvbiwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hDb21tb25zU2VydmljZSB9IGZyb20gJy4nO1xuaW1wb3J0IHtcbiAgTW9ua2V5RWN4RGlzY292ZXJ5UGFyYW1zU2VydmljZSxcbiAgTW9ua2V5RWN4UGFnaW5hdGlvblNlcnZpY2UsXG4gIE1vbmtleUVjeFRva2VuU3RvcmFnZVNlcnZpY2Vcbn0gZnJvbSAnLi4vLi4nO1xuaW1wb3J0IHtcbiAgTW9ua2V5RWN4Q29tbW9uc0NvbmZpZyxcbiAgTW9ua2V5RWN4Q29tbW9uc1NlYXJjaCxcbiAgTW9ua2V5RWN4SW5pdGlhbFJlc29sdmVyQ29uZmlnXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTW9ua2V5RWN4VXRpbHMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNb25rZXlFY3hTZXJ2aWNlIH0gZnJvbSAnLi4vbW9ua2V5ZWN4LXNlcnZpY2Uuc2VydmljZSc7XG5cbmRlY2xhcmUgdHlwZSBTZWxlY3RvcnMgPVxuICB8IHtcbiAgICAgIHNlbGVjdEJ5SWRlbnRpZmllcjogRnVuY3Rpb247XG4gICAgICBzZWxlY3RPbmVCeUlkZW50aWZpZXI/OiBuZXZlcjtcbiAgICAgIHNlbGVjdENvbnRyb2w6IEZ1bmN0aW9uO1xuICAgICAgc2VsZWN0TGlua3M/OiBGdW5jdGlvbjtcbiAgICAgIHNlbGVjdFBhZ2U/OiBGdW5jdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgc2VsZWN0T25lQnlJZGVudGlmaWVyOiBGdW5jdGlvbjtcbiAgICAgIHNlbGVjdEJ5SWRlbnRpZmllcj86IG5ldmVyO1xuICAgICAgc2VsZWN0Q29udHJvbDogRnVuY3Rpb247XG4gICAgfTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1vbmtleUVjeENvbW1vbnNSZXNvbHZlU2VydmljZSBleHRlbmRzIE1vbmtleUVjeENvbW1vbnNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBhY3Rpb246IGFueTtcblxuICBwcml2YXRlIHNlbGVjdG9yOiBhbnk7XG5cbiAgcHJvdGVjdGVkIHJvdXRlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBwcm90ZWN0ZWQgY3VycmVudFJvdXRlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBwcm90ZWN0ZWQgcGFnaW5hdGlvblNlcnZpY2UgPSBpbmplY3QoTW9ua2V5RWN4UGFnaW5hdGlvblNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBwcm90ZWN0ZWQgc3RvcmUgPSBpbmplY3QoU3RvcmUpO1xuXG4gIHByb3RlY3RlZCBtb25rZXlEaXNjb3ZlcnkgPSBpbmplY3QoTW9ua2V5RWN4RGlzY292ZXJ5UGFyYW1zU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbW9ua2V5ZWN4U2VydmljZTogTW9ua2V5RWN4U2VydmljZSxcbiAgICB0b2tlblN0b3JhZ2U6IE1vbmtleUVjeFRva2VuU3RvcmFnZVNlcnZpY2UsXG4gICAgY29uZmlnOiB7XG4gICAgICBhY3Rpb25zOiB7XG4gICAgICAgIGxvYWQ6IEFjdGlvbjtcbiAgICAgICAgbG9hZFBhZ2luYXRpb24/OiBBY3Rpb247XG4gICAgICB9O1xuICAgICAgc2VsZWN0b3JzOiBTZWxlY3RvcnM7XG4gICAgfVxuICApIHtcbiAgICBzdXBlcihtb25rZXllY3hTZXJ2aWNlLCB0b2tlblN0b3JhZ2UpO1xuICAgIGNvbnN0IHsgYWN0aW9ucywgc2VsZWN0b3JzIH0gPSBjb25maWc7XG5cbiAgICB0aGlzLmFjdGlvbiA9IGFjdGlvbnM7XG4gICAgdGhpcy5zZWxlY3RvciA9IHNlbGVjdG9ycztcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBnZXREYXRhKCkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IHN0b3JlLCByb3V0ZSwgYWN0aW9uLCBzZWxlY3RvciwgdG9rZW5TdG9yYWdlIH0gPSB0aGlzO1xuXG4gICAgICBjb25zdCB7IGNvbXBhbnlJZCwgY29tcGFueVR5cGUsIGdvdmVybm1lbnRJZCB9ID0gYXdhaXQgdG9rZW5TdG9yYWdlPy5nZXRUb2tlbigpO1xuXG4gICAgICBjb25zdCBpZGVudGlmaWVyID0gYCR7Y29tcGFueUlkIHx8IGdvdmVybm1lbnRJZH0tJHtjb21wYW55VHlwZX1gO1xuXG4gICAgICBpZiAoIXJvdXRlKSByZXR1cm47XG5cbiAgICAgIGNvbnN0IHVybCA9IE1vbmtleUVjeFV0aWxzLnJlcGxhY2VWYXJpYWJsZXMocm91dGUsIHsgY29tcGFueUlkIH0pO1xuXG4gICAgICBzdG9yZS5kaXNwYXRjaChhY3Rpb24ubG9hZCh7IHVybCwgaWRlbnRpZmllciB9KSk7XG5cbiAgICAgIHRoaXMuX19jb250cm9sJCA9IHN0b3JlLnNlbGVjdChzZWxlY3Rvci5zZWxlY3RDb250cm9sKCkpO1xuXG4gICAgICBpZiAoc2VsZWN0b3I/LnNlbGVjdEJ5SWRlbnRpZmllcikge1xuICAgICAgICB0aGlzLl9fZGF0YSQgPSBzdG9yZS5zZWxlY3Qoc2VsZWN0b3Iuc2VsZWN0QnlJZGVudGlmaWVyKHsgaWRlbnRpZmllciB9KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChzZWxlY3Rvcj8uc2VsZWN0T25lQnlJZGVudGlmaWVyKSB7XG4gICAgICAgIHRoaXMuX19kYXRhJCA9IHN0b3JlLnNlbGVjdChzZWxlY3Rvci5zZWxlY3RPbmVCeUlkZW50aWZpZXIoeyBpZGVudGlmaWVyIH0pKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGVjdG9yPy5zZWxlY3RMaW5rcykge1xuICAgICAgICB0aGlzLl9fcGFnaW5hdGlvbiQgPSBzdG9yZS5zZWxlY3Qoc2VsZWN0b3Iuc2VsZWN0TGlua3MoeyBpZGVudGlmaWVyIH0pKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGVjdG9yPy5zZWxlY3RQYWdlKSB7XG4gICAgICAgIHRoaXMuX19wYWdlJCA9IHN0b3JlLnNlbGVjdChzZWxlY3Rvci5zZWxlY3RQYWdlKHsgaWRlbnRpZmllciB9KSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX19vbkRhdGFDaGFuZ2VkJC5uZXh0KG51bGwpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIGdldERhdGEgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBsb2FkUGFnZSgpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzdG9yZSwgdG9rZW5TdG9yYWdlLCBhY3Rpb24gfSA9IHRoaXM7XG4gICAgICBjb25zdCB7IGNvbXBhbnlJZCwgY29tcGFueVR5cGUsIGdvdmVybm1lbnRJZCB9ID0gYXdhaXQgdG9rZW5TdG9yYWdlPy5nZXRUb2tlbigpO1xuXG4gICAgICBzdG9yZS5kaXNwYXRjaChcbiAgICAgICAgYWN0aW9uLmxvYWRQYWdpbmF0aW9uKHtcbiAgICAgICAgICBpZGVudGlmaWVyOiBgJHtjb21wYW55SWQgfHwgZ292ZXJubWVudElkfS0ke2NvbXBhbnlUeXBlfWAsXG4gICAgICAgICAgcGFnaW5hdGlvbjoge1xuICAgICAgICAgICAgYWN0aW9uOiAnbmV4dCdcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIGxvYWRQYWdlIC0+ICR7ZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEluaWNpYWxpemFyIGEgY2xhc3MgZ2Vuw6lyaWNhXG4gICAqIEBwYXJhbSAoYXJnczogTW9ua2V5RWN4SW5pdGlhbFJlc29sdmVyQ29uZmlnKVxuICAgKiA9PiByb3V0ZSDDqSBvYnJpZ8OhdG9yaW8gcG9pcyBlbGUgcXVlbSBpbmljaWFsaXphIGEgc3RvcmUuXG4gICAqIEEgc2VhcmNoQ2xhc3Mgc8OzIHNlIGZheiBuZWNlc3NhcmlhIHF1YW5kbyBmb3IgdXNhciBmaWx0cm9zXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdChhcmdzOiBNb25rZXlFY3hJbml0aWFsUmVzb2x2ZXJDb25maWcpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzZWFyY2hDbGFzcywgcm91dGUgfSA9IGFyZ3M7XG5cbiAgICAgIHRoaXMucm91dGUgPSByb3V0ZTtcblxuICAgICAgaWYgKHNlYXJjaENsYXNzKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuZXctY2FwXG4gICAgICAgIGNvbnN0IHNlYXJjaEluc3RhbmNlOiBNb25rZXlFY3hDb21tb25zU2VhcmNoID0gbmV3IHNlYXJjaENsYXNzKHRoaXMuX19zZWFyY2gpO1xuXG4gICAgICAgIHRoaXMucm91dGUgPSBgJHtyb3V0ZX0ke3NlYXJjaEluc3RhbmNlLmJ1aWxkUGFyYW1zKCl9YDtcblxuICAgICAgICB0aGlzLl9fb25TZWFyY2hDaGFuZ2VkJC5uZXh0KHNlYXJjaEluc3RhbmNlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5nZXREYXRhKCk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7ZT8ubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICByZXNvbHZlKFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IHwgbnVsbCxcbiAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCB8IG51bGwsXG4gICAgb3RoZXJBcmdzPzogTW9ua2V5RWN4Q29tbW9uc0NvbmZpZ1xuICApIHtcbiAgICB0aGlzLl9fc2VhcmNoID0gcm91dGU/LnF1ZXJ5UGFyYW1zO1xuXG4gICAgY29uc3QgW2N1cnJlbnRSb3V0ZV0gPSBzdGF0ZT8udXJsLnNwbGl0KCc/JykgfHwgW251bGxdO1xuXG4gICAgdGhpcy5jdXJyZW50Um91dGUgPSBjdXJyZW50Um91dGU7XG5cbiAgICBzdXBlci5yZXNvbHZlKHJvdXRlLCBzdGF0ZSwgb3RoZXJBcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQXR1YWxpemFyIG9zIGZpbHRyb3MgZGEgdGVsYVxuICAgKiBAcGFyYW0gKHNlYXJjaDogVCwgcm91dGU/OiBzdHJpbmcpXG4gICAqID0+IHJvdXRlIMOpIG9wY2lvbmFsLCBwYXNzYXIgZWxlIGFwZW5hcyBzZSBhIHJvdGEgZm9yIGRpZmVyZW50ZSBkbyBwYWRyw6NvXG4gICAqL1xuICBwdWJsaWMgc2V0U2VhcmNoPFQ+KHNlYXJjaDogVCwgcm91dGU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBjdXJyZW50Um91dGUsIHJvdXRlciB9ID0gdGhpcztcblxuICAgICAgdGhpcy5zZXRTZWFyY2hCeVVybChyb3V0ZXIsIHJvdXRlIHx8IGAke2N1cnJlbnRSb3V0ZX1gLCBzZWFyY2gpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIHNldFNlYXJjaCAtPiAke2V9YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOYXZlZ2HDp8OjbyBwYXJhIGRldGFpbHMuXG4gICAqIFBvciBwYWRyw6NvIHNlcmEgcmVkaXJlY2lvbmFkbyBwYXJhICcke2N1cnJlbnRSb3V0ZX0vZGV0YWlscydcbiAgICogQHBhcmFtIChkZXRhaWxzRGF0YTogVCwgcm91dGU/OiBzdHJpbmcpXG4gICAqID0+IHJvdXRlIMOpIG9wY2lvbmFsLCBwYXNzYXIgZWxlIGFwZW5hcyBzZSBhIHJvdGEgZm9yIGRpZmVyZW50ZSBkbyBwYWRyw6NvXG4gICAqL1xuICBwdWJsaWMgbmF2aWdhdGVUb0RldGFpbHM8VD4oZGV0YWlsc0RhdGE6IFQsIHJvdXRlPzogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgcm91dGVyLCBjdXJyZW50Um91dGUgfSA9IHRoaXM7XG5cbiAgICAgIHJvdXRlci5uYXZpZ2F0ZShbcm91dGUgfHwgYCR7Y3VycmVudFJvdXRlfS9kZXRhaWxzYF0sIHtcbiAgICAgICAgc3RhdGU6IHtcbiAgICAgICAgICBkZXRhaWxzRGF0YVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCBuYXZpZ2F0ZVRvRGV0YWlscyAtPiAke2V9YCk7XG4gICAgfVxuICB9XG59XG4iXX0=