monkey-front-core 0.0.238 → 0.0.239

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 (452) hide show
  1. package/esm2020/lib/components/alerts/alerts.component.mjs +35 -0
  2. package/esm2020/lib/components/alerts/alerts.module.mjs +21 -0
  3. package/esm2020/lib/components/alerts/index.mjs +3 -0
  4. package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.component.mjs +29 -0
  5. package/esm2020/lib/components/closed-to-maintenance/closed-to-maintenance.module.mjs +43 -0
  6. package/esm2020/lib/components/closed-to-maintenance/index.mjs +3 -0
  7. package/esm2020/lib/components/index.mjs +5 -0
  8. package/esm2020/lib/components/progress-bar/index.mjs +4 -0
  9. package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +23 -0
  10. package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +18 -0
  11. package/esm2020/lib/components/progress-bar/progress-bar.service.mjs +50 -0
  12. package/esm2020/lib/components/version-changed/index.mjs +3 -0
  13. package/esm2020/lib/components/version-changed/version-changed.component.mjs +24 -0
  14. package/esm2020/lib/components/version-changed/version-changed.module.mjs +39 -0
  15. package/esm2020/lib/core/decorators/index.mjs +5 -0
  16. package/esm2020/lib/core/decorators/monkeyecx-charts-decorators.mjs +40 -0
  17. package/esm2020/lib/core/decorators/monkeyecx-decorators.mjs +111 -0
  18. package/esm2020/lib/core/decorators/monkeyecx-download-decorators.mjs +26 -0
  19. package/esm2020/lib/core/decorators/monkeyecx-upload-decorators.mjs +26 -0
  20. package/esm2020/lib/core/directives/index.mjs +13 -0
  21. package/esm2020/lib/core/directives/monkeyecx-directives-module.mjs +73 -0
  22. package/esm2020/lib/core/directives/monkeyecx-drag-drop.mjs +57 -0
  23. package/esm2020/lib/core/directives/monkeyecx-feature-by-program-directive.mjs +50 -0
  24. package/esm2020/lib/core/directives/monkeyecx-feature-directive.mjs +68 -0
  25. package/esm2020/lib/core/directives/monkeyecx-format-currency.mjs +44 -0
  26. package/esm2020/lib/core/directives/monkeyecx-format-upper.mjs +67 -0
  27. package/esm2020/lib/core/directives/monkeyecx-only-alpha-numeric-directive.mjs +28 -0
  28. package/esm2020/lib/core/directives/monkeyecx-only-number-directive.mjs +28 -0
  29. package/esm2020/lib/core/directives/monkeyecx-popover-options.directive.mjs +39 -0
  30. package/esm2020/lib/core/directives/monkeyecx-popover.directive.mjs +212 -0
  31. package/esm2020/lib/core/directives/monkeyecx-security-directive.mjs +69 -0
  32. package/esm2020/lib/core/directives/monkeyecx-tooltip-directive.mjs +123 -0
  33. package/esm2020/lib/core/index.mjs +10 -0
  34. package/esm2020/lib/core/interceptors/index.mjs +6 -0
  35. package/esm2020/lib/core/interceptors/monkeyecx-http-config-error.interceptor.mjs +39 -0
  36. package/esm2020/lib/core/interceptors/monkeyecx-http-config-header.interceptor.mjs +60 -0
  37. package/esm2020/lib/core/interceptors/monkeyecx-http-config-interceptor.module.mjs +47 -0
  38. package/esm2020/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.mjs +43 -0
  39. package/esm2020/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.mjs +37 -0
  40. package/esm2020/lib/core/interfaces/index.mjs +30 -0
  41. package/esm2020/lib/core/interfaces/monkeyecx-auth-credentials.mjs +2 -0
  42. package/esm2020/lib/core/interfaces/monkeyecx-company-pendencies.mjs +2 -0
  43. package/esm2020/lib/core/interfaces/monkeyecx-company.mjs +2 -0
  44. package/esm2020/lib/core/interfaces/monkeyecx-config-boostrap.mjs +2 -0
  45. package/esm2020/lib/core/interfaces/monkeyecx-config.mjs +2 -0
  46. package/esm2020/lib/core/interfaces/monkeyecx-country-security.mjs +2 -0
  47. package/esm2020/lib/core/interfaces/monkeyecx-error-response.mjs +2 -0
  48. package/esm2020/lib/core/interfaces/monkeyecx-filter.mjs +2 -0
  49. package/esm2020/lib/core/interfaces/monkeyecx-handled-error-response.mjs +2 -0
  50. package/esm2020/lib/core/interfaces/monkeyecx-header-credentials.mjs +2 -0
  51. package/esm2020/lib/core/interfaces/monkeyecx-intercom-options.mjs +2 -0
  52. package/esm2020/lib/core/interfaces/monkeyecx-me-credentials.mjs +2 -0
  53. package/esm2020/lib/core/interfaces/monkeyecx-navigation.mjs +2 -0
  54. package/esm2020/lib/core/interfaces/monkeyecx-program.mjs +2 -0
  55. package/esm2020/lib/core/interfaces/monkeyecx-releases.mjs +2 -0
  56. package/esm2020/lib/core/interfaces/monkeyecx-request-in-progress.mjs +2 -0
  57. package/esm2020/lib/core/interfaces/monkeyecx-request-paged.mjs +2 -0
  58. package/esm2020/lib/core/interfaces/monkeyecx-response-links.mjs +2 -0
  59. package/esm2020/lib/core/interfaces/monkeyecx-response-paged.mjs +2 -0
  60. package/esm2020/lib/core/interfaces/monkeyecx-saved-state.mjs +2 -0
  61. package/esm2020/lib/core/interfaces/monkeyecx-scroll-options.mjs +2 -0
  62. package/esm2020/lib/core/interfaces/monkeyecx-service-credentials.mjs +2 -0
  63. package/esm2020/lib/core/interfaces/monkeyecx-support-options.mjs +2 -0
  64. package/esm2020/lib/core/interfaces/monkeyecx-token-credentials.mjs +2 -0
  65. package/esm2020/lib/core/interfaces/monkeyecx-translate-options.mjs +2 -0
  66. package/esm2020/lib/core/interfaces/request-download/index.mjs +4 -0
  67. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-download.mjs +2 -0
  68. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-downloaded.mjs +2 -0
  69. package/esm2020/lib/core/interfaces/request-download/monkeyecx-request-item-download.mjs +2 -0
  70. package/esm2020/lib/core/interfaces/request-queue/index.mjs +4 -0
  71. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.mjs +2 -0
  72. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.mjs +2 -0
  73. package/esm2020/lib/core/interfaces/request-queue/monkeyecx-request-queue.mjs +2 -0
  74. package/esm2020/lib/core/interfaces/request-upload/index.mjs +3 -0
  75. package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.mjs +2 -0
  76. package/esm2020/lib/core/interfaces/request-upload/monkeyecx-request-upload.mjs +2 -0
  77. package/esm2020/lib/core/interfaces/schedules/index.mjs +2 -0
  78. package/esm2020/lib/core/interfaces/schedules/monkeyecx-request-schedule.mjs +2 -0
  79. package/esm2020/lib/core/model/index.mjs +2 -0
  80. package/esm2020/lib/core/model/monkeyecx-model.mjs +25 -0
  81. package/esm2020/lib/core/pipes/index.mjs +20 -0
  82. package/esm2020/lib/core/pipes/monkeyecx-display-first-name.mjs +19 -0
  83. package/esm2020/lib/core/pipes/monkeyecx-display-initials.mjs +21 -0
  84. package/esm2020/lib/core/pipes/monkeyecx-format-address.mjs +20 -0
  85. package/esm2020/lib/core/pipes/monkeyecx-format-beautify-json.mjs +38 -0
  86. package/esm2020/lib/core/pipes/monkeyecx-format-currency.mjs +27 -0
  87. package/esm2020/lib/core/pipes/monkeyecx-format-date-group.mjs +45 -0
  88. package/esm2020/lib/core/pipes/monkeyecx-format-date-timelapse.mjs +32 -0
  89. package/esm2020/lib/core/pipes/monkeyecx-format-date-unix-timelapse.mjs +36 -0
  90. package/esm2020/lib/core/pipes/monkeyecx-format-document.mjs +19 -0
  91. package/esm2020/lib/core/pipes/monkeyecx-format-number.mjs +20 -0
  92. package/esm2020/lib/core/pipes/monkeyecx-format-phone.mjs +42 -0
  93. package/esm2020/lib/core/pipes/monkeyecx-format-size.mjs +20 -0
  94. package/esm2020/lib/core/pipes/monkeyecx-format-tax.mjs +23 -0
  95. package/esm2020/lib/core/pipes/monkeyecx-format-type-document.mjs +19 -0
  96. package/esm2020/lib/core/pipes/monkeyecx-format-value.mjs +19 -0
  97. package/esm2020/lib/core/pipes/monkeyecx-format-zipcode.mjs +19 -0
  98. package/esm2020/lib/core/pipes/monkeyecx-pipes.module.mjs +107 -0
  99. package/esm2020/lib/core/pipes/monkeyecx-text-truncate.mjs +23 -0
  100. package/esm2020/lib/core/pipes/monkeyecx-truncate-qtd.mjs +16 -0
  101. package/esm2020/lib/core/services/auth/index.mjs +5 -0
  102. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-company.service.mjs +28 -0
  103. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard-login.service.mjs +27 -0
  104. package/esm2020/lib/core/services/auth/monkeyecx-auth-guard.service.mjs +26 -0
  105. package/esm2020/lib/core/services/auth/monkeyecx-authentication.service.mjs +69 -0
  106. package/esm2020/lib/core/services/commons/index.mjs +2 -0
  107. package/esm2020/lib/core/services/commons/monkeyecx-commons.service.mjs +405 -0
  108. package/esm2020/lib/core/services/config/monkeyecx-alerts-config.service.mjs +40 -0
  109. package/esm2020/lib/core/services/config/monkeyecx-config.module.mjs +28 -0
  110. package/esm2020/lib/core/services/config/monkeyecx-config.service.mjs +111 -0
  111. package/esm2020/lib/core/services/config/monkeyecx-error-config.service.mjs +85 -0
  112. package/esm2020/lib/core/services/config/monkeyecx-feature-toggle.service.mjs +67 -0
  113. package/esm2020/lib/core/services/config/monkeyecx-ga-config.service.mjs +57 -0
  114. package/esm2020/lib/core/services/config/monkeyecx-i18n-config.service.mjs +92 -0
  115. package/esm2020/lib/core/services/config/monkeyecx-logs-config.service.mjs +34 -0
  116. package/esm2020/lib/core/services/config/monkeyecx-maintenance-config.service.mjs +37 -0
  117. package/esm2020/lib/core/services/config/monkeyecx-security-console-config.service.mjs +42 -0
  118. package/esm2020/lib/core/services/config/monkeyecx-service-worker-config.service.mjs +53 -0
  119. package/esm2020/lib/core/services/error/index.mjs +5 -0
  120. package/esm2020/lib/core/services/error/monkeyecx-error-handling.module.mjs +27 -0
  121. package/esm2020/lib/core/services/error/monkeyecx-error-handling.service.mjs +37 -0
  122. package/esm2020/lib/core/services/error/monkeyecx-http-error-handling.service.mjs +135 -0
  123. package/esm2020/lib/core/services/error/monkeyecx-others-errors-handling.service.mjs +29 -0
  124. package/esm2020/lib/core/services/index.mjs +23 -0
  125. package/esm2020/lib/core/services/logged/index.mjs +2 -0
  126. package/esm2020/lib/core/services/logged/monkeyecx-logged-handling.service.mjs +40 -0
  127. package/esm2020/lib/core/services/monkeyecx-handling.service.mjs +50 -0
  128. package/esm2020/lib/core/services/monkeyecx-service.service.mjs +104 -0
  129. package/esm2020/lib/core/services/pagination/index.mjs +2 -0
  130. package/esm2020/lib/core/services/pagination/monkeyecx-pagination.service.mjs +29 -0
  131. package/esm2020/lib/core/services/request-download/index.mjs +3 -0
  132. package/esm2020/lib/core/services/request-download/monkeyecx-request-download-handling.service.mjs +93 -0
  133. package/esm2020/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.mjs +61 -0
  134. package/esm2020/lib/core/services/request-paged/index.mjs +2 -0
  135. package/esm2020/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.mjs +42 -0
  136. package/esm2020/lib/core/services/request-queue/index.mjs +3 -0
  137. package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.mjs +114 -0
  138. package/esm2020/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.mjs +119 -0
  139. package/esm2020/lib/core/services/routes/index.mjs +2 -0
  140. package/esm2020/lib/core/services/routes/monkeyecx-dicovery-params.service.mjs +54 -0
  141. package/esm2020/lib/core/services/schedules/index.mjs +2 -0
  142. package/esm2020/lib/core/services/schedules/monkeyecx-request-schedule.service.mjs +188 -0
  143. package/esm2020/lib/core/services/storage/index.mjs +3 -0
  144. package/esm2020/lib/core/services/storage/monkeyecx-cookie-storage.service.mjs +32 -0
  145. package/esm2020/lib/core/services/storage/monkeyecx-token-storage.service.mjs +127 -0
  146. package/esm2020/lib/core/specification-search/index.mjs +2 -0
  147. package/esm2020/lib/core/specification-search/monkeyecx-specification-search.mjs +108 -0
  148. package/esm2020/lib/core/utils/decorators-utils.mjs +40 -0
  149. package/esm2020/lib/core/utils/index.mjs +8 -0
  150. package/esm2020/lib/core/utils/statics.mjs +38 -0
  151. package/esm2020/lib/core/utils/utils.mjs +221 -0
  152. package/esm2020/lib/core/utils/validate-utils.mjs +206 -0
  153. package/esm2020/lib/core/utils/validators.mjs +208 -0
  154. package/esm2020/lib/monkey-front-core.module.mjs +64 -0
  155. package/esm2020/monkey-front-core.mjs +5 -0
  156. package/esm2020/public-api.mjs +7 -0
  157. package/fesm2015/monkey-front-core.mjs +5123 -0
  158. package/fesm2015/monkey-front-core.mjs.map +1 -0
  159. package/fesm2020/monkey-front-core.mjs +5182 -0
  160. package/fesm2020/monkey-front-core.mjs.map +1 -0
  161. package/lib/components/alerts/alerts.component.d.ts +16 -0
  162. package/lib/components/alerts/alerts.module.d.ts +10 -0
  163. package/{src/lib/components/alerts/index.ts → lib/components/alerts/index.d.ts} +2 -2
  164. package/lib/components/closed-to-maintenance/closed-to-maintenance.component.d.ts +13 -0
  165. package/lib/components/closed-to-maintenance/closed-to-maintenance.module.d.ts +11 -0
  166. package/{src/lib/components/closed-to-maintenance/index.ts → lib/components/closed-to-maintenance/index.d.ts} +2 -2
  167. package/{src/lib/components/index.ts → lib/components/index.d.ts} +4 -4
  168. package/{src/lib/components/progress-bar/index.ts → lib/components/progress-bar/index.d.ts} +3 -3
  169. package/lib/components/progress-bar/progress-bar.component.d.ts +11 -0
  170. package/lib/components/progress-bar/progress-bar.module.d.ts +8 -0
  171. package/lib/components/progress-bar/progress-bar.service.d.ts +14 -0
  172. package/{src/lib/components/version-changed/index.ts → lib/components/version-changed/index.d.ts} +2 -2
  173. package/lib/components/version-changed/version-changed.component.d.ts +9 -0
  174. package/lib/components/version-changed/version-changed.module.d.ts +10 -0
  175. package/{src/lib/core/decorators/index.ts → lib/core/decorators/index.d.ts} +4 -4
  176. package/lib/core/decorators/monkeyecx-charts-decorators.d.ts +1 -0
  177. package/lib/core/decorators/monkeyecx-decorators.d.ts +7 -0
  178. package/lib/core/decorators/monkeyecx-download-decorators.d.ts +2 -0
  179. package/lib/core/decorators/monkeyecx-upload-decorators.d.ts +2 -0
  180. package/{src/lib/core/directives/index.ts → lib/core/directives/index.d.ts} +12 -12
  181. package/lib/core/directives/monkeyecx-directives-module.d.ts +19 -0
  182. package/lib/core/directives/monkeyecx-drag-drop.d.ts +12 -0
  183. package/lib/core/directives/monkeyecx-feature-by-program-directive.d.ts +15 -0
  184. package/lib/core/directives/monkeyecx-feature-directive.d.ts +17 -0
  185. package/lib/core/directives/monkeyecx-format-currency.d.ts +16 -0
  186. package/lib/core/directives/monkeyecx-format-upper.d.ts +18 -0
  187. package/lib/core/directives/monkeyecx-only-alpha-numeric-directive.d.ts +9 -0
  188. package/lib/core/directives/monkeyecx-only-number-directive.d.ts +9 -0
  189. package/lib/core/directives/monkeyecx-popover-options.directive.d.ts +19 -0
  190. package/lib/core/directives/monkeyecx-popover.directive.d.ts +43 -0
  191. package/lib/core/directives/monkeyecx-security-directive.d.ts +17 -0
  192. package/lib/core/directives/monkeyecx-tooltip-directive.d.ts +23 -0
  193. package/{src/lib/core/index.ts → lib/core/index.d.ts} +9 -9
  194. package/{src/lib/core/interceptors/index.ts → lib/core/interceptors/index.d.ts} +5 -5
  195. package/lib/core/interceptors/monkeyecx-http-config-error.interceptor.d.ts +17 -0
  196. package/lib/core/interceptors/monkeyecx-http-config-header.interceptor.d.ts +16 -0
  197. package/lib/core/interceptors/monkeyecx-http-config-interceptor.module.d.ts +9 -0
  198. package/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.d.ts +12 -0
  199. package/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.d.ts +14 -0
  200. package/{src/lib/core/interfaces/index.ts → lib/core/interfaces/index.d.ts} +29 -29
  201. package/lib/core/interfaces/monkeyecx-auth-credentials.d.ts +15 -0
  202. package/{src/lib/core/interfaces/monkeyecx-company-pendencies.ts → lib/core/interfaces/monkeyecx-company-pendencies.d.ts} +14 -16
  203. package/lib/core/interfaces/monkeyecx-company.d.ts +10 -0
  204. package/lib/core/interfaces/monkeyecx-config-boostrap.d.ts +14 -0
  205. package/lib/core/interfaces/monkeyecx-config.d.ts +125 -0
  206. package/lib/core/interfaces/monkeyecx-country-security.d.ts +4 -0
  207. package/lib/core/interfaces/monkeyecx-error-response.d.ts +5 -0
  208. package/lib/core/interfaces/monkeyecx-filter.d.ts +24 -0
  209. package/lib/core/interfaces/monkeyecx-handled-error-response.d.ts +10 -0
  210. package/lib/core/interfaces/monkeyecx-header-credentials.d.ts +4 -0
  211. package/{src/lib/core/interfaces/monkeyecx-intercom-options.ts → lib/core/interfaces/monkeyecx-intercom-options.d.ts} +4 -4
  212. package/lib/core/interfaces/monkeyecx-me-credentials.d.ts +22 -0
  213. package/lib/core/interfaces/monkeyecx-navigation.d.ts +27 -0
  214. package/lib/core/interfaces/monkeyecx-program.d.ts +10 -0
  215. package/lib/core/interfaces/monkeyecx-releases.d.ts +9 -0
  216. package/{src/lib/core/interfaces/monkeyecx-request-in-progress.ts → lib/core/interfaces/monkeyecx-request-in-progress.d.ts} +3 -3
  217. package/lib/core/interfaces/monkeyecx-request-paged.d.ts +23 -0
  218. package/lib/core/interfaces/monkeyecx-response-links.d.ts +11 -0
  219. package/lib/core/interfaces/monkeyecx-response-paged.d.ts +6 -0
  220. package/lib/core/interfaces/monkeyecx-saved-state.d.ts +5 -0
  221. package/{src/lib/core/interfaces/monkeyecx-scroll-options.ts → lib/core/interfaces/monkeyecx-scroll-options.d.ts} +5 -6
  222. package/{src/lib/core/interfaces/monkeyecx-service-credentials.ts → lib/core/interfaces/monkeyecx-service-credentials.d.ts} +12 -13
  223. package/{src/lib/core/interfaces/monkeyecx-support-options.ts → lib/core/interfaces/monkeyecx-support-options.d.ts} +4 -4
  224. package/lib/core/interfaces/monkeyecx-token-credentials.d.ts +20 -0
  225. package/lib/core/interfaces/monkeyecx-translate-options.d.ts +4 -0
  226. package/{src/lib/core/interfaces/request-download/index.ts → lib/core/interfaces/request-download/index.d.ts} +3 -3
  227. package/lib/core/interfaces/request-download/monkeyecx-request-download.d.ts +10 -0
  228. package/lib/core/interfaces/request-download/monkeyecx-request-downloaded.d.ts +7 -0
  229. package/lib/core/interfaces/request-download/monkeyecx-request-item-download.d.ts +7 -0
  230. package/{src/lib/core/interfaces/request-queue/index.ts → lib/core/interfaces/request-queue/index.d.ts} +3 -3
  231. package/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.d.ts +7 -0
  232. package/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.d.ts +6 -0
  233. package/{src/lib/core/interfaces/request-queue/monkeyecx-request-queue.ts → lib/core/interfaces/request-queue/monkeyecx-request-queue.d.ts} +8 -9
  234. package/{src/lib/core/interfaces/request-upload/index.ts → lib/core/interfaces/request-upload/index.d.ts} +2 -2
  235. package/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.d.ts +5 -0
  236. package/lib/core/interfaces/request-upload/monkeyecx-request-upload.d.ts +10 -0
  237. package/{src/lib/core/interfaces/schedules/index.ts → lib/core/interfaces/schedules/index.d.ts} +1 -1
  238. package/lib/core/interfaces/schedules/monkeyecx-request-schedule.d.ts +13 -0
  239. package/{src/lib/core/model/index.ts → lib/core/model/index.d.ts} +1 -1
  240. package/lib/core/model/monkeyecx-model.d.ts +13 -0
  241. package/{src/lib/core/pipes/index.ts → lib/core/pipes/index.d.ts} +19 -19
  242. package/lib/core/pipes/monkeyecx-display-first-name.d.ts +7 -0
  243. package/lib/core/pipes/monkeyecx-display-initials.d.ts +7 -0
  244. package/lib/core/pipes/monkeyecx-format-address.d.ts +14 -0
  245. package/lib/core/pipes/monkeyecx-format-beautify-json.d.ts +8 -0
  246. package/lib/core/pipes/monkeyecx-format-currency.d.ts +11 -0
  247. package/lib/core/pipes/monkeyecx-format-date-group.d.ts +11 -0
  248. package/lib/core/pipes/monkeyecx-format-date-timelapse.d.ts +7 -0
  249. package/lib/core/pipes/monkeyecx-format-date-unix-timelapse.d.ts +7 -0
  250. package/lib/core/pipes/monkeyecx-format-document.d.ts +7 -0
  251. package/lib/core/pipes/monkeyecx-format-number.d.ts +7 -0
  252. package/lib/core/pipes/monkeyecx-format-phone.d.ts +7 -0
  253. package/lib/core/pipes/monkeyecx-format-size.d.ts +7 -0
  254. package/lib/core/pipes/monkeyecx-format-tax.d.ts +7 -0
  255. package/lib/core/pipes/monkeyecx-format-type-document.d.ts +7 -0
  256. package/lib/core/pipes/monkeyecx-format-value.d.ts +7 -0
  257. package/lib/core/pipes/monkeyecx-format-zipcode.d.ts +7 -0
  258. package/lib/core/pipes/monkeyecx-pipes.module.d.ts +24 -0
  259. package/lib/core/pipes/monkeyecx-text-truncate.d.ts +7 -0
  260. package/lib/core/pipes/monkeyecx-truncate-qtd.d.ts +7 -0
  261. package/{src/lib/core/services/auth/index.ts → lib/core/services/auth/index.d.ts} +4 -4
  262. package/lib/core/services/auth/monkeyecx-auth-guard-company.service.d.ts +11 -0
  263. package/lib/core/services/auth/monkeyecx-auth-guard-login.service.d.ts +11 -0
  264. package/lib/core/services/auth/monkeyecx-auth-guard.service.d.ts +11 -0
  265. package/lib/core/services/auth/monkeyecx-authentication.service.d.ts +30 -0
  266. package/{src/lib/core/services/commons/index.ts → lib/core/services/commons/index.d.ts} +1 -1
  267. package/lib/core/services/commons/monkeyecx-commons.service.d.ts +124 -0
  268. package/lib/core/services/config/monkeyecx-alerts-config.service.d.ts +11 -0
  269. package/lib/core/services/config/monkeyecx-config.module.d.ts +9 -0
  270. package/lib/core/services/config/monkeyecx-config.service.d.ts +36 -0
  271. package/lib/core/services/config/monkeyecx-error-config.service.d.ts +8 -0
  272. package/lib/core/services/config/monkeyecx-feature-toggle.service.d.ts +16 -0
  273. package/lib/core/services/config/monkeyecx-ga-config.service.d.ts +10 -0
  274. package/lib/core/services/config/monkeyecx-i18n-config.service.d.ts +16 -0
  275. package/lib/core/services/config/monkeyecx-logs-config.service.d.ts +7 -0
  276. package/lib/core/services/config/monkeyecx-maintenance-config.service.d.ts +13 -0
  277. package/lib/core/services/config/monkeyecx-security-console-config.service.d.ts +11 -0
  278. package/lib/core/services/config/monkeyecx-service-worker-config.service.d.ts +16 -0
  279. package/{src/lib/core/services/error/index.ts → lib/core/services/error/index.d.ts} +4 -4
  280. package/lib/core/services/error/monkeyecx-error-handling.module.d.ts +9 -0
  281. package/lib/core/services/error/monkeyecx-error-handling.service.d.ts +9 -0
  282. package/lib/core/services/error/monkeyecx-http-error-handling.service.d.ts +26 -0
  283. package/lib/core/services/error/monkeyecx-others-errors-handling.service.d.ts +9 -0
  284. package/{src/lib/core/services/index.ts → lib/core/services/index.d.ts} +22 -22
  285. package/{src/lib/core/services/logged/index.ts → lib/core/services/logged/index.d.ts} +1 -1
  286. package/lib/core/services/logged/monkeyecx-logged-handling.service.d.ts +14 -0
  287. package/lib/core/services/monkeyecx-handling.service.d.ts +22 -0
  288. package/lib/core/services/monkeyecx-service.service.d.ts +18 -0
  289. package/{src/lib/core/services/pagination/index.ts → lib/core/services/pagination/index.d.ts} +1 -1
  290. package/lib/core/services/pagination/monkeyecx-pagination.service.d.ts +9 -0
  291. package/{src/lib/core/services/request-download/index.ts → lib/core/services/request-download/index.d.ts} +2 -2
  292. package/lib/core/services/request-download/monkeyecx-request-download-handling.service.d.ts +18 -0
  293. package/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.d.ts +16 -0
  294. package/{src/lib/core/services/request-paged/index.ts → lib/core/services/request-paged/index.d.ts} +1 -1
  295. package/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.d.ts +11 -0
  296. package/{src/lib/core/services/request-queue/index.ts → lib/core/services/request-queue/index.d.ts} +2 -2
  297. package/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.d.ts +21 -0
  298. package/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.d.ts +23 -0
  299. package/{src/lib/core/services/routes/index.ts → lib/core/services/routes/index.d.ts} +1 -1
  300. package/lib/core/services/routes/monkeyecx-dicovery-params.service.d.ts +13 -0
  301. package/{src/lib/core/services/schedules/index.ts → lib/core/services/schedules/index.d.ts} +1 -1
  302. package/lib/core/services/schedules/monkeyecx-request-schedule.service.d.ts +47 -0
  303. package/{src/lib/core/services/storage/index.ts → lib/core/services/storage/index.d.ts} +2 -2
  304. package/lib/core/services/storage/monkeyecx-cookie-storage.service.d.ts +11 -0
  305. package/lib/core/services/storage/monkeyecx-token-storage.service.d.ts +29 -0
  306. package/{src/lib/core/specification-search/index.ts → lib/core/specification-search/index.d.ts} +1 -1
  307. package/lib/core/specification-search/monkeyecx-specification-search.d.ts +20 -0
  308. package/lib/core/utils/decorators-utils.d.ts +5 -0
  309. package/{src/lib/core/utils/index.ts → lib/core/utils/index.d.ts} +6 -8
  310. package/lib/core/utils/statics.d.ts +28 -0
  311. package/lib/core/utils/utils.d.ts +22 -0
  312. package/lib/core/utils/validate-utils.d.ts +66 -0
  313. package/lib/core/utils/validators.d.ts +29 -0
  314. package/lib/monkey-front-core.module.d.ts +17 -0
  315. package/monkey-front-core-0.0.239.tgz +0 -0
  316. package/monkey-front-core.d.ts +5 -0
  317. package/package.json +24 -4
  318. package/{src/public-api.ts → public-api.d.ts} +3 -6
  319. package/karma.conf.js +0 -44
  320. package/monkey-front-core-0.0.238.tgz +0 -0
  321. package/ng-package.json +0 -8
  322. package/src/lib/components/alerts/alerts.component.html +0 -18
  323. package/src/lib/components/alerts/alerts.component.scss +0 -71
  324. package/src/lib/components/alerts/alerts.component.ts +0 -36
  325. package/src/lib/components/alerts/alerts.module.ts +0 -12
  326. package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.html +0 -25
  327. package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.scss +0 -51
  328. package/src/lib/components/closed-to-maintenance/closed-to-maintenance.component.ts +0 -25
  329. package/src/lib/components/closed-to-maintenance/closed-to-maintenance.module.ts +0 -26
  330. package/src/lib/components/progress-bar/progress-bar.component.html +0 -3
  331. package/src/lib/components/progress-bar/progress-bar.component.scss +0 -6
  332. package/src/lib/components/progress-bar/progress-bar.component.ts +0 -22
  333. package/src/lib/components/progress-bar/progress-bar.module.ts +0 -10
  334. package/src/lib/components/progress-bar/progress-bar.service.ts +0 -61
  335. package/src/lib/components/version-changed/version-changed.component.html +0 -18
  336. package/src/lib/components/version-changed/version-changed.component.scss +0 -52
  337. package/src/lib/components/version-changed/version-changed.component.ts +0 -18
  338. package/src/lib/components/version-changed/version-changed.module.ts +0 -24
  339. package/src/lib/core/decorators/monkeyecx-charts-decorators.ts +0 -46
  340. package/src/lib/core/decorators/monkeyecx-decorators.ts +0 -159
  341. package/src/lib/core/decorators/monkeyecx-download-decorators.ts +0 -39
  342. package/src/lib/core/decorators/monkeyecx-upload-decorators.ts +0 -39
  343. package/src/lib/core/directives/monkeyecx-directives-module.ts +0 -45
  344. package/src/lib/core/directives/monkeyecx-drag-drop.ts +0 -40
  345. package/src/lib/core/directives/monkeyecx-feature-by-program-directive.ts +0 -53
  346. package/src/lib/core/directives/monkeyecx-feature-directive.ts +0 -72
  347. package/src/lib/core/directives/monkeyecx-format-currency.ts +0 -44
  348. package/src/lib/core/directives/monkeyecx-format-upper.ts +0 -54
  349. package/src/lib/core/directives/monkeyecx-only-alpha-numeric-directive.ts +0 -21
  350. package/src/lib/core/directives/monkeyecx-only-number-directive.ts +0 -21
  351. package/src/lib/core/directives/monkeyecx-popover-options.directive.ts +0 -52
  352. package/src/lib/core/directives/monkeyecx-popover.directive.ts +0 -235
  353. package/src/lib/core/directives/monkeyecx-security-directive.ts +0 -68
  354. package/src/lib/core/directives/monkeyecx-tooltip-directive.ts +0 -131
  355. package/src/lib/core/interceptors/monkeyecx-http-config-error.interceptor.ts +0 -58
  356. package/src/lib/core/interceptors/monkeyecx-http-config-header.interceptor.ts +0 -78
  357. package/src/lib/core/interceptors/monkeyecx-http-config-interceptor.module.ts +0 -40
  358. package/src/lib/core/interceptors/monkeyecx-http-config-loading-in-progress.interceptor.ts +0 -47
  359. package/src/lib/core/interceptors/monkeyecx-http-config-queue.interceptor.ts +0 -44
  360. package/src/lib/core/interfaces/monkeyecx-auth-credentials.ts +0 -16
  361. package/src/lib/core/interfaces/monkeyecx-company.ts +0 -10
  362. package/src/lib/core/interfaces/monkeyecx-config-boostrap.ts +0 -14
  363. package/src/lib/core/interfaces/monkeyecx-config.ts +0 -139
  364. package/src/lib/core/interfaces/monkeyecx-country-security.ts +0 -4
  365. package/src/lib/core/interfaces/monkeyecx-error-response.ts +0 -5
  366. package/src/lib/core/interfaces/monkeyecx-filter.ts +0 -26
  367. package/src/lib/core/interfaces/monkeyecx-handled-error-response.ts +0 -11
  368. package/src/lib/core/interfaces/monkeyecx-header-credentials.ts +0 -4
  369. package/src/lib/core/interfaces/monkeyecx-me-credentials.ts +0 -23
  370. package/src/lib/core/interfaces/monkeyecx-navigation.ts +0 -28
  371. package/src/lib/core/interfaces/monkeyecx-program.ts +0 -10
  372. package/src/lib/core/interfaces/monkeyecx-releases.ts +0 -9
  373. package/src/lib/core/interfaces/monkeyecx-request-paged.ts +0 -27
  374. package/src/lib/core/interfaces/monkeyecx-response-links.ts +0 -11
  375. package/src/lib/core/interfaces/monkeyecx-response-paged.ts +0 -6
  376. package/src/lib/core/interfaces/monkeyecx-saved-state.ts +0 -5
  377. package/src/lib/core/interfaces/monkeyecx-token-credentials.ts +0 -20
  378. package/src/lib/core/interfaces/monkeyecx-translate-options.ts +0 -4
  379. package/src/lib/core/interfaces/request-download/monkeyecx-request-download.ts +0 -11
  380. package/src/lib/core/interfaces/request-download/monkeyecx-request-downloaded.ts +0 -8
  381. package/src/lib/core/interfaces/request-download/monkeyecx-request-item-download.ts +0 -7
  382. package/src/lib/core/interfaces/request-queue/monkeyecx-request-item-queue.ts +0 -7
  383. package/src/lib/core/interfaces/request-queue/monkeyecx-request-progress-queue.ts +0 -6
  384. package/src/lib/core/interfaces/request-upload/monkeyecx-request-item-upload.ts +0 -5
  385. package/src/lib/core/interfaces/request-upload/monkeyecx-request-upload.ts +0 -11
  386. package/src/lib/core/interfaces/schedules/monkeyecx-request-schedule.ts +0 -14
  387. package/src/lib/core/model/monkeyecx-model.ts +0 -38
  388. package/src/lib/core/pipes/monkeyecx-display-first-name.ts +0 -12
  389. package/src/lib/core/pipes/monkeyecx-display-initials.ts +0 -14
  390. package/src/lib/core/pipes/monkeyecx-display-support-phone.ts +0 -31
  391. package/src/lib/core/pipes/monkeyecx-format-address.ts +0 -27
  392. package/src/lib/core/pipes/monkeyecx-format-beautify-json.ts +0 -35
  393. package/src/lib/core/pipes/monkeyecx-format-currency.ts +0 -20
  394. package/src/lib/core/pipes/monkeyecx-format-date-group.ts +0 -40
  395. package/src/lib/core/pipes/monkeyecx-format-date-timelapse.ts +0 -25
  396. package/src/lib/core/pipes/monkeyecx-format-date-unix-timelapse.ts +0 -31
  397. package/src/lib/core/pipes/monkeyecx-format-document.ts +0 -12
  398. package/src/lib/core/pipes/monkeyecx-format-number.ts +0 -14
  399. package/src/lib/core/pipes/monkeyecx-format-phone.ts +0 -32
  400. package/src/lib/core/pipes/monkeyecx-format-size.ts +0 -13
  401. package/src/lib/core/pipes/monkeyecx-format-tax.ts +0 -16
  402. package/src/lib/core/pipes/monkeyecx-format-type-document.ts +0 -12
  403. package/src/lib/core/pipes/monkeyecx-format-value.ts +0 -12
  404. package/src/lib/core/pipes/monkeyecx-format-zipcode.ts +0 -12
  405. package/src/lib/core/pipes/monkeyecx-pipes.module.ts +0 -65
  406. package/src/lib/core/pipes/monkeyecx-text-truncate.ts +0 -17
  407. package/src/lib/core/pipes/monkeyecx-truncate-qtd.ts +0 -10
  408. package/src/lib/core/services/auth/monkeyecx-auth-guard-company.service.ts +0 -27
  409. package/src/lib/core/services/auth/monkeyecx-auth-guard-login.service.ts +0 -23
  410. package/src/lib/core/services/auth/monkeyecx-auth-guard.service.ts +0 -25
  411. package/src/lib/core/services/auth/monkeyecx-authentication.service.ts +0 -87
  412. package/src/lib/core/services/commons/monkeyecx-commons.service.ts +0 -557
  413. package/src/lib/core/services/config/index.ts +0 -9
  414. package/src/lib/core/services/config/monkeyecx-alerts-config.service.ts +0 -37
  415. package/src/lib/core/services/config/monkeyecx-config.module.ts +0 -23
  416. package/src/lib/core/services/config/monkeyecx-config.service.ts +0 -151
  417. package/src/lib/core/services/config/monkeyecx-error-config.service.ts +0 -92
  418. package/src/lib/core/services/config/monkeyecx-feature-toggle.service.ts +0 -71
  419. package/src/lib/core/services/config/monkeyecx-ga-config.service.ts +0 -56
  420. package/src/lib/core/services/config/monkeyecx-i18n-config.service.ts +0 -95
  421. package/src/lib/core/services/config/monkeyecx-logs-config.service.ts +0 -34
  422. package/src/lib/core/services/config/monkeyecx-maintenance-config.service.ts +0 -33
  423. package/src/lib/core/services/config/monkeyecx-security-console-config.service.ts +0 -40
  424. package/src/lib/core/services/config/monkeyecx-service-worker-config.service.ts +0 -50
  425. package/src/lib/core/services/error/monkeyecx-error-handling.module.ts +0 -20
  426. package/src/lib/core/services/error/monkeyecx-error-handling.service.ts +0 -33
  427. package/src/lib/core/services/error/monkeyecx-http-error-handling.service.ts +0 -160
  428. package/src/lib/core/services/error/monkeyecx-others-errors-handling.service.ts +0 -24
  429. package/src/lib/core/services/logged/monkeyecx-logged-handling.service.ts +0 -42
  430. package/src/lib/core/services/monkeyecx-handling.service.ts +0 -58
  431. package/src/lib/core/services/monkeyecx-service.service.ts +0 -116
  432. package/src/lib/core/services/pagination/monkeyecx-pagination.service.ts +0 -27
  433. package/src/lib/core/services/request-download/monkeyecx-request-download-handling.service.ts +0 -100
  434. package/src/lib/core/services/request-download/monkeyecx-request-downloaded-handling.service.ts +0 -65
  435. package/src/lib/core/services/request-paged/monkeyecx-request-request-paged-handling.ts +0 -58
  436. package/src/lib/core/services/request-queue/monkeyecx-request-queue-handling.service.ts +0 -125
  437. package/src/lib/core/services/request-queue/monkeyecx-request-queue-modal-handling.service.ts +0 -136
  438. package/src/lib/core/services/routes/monkeyecx-dicovery-params.service.ts +0 -54
  439. package/src/lib/core/services/schedules/monkeyecx-request-schedule.service.ts +0 -224
  440. package/src/lib/core/services/storage/monkeyecx-cookie-storage.service.ts +0 -28
  441. package/src/lib/core/services/storage/monkeyecx-token-storage.service.ts +0 -151
  442. package/src/lib/core/specification-search/monkeyecx-specification-search.ts +0 -111
  443. package/src/lib/core/utils/decorators-utils.ts +0 -56
  444. package/src/lib/core/utils/statics.ts +0 -36
  445. package/src/lib/core/utils/utils.ts +0 -237
  446. package/src/lib/core/utils/validate-utils.ts +0 -221
  447. package/src/lib/core/utils/validators.ts +0 -251
  448. package/src/lib/monkey-front-core.module.ts +0 -37
  449. package/src/test.ts +0 -26
  450. package/tsconfig.lib.json +0 -15
  451. package/tsconfig.lib.prod.json +0 -10
  452. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,212 @@
1
+ import { TemplatePortal } from '@angular/cdk/portal';
2
+ import { Directive, Inject, Input, Optional } from '@angular/core';
3
+ import { Subscription } from 'rxjs';
4
+ import { NavigationStart } from '@angular/router';
5
+ import { filter } from 'rxjs/operators';
6
+ import { POPOVER_OPTIONS } from './monkeyecx-popover-options.directive';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/cdk/overlay";
9
+ import * as i2 from "@angular/router";
10
+ export class MonkeyEcxPopoverDirective {
11
+ constructor(tpl, vcr, el, zone, _viewContainerRef, _cd, overlay, overlayPositionBuilder, router, options) {
12
+ this.tpl = tpl;
13
+ this.vcr = vcr;
14
+ this.el = el;
15
+ this.zone = zone;
16
+ this._viewContainerRef = _viewContainerRef;
17
+ this._cd = _cd;
18
+ this.overlay = overlay;
19
+ this.overlayPositionBuilder = overlayPositionBuilder;
20
+ this.router = router;
21
+ this.options = options;
22
+ this.minwidth = false;
23
+ this.backdrop = true;
24
+ this.watch = false;
25
+ this.dir = 'ltr';
26
+ this.contextmenu = false;
27
+ this.subs = new Subscription();
28
+ this.eventsSubs = new Subscription();
29
+ this.eventsSubs = this.router.events
30
+ .pipe(filter((event) => {
31
+ return event instanceof NavigationStart;
32
+ }))
33
+ .subscribe(() => {
34
+ this.onHandleClose();
35
+ });
36
+ }
37
+ get popover() {
38
+ return this._popover;
39
+ }
40
+ set popover(show) {
41
+ this._popover = show;
42
+ if (show) {
43
+ this.createPopover();
44
+ }
45
+ else if (this.overlayRef) {
46
+ this.overlayRef.dispose();
47
+ }
48
+ }
49
+ get target() {
50
+ return this._target;
51
+ }
52
+ set target(target) {
53
+ this._target = target;
54
+ }
55
+ onHandleClose(e) {
56
+ this.popover = false;
57
+ this.subs.unsubscribe();
58
+ this.resizeObserver?.disconnect();
59
+ this.zone.run(() => {
60
+ if (this.closed) {
61
+ this.closed(e);
62
+ }
63
+ });
64
+ }
65
+ getDirPositions(dir) {
66
+ const revert = {
67
+ start: 'end', end: 'start', bottom: 'top', top: 'bottom', center: 'center'
68
+ };
69
+ const centerY = (pos) => {
70
+ return {
71
+ originX: 'center', originY: pos, overlayX: 'center', overlayY: revert[pos]
72
+ };
73
+ };
74
+ const centerX = (pos) => {
75
+ return {
76
+ originX: revert[pos], originY: 'center', overlayX: pos, overlayY: 'center'
77
+ };
78
+ };
79
+ const ltr = (axis) => {
80
+ return {
81
+ originX: 'start', originY: axis, overlayX: 'start', overlayY: revert[axis]
82
+ };
83
+ };
84
+ const rtl = (axis) => {
85
+ return {
86
+ originX: 'end', originY: axis, overlayX: 'end', overlayY: revert[axis]
87
+ };
88
+ };
89
+ const side = (axis, axis2) => {
90
+ return {
91
+ originX: axis, originY: axis2, overlayX: revert[axis], overlayY: axis2
92
+ };
93
+ };
94
+ const cmp = dir || this.options?.dir || this.dir;
95
+ if (cmp === 'ct') {
96
+ return [centerY('top'), centerY('bottom'), centerX('start'), centerX('end')];
97
+ }
98
+ if (cmp === 'cr') {
99
+ return [centerX('end'), centerX('start'), centerY('top'), centerY('bottom')];
100
+ }
101
+ if (cmp === 'cc') {
102
+ return [centerX('center')];
103
+ }
104
+ if (cmp === 'ltr') {
105
+ return [ltr('bottom'), ltr('top')];
106
+ }
107
+ if (cmp === 'rtl') {
108
+ return [rtl('bottom'), rtl('top')];
109
+ }
110
+ if (cmp === 'tltr') {
111
+ return [ltr('top'), ltr('bottom')];
112
+ }
113
+ if (cmp === 'trtl') {
114
+ return [rtl('top'), rtl('bottom')];
115
+ }
116
+ if (cmp === 'rt') {
117
+ return [side('end', 'top'), side('end', 'bottom'), ltr('top')];
118
+ }
119
+ if (cmp === 'rb') {
120
+ return [side('end', 'bottom'), side('end', 'top'), ltr('bottom'), rtl('bottom')];
121
+ }
122
+ if (cmp === 'lt') {
123
+ return [side('start', 'top'), side('start', 'bottom'), rtl('top')];
124
+ }
125
+ if (cmp === 'lb') {
126
+ return [side('start', 'bottom'), side('start', 'top'), rtl('bottom')];
127
+ }
128
+ return [];
129
+ }
130
+ createPopover(origin, options) {
131
+ this.templatePortal = new TemplatePortal(this.tpl, this._viewContainerRef);
132
+ this.positionStrategy = this.overlayPositionBuilder
133
+ .flexibleConnectedTo(origin || this.target)
134
+ .withPush(true)
135
+ .withGrowAfterOpen(true)
136
+ .withPositions(this.getDirPositions(options?.dir));
137
+ this.overlayRef = this.overlay.create({
138
+ positionStrategy: this.positionStrategy,
139
+ disposeOnNavigation: true,
140
+ direction: 'ltr',
141
+ hasBackdrop: this.backdrop,
142
+ scrollStrategy: this.overlay.scrollStrategies.reposition({}),
143
+ backdropClass: 'cdk-overlay-transparent-backdrop',
144
+ width: (this.options?.minwidth || this.minwidth) ? (this.target.offsetWidth - 2) : undefined,
145
+ maxHeight: '95%',
146
+ height: this.height
147
+ });
148
+ this.subs = this.overlayRef.backdropClick().subscribe((e) => {
149
+ this.onHandleClose(e);
150
+ });
151
+ const attached = this.overlayRef.attach(this.templatePortal);
152
+ if (this.watch) {
153
+ try {
154
+ if ('ResizeObserver' in window) {
155
+ this.resizeObserver = new ResizeObserver(([{ contentRect }]) => {
156
+ this.overlayRef.updatePosition();
157
+ })
158
+ .observe(attached.rootNodes[0]);
159
+ }
160
+ }
161
+ catch (e) {
162
+ // not to do
163
+ }
164
+ }
165
+ }
166
+ ngOnDestroy() {
167
+ this.popover = false;
168
+ this.subs.unsubscribe();
169
+ this.eventsSubs.unsubscribe();
170
+ }
171
+ }
172
+ MonkeyEcxPopoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxPopoverDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i1.OverlayPositionBuilder }, { token: i2.Router }, { token: POPOVER_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
173
+ MonkeyEcxPopoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: MonkeyEcxPopoverDirective, selector: "[monkeyecxPopover]", inputs: { popover: ["monkeyecxPopover", "popover"], closed: ["monkeyecxPopoverClosed", "closed"], target: ["monkeyecxPopoverTarget", "target"], minwidth: ["monkeyecxPopoverMinwidth", "minwidth"], backdrop: ["monkeyecxPopoverBackdrop", "backdrop"], watch: ["monkeyecxPopoverWatch", "watch"], dir: ["monkeyecxPopoverDir", "dir"], contextmenu: ["monkeyecxPopoverContextmenu", "contextmenu"], height: ["monkeyecxPopoverHeight", "height"] }, ngImport: i0 });
174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxPopoverDirective, decorators: [{
175
+ type: Directive,
176
+ args: [{
177
+ selector: '[monkeyecxPopover]'
178
+ }]
179
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i1.OverlayPositionBuilder }, { type: i2.Router }, { type: undefined, decorators: [{
180
+ type: Inject,
181
+ args: [POPOVER_OPTIONS]
182
+ }, {
183
+ type: Optional
184
+ }] }]; }, propDecorators: { popover: [{
185
+ type: Input,
186
+ args: ['monkeyecxPopover']
187
+ }], closed: [{
188
+ type: Input,
189
+ args: ['monkeyecxPopoverClosed']
190
+ }], target: [{
191
+ type: Input,
192
+ args: ['monkeyecxPopoverTarget']
193
+ }], minwidth: [{
194
+ type: Input,
195
+ args: ['monkeyecxPopoverMinwidth']
196
+ }], backdrop: [{
197
+ type: Input,
198
+ args: ['monkeyecxPopoverBackdrop']
199
+ }], watch: [{
200
+ type: Input,
201
+ args: ['monkeyecxPopoverWatch']
202
+ }], dir: [{
203
+ type: Input,
204
+ args: ['monkeyecxPopoverDir']
205
+ }], contextmenu: [{
206
+ type: Input,
207
+ args: ['monkeyecxPopoverContextmenu']
208
+ }], height: [{
209
+ type: Input,
210
+ args: ['monkeyecxPopoverHeight']
211
+ }] } });
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXBvcG92ZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL2RpcmVjdGl2ZXMvbW9ua2V5ZWN4LXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBRUwsU0FBUyxFQUVULE1BQU0sRUFDTixLQUFLLEVBR0wsUUFBUSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7QUFNeEUsTUFBTSxPQUFPLHlCQUF5QjtJQXNEcEMsWUFDVyxHQUFxQixFQUNyQixHQUFxQixFQUNyQixFQUFjLEVBQ2QsSUFBWSxFQUNaLGlCQUFtQyxFQUNuQyxHQUFzQixFQUN0QixPQUFnQixFQUNqQixzQkFBOEMsRUFDN0MsTUFBYyxFQUNzQixPQUFnQztRQVRwRSxRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNqQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzdDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDc0IsWUFBTyxHQUFQ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QURWLEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVRLE1BQU07c0JBQXRDLEtBQUs7dUJBQUMsd0JBQXdCO2dCQVMzQixNQUFNO3NCQURULEtBQUs7dUJBQUMsd0JBQXdCO2dCQUtJLFFBQVE7c0JBQTFDLEtBQUs7dUJBQUMsMEJBQTBCO2dCQUVFLFFBQVE7c0JBQTFDLEtBQUs7dUJBQUMsMEJBQTBCO2dCQUVELEtBQUs7c0JBQXBDLEtBQUs7dUJBQUMsdUJBQXVCO2dCQUVBLEdBQUc7c0JBQWhDLEtBQUs7dUJBQUMscUJBQXFCO2dCQUVVLFdBQVc7c0JBQWhELEtBQUs7dUJBQUMsNkJBQTZCO2dCQUVILE1BQU07c0JBQXRDLEtBQUs7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29ubmVjdGVkUG9zaXRpb24sXG4gIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSwgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5T3JpZ2luLFxuICBPdmVybGF5LFxuICBPdmVybGF5UG9zaXRpb25CdWlsZGVyLFxuICBPdmVybGF5UmVmXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQT1BPVkVSX09QVElPTlMgfSBmcm9tICcuL21vbmtleWVjeC1wb3BvdmVyLW9wdGlvbnMuZGlyZWN0aXZlJztcbmltcG9ydCB0eXBlIHsgUG9wb3ZlckRpciwgTW9ua2V5RWN4UG9wb3Zlck9wdGlvbnMgfSBmcm9tICcuL21vbmtleWVjeC1wb3BvdmVyLW9wdGlvbnMuZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21vbmtleWVjeFBvcG92ZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hQb3BvdmVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfcG9wb3ZlciE6IGJvb2xlYW47XG5cbiAgZ2V0IHBvcG92ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcG92ZXI7XG4gIH1cblxuICBASW5wdXQoJ21vbmtleWVjeFBvcG92ZXInKVxuICBzZXQgcG9wb3ZlcihzaG93OiBib29sZWFuKSB7XG4gICAgdGhpcy5fcG9wb3ZlciA9IHNob3c7XG4gICAgaWYgKHNob3cpIHtcbiAgICAgIHRoaXMuY3JlYXRlUG9wb3ZlcigpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgnbW9ua2V5ZWN4UG9wb3ZlckNsb3NlZCcpIGNsb3NlZCE6IChlPzogTW91c2VFdmVudCkgPT4gdm9pZDtcblxuICBwcml2YXRlIF90YXJnZXQhOiBIVE1MRWxlbWVudDtcblxuICBnZXQgdGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIH1cblxuICBASW5wdXQoJ21vbmtleWVjeFBvcG92ZXJUYXJnZXQnKVxuICBzZXQgdGFyZ2V0KHRhcmdldDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLl90YXJnZXQgPSB0YXJnZXQ7XG4gIH1cblxuICBASW5wdXQoJ21vbmtleWVjeFBvcG92ZXJNaW53aWR0aCcpIG1pbndpZHRoID0gZmFsc2U7XG5cbiAgQElucHV0KCdtb25rZXllY3hQb3BvdmVyQmFja2Ryb3AnKSBiYWNrZHJvcCA9IHRydWU7XG5cbiAgQElucHV0KCdtb25rZXllY3hQb3BvdmVyV2F0Y2gnKSB3YXRjaCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnbW9ua2V5ZWN4UG9wb3ZlckRpcicpIGRpcjogUG9wb3ZlckRpciA9ICdsdHInO1xuXG4gIEBJbnB1dCgnbW9ua2V5ZWN4UG9wb3ZlckNvbnRleHRtZW51JykgY29udGV4dG1lbnUgPSBmYWxzZTtcblxuICBASW5wdXQoJ21vbmtleWVjeFBvcG92ZXJIZWlnaHQnKSBoZWlnaHQhOiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBvdmVybGF5UmVmITogT3ZlcmxheVJlZjtcblxuICBwcml2YXRlIHBvc2l0aW9uU3RyYXRlZ3khOiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3k7XG5cbiAgcHJpdmF0ZSB0ZW1wbGF0ZVBvcnRhbCE6IFRlbXBsYXRlUG9ydGFsO1xuXG4gIHByaXZhdGUgc3VicyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBwcml2YXRlIGV2ZW50c1N1YnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHJpdmF0ZSByZXNpemVPYnNlcnZlcjogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICBwcml2YXRlIHRwbDogVGVtcGxhdGVSZWY8YW55PixcbiAgICAgcHJpdmF0ZSB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIG92ZXJsYXlQb3NpdGlvbkJ1aWxkZXI6IE92ZXJsYXlQb3NpdGlvbkJ1aWxkZXIsXG4gICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgQEluamVjdChQT1BPVkVSX09QVElPTlMpIEBPcHRpb25hbCgpIHByaXZhdGUgb3B0aW9uczogTW9ua2V5RWN4UG9wb3Zlck9wdGlvbnNcbiAgKSB7XG4gICAgdGhpcy5ldmVudHNTdWJzID0gdGhpcy5yb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0O1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub25IYW5kbGVDbG9zZSgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9uSGFuZGxlQ2xvc2UoZT86IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLnBvcG92ZXIgPSBmYWxzZTtcbiAgICB0aGlzLnN1YnMudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnJlc2l6ZU9ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICBpZiAodGhpcy5jbG9zZWQpIHtcbiAgICAgICAgdGhpcy5jbG9zZWQoZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXREaXJQb3NpdGlvbnMoZGlyPzogUG9wb3ZlckRpcik6IENvbm5lY3RlZFBvc2l0aW9uW10ge1xuICAgIGNvbnN0IHJldmVydCA9IHtcbiAgICAgIHN0YXJ0OiAnZW5kJywgZW5kOiAnc3RhcnQnLCBib3R0b206ICd0b3AnLCB0b3A6ICdib3R0b20nLCBjZW50ZXI6ICdjZW50ZXInXG4gICAgfTtcbiAgICBjb25zdCBjZW50ZXJZID0gKHBvczogYW55KTogQ29ubmVjdGVkUG9zaXRpb24gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luWDogJ2NlbnRlcicsIG9yaWdpblk6IHBvcywgb3ZlcmxheVg6ICdjZW50ZXInLCBvdmVybGF5WTogcmV2ZXJ0W3Bvc11cbiAgICAgIH07XG4gICAgfTtcbiAgICBjb25zdCBjZW50ZXJYID0gKHBvczogYW55KTogQ29ubmVjdGVkUG9zaXRpb24gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luWDogcmV2ZXJ0W3Bvc10sIG9yaWdpblk6ICdjZW50ZXInLCBvdmVybGF5WDogcG9zLCBvdmVybGF5WTogJ2NlbnRlcidcbiAgICAgIH07XG4gICAgfTtcbiAgICBjb25zdCBsdHIgPSAoYXhpczogYW55KTogQ29ubmVjdGVkUG9zaXRpb24gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luWDogJ3N0YXJ0Jywgb3JpZ2luWTogYXhpcywgb3ZlcmxheVg6ICdzdGFydCcsIG92ZXJsYXlZOiByZXZlcnRbYXhpc11cbiAgICAgIH07XG4gICAgfTtcbiAgICBjb25zdCBydGwgPSAoYXhpczogYW55KTogQ29ubmVjdGVkUG9zaXRpb24gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luWDogJ2VuZCcsIG9yaWdpblk6IGF4aXMsIG92ZXJsYXlYOiAnZW5kJywgb3ZlcmxheVk6IHJldmVydFtheGlzXVxuICAgICAgfTtcbiAgICB9O1xuICAgIGNvbnN0IHNpZGUgPSAoYXhpczogYW55LCBheGlzMjogYW55KTogQ29ubmVjdGVkUG9zaXRpb24gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luWDogYXhpcywgb3JpZ2luWTogYXhpczIsIG92ZXJsYXlYOiByZXZlcnRbYXhpc10sIG92ZXJsYXlZOiBheGlzMlxuICAgICAgfTtcbiAgICB9O1xuXG4gICAgY29uc3QgY21wID0gZGlyIHx8IHRoaXMub3B0aW9ucz8uZGlyIHx8IHRoaXMuZGlyO1xuICAgIGlmIChjbXAgPT09ICdjdCcpIHtcbiAgICAgIHJldHVybiBbY2VudGVyWSgndG9wJyksIGNlbnRlclkoJ2JvdHRvbScpLCBjZW50ZXJYKCdzdGFydCcpLCBjZW50ZXJYKCdlbmQnKV07XG4gICAgfVxuICAgIGlmIChjbXAgPT09ICdjcicpIHtcbiAgICAgIHJldHVybiBbY2VudGVyWCgnZW5kJyksIGNlbnRlclgoJ3N0YXJ0JyksIGNlbnRlclkoJ3RvcCcpLCBjZW50ZXJZKCdib3R0b20nKV07XG4gICAgfVxuICAgIGlmIChjbXAgPT09ICdjYycpIHtcbiAgICAgIHJldHVybiBbY2VudGVyWCgnY2VudGVyJyldO1xuICAgIH1cbiAgICBpZiAoY21wID09PSAnbHRyJykge1xuICAgICAgcmV0dXJuIFtsdHIoJ2JvdHRvbScpLCBsdHIoJ3RvcCcpXTtcbiAgICB9XG4gICAgaWYgKGNtcCA9PT0gJ3J0bCcpIHtcbiAgICAgIHJldHVybiBbcnRsKCdib3R0b20nKSwgcnRsKCd0b3AnKV07XG4gICAgfVxuICAgIGlmIChjbXAgPT09ICd0bHRyJykge1xuICAgICAgcmV0dXJuIFtsdHIoJ3RvcCcpLCBsdHIoJ2JvdHRvbScpXTtcbiAgICB9XG4gICAgaWYgKGNtcCA9PT0gJ3RydGwnKSB7XG4gICAgICByZXR1cm4gW3J0bCgndG9wJyksIHJ0bCgnYm90dG9tJyldO1xuICAgIH1cbiAgICBpZiAoY21wID09PSAncnQnKSB7XG4gICAgICByZXR1cm4gW3NpZGUoJ2VuZCcsICd0b3AnKSwgc2lkZSgnZW5kJywgJ2JvdHRvbScpLCBsdHIoJ3RvcCcpXTtcbiAgICB9XG4gICAgaWYgKGNtcCA9PT0gJ3JiJykge1xuICAgICAgcmV0dXJuIFtzaWRlKCdlbmQnLCAnYm90dG9tJyksIHNpZGUoJ2VuZCcsICd0b3AnKSwgbHRyKCdib3R0b20nKSwgcnRsKCdib3R0b20nKV07XG4gICAgfVxuICAgIGlmIChjbXAgPT09ICdsdCcpIHtcbiAgICAgIHJldHVybiBbc2lkZSgnc3RhcnQnLCAndG9wJyksIHNpZGUoJ3N0YXJ0JywgJ2JvdHRvbScpLCBydGwoJ3RvcCcpXTtcbiAgICB9XG4gICAgaWYgKGNtcCA9PT0gJ2xiJykge1xuICAgICAgcmV0dXJuIFtzaWRlKCdzdGFydCcsICdib3R0b20nKSwgc2lkZSgnc3RhcnQnLCAndG9wJyksIHJ0bCgnYm90dG9tJyldO1xuICAgIH1cblxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGNyZWF0ZVBvcG92ZXIoXG4gICAgb3JpZ2luPzogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5T3JpZ2luLFxuICAgIG9wdGlvbnM/OiBNb25rZXlFY3hQb3BvdmVyT3B0aW9uc1xuICApIHtcbiAgICB0aGlzLnRlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMudHBsLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKTtcbiAgICB0aGlzLnBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlQb3NpdGlvbkJ1aWxkZXJcbiAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKG9yaWdpbiB8fCB0aGlzLnRhcmdldClcbiAgICAgIC53aXRoUHVzaCh0cnVlKVxuICAgICAgLndpdGhHcm93QWZ0ZXJPcGVuKHRydWUpXG4gICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLmdldERpclBvc2l0aW9ucyhvcHRpb25zPy5kaXIpKTtcblxuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5wb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICBoYXNCYWNrZHJvcDogdGhpcy5iYWNrZHJvcCxcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKHtcbiAgICAgIH0pLFxuICAgICAgYmFja2Ryb3BDbGFzczogJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJyxcbiAgICAgIHdpZHRoOiAodGhpcy5vcHRpb25zPy5taW53aWR0aCB8fCB0aGlzLm1pbndpZHRoKSA/ICh0aGlzLnRhcmdldC5vZmZzZXRXaWR0aCAtIDIpIDogdW5kZWZpbmVkLFxuICAgICAgbWF4SGVpZ2h0OiAnOTUlJyxcbiAgICAgIGhlaWdodDogdGhpcy5oZWlnaHRcbiAgICB9KTtcblxuICAgIHRoaXMuc3VicyA9IHRoaXMub3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICB0aGlzLm9uSGFuZGxlQ2xvc2UoZSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBhdHRhY2hlZCA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2godGhpcy50ZW1wbGF0ZVBvcnRhbCk7XG5cbiAgICBpZiAodGhpcy53YXRjaCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKCdSZXNpemVPYnNlcnZlcicgaW4gd2luZG93KSB7XG4gICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoW3sgY29udGVudFJlY3QgfV0pID0+IHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgICAub2JzZXJ2ZShhdHRhY2hlZC5yb290Tm9kZXNbMF0pO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIG5vdCB0byBkb1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucG9wb3ZlciA9IGZhbHNlO1xuICAgIHRoaXMuc3Vicy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuZXZlbnRzU3Vicy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,69 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../services/storage";
4
+ export class MonkeyEcxSecurityDirective {
5
+ constructor(elementRef, tokenStorageService, cdr) {
6
+ this.elementRef = elementRef;
7
+ this.tokenStorageService = tokenStorageService;
8
+ this.cdr = cdr;
9
+ this.roles = [];
10
+ this.byExclusion = false;
11
+ this.tokenCredentials = null;
12
+ // not to do
13
+ }
14
+ getRole() {
15
+ const { tokenCredentials } = this;
16
+ if (!tokenCredentials)
17
+ return '';
18
+ if (tokenCredentials?.programAdmin === 'true') {
19
+ return 'PROGRAM_ADMIN';
20
+ }
21
+ return tokenCredentials?.role || '';
22
+ }
23
+ handleAccess() {
24
+ const { roles, byExclusion } = this;
25
+ let display = 'none';
26
+ const found = roles?.indexOf(this.getRole());
27
+ if (byExclusion) {
28
+ display = 'block';
29
+ if (found > -1) {
30
+ display = 'none';
31
+ }
32
+ }
33
+ else {
34
+ display = 'none';
35
+ if (found > -1) {
36
+ display = 'block';
37
+ }
38
+ }
39
+ if (!roles || roles.length === 0 || this.getRole() === 'PROGRAM_ADMIN')
40
+ display = 'block';
41
+ this.elementRef.nativeElement.style.display = display;
42
+ this.cdr.detectChanges();
43
+ }
44
+ ngOnInit() {
45
+ this.elementRef.nativeElement.style.display = 'none';
46
+ this.cdr.detectChanges();
47
+ this.tokenStorageService.tokenHasChanged().subscribe(() => {
48
+ this.tokenCredentials = this.tokenStorageService.getToken();
49
+ this.handleAccess();
50
+ });
51
+ this.tokenCredentials = this.tokenStorageService.getToken();
52
+ this.handleAccess();
53
+ }
54
+ }
55
+ MonkeyEcxSecurityDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxSecurityDirective, deps: [{ token: i0.ElementRef }, { token: i1.MonkeyEcxTokenStorageService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
56
+ MonkeyEcxSecurityDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: MonkeyEcxSecurityDirective, selector: "[monkeyecxSecurity]", inputs: { roles: ["securityRoles", "roles"], byExclusion: ["securityByExclusion", "byExclusion"] }, ngImport: i0 });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxSecurityDirective, decorators: [{
58
+ type: Directive,
59
+ args: [{
60
+ selector: '[monkeyecxSecurity]',
61
+ }]
62
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MonkeyEcxTokenStorageService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { roles: [{
63
+ type: Input,
64
+ args: ['securityRoles']
65
+ }], byExclusion: [{
66
+ type: Input,
67
+ args: ['securityByExclusion']
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXNlY3VyaXR5LWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9kaXJlY3RpdmVzL21vbmtleWVjeC1zZWN1cml0eS1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWMsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFPeEYsTUFBTSxPQUFPLDBCQUEwQjtJQU9yQyxZQUNVLFVBQXNCLEVBQ3RCLG1CQUFpRCxFQUNqRCxHQUFzQjtRQUZ0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBOEI7UUFDakQsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFUUixVQUFLLEdBQWEsRUFBRSxDQUFDO1FBRWYsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFbkQscUJBQWdCLEdBQXFDLElBQUksQ0FBQztRQU9oRSxZQUFZO0lBQ2QsQ0FBQztJQUVPLE9BQU87UUFDYixNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFbEMsSUFBSSxDQUFDLGdCQUFnQjtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBRWpDLElBQUksZ0JBQWdCLEVBQUUsWUFBWSxLQUFLLE1BQU0sRUFBRTtZQUM3QyxPQUFPLGVBQWUsQ0FBQztTQUN4QjtRQUVELE9BQU8sZ0JBQWdCLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRU8sWUFBWTtRQUNsQixNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNwQyxJQUFJLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDckIsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLFdBQVcsRUFBRTtZQUNmLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDbEIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2QsT0FBTyxHQUFHLE1BQU0sQ0FBQzthQUNsQjtTQUNGO2FBQU07WUFDTCxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQ2pCLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUNkLE9BQU8sR0FBRyxPQUFPLENBQUM7YUFDbkI7U0FDRjtRQUVELElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLGVBQWU7WUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQzFGLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUNyRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXpCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM1RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7dUhBM0RVLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7NEtBRXlCLEtBQUs7c0JBQTVCLEtBQUs7dUJBQUMsZUFBZTtnQkFFUSxXQUFXO3NCQUF4QyxLQUFLO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vbmtleUVjeFRva2VuQ3JlZGVudGlhbHMgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE1vbmtleUVjeFRva2VuU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zdG9yYWdlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21vbmtleWVjeFNlY3VyaXR5XScsXG59KVxuZXhwb3J0IGNsYXNzIE1vbmtleUVjeFNlY3VyaXR5RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCdzZWN1cml0eVJvbGVzJykgcm9sZXM6IHN0cmluZ1tdID0gW107XG5cbiAgQElucHV0KCdzZWN1cml0eUJ5RXhjbHVzaW9uJykgYnlFeGNsdXNpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIHRva2VuQ3JlZGVudGlhbHM6IE1vbmtleUVjeFRva2VuQ3JlZGVudGlhbHMgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSB0b2tlblN0b3JhZ2VTZXJ2aWNlOiBNb25rZXlFY3hUb2tlblN0b3JhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgZ2V0Um9sZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHsgdG9rZW5DcmVkZW50aWFscyB9ID0gdGhpcztcblxuICAgIGlmICghdG9rZW5DcmVkZW50aWFscykgcmV0dXJuICcnO1xuXG4gICAgaWYgKHRva2VuQ3JlZGVudGlhbHM/LnByb2dyYW1BZG1pbiA9PT0gJ3RydWUnKSB7XG4gICAgICByZXR1cm4gJ1BST0dSQU1fQURNSU4nO1xuICAgIH1cblxuICAgIHJldHVybiB0b2tlbkNyZWRlbnRpYWxzPy5yb2xlIHx8ICcnO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVBY2Nlc3MoKSB7XG4gICAgY29uc3QgeyByb2xlcywgYnlFeGNsdXNpb24gfSA9IHRoaXM7XG4gICAgbGV0IGRpc3BsYXkgPSAnbm9uZSc7XG4gICAgY29uc3QgZm91bmQgPSByb2xlcz8uaW5kZXhPZih0aGlzLmdldFJvbGUoKSk7XG4gICAgaWYgKGJ5RXhjbHVzaW9uKSB7XG4gICAgICBkaXNwbGF5ID0gJ2Jsb2NrJztcbiAgICAgIGlmIChmb3VuZCA+IC0xKSB7XG4gICAgICAgIGRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICBpZiAoZm91bmQgPiAtMSkge1xuICAgICAgICBkaXNwbGF5ID0gJ2Jsb2NrJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXJvbGVzIHx8IHJvbGVzLmxlbmd0aCA9PT0gMCB8fCB0aGlzLmdldFJvbGUoKSA9PT0gJ1BST0dSQU1fQURNSU4nKSBkaXNwbGF5ID0gJ2Jsb2NrJztcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gZGlzcGxheTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRoaXMudG9rZW5TdG9yYWdlU2VydmljZS50b2tlbkhhc0NoYW5nZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy50b2tlbkNyZWRlbnRpYWxzID0gdGhpcy50b2tlblN0b3JhZ2VTZXJ2aWNlLmdldFRva2VuKCk7XG4gICAgICB0aGlzLmhhbmRsZUFjY2VzcygpO1xuICAgIH0pO1xuXG4gICAgdGhpcy50b2tlbkNyZWRlbnRpYWxzID0gdGhpcy50b2tlblN0b3JhZ2VTZXJ2aWNlLmdldFRva2VuKCk7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3MoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,123 @@
1
+ import { Directive, Input, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class MonkeyEcxTooltipDirective {
4
+ constructor(el, renderer) {
5
+ this.el = el;
6
+ this.renderer = renderer;
7
+ this.enableToShow = true;
8
+ this.offset = 10;
9
+ this.tooltip = null;
10
+ // not to do
11
+ }
12
+ onMouseEnter() {
13
+ if (!this.tooltip) {
14
+ this.show();
15
+ }
16
+ }
17
+ onMouseLeave() {
18
+ if (this.tooltip) {
19
+ this.hide();
20
+ }
21
+ }
22
+ clickout() {
23
+ if (this.tooltip) {
24
+ this.hide();
25
+ }
26
+ }
27
+ show() {
28
+ if (this.enableToShow) {
29
+ this.create();
30
+ this.setPosition();
31
+ this.renderer.addClass(this.tooltip, 'monkeyecx-tooltip-show');
32
+ setTimeout(() => {
33
+ this.hide();
34
+ }, 5000);
35
+ }
36
+ }
37
+ hide() {
38
+ if (!this.tooltip)
39
+ return;
40
+ this.renderer.removeClass(this.tooltip, 'monkeyecx-tooltip-show');
41
+ this.renderer.removeChild(document.body, this.tooltip);
42
+ this.tooltip = null;
43
+ }
44
+ create() {
45
+ const tooltipElement = document.createElement('div');
46
+ this.tooltip = this.renderer.createElement('span');
47
+ if (this.tooltipTitle) {
48
+ const tooltipTitleElement = document.createElement('span');
49
+ tooltipTitleElement.innerText = `${this.tooltipTitle}`;
50
+ tooltipTitleElement.className = 'monkeyecx-tooltip-title';
51
+ tooltipElement.appendChild(tooltipTitleElement);
52
+ }
53
+ if (this.tooltipText) {
54
+ const tooltipTextElement = document.createElement('span');
55
+ tooltipTextElement.innerText = `${this.tooltipText}`;
56
+ tooltipTextElement.className = 'monkeyecx-tooltip-description';
57
+ tooltipElement.appendChild(tooltipTextElement);
58
+ }
59
+ this.renderer.appendChild(this.tooltip, tooltipElement);
60
+ this.renderer.appendChild(document.body, this.tooltip);
61
+ this.renderer.addClass(this.tooltip, 'monkeyecx-tooltip');
62
+ this.renderer.addClass(this.tooltip, `monkeyecx-tooltip-${this.tooltipPosition}`);
63
+ this.renderer.setStyle(this.tooltip, '-webkit-transition', `opacity ${this.tooltipDelay}ms`);
64
+ this.renderer.setStyle(this.tooltip, '-moz-transition', `opacity ${this.tooltipDelay}ms`);
65
+ this.renderer.setStyle(this.tooltip, '-o-transition', `opacity ${this.tooltipDelay}ms`);
66
+ this.renderer.setStyle(this.tooltip, 'transition', `opacity ${this.tooltipDelay}ms`);
67
+ }
68
+ setPosition() {
69
+ const hostPos = this.el.nativeElement.getBoundingClientRect();
70
+ const tooltipPos = this.tooltip?.getBoundingClientRect();
71
+ if (!tooltipPos)
72
+ return;
73
+ const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
74
+ let top = 0;
75
+ let left = 0;
76
+ if (this.tooltipPosition === 'top') {
77
+ top = hostPos.top - tooltipPos.height - this.offset;
78
+ left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
79
+ }
80
+ if (this.tooltipPosition === 'bottom') {
81
+ top = hostPos.bottom + this.offset;
82
+ left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
83
+ }
84
+ if (this.tooltipPosition === 'left') {
85
+ top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
86
+ left = hostPos.left - tooltipPos.width - this.offset;
87
+ }
88
+ if (this.tooltipPosition === 'right') {
89
+ top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
90
+ left = hostPos.right + this.offset;
91
+ }
92
+ this.renderer.setStyle(this.tooltip, 'top', `${top + scrollPos}px`);
93
+ this.renderer.setStyle(this.tooltip, 'left', `${left}px`);
94
+ }
95
+ }
96
+ MonkeyEcxTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
97
+ MonkeyEcxTooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: MonkeyEcxTooltipDirective, selector: "[monkeyecxTooltip]", inputs: { tooltipDelay: "tooltipDelay", tooltipPosition: "tooltipPosition", tooltipText: "tooltipText", tooltipTitle: "tooltipTitle", enableToShow: "enableToShow" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "click": "clickout()" } }, ngImport: i0 });
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxTooltipDirective, decorators: [{
99
+ type: Directive,
100
+ args: [{
101
+ selector: '[monkeyecxTooltip]',
102
+ }]
103
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipDelay: [{
104
+ type: Input
105
+ }], tooltipPosition: [{
106
+ type: Input
107
+ }], tooltipText: [{
108
+ type: Input
109
+ }], tooltipTitle: [{
110
+ type: Input
111
+ }], enableToShow: [{
112
+ type: Input
113
+ }], onMouseEnter: [{
114
+ type: HostListener,
115
+ args: ['mouseenter']
116
+ }], onMouseLeave: [{
117
+ type: HostListener,
118
+ args: ['mouseleave']
119
+ }], clickout: [{
120
+ type: HostListener,
121
+ args: ['click']
122
+ }] } });
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXRvb2x0aXAtZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL2RpcmVjdGl2ZXMvbW9ua2V5ZWN4LXRvb2x0aXAtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFjLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQzs7QUFLdEYsTUFBTSxPQUFPLHlCQUF5QjtJQWVwQyxZQUFvQixFQUFjLEVBQVUsUUFBbUI7UUFBM0MsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFOdEQsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFFN0IsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUVaLFlBQU8sR0FBdUIsSUFBSSxDQUFDO1FBR2pDLFlBQVk7SUFDZCxDQUFDO0lBR0QsWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUdELFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0lBR0QsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLHdCQUF3QixDQUFD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LEtBQUssT0FBTyxFQUFFO1lBQ3BDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdELElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDcEM7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEdBQUcsR0FBRyxTQUFTLElBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQztJQUM1RCxDQUFDOztzSEE1SFUseUJBQXlCOzBHQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFIckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2lCQUMvQjt5SEFFVSxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBV04sWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVk7Z0JBUTFCLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZO2dCQVExQixRQUFRO3NCQURQLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1ttb25rZXllY3hUb29sdGlwXScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hUb29sdGlwRGlyZWN0aXZlIHtcclxuICBASW5wdXQoKSB0b29sdGlwRGVsYXk/OiBudW1iZXI7XHJcblxyXG4gIEBJbnB1dCgpIHRvb2x0aXBQb3NpdGlvbj86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgdG9vbHRpcFRleHQ/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpIHRvb2x0aXBUaXRsZT86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgZW5hYmxlVG9TaG93ID0gdHJ1ZTtcclxuXHJcbiAgb2Zmc2V0ID0gMTA7XHJcblxyXG4gIHRvb2x0aXA6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgLy8gbm90IHRvIGRvXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcclxuICBvbk1vdXNlRW50ZXIoKSB7XHJcbiAgICBpZiAoIXRoaXMudG9vbHRpcCkge1xyXG4gICAgICB0aGlzLnNob3coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxyXG4gIG9uTW91c2VMZWF2ZSgpIHtcclxuICAgIGlmICh0aGlzLnRvb2x0aXApIHtcclxuICAgICAgdGhpcy5oaWRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXHJcbiAgY2xpY2tvdXQoKSB7XHJcbiAgICBpZiAodGhpcy50b29sdGlwKSB7XHJcbiAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hvdygpIHtcclxuICAgIGlmICh0aGlzLmVuYWJsZVRvU2hvdykge1xyXG4gICAgICB0aGlzLmNyZWF0ZSgpO1xyXG4gICAgICB0aGlzLnNldFBvc2l0aW9uKCk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwLCAnbW9ua2V5ZWN4LXRvb2x0aXAtc2hvdycpO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgfSwgNTAwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoaWRlKCkge1xyXG4gICAgaWYgKCF0aGlzLnRvb2x0aXApIHJldHVybjtcclxuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy50b29sdGlwLCAnbW9ua2V5ZWN4LXRvb2x0aXAtc2hvdycpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZChkb2N1bWVudC5ib2R5LCB0aGlzLnRvb2x0aXApO1xyXG5cclxuICAgIHRoaXMudG9vbHRpcCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBjcmVhdGUoKSB7XHJcbiAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xyXG5cclxuICAgIHRoaXMudG9vbHRpcCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xyXG5cclxuICAgIGlmICh0aGlzLnRvb2x0aXBUaXRsZSkge1xyXG4gICAgICBjb25zdCB0b29sdGlwVGl0bGVFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xyXG5cclxuICAgICAgdG9vbHRpcFRpdGxlRWxlbWVudC5pbm5lclRleHQgPSBgJHt0aGlzLnRvb2x0aXBUaXRsZX1gO1xyXG4gICAgICB0b29sdGlwVGl0bGVFbGVtZW50LmNsYXNzTmFtZSA9ICdtb25rZXllY3gtdG9vbHRpcC10aXRsZSc7XHJcblxyXG4gICAgICB0b29sdGlwRWxlbWVudC5hcHBlbmRDaGlsZCh0b29sdGlwVGl0bGVFbGVtZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b29sdGlwVGV4dCkge1xyXG4gICAgICBjb25zdCB0b29sdGlwVGV4dEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcblxyXG4gICAgICB0b29sdGlwVGV4dEVsZW1lbnQuaW5uZXJUZXh0ID0gYCR7dGhpcy50b29sdGlwVGV4dH1gO1xyXG4gICAgICB0b29sdGlwVGV4dEVsZW1lbnQuY2xhc3NOYW1lID0gJ21vbmtleWVjeC10b29sdGlwLWRlc2NyaXB0aW9uJztcclxuICAgICAgdG9vbHRpcEVsZW1lbnQuYXBwZW5kQ2hpbGQodG9vbHRpcFRleHRFbGVtZW50KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudG9vbHRpcCwgdG9vbHRpcEVsZW1lbnQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChkb2N1bWVudC5ib2R5LCB0aGlzLnRvb2x0aXApO1xyXG5cclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwLCAnbW9ua2V5ZWN4LXRvb2x0aXAnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwLCBgbW9ua2V5ZWN4LXRvb2x0aXAtJHt0aGlzLnRvb2x0aXBQb3NpdGlvbn1gKTtcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcCwgJy13ZWJraXQtdHJhbnNpdGlvbicsIGBvcGFjaXR5ICR7dGhpcy50b29sdGlwRGVsYXl9bXNgKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwLCAnLW1vei10cmFuc2l0aW9uJywgYG9wYWNpdHkgJHt0aGlzLnRvb2x0aXBEZWxheX1tc2ApO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICctby10cmFuc2l0aW9uJywgYG9wYWNpdHkgJHt0aGlzLnRvb2x0aXBEZWxheX1tc2ApO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICd0cmFuc2l0aW9uJywgYG9wYWNpdHkgJHt0aGlzLnRvb2x0aXBEZWxheX1tc2ApO1xyXG4gIH1cclxuXHJcbiAgc2V0UG9zaXRpb24oKSB7XHJcbiAgICBjb25zdCBob3N0UG9zID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgY29uc3QgdG9vbHRpcFBvcyA9IHRoaXMudG9vbHRpcD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBpZiAoIXRvb2x0aXBQb3MpIHJldHVybjtcclxuICAgIGNvbnN0IHNjcm9sbFBvcyA9XHJcbiAgICAgIHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIHx8IDA7XHJcbiAgICBsZXQgdG9wOiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IGxlZnQ6IG51bWJlciA9IDA7XHJcblxyXG4gICAgaWYgKHRoaXMudG9vbHRpcFBvc2l0aW9uID09PSAndG9wJykge1xyXG4gICAgICB0b3AgPSBob3N0UG9zLnRvcCAtIHRvb2x0aXBQb3MuaGVpZ2h0IC0gdGhpcy5vZmZzZXQ7XHJcbiAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgKyAoaG9zdFBvcy53aWR0aCAtIHRvb2x0aXBQb3Mud2lkdGgpIC8gMjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b29sdGlwUG9zaXRpb24gPT09ICdib3R0b20nKSB7XHJcbiAgICAgIHRvcCA9IGhvc3RQb3MuYm90dG9tICsgdGhpcy5vZmZzZXQ7XHJcbiAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgKyAoaG9zdFBvcy53aWR0aCAtIHRvb2x0aXBQb3Mud2lkdGgpIC8gMjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy50b29sdGlwUG9zaXRpb24gPT09ICdsZWZ0Jykge1xyXG4gICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XHJcbiAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgLSB0b29sdGlwUG9zLndpZHRoIC0gdGhpcy5vZmZzZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMudG9vbHRpcFBvc2l0aW9uID09PSAncmlnaHQnKSB7XHJcbiAgICAgIHRvcCA9IGhvc3RQb3MudG9wICsgKGhvc3RQb3MuaGVpZ2h0IC0gdG9vbHRpcFBvcy5oZWlnaHQpIC8gMjtcclxuICAgICAgbGVmdCA9IGhvc3RQb3MucmlnaHQgKyB0aGlzLm9mZnNldDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcCwgJ3RvcCcsIGAke3RvcCArIHNjcm9sbFBvc31weGApO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICdsZWZ0JywgYCR7bGVmdH1weGApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,10 @@
1
+ export * from './decorators';
2
+ export * from './directives';
3
+ export * from './interceptors';
4
+ export * from './interfaces';
5
+ export * from './model';
6
+ export * from './pipes';
7
+ export * from './services';
8
+ export * from './specification-search';
9
+ export * from './utils';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyY2VwdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcGVjaWZpY2F0aW9uLXNlYXJjaCc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './monkeyecx-http-config-error.interceptor';
2
+ export * from './monkeyecx-http-config-header.interceptor';
3
+ export * from './monkeyecx-http-config-interceptor.module';
4
+ export * from './monkeyecx-http-config-loading-in-progress.interceptor';
5
+ export * from './monkeyecx-http-config-queue.interceptor';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYywyQ0FBMkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWh0dHAtY29uZmlnLWVycm9yLmludGVyY2VwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWh0dHAtY29uZmlnLWhlYWRlci5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1odHRwLWNvbmZpZy1pbnRlcmNlcHRvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtaHR0cC1jb25maWctbG9hZGluZy1pbi1wcm9ncmVzcy5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1odHRwLWNvbmZpZy1xdWV1ZS5pbnRlcmNlcHRvcic7XG4iXX0=
@@ -0,0 +1,39 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { throwError } from 'rxjs';
3
+ import { catchError, map, mergeMap, take } from 'rxjs/operators';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../services/auth";
6
+ import * as i2 from "../services/error";
7
+ export class MonkeyEcxHttpConfigErrorInterceptor {
8
+ constructor(monkeyecxAuthenticationService, monkeyecxErrorHandlingService) {
9
+ this.monkeyecxAuthenticationService = monkeyecxAuthenticationService;
10
+ this.monkeyecxErrorHandlingService = monkeyecxErrorHandlingService;
11
+ // no to do
12
+ }
13
+ intercept(request, next) {
14
+ return next.handle(request).pipe(map((event) => {
15
+ return event;
16
+ }), catchError((error) => {
17
+ if (this.monkeyecxAuthenticationService.refreshShouldHappen(error)) {
18
+ return this.monkeyecxAuthenticationService?.refreshToken()?.pipe(take(1), map(() => {
19
+ return this.monkeyecxAuthenticationService.getRequestWithHeaders(request);
20
+ }), mergeMap((resp) => {
21
+ return next.handle(resp).pipe(catchError((error) => {
22
+ this.monkeyecxErrorHandlingService.handleError(error, 'refresh_token');
23
+ return throwError(null);
24
+ }));
25
+ }), catchError((error) => {
26
+ this.monkeyecxErrorHandlingService.handleError(error, 'refresh_token');
27
+ return throwError(null);
28
+ })) || throwError(error);
29
+ }
30
+ return throwError(error);
31
+ }));
32
+ }
33
+ }
34
+ MonkeyEcxHttpConfigErrorInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigErrorInterceptor, deps: [{ token: i1.MonkeyEcxAuthenticationService }, { token: i2.MonkeyEcxErrorHandlingService }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ MonkeyEcxHttpConfigErrorInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigErrorInterceptor });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigErrorInterceptor, decorators: [{
37
+ type: Injectable
38
+ }], ctorParameters: function () { return [{ type: i1.MonkeyEcxAuthenticationService }, { type: i2.MonkeyEcxErrorHandlingService }]; } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWh0dHAtY29uZmlnLWVycm9yLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL2ludGVyY2VwdG9ycy9tb25rZXllY3gtaHR0cC1jb25maWctZXJyb3IuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVVqRSxNQUFNLE9BQU8sbUNBQW1DO0lBQzlDLFlBQ1UsOEJBQThELEVBQzlELDZCQUE0RDtRQUQ1RCxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7UUFFcEUsV0FBVztJQUNiLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsQ0FBQyxLQUFxQixFQUFFLEVBQUU7WUFDNUIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDdEMsSUFBSSxJQUFJLENBQUMsOEJBQThCLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2xFLE9BQU8sSUFBSSxDQUFDLDhCQUE4QixFQUFFLFlBQVksRUFBRSxFQUFFLElBQUksQ0FDOUQsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxHQUFHLEVBQUU7b0JBQ1AsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzVFLENBQUMsQ0FBQyxFQUNGLFFBQVEsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO29CQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMzQixVQUFVLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTt3QkFDeEIsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsZUFBZSxDQUFDLENBQUM7d0JBQ3ZFLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMxQixDQUFDLENBQUMsQ0FDSCxDQUFDO2dCQUNKLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO29CQUN4QixJQUFJLENBQUMsNkJBQTZCLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDdkUsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzFCLENBQUMsQ0FBQyxDQUNILElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3hCO1lBQ0QsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O2dJQXJDVSxtQ0FBbUM7b0lBQW5DLG1DQUFtQzsyRkFBbkMsbUNBQW1DO2tCQUQvQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSHR0cEVycm9yUmVzcG9uc2UsXG4gIEh0dHBFdmVudCxcbiAgSHR0cEhhbmRsZXIsXG4gIEh0dHBJbnRlcmNlcHRvcixcbiAgSHR0cFJlcXVlc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBtZXJnZU1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1vbmtleUVjeEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGgnO1xuaW1wb3J0IHsgTW9ua2V5RWN4RXJyb3JIYW5kbGluZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9lcnJvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVhZGVycyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1vbmtleUVjeEh0dHBDb25maWdFcnJvckludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtb25rZXllY3hBdXRoZW50aWNhdGlvblNlcnZpY2U6IE1vbmtleUVjeEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeEVycm9ySGFuZGxpbmdTZXJ2aWNlOiBNb25rZXlFY3hFcnJvckhhbmRsaW5nU2VydmljZVxuICApIHtcbiAgICAvLyBubyB0byBkb1xuICB9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxuICAgICAgbWFwKChldmVudDogSHR0cEV2ZW50PGFueT4pID0+IHtcbiAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubW9ua2V5ZWN4QXV0aGVudGljYXRpb25TZXJ2aWNlLnJlZnJlc2hTaG91bGRIYXBwZW4oZXJyb3IpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubW9ua2V5ZWN4QXV0aGVudGljYXRpb25TZXJ2aWNlPy5yZWZyZXNoVG9rZW4oKT8ucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tb25rZXllY3hBdXRoZW50aWNhdGlvblNlcnZpY2UuZ2V0UmVxdWVzdFdpdGhIZWFkZXJzKHJlcXVlc3QpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtZXJnZU1hcCgocmVzcDogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXNwKS5waXBlKFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMubW9ua2V5ZWN4RXJyb3JIYW5kbGluZ1NlcnZpY2UuaGFuZGxlRXJyb3IoZXJyb3IsICdyZWZyZXNoX3Rva2VuJyk7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihudWxsKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubW9ua2V5ZWN4RXJyb3JIYW5kbGluZ1NlcnZpY2UuaGFuZGxlRXJyb3IoZXJyb3IsICdyZWZyZXNoX3Rva2VuJyk7XG4gICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKG51bGwpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApIHx8IHRocm93RXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,60 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { from, throwError } from 'rxjs';
3
+ import { catchError, first, map, mergeMap, take } from 'rxjs/operators';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../services/auth";
6
+ import * as i2 from "../services/error";
7
+ import * as i3 from "../services";
8
+ export class MonkeyEcxHttpConfigHeaderInterceptor {
9
+ constructor(authService, errorHandlingService, config) {
10
+ this.authService = authService;
11
+ this.errorHandlingService = errorHandlingService;
12
+ this.config = config;
13
+ // not to do
14
+ }
15
+ async handle(request) {
16
+ const { url } = request;
17
+ if (this.authService.isTokenMandatory(url)) {
18
+ try {
19
+ await this.config
20
+ .config()
21
+ .pipe(first((val) => {
22
+ return !!val && JSON.stringify(val) !== '{}';
23
+ }))
24
+ .toPromise();
25
+ }
26
+ catch (e) {
27
+ // not to do
28
+ }
29
+ }
30
+ const resp = await this.authService
31
+ .getRequestWithHeadersOb(request)
32
+ .pipe(take(1), map((event) => {
33
+ return event;
34
+ }), catchError((error) => {
35
+ this.errorHandlingService.handleError(error);
36
+ return throwError(error);
37
+ }))
38
+ .toPromise();
39
+ return resp;
40
+ }
41
+ intercept(request, next) {
42
+ return from(this.handle(request)).pipe(take(1), map((event) => {
43
+ return event;
44
+ }), mergeMap((resp) => {
45
+ request = request.clone({
46
+ setHeaders: resp
47
+ });
48
+ return next.handle(request);
49
+ }), catchError((error) => {
50
+ this.errorHandlingService.handleError(error);
51
+ return throwError(error);
52
+ }));
53
+ }
54
+ }
55
+ MonkeyEcxHttpConfigHeaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigHeaderInterceptor, deps: [{ token: i1.MonkeyEcxAuthenticationService }, { token: i2.MonkeyEcxErrorHandlingService }, { token: i3.MonkeyEcxConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
56
+ MonkeyEcxHttpConfigHeaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigHeaderInterceptor });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxHttpConfigHeaderInterceptor, decorators: [{
58
+ type: Injectable
59
+ }], ctorParameters: function () { return [{ type: i1.MonkeyEcxAuthenticationService }, { type: i2.MonkeyEcxErrorHandlingService }, { type: i3.MonkeyEcxConfigService }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWh0dHAtY29uZmlnLWhlYWRlci5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9pbnRlcmNlcHRvcnMvbW9ua2V5ZWN4LWh0dHAtY29uZmlnLWhlYWRlci5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUTNDLE9BQU8sRUFBRSxJQUFJLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBTXhFLE1BQU0sT0FBTyxvQ0FBb0M7SUFDL0MsWUFDVSxXQUEyQyxFQUMzQyxvQkFBbUQsRUFDbkQsTUFBOEI7UUFGOUIsZ0JBQVcsR0FBWCxXQUFXLENBQWdDO1FBQzNDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBK0I7UUFDbkQsV0FBTSxHQUFOLE1BQU0sQ0FBd0I7UUFFdEMsWUFBWTtJQUNkLENBQUM7SUFFTyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQXlCO1FBQzVDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzFDLElBQUk7Z0JBQ0YsTUFBTSxJQUFJLENBQUMsTUFBTTtxQkFDZCxNQUFNLEVBQUU7cUJBQ1IsSUFBSSxDQUNILEtBQUssQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO29CQUNqQixPQUFPLENBQUMsQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxDQUNIO3FCQUNBLFNBQVMsRUFBRSxDQUFDO2FBQ2hCO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsWUFBWTthQUNiO1NBQ0Y7UUFFRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXO2FBQ2hDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQzthQUNoQyxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ2pCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0MsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztRQUVmLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUF5QixFQUFFLElBQWlCO1FBQ3BELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3BDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxHQUFHLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNqQixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxFQUNGLFFBQVEsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQ3JCLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN0QixVQUFVLEVBQUUsSUFBSTthQUNqQixDQUFDLENBQUM7WUFDSCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0MsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O2lJQTdEVSxvQ0FBb0M7cUlBQXBDLG9DQUFvQzsyRkFBcEMsb0NBQW9DO2tCQURoRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSHR0cEVycm9yUmVzcG9uc2UsXG4gIEh0dHBFdmVudCxcbiAgSHR0cEhhbmRsZXIsXG4gIEh0dHBJbnRlcmNlcHRvcixcbiAgSHR0cFJlcXVlc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlyc3QsIG1hcCwgbWVyZ2VNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNb25rZXlFY3hFcnJvckhhbmRsaW5nU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Vycm9yJztcbmltcG9ydCB7IE1vbmtleUVjeEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGgnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1vbmtleUVjeEh0dHBDb25maWdIZWFkZXJJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IE1vbmtleUVjeEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGVycm9ySGFuZGxpbmdTZXJ2aWNlOiBNb25rZXlFY3hFcnJvckhhbmRsaW5nU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZzogTW9ua2V5RWN4Q29uZmlnU2VydmljZVxuICApIHtcbiAgICAvLyBub3QgdG8gZG9cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pIHtcbiAgICBjb25zdCB7IHVybCB9ID0gcmVxdWVzdDtcblxuICAgIGlmICh0aGlzLmF1dGhTZXJ2aWNlLmlzVG9rZW5NYW5kYXRvcnkodXJsKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5jb25maWdcbiAgICAgICAgICAuY29uZmlnKClcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCh2YWw6IGFueSkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gISF2YWwgJiYgSlNPTi5zdHJpbmdpZnkodmFsKSAhPT0gJ3t9JztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gbm90IHRvIGRvXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcCA9IGF3YWl0IHRoaXMuYXV0aFNlcnZpY2VcbiAgICAgIC5nZXRSZXF1ZXN0V2l0aEhlYWRlcnNPYihyZXF1ZXN0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2UoMSksXG4gICAgICAgIG1hcCgoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBldmVudDtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMuZXJyb3JIYW5kbGluZ1NlcnZpY2UuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC50b1Byb21pc2UoKTtcblxuICAgIHJldHVybiByZXNwO1xuICB9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIHJldHVybiBmcm9tKHRoaXMuaGFuZGxlKHJlcXVlc3QpKS5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIG1hcCgoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICByZXR1cm4gZXZlbnQ7XG4gICAgICB9KSxcbiAgICAgIG1lcmdlTWFwKChyZXNwOiBhbnkpID0+IHtcbiAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xuICAgICAgICAgIHNldEhlYWRlcnM6IHJlc3BcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JIYW5kbGluZ1NlcnZpY2UuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==