ngx-vector-components 4.96.0 → 4.96.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/CHANGELOG.md +1233 -1227
  2. package/README.md +35 -35
  3. package/assets/icons/chevron_down_icon.svg +3 -3
  4. package/assets/icons/home_menu_icon.svg +3 -3
  5. package/assets/icons/logout_icon.svg +9 -9
  6. package/assets/icons/menu_footer_icon.svg +3 -3
  7. package/assets/icons/menu_hamburguer_icon.svg +3 -3
  8. package/assets/icons/terms_of_use_icon.svg +9 -9
  9. package/assets/icons/vector_admin_icon.svg +4 -4
  10. package/assets/icons/vector_fintech_icon.svg +3 -3
  11. package/assets/icons/vector_logtech_icon.svg +6 -6
  12. package/assets/icons/vector_marketplace_icon.svg +3 -3
  13. package/assets/images/bunge_logo.svg +23 -23
  14. package/assets/images/cofco_logo.svg +117 -117
  15. package/assets/images/emote_bad.svg +6 -6
  16. package/assets/images/emote_cool.svg +5 -5
  17. package/assets/images/emote_nice.svg +5 -5
  18. package/assets/images/success_sign.svg +4 -4
  19. package/assets/images/vector-logo-horizontal-inverse-color.svg +13 -13
  20. package/assets/images/vector_logo_horizontal.svg +13 -13
  21. package/assets/images/warn_sign.svg +4 -4
  22. package/assets/styles/_fonts.scss +114 -114
  23. package/assets/styles/_mixins.scss +7 -7
  24. package/assets/styles/_primeng-custom-theme.scss +982 -982
  25. package/assets/styles/_spinner.scss +35 -35
  26. package/assets/styles/_styles.scss +115 -115
  27. package/assets/styles/_variables.scss +27 -27
  28. package/esm2020/lib/components/badge/badge.component.mjs +39 -39
  29. package/esm2020/lib/components/badge/badge.module.mjs +19 -19
  30. package/esm2020/lib/components/badge/index.mjs +3 -3
  31. package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +66 -66
  32. package/esm2020/lib/components/breadcrumb/breadcrumb.module.mjs +18 -18
  33. package/esm2020/lib/components/breadcrumb/index.mjs +3 -3
  34. package/esm2020/lib/components/crud-base/crud-base.component.mjs +47 -47
  35. package/esm2020/lib/components/crud-base/index.mjs +2 -2
  36. package/esm2020/lib/components/crud-footer/crud-footer.component.mjs +32 -32
  37. package/esm2020/lib/components/crud-footer/crud-footer.module.mjs +20 -20
  38. package/esm2020/lib/components/crud-footer/index.mjs +3 -3
  39. package/esm2020/lib/components/crud-header/crud-header.component.mjs +30 -30
  40. package/esm2020/lib/components/crud-header/crud-header.module.mjs +19 -19
  41. package/esm2020/lib/components/crud-header/index.mjs +3 -3
  42. package/esm2020/lib/components/crud-history/crud-history.component.mjs +82 -82
  43. package/esm2020/lib/components/crud-history/crud-history.module.mjs +20 -20
  44. package/esm2020/lib/components/crud-history/index.mjs +3 -3
  45. package/esm2020/lib/components/fields/button/button.component.mjs +41 -41
  46. package/esm2020/lib/components/fields/button/index.mjs +2 -2
  47. package/esm2020/lib/components/fields/calendar-field/calendar-field.component.mjs +74 -74
  48. package/esm2020/lib/components/fields/calendar-field/index.mjs +2 -2
  49. package/esm2020/lib/components/fields/checkbox-field/checkbox-field.component.mjs +46 -46
  50. package/esm2020/lib/components/fields/checkbox-field/index.mjs +2 -2
  51. package/esm2020/lib/components/fields/currency-field/currency-field.component.mjs +98 -98
  52. package/esm2020/lib/components/fields/currency-field/index.mjs +2 -2
  53. package/esm2020/lib/components/fields/data-table/data-table.component.mjs +386 -386
  54. package/esm2020/lib/components/fields/data-table/index.mjs +2 -2
  55. package/esm2020/lib/components/fields/dropdown-field/dropdown-field.component.mjs +204 -204
  56. package/esm2020/lib/components/fields/dropdown-field/index.mjs +2 -2
  57. package/esm2020/lib/components/fields/field-error-message/field-error-message.component.mjs +30 -30
  58. package/esm2020/lib/components/fields/field-error-message/index.mjs +2 -2
  59. package/esm2020/lib/components/fields/fields.module.mjs +213 -213
  60. package/esm2020/lib/components/fields/filters/filters.component.mjs +203 -203
  61. package/esm2020/lib/components/fields/filters/index.mjs +2 -2
  62. package/esm2020/lib/components/fields/index.mjs +19 -19
  63. package/esm2020/lib/components/fields/input-number-field/index.mjs +2 -2
  64. package/esm2020/lib/components/fields/input-number-field/input-number-field.component.mjs +85 -85
  65. package/esm2020/lib/components/fields/multiselect-field/index.mjs +2 -2
  66. package/esm2020/lib/components/fields/multiselect-field/multiselect-field.component.mjs +50 -50
  67. package/esm2020/lib/components/fields/percentage-field/index.mjs +2 -2
  68. package/esm2020/lib/components/fields/percentage-field/percentage-field.component.mjs +42 -42
  69. package/esm2020/lib/components/fields/radio-button-field/index.mjs +2 -2
  70. package/esm2020/lib/components/fields/radio-button-field/radio-button-field.component.mjs +48 -48
  71. package/esm2020/lib/components/fields/range-value/index.mjs +2 -2
  72. package/esm2020/lib/components/fields/range-value/range-value.component.mjs +72 -72
  73. package/esm2020/lib/components/fields/search-field/index.mjs +2 -2
  74. package/esm2020/lib/components/fields/search-field/search-field.component.mjs +33 -33
  75. package/esm2020/lib/components/fields/select-button-field/index.mjs +2 -2
  76. package/esm2020/lib/components/fields/select-button-field/select-button-field.component.mjs +20 -20
  77. package/esm2020/lib/components/fields/text-field/index.mjs +2 -2
  78. package/esm2020/lib/components/fields/text-field/text-field.component.mjs +232 -232
  79. package/esm2020/lib/components/fields/textarea-field/index.mjs +2 -2
  80. package/esm2020/lib/components/fields/textarea-field/textarea-field.component.mjs +81 -81
  81. package/esm2020/lib/components/generic-error-modal/generic-error-modal.component.mjs +36 -36
  82. package/esm2020/lib/components/generic-error-modal/generic-error-modal.module.mjs +20 -20
  83. package/esm2020/lib/components/generic-error-modal/index.mjs +3 -3
  84. package/esm2020/lib/components/generic-modal/generic-modal.component.mjs +66 -66
  85. package/esm2020/lib/components/generic-modal/generic-modal.module.mjs +20 -20
  86. package/esm2020/lib/components/generic-modal/index.mjs +3 -3
  87. package/esm2020/lib/components/index.mjs +14 -14
  88. package/esm2020/lib/components/menu/index.mjs +4 -4
  89. package/esm2020/lib/components/menu/menu.component.mjs +305 -305
  90. package/esm2020/lib/components/menu/menu.module.mjs +20 -20
  91. package/esm2020/lib/components/menu/sub-menus-list/sub-menus-list.component.mjs +42 -42
  92. package/esm2020/lib/components/panel/index.mjs +3 -3
  93. package/esm2020/lib/components/panel/panel.component.mjs +15 -15
  94. package/esm2020/lib/components/panel/panel.module.mjs +19 -19
  95. package/esm2020/lib/components/score/index.mjs +3 -3
  96. package/esm2020/lib/components/score/score.component.mjs +17 -17
  97. package/esm2020/lib/components/score/score.module.mjs +16 -16
  98. package/esm2020/lib/components/top-bar/index.mjs +3 -3
  99. package/esm2020/lib/components/top-bar/top-bar.component.mjs +142 -142
  100. package/esm2020/lib/components/top-bar/top-bar.module.mjs +20 -20
  101. package/esm2020/lib/guards/crud-list-has-items.guard.mjs +22 -22
  102. package/esm2020/lib/guards/get-token-by-guid.guard.mjs +54 -54
  103. package/esm2020/lib/guards/has-permission.guard.mjs +27 -27
  104. package/esm2020/lib/guards/index.mjs +6 -6
  105. package/esm2020/lib/guards/role.guard.mjs +24 -24
  106. package/esm2020/lib/guards/token-is-present.guard.mjs +26 -26
  107. package/esm2020/lib/interceptors/http-interceptor.mjs +185 -185
  108. package/esm2020/lib/interceptors/index.mjs +2 -2
  109. package/esm2020/lib/models/app-name.enum.mjs +10 -10
  110. package/esm2020/lib/models/boolean-type.enum.mjs +6 -6
  111. package/esm2020/lib/models/crud-history.model.mjs +3 -3
  112. package/esm2020/lib/models/crud-mode.enum.mjs +7 -7
  113. package/esm2020/lib/models/currency.enum.mjs +7 -7
  114. package/esm2020/lib/models/data-table.model.mjs +23 -23
  115. package/esm2020/lib/models/document-type.enum.mjs +6 -6
  116. package/esm2020/lib/models/filters.model.mjs +2 -2
  117. package/esm2020/lib/models/generic-modal.model.mjs +2 -2
  118. package/esm2020/lib/models/http-response.model.mjs +2 -2
  119. package/esm2020/lib/models/index.mjs +18 -18
  120. package/esm2020/lib/models/ip-info.enum.mjs +2 -2
  121. package/esm2020/lib/models/list-item.model.mjs +2 -2
  122. package/esm2020/lib/models/locale.enum.mjs +7 -7
  123. package/esm2020/lib/models/menu-item.model.mjs +2 -2
  124. package/esm2020/lib/models/message-status.enum.mjs +8 -8
  125. package/esm2020/lib/models/profile.model.mjs +271 -271
  126. package/esm2020/lib/models/role.enum.mjs +5 -5
  127. package/esm2020/lib/models/status.enum.mjs +8 -8
  128. package/esm2020/lib/models/topbar.model.mjs +2 -2
  129. package/esm2020/lib/models/vector-app.model.mjs +2 -2
  130. package/esm2020/lib/models/vector-notification.model.mjs +2 -2
  131. package/esm2020/lib/models/view.enum.mjs +7 -7
  132. package/esm2020/lib/pipes/currency-brl.pipe.mjs +18 -18
  133. package/esm2020/lib/pipes/format-document.pipe.mjs +17 -17
  134. package/esm2020/lib/pipes/index.mjs +9 -9
  135. package/esm2020/lib/pipes/mask.pipe.mjs +21 -21
  136. package/esm2020/lib/pipes/not-hidden.pipe.mjs +16 -16
  137. package/esm2020/lib/pipes/only-active.pipe.mjs +16 -16
  138. package/esm2020/lib/pipes/pipes.module.mjs +50 -50
  139. package/esm2020/lib/pipes/remove-last-child.pipe.mjs +18 -18
  140. package/esm2020/lib/pipes/unread-notifications.pipe.mjs +15 -15
  141. package/esm2020/lib/resolvers/get-selected-crud-item.resolver.mjs +28 -28
  142. package/esm2020/lib/resolvers/index.mjs +2 -2
  143. package/esm2020/lib/services/auth.service.mjs +77 -77
  144. package/esm2020/lib/services/base-dropdown.mjs +2 -2
  145. package/esm2020/lib/services/crud-base.service.mjs +14 -14
  146. package/esm2020/lib/services/enum.service.mjs +43 -43
  147. package/esm2020/lib/services/error-message.service.mjs +16 -16
  148. package/esm2020/lib/services/geolocation.service.mjs +23 -23
  149. package/esm2020/lib/services/index.mjs +13 -13
  150. package/esm2020/lib/services/loading.service.mjs +15 -15
  151. package/esm2020/lib/services/menu.service.mjs +152 -152
  152. package/esm2020/lib/services/modal.service.mjs +15 -15
  153. package/esm2020/lib/services/notifications.service.mjs +64 -64
  154. package/esm2020/lib/services/profile.service.mjs +103 -103
  155. package/esm2020/lib/services/storage.service.mjs +108 -108
  156. package/esm2020/lib/shared/shared.module.mjs +19 -19
  157. package/esm2020/lib/utils/cpf-cnpj-validator.util.mjs +116 -116
  158. package/esm2020/lib/utils/file.util.mjs +15 -15
  159. package/esm2020/lib/utils/index.mjs +8 -8
  160. package/esm2020/lib/utils/mask.util.mjs +76 -76
  161. package/esm2020/lib/utils/object.util.mjs +27 -27
  162. package/esm2020/lib/utils/string.util.mjs +16 -16
  163. package/esm2020/lib/utils/validation.util.mjs +234 -234
  164. package/esm2020/lib/utils/window.util.mjs +9 -9
  165. package/esm2020/ngx-vector-components.mjs +4 -4
  166. package/esm2020/public-api.mjs +9 -9
  167. package/fesm2015/ngx-vector-components.mjs +4562 -4562
  168. package/fesm2015/ngx-vector-components.mjs.map +1 -1
  169. package/fesm2020/ngx-vector-components.mjs +4540 -4540
  170. package/fesm2020/ngx-vector-components.mjs.map +1 -1
  171. package/lib/components/badge/badge.component.d.ts +15 -15
  172. package/lib/components/badge/badge.module.d.ts +9 -9
  173. package/lib/components/badge/index.d.ts +2 -2
  174. package/lib/components/breadcrumb/breadcrumb.component.d.ts +19 -19
  175. package/lib/components/breadcrumb/breadcrumb.module.d.ts +8 -8
  176. package/lib/components/breadcrumb/index.d.ts +2 -2
  177. package/lib/components/crud-base/crud-base.component.d.ts +20 -20
  178. package/lib/components/crud-base/index.d.ts +1 -1
  179. package/lib/components/crud-footer/crud-footer.component.d.ts +13 -13
  180. package/lib/components/crud-footer/crud-footer.module.d.ts +10 -10
  181. package/lib/components/crud-footer/index.d.ts +2 -2
  182. package/lib/components/crud-header/crud-header.component.d.ts +11 -11
  183. package/lib/components/crud-header/crud-header.module.d.ts +9 -9
  184. package/lib/components/crud-header/index.d.ts +2 -2
  185. package/lib/components/crud-history/crud-history.component.d.ts +12 -12
  186. package/lib/components/crud-history/crud-history.module.d.ts +10 -10
  187. package/lib/components/crud-history/index.d.ts +2 -2
  188. package/lib/components/fields/button/button.component.d.ts +17 -17
  189. package/lib/components/fields/button/index.d.ts +1 -1
  190. package/lib/components/fields/calendar-field/calendar-field.component.d.ts +23 -23
  191. package/lib/components/fields/calendar-field/index.d.ts +1 -1
  192. package/lib/components/fields/checkbox-field/checkbox-field.component.d.ts +19 -19
  193. package/lib/components/fields/checkbox-field/index.d.ts +1 -1
  194. package/lib/components/fields/currency-field/currency-field.component.d.ts +32 -32
  195. package/lib/components/fields/currency-field/index.d.ts +1 -1
  196. package/lib/components/fields/data-table/data-table.component.d.ts +82 -82
  197. package/lib/components/fields/data-table/index.d.ts +1 -1
  198. package/lib/components/fields/dropdown-field/dropdown-field.component.d.ts +52 -52
  199. package/lib/components/fields/dropdown-field/index.d.ts +1 -1
  200. package/lib/components/fields/field-error-message/field-error-message.component.d.ts +10 -10
  201. package/lib/components/fields/field-error-message/index.d.ts +1 -1
  202. package/lib/components/fields/fields.module.d.ts +48 -48
  203. package/lib/components/fields/filters/filters.component.d.ts +63 -63
  204. package/lib/components/fields/filters/index.d.ts +1 -1
  205. package/lib/components/fields/index.d.ts +18 -18
  206. package/lib/components/fields/input-number-field/index.d.ts +1 -1
  207. package/lib/components/fields/input-number-field/input-number-field.component.d.ts +28 -28
  208. package/lib/components/fields/multiselect-field/index.d.ts +1 -1
  209. package/lib/components/fields/multiselect-field/multiselect-field.component.d.ts +16 -16
  210. package/lib/components/fields/percentage-field/index.d.ts +1 -1
  211. package/lib/components/fields/percentage-field/percentage-field.component.d.ts +16 -16
  212. package/lib/components/fields/radio-button-field/index.d.ts +1 -1
  213. package/lib/components/fields/radio-button-field/radio-button-field.component.d.ts +25 -25
  214. package/lib/components/fields/range-value/index.d.ts +1 -1
  215. package/lib/components/fields/range-value/range-value.component.d.ts +18 -18
  216. package/lib/components/fields/search-field/index.d.ts +1 -1
  217. package/lib/components/fields/search-field/search-field.component.d.ts +14 -14
  218. package/lib/components/fields/select-button-field/index.d.ts +1 -1
  219. package/lib/components/fields/select-button-field/select-button-field.component.d.ts +9 -9
  220. package/lib/components/fields/text-field/index.d.ts +1 -1
  221. package/lib/components/fields/text-field/text-field.component.d.ts +55 -55
  222. package/lib/components/fields/textarea-field/index.d.ts +1 -1
  223. package/lib/components/fields/textarea-field/textarea-field.component.d.ts +22 -22
  224. package/lib/components/generic-error-modal/generic-error-modal.component.d.ts +15 -15
  225. package/lib/components/generic-error-modal/generic-error-modal.module.d.ts +10 -10
  226. package/lib/components/generic-error-modal/index.d.ts +2 -2
  227. package/lib/components/generic-modal/generic-modal.component.d.ts +24 -24
  228. package/lib/components/generic-modal/generic-modal.module.d.ts +10 -10
  229. package/lib/components/generic-modal/index.d.ts +2 -2
  230. package/lib/components/index.d.ts +13 -13
  231. package/lib/components/menu/index.d.ts +3 -3
  232. package/lib/components/menu/menu.component.d.ts +53 -53
  233. package/lib/components/menu/menu.module.d.ts +10 -10
  234. package/lib/components/menu/sub-menus-list/sub-menus-list.component.d.ts +14 -14
  235. package/lib/components/panel/index.d.ts +2 -2
  236. package/lib/components/panel/panel.component.d.ts +8 -8
  237. package/lib/components/panel/panel.module.d.ts +9 -9
  238. package/lib/components/score/index.d.ts +2 -2
  239. package/lib/components/score/score.component.d.ts +9 -9
  240. package/lib/components/score/score.module.d.ts +7 -7
  241. package/lib/components/top-bar/index.d.ts +2 -2
  242. package/lib/components/top-bar/top-bar.component.d.ts +48 -48
  243. package/lib/components/top-bar/top-bar.module.d.ts +10 -10
  244. package/lib/guards/crud-list-has-items.guard.d.ts +10 -10
  245. package/lib/guards/get-token-by-guid.guard.d.ts +15 -15
  246. package/lib/guards/has-permission.guard.d.ts +13 -13
  247. package/lib/guards/index.d.ts +5 -5
  248. package/lib/guards/role.guard.d.ts +11 -11
  249. package/lib/guards/token-is-present.guard.d.ts +11 -11
  250. package/lib/interceptors/http-interceptor.d.ts +31 -31
  251. package/lib/interceptors/index.d.ts +1 -1
  252. package/lib/models/app-name.enum.d.ts +8 -8
  253. package/lib/models/boolean-type.enum.d.ts +4 -4
  254. package/lib/models/crud-history.model.d.ts +13 -13
  255. package/lib/models/crud-mode.enum.d.ts +5 -5
  256. package/lib/models/currency.enum.d.ts +5 -5
  257. package/lib/models/data-table.model.d.ts +65 -65
  258. package/lib/models/document-type.enum.d.ts +4 -4
  259. package/lib/models/filters.model.d.ts +4 -4
  260. package/lib/models/generic-modal.model.d.ts +12 -13
  261. package/lib/models/http-response.model.d.ts +48 -48
  262. package/lib/models/index.d.ts +17 -17
  263. package/lib/models/ip-info.enum.d.ts +6 -6
  264. package/lib/models/list-item.model.d.ts +7 -7
  265. package/lib/models/locale.enum.d.ts +5 -5
  266. package/lib/models/menu-item.model.d.ts +16 -16
  267. package/lib/models/message-status.enum.d.ts +6 -6
  268. package/lib/models/profile.model.d.ts +292 -292
  269. package/lib/models/role.enum.d.ts +3 -3
  270. package/lib/models/status.enum.d.ts +6 -6
  271. package/lib/models/topbar.model.d.ts +5 -5
  272. package/lib/models/vector-app.model.d.ts +9 -9
  273. package/lib/models/vector-notification.model.d.ts +8 -8
  274. package/lib/models/view.enum.d.ts +5 -5
  275. package/lib/pipes/currency-brl.pipe.d.ts +7 -7
  276. package/lib/pipes/format-document.pipe.d.ts +7 -7
  277. package/lib/pipes/index.d.ts +8 -8
  278. package/lib/pipes/mask.pipe.d.ts +7 -7
  279. package/lib/pipes/not-hidden.pipe.d.ts +7 -7
  280. package/lib/pipes/only-active.pipe.d.ts +7 -7
  281. package/lib/pipes/pipes.module.d.ts +13 -13
  282. package/lib/pipes/remove-last-child.pipe.d.ts +7 -7
  283. package/lib/pipes/unread-notifications.pipe.d.ts +9 -9
  284. package/lib/resolvers/get-selected-crud-item.resolver.d.ts +10 -10
  285. package/lib/resolvers/index.d.ts +1 -1
  286. package/lib/services/auth.service.d.ts +24 -24
  287. package/lib/services/base-dropdown.d.ts +7 -7
  288. package/lib/services/crud-base.service.d.ts +7 -7
  289. package/lib/services/enum.service.d.ts +13 -13
  290. package/lib/services/error-message.service.d.ts +8 -8
  291. package/lib/services/geolocation.service.d.ts +13 -13
  292. package/lib/services/index.d.ts +12 -12
  293. package/lib/services/loading.service.d.ts +7 -7
  294. package/lib/services/menu.service.d.ts +35 -35
  295. package/lib/services/modal.service.d.ts +7 -7
  296. package/lib/services/notifications.service.d.ts +13 -13
  297. package/lib/services/profile.service.d.ts +26 -26
  298. package/lib/services/storage.service.d.ts +43 -43
  299. package/lib/shared/shared.module.d.ts +10 -10
  300. package/lib/utils/cpf-cnpj-validator.util.d.ts +5 -5
  301. package/lib/utils/file.util.d.ts +4 -4
  302. package/lib/utils/index.d.ts +7 -7
  303. package/lib/utils/mask.util.d.ts +21 -21
  304. package/lib/utils/object.util.d.ts +5 -5
  305. package/lib/utils/string.util.d.ts +4 -4
  306. package/lib/utils/validation.util.d.ts +17 -17
  307. package/lib/utils/window.util.d.ts +4 -4
  308. package/ngx-vector-components.d.ts +5 -5
  309. package/package.json +1 -1
  310. package/public-api.d.ts +8 -8
@@ -1,185 +1,185 @@
1
- import { HttpResponse, } from '@angular/common/http';
2
- import { Inject, Injectable } from '@angular/core';
3
- import { BehaviorSubject, throwError } from 'rxjs';
4
- import { catchError, filter, switchMap, take, tap } from 'rxjs/operators';
5
- import { MessageStatus } from '../models';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../services";
8
- import * as i2 from "primeng/api";
9
- export class HttpInterceptorProvider {
10
- constructor(storageService, errorMessageService, loadingService, authService, messageService, environment) {
11
- this.storageService = storageService;
12
- this.errorMessageService = errorMessageService;
13
- this.loadingService = loadingService;
14
- this.authService = authService;
15
- this.messageService = messageService;
16
- this.environment = environment;
17
- this.activeRequests = [];
18
- this.isRefreshing = false;
19
- this.refreshTokenSubject = new BehaviorSubject(null);
20
- }
21
- intercept(request, next) {
22
- const isExternalUrl = request.headers.get('external-url');
23
- if (!this.isRefreshTokenRequest(request.url)) {
24
- if (!isExternalUrl) {
25
- request = this.addTokenIfPresent(request);
26
- request = this.addEncryptPasswordIfPresent(request);
27
- request = this.addAccountUuidIfPresent(request);
28
- request = this.addModifierIdIfPresent(request);
29
- request = this.addContentType(request);
30
- }
31
- }
32
- if (!isExternalUrl) {
33
- request = this.fixUrl(request);
34
- }
35
- const noSpinnerHeader = request.headers.get('no-spinner');
36
- if (!noSpinnerHeader && !request.url.startsWith('/assets/')) {
37
- this.loadingService.loading$.next(true);
38
- this.activeRequests.push(this.getUrlWithoutParams(request.url));
39
- }
40
- return next.handle(request).pipe(catchError((response) => {
41
- if (response.error?.messages?.length) {
42
- this.errorMessageService.genericModalErrorMessage$.next(response.error.messages[response.error.messages.length - 1]);
43
- }
44
- if (!this.isRefreshTokenRequest(request.url)) {
45
- if (response.status === 401) {
46
- return this.handle401Error(request, next);
47
- }
48
- if (response.status === 403) {
49
- this.errorMessageService.genericModalErrorMessage$.next('Usuário sem privilégios para realizar essa ação');
50
- }
51
- else {
52
- if (!isExternalUrl) {
53
- if (typeof response.error == 'string') {
54
- this.messageService.add({ severity: MessageStatus.ERROR, summary: 'Erro', detail: response.error });
55
- }
56
- }
57
- }
58
- }
59
- if (this.activeRequests.includes(this.getUrlWithoutParams(response.url))) {
60
- this.activeRequests.splice(this.activeRequests.findIndex((item) => item === this.getUrlWithoutParams(request.url)), 1);
61
- if (!this.activeRequests.length) {
62
- this.loadingService.loading$.next(false);
63
- }
64
- }
65
- return throwError(response);
66
- }), tap((response) => {
67
- if (response instanceof HttpResponse) {
68
- if (this.activeRequests.includes(this.getUrlWithoutParams(response.url))) {
69
- this.activeRequests.splice(this.activeRequests.findIndex((item) => item === this.getUrlWithoutParams(request.url)), 1);
70
- if (!this.activeRequests.length) {
71
- this.loadingService.loading$.next(false);
72
- }
73
- }
74
- if (Object(response.body).hasOwnProperty('statusCode') &&
75
- response.body.statusCode === 400 &&
76
- response.body.messages?.length) {
77
- this.errorMessageService.genericModalErrorMessage$.next(response.body.messages[response.body.messages.length - 1]);
78
- }
79
- }
80
- }));
81
- }
82
- isRefreshTokenRequest(url) {
83
- return url.includes('connect/token');
84
- }
85
- getUrlWithoutParams(fullUrl) {
86
- if (!fullUrl) {
87
- return '';
88
- }
89
- const decodedUrl = decodeURIComponent(fullUrl.trim());
90
- if (!decodedUrl.includes('?')) {
91
- return decodedUrl;
92
- }
93
- return decodedUrl.substring(0, decodedUrl.indexOf('?'));
94
- }
95
- addTokenIfPresent(request) {
96
- const token = this.storageService.getToken();
97
- if (token) {
98
- request = request.clone({ setHeaders: { Authorization: token } });
99
- }
100
- return request;
101
- }
102
- addModifierIdIfPresent(request) {
103
- const modifierId = this.storageService.getUserId();
104
- if (modifierId && request.method !== 'GET' && !(request.body instanceof FormData)) {
105
- request = request.clone({ body: { ...request.body, modifierId } });
106
- }
107
- return request;
108
- }
109
- addEncryptPasswordIfPresent(request) {
110
- const encriptPassword = this.storageService.get('encryptPassword');
111
- if (request.method !== 'GET' && encriptPassword) {
112
- if (request.body instanceof FormData) {
113
- request.body.append('encriptPassword', encriptPassword);
114
- }
115
- else {
116
- request = request.clone({ body: { ...request.body, encriptPassword } });
117
- }
118
- }
119
- return request;
120
- }
121
- addAccountUuidIfPresent(request) {
122
- const accountUuid = this.storageService.get('accountUuid');
123
- if (request.method !== 'GET' && accountUuid) {
124
- if (request.body instanceof FormData) {
125
- request.body.append('accountUuid', accountUuid);
126
- }
127
- else {
128
- request = request.clone({ body: { ...request.body, accountUuid } });
129
- }
130
- }
131
- return request;
132
- }
133
- addContentType(request) {
134
- return request.clone({ setHeaders: { contentType: 'application/json' } });
135
- }
136
- fixUrl(request) {
137
- if (this.isAuthRequest(request.url) || this.isProfilesRequest(request.url)) {
138
- return request.clone({
139
- url: `${this.environment.API_URL.replace('/api', '')}/${request.url}`,
140
- });
141
- }
142
- return request.clone({
143
- url: request.url.startsWith('/assets/') ? request.url : `${this.environment.API_URL}/${request.url}`,
144
- });
145
- }
146
- isAuthRequest(url) {
147
- return url.includes('connect/token');
148
- }
149
- isProfilesRequest(url) {
150
- return url.includes('connect/userinfo');
151
- }
152
- handle401Error(request, next) {
153
- if (!this.isRefreshing) {
154
- this.isRefreshing = true;
155
- this.refreshTokenSubject.next(null);
156
- const refreshToken = this.storageService.getRefreshToken();
157
- if (refreshToken) {
158
- return this.authService.getTokenByRefreshToken(refreshToken).pipe(switchMap((token) => {
159
- this.isRefreshing = false;
160
- this.refreshTokenSubject.next(this.storageService.getToken());
161
- return next.handle(this.addTokenIfPresent(request));
162
- }), catchError((err) => {
163
- this.isRefreshing = false;
164
- this.authService.logout();
165
- return throwError(err);
166
- }));
167
- }
168
- else {
169
- this.isRefreshing = false;
170
- this.authService.logout();
171
- return throwError(new Error());
172
- }
173
- }
174
- return this.refreshTokenSubject.pipe(filter((token) => token !== null), take(1), switchMap((token) => next.handle(this.addTokenIfPresent(request))));
175
- }
176
- }
177
- HttpInterceptorProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider, deps: [{ token: i1.StorageService }, { token: i1.ErrorMessageService }, { token: i1.LoadingService }, { token: i1.AuthService }, { token: i2.MessageService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
178
- HttpInterceptorProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider });
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider, decorators: [{
180
- type: Injectable
181
- }], ctorParameters: function () { return [{ type: i1.StorageService }, { type: i1.ErrorMessageService }, { type: i1.LoadingService }, { type: i1.AuthService }, { type: i2.MessageService }, { type: undefined, decorators: [{
182
- type: Inject,
183
- args: ['environment']
184
- }] }]; } });
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL2ludGVyY2VwdG9ycy9odHRwLWludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFNTCxZQUFZLEdBQ2IsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7QUFJMUMsTUFBTSxPQUFPLHVCQUF1QjtJQUlsQyxZQUNVLGNBQThCLEVBQzlCLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixXQUF3QixFQUN4QixjQUE4QixFQUNQLFdBQWdCO1FBTHZDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDUCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQVR6QyxtQkFBYyxHQUFhLEVBQUUsQ0FBQztRQUM5QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQix3QkFBbUIsR0FBeUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7SUFRaEYsQ0FBQztJQUVKLFNBQVMsQ0FBQyxPQUF5QixFQUFFLElBQWlCO1FBQ3BELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxP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LENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ25FLENBQUM7SUFDSixDQUFDOztvSEEvTVUsdUJBQXVCLDBLQVV4QixhQUFhO3dIQVZaLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOzswQkFXTixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEV2ZW50LFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEludGVyY2VwdG9yLFxuICBIdHRwUmVxdWVzdCxcbiAgSHR0cFJlc3BvbnNlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWVzc2FnZVN0YXR1cyB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSwgRXJyb3JNZXNzYWdlU2VydmljZSwgTG9hZGluZ1NlcnZpY2UsIFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSHR0cEludGVyY2VwdG9yUHJvdmlkZXIgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICBwcml2YXRlIGFjdGl2ZVJlcXVlc3RzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIGlzUmVmcmVzaGluZyA9IGZhbHNlO1xuICBwcml2YXRlIHJlZnJlc2hUb2tlblN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGVycm9yTWVzc2FnZVNlcnZpY2U6IEVycm9yTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2FkaW5nU2VydmljZTogTG9hZGluZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnlcbiAgKSB7fVxuXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICBjb25zdCBpc0V4dGVybmFsVXJsID0gcmVxdWVzdC5oZWFkZXJzLmdldCgnZXh0ZXJuYWwtdXJsJyk7XG5cbiAgICBpZiAoIXRoaXMuaXNSZWZyZXNoVG9rZW5SZXF1ZXN0KHJlcXVlc3QudXJsKSkge1xuICAgICAgaWYgKCFpc0V4dGVybmFsVXJsKSB7XG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmFkZFRva2VuSWZQcmVzZW50KHJlcXVlc3QpO1xuICAgICAgICByZXF1ZXN0ID0gdGhpcy5hZGRFbmNyeXB0UGFzc3dvcmRJZlByZXNlbnQocmVxdWVzdCk7XG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmFkZEFjY291bnRVdWlkSWZQcmVzZW50KHJlcXVlc3QpO1xuICAgICAgICByZXF1ZXN0ID0gdGhpcy5hZGRNb2RpZmllcklkSWZQcmVzZW50KHJlcXVlc3QpO1xuICAgICAgICByZXF1ZXN0ID0gdGhpcy5hZGRDb250ZW50VHlwZShyZXF1ZXN0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIWlzRXh0ZXJuYWxVcmwpIHtcbiAgICAgIHJlcXVlc3QgPSB0aGlzLmZpeFVybChyZXF1ZXN0KTtcbiAgICB9XG5cbiAgICBjb25zdCBub1NwaW5uZXJIZWFkZXIgPSByZXF1ZXN0LmhlYWRlcnMuZ2V0KCduby1zcGlubmVyJyk7XG4gICAgaWYgKCFub1NwaW5uZXJIZWFkZXIgJiYgIXJlcXVlc3QudXJsLnN0YXJ0c1dpdGgoJy9hc3NldHMvJykpIHtcbiAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UubG9hZGluZyQubmV4dCh0cnVlKTtcbiAgICAgIHRoaXMuYWN0aXZlUmVxdWVzdHMucHVzaCh0aGlzLmdldFVybFdpdGhvdXRQYXJhbXMocmVxdWVzdC51cmwpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3I/Lm1lc3NhZ2VzPy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZVNlcnZpY2UuZ2VuZXJpY01vZGFsRXJyb3JNZXNzYWdlJC5uZXh0KFxuICAgICAgICAgICAgcmVzcG9uc2UuZXJyb3IubWVzc2FnZXNbcmVzcG9uc2UuZXJyb3IubWVzc2FnZXMubGVuZ3RoIC0gMV1cbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5pc1JlZnJlc2hUb2tlblJlcXVlc3QocmVxdWVzdC51cmwpKSB7XG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGU0MDFFcnJvcihyZXF1ZXN0LCBuZXh0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAzKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZVNlcnZpY2UuZ2VuZXJpY01vZGFsRXJyb3JNZXNzYWdlJC5uZXh0KCdVc3XDoXJpbyBzZW0gcHJpdmlsw6lnaW9zIHBhcmEgcmVhbGl6YXIgZXNzYSBhw6fDo28nKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFpc0V4dGVybmFsVXJsKSB7XG4gICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVzcG9uc2UuZXJyb3IgPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiBNZXNzYWdlU3RhdHVzLkVSUk9SLCBzdW1tYXJ5OiAnRXJybycsIGRldGFpbDogcmVzcG9uc2UuZXJyb3IgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlUmVxdWVzdHMuaW5jbHVkZXModGhpcy5nZXRVcmxXaXRob3V0UGFyYW1zKHJlc3BvbnNlLnVybCkpKSB7XG4gICAgICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0cy5zcGxpY2UoXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVJlcXVlc3RzLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbSA9PT0gdGhpcy5nZXRVcmxXaXRob3V0UGFyYW1zKHJlcXVlc3QudXJsKSksXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoIXRoaXMuYWN0aXZlUmVxdWVzdHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmdTZXJ2aWNlLmxvYWRpbmckLm5leHQoZmFsc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKHJlc3BvbnNlKTtcbiAgICAgIH0pLFxuICAgICAgdGFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcbiAgICAgICAgICBpZiAodGhpcy5hY3RpdmVSZXF1ZXN0cy5pbmNsdWRlcyh0aGlzLmdldFVybFdpdGhvdXRQYXJhbXMocmVzcG9uc2UudXJsKSkpIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUmVxdWVzdHMuc3BsaWNlKFxuICAgICAgICAgICAgICB0aGlzLmFjdGl2ZVJlcXVlc3RzLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbSA9PT0gdGhpcy5nZXRVcmxXaXRob3V0UGFyYW1zKHJlcXVlc3QudXJsKSksXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuYWN0aXZlUmVxdWVzdHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UubG9hZGluZyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgT2JqZWN0KHJlc3BvbnNlLmJvZHkpLmhhc093blByb3BlcnR5KCdzdGF0dXNDb2RlJykgJiZcbiAgICAgICAgICAgIHJlc3BvbnNlLmJvZHkuc3RhdHVzQ29kZSA9PT0gNDAwICYmXG4gICAgICAgICAgICByZXNwb25zZS5ib2R5Lm1lc3NhZ2VzPy5sZW5ndGhcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLm5leHQoXG4gICAgICAgICAgICAgIHJlc3BvbnNlLmJvZHkubWVzc2FnZXNbcmVzcG9uc2UuYm9keS5tZXNzYWdlcy5sZW5ndGggLSAxXVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNSZWZyZXNoVG9rZW5SZXF1ZXN0KHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHVybC5pbmNsdWRlcygnY29ubmVjdC90b2tlbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRVcmxXaXRob3V0UGFyYW1zKGZ1bGxVcmw6IHN0cmluZyB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICghZnVsbFVybCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IGRlY29kZWRVcmwgPSBkZWNvZGVVUklDb21wb25lbnQoZnVsbFVybC50cmltKCkpO1xuXG4gICAgaWYgKCFkZWNvZGVkVXJsLmluY2x1ZGVzKCc/JykpIHtcbiAgICAgIHJldHVybiBkZWNvZGVkVXJsO1xuICAgIH1cblxuICAgIHJldHVybiBkZWNvZGVkVXJsLnN1YnN0cmluZygwLCBkZWNvZGVkVXJsLmluZGV4T2YoJz8nKSk7XG4gIH1cblxuICBwcml2YXRlIGFkZFRva2VuSWZQcmVzZW50KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VG9rZW4oKTtcbiAgICBpZiAodG9rZW4pIHtcbiAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHsgc2V0SGVhZGVyczogeyBBdXRob3JpemF0aW9uOiB0b2tlbiB9IH0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxuXG4gIHByaXZhdGUgYWRkTW9kaWZpZXJJZElmUHJlc2VudChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogSHR0cFJlcXVlc3Q8YW55PiB7XG4gICAgY29uc3QgbW9kaWZpZXJJZCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VXNlcklkKCk7XG4gICAgaWYgKG1vZGlmaWVySWQgJiYgcmVxdWVzdC5tZXRob2QgIT09ICdHRVQnICYmICEocmVxdWVzdC5ib2R5IGluc3RhbmNlb2YgRm9ybURhdGEpKSB7XG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7IGJvZHk6IHsgLi4ucmVxdWVzdC5ib2R5LCBtb2RpZmllcklkIH0gfSk7XG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0O1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRFbmNyeXB0UGFzc3dvcmRJZlByZXNlbnQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IEh0dHBSZXF1ZXN0PGFueT4ge1xuICAgIGNvbnN0IGVuY3JpcHRQYXNzd29yZCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCdlbmNyeXB0UGFzc3dvcmQnKTtcbiAgICBpZiAocmVxdWVzdC5tZXRob2QgIT09ICdHRVQnICYmIGVuY3JpcHRQYXNzd29yZCkge1xuICAgICAgaWYgKHJlcXVlc3QuYm9keSBpbnN0YW5jZW9mIEZvcm1EYXRhKSB7XG4gICAgICAgIHJlcXVlc3QuYm9keS5hcHBlbmQoJ2VuY3JpcHRQYXNzd29yZCcsIGVuY3JpcHRQYXNzd29yZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7IGJvZHk6IHsgLi4ucmVxdWVzdC5ib2R5LCBlbmNyaXB0UGFzc3dvcmQgfSB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBwcml2YXRlIGFkZEFjY291bnRVdWlkSWZQcmVzZW50KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcbiAgICBjb25zdCBhY2NvdW50VXVpZCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCdhY2NvdW50VXVpZCcpO1xuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCAhPT0gJ0dFVCcgJiYgYWNjb3VudFV1aWQpIHtcbiAgICAgIGlmIChyZXF1ZXN0LmJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YSkge1xuICAgICAgICByZXF1ZXN0LmJvZHkuYXBwZW5kKCdhY2NvdW50VXVpZCcsIGFjY291bnRVdWlkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHsgYm9keTogeyAuLi5yZXF1ZXN0LmJvZHksIGFjY291bnRVdWlkIH0gfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0O1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRDb250ZW50VHlwZShyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogSHR0cFJlcXVlc3Q8YW55PiB7XG4gICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoeyBzZXRIZWFkZXJzOiB7IGNvbnRlbnRUeXBlOiAnYXBwbGljYXRpb24vanNvbicgfSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZml4VXJsKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcbiAgICBpZiAodGhpcy5pc0F1dGhSZXF1ZXN0KHJlcXVlc3QudXJsKSB8fCB0aGlzLmlzUHJvZmlsZXNSZXF1ZXN0KHJlcXVlc3QudXJsKSkge1xuICAgICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xuICAgICAgICB1cmw6IGAke3RoaXMuZW52aXJvbm1lbnQuQVBJX1VSTC5yZXBsYWNlKCcvYXBpJywgJycpfS8ke3JlcXVlc3QudXJsfWAsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xuICAgICAgdXJsOiByZXF1ZXN0LnVybC5zdGFydHNXaXRoKCcvYXNzZXRzLycpID8gcmVxdWVzdC51cmwgOiBgJHt0aGlzLmVudmlyb25tZW50LkFQSV9VUkx9LyR7cmVxdWVzdC51cmx9YCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNBdXRoUmVxdWVzdCh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB1cmwuaW5jbHVkZXMoJ2Nvbm5lY3QvdG9rZW4nKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNQcm9maWxlc1JlcXVlc3QodXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdXJsLmluY2x1ZGVzKCdjb25uZWN0L3VzZXJpbmZvJyk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZTQwMUVycm9yKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKSB7XG4gICAgaWYgKCF0aGlzLmlzUmVmcmVzaGluZykge1xuICAgICAgdGhpcy5pc1JlZnJlc2hpbmcgPSB0cnVlO1xuICAgICAgdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0Lm5leHQobnVsbCk7XG5cbiAgICAgIGNvbnN0IHJlZnJlc2hUb2tlbiA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0UmVmcmVzaFRva2VuKCk7XG4gICAgICBpZiAocmVmcmVzaFRva2VuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmF1dGhTZXJ2aWNlLmdldFRva2VuQnlSZWZyZXNoVG9rZW4ocmVmcmVzaFRva2VuKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgodG9rZW46IGFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc1JlZnJlc2hpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5uZXh0KHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VG9rZW4oKSk7XG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUodGhpcy5hZGRUb2tlbklmUHJlc2VudChyZXF1ZXN0KSk7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzUmVmcmVzaGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dvdXQoKTtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycik7XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNSZWZyZXNoaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0KCk7XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKG5ldyBFcnJvcigpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0LnBpcGUoXG4gICAgICBmaWx0ZXIoKHRva2VuKSA9PiB0b2tlbiAhPT0gbnVsbCksXG4gICAgICB0YWtlKDEpLFxuICAgICAgc3dpdGNoTWFwKCh0b2tlbikgPT4gbmV4dC5oYW5kbGUodGhpcy5hZGRUb2tlbklmUHJlc2VudChyZXF1ZXN0KSkpXG4gICAgKTtcbiAgfVxufVxuIl19
1
+ import { HttpResponse, } from '@angular/common/http';
2
+ import { Inject, Injectable } from '@angular/core';
3
+ import { BehaviorSubject, throwError } from 'rxjs';
4
+ import { catchError, filter, switchMap, take, tap } from 'rxjs/operators';
5
+ import { MessageStatus } from '../models';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../services";
8
+ import * as i2 from "primeng/api";
9
+ export class HttpInterceptorProvider {
10
+ constructor(storageService, errorMessageService, loadingService, authService, messageService, environment) {
11
+ this.storageService = storageService;
12
+ this.errorMessageService = errorMessageService;
13
+ this.loadingService = loadingService;
14
+ this.authService = authService;
15
+ this.messageService = messageService;
16
+ this.environment = environment;
17
+ this.activeRequests = [];
18
+ this.isRefreshing = false;
19
+ this.refreshTokenSubject = new BehaviorSubject(null);
20
+ }
21
+ intercept(request, next) {
22
+ const isExternalUrl = request.headers.get('external-url');
23
+ if (!this.isRefreshTokenRequest(request.url)) {
24
+ if (!isExternalUrl) {
25
+ request = this.addTokenIfPresent(request);
26
+ request = this.addEncryptPasswordIfPresent(request);
27
+ request = this.addAccountUuidIfPresent(request);
28
+ request = this.addModifierIdIfPresent(request);
29
+ request = this.addContentType(request);
30
+ }
31
+ }
32
+ if (!isExternalUrl) {
33
+ request = this.fixUrl(request);
34
+ }
35
+ const noSpinnerHeader = request.headers.get('no-spinner');
36
+ if (!noSpinnerHeader && !request.url.startsWith('/assets/')) {
37
+ this.loadingService.loading$.next(true);
38
+ this.activeRequests.push(this.getUrlWithoutParams(request.url));
39
+ }
40
+ return next.handle(request).pipe(catchError((response) => {
41
+ if (response.error?.messages?.length) {
42
+ this.errorMessageService.genericModalErrorMessage$.next(response.error.messages[response.error.messages.length - 1]);
43
+ }
44
+ if (!this.isRefreshTokenRequest(request.url)) {
45
+ if (response.status === 401) {
46
+ return this.handle401Error(request, next);
47
+ }
48
+ if (response.status === 403) {
49
+ this.errorMessageService.genericModalErrorMessage$.next('Usuário sem privilégios para realizar essa ação');
50
+ }
51
+ else {
52
+ if (!isExternalUrl) {
53
+ if (typeof response.error == 'string') {
54
+ this.messageService.add({ severity: MessageStatus.ERROR, summary: 'Erro', detail: response.error });
55
+ }
56
+ }
57
+ }
58
+ }
59
+ if (this.activeRequests.includes(this.getUrlWithoutParams(response.url))) {
60
+ this.activeRequests.splice(this.activeRequests.findIndex((item) => item === this.getUrlWithoutParams(request.url)), 1);
61
+ if (!this.activeRequests.length) {
62
+ this.loadingService.loading$.next(false);
63
+ }
64
+ }
65
+ return throwError(response);
66
+ }), tap((response) => {
67
+ if (response instanceof HttpResponse) {
68
+ if (this.activeRequests.includes(this.getUrlWithoutParams(response.url))) {
69
+ this.activeRequests.splice(this.activeRequests.findIndex((item) => item === this.getUrlWithoutParams(request.url)), 1);
70
+ if (!this.activeRequests.length) {
71
+ this.loadingService.loading$.next(false);
72
+ }
73
+ }
74
+ if (Object(response.body).hasOwnProperty('statusCode') &&
75
+ response.body.statusCode === 400 &&
76
+ response.body.messages?.length) {
77
+ this.errorMessageService.genericModalErrorMessage$.next(response.body.messages[response.body.messages.length - 1]);
78
+ }
79
+ }
80
+ }));
81
+ }
82
+ isRefreshTokenRequest(url) {
83
+ return url.includes('connect/token');
84
+ }
85
+ getUrlWithoutParams(fullUrl) {
86
+ if (!fullUrl) {
87
+ return '';
88
+ }
89
+ const decodedUrl = decodeURIComponent(fullUrl.trim());
90
+ if (!decodedUrl.includes('?')) {
91
+ return decodedUrl;
92
+ }
93
+ return decodedUrl.substring(0, decodedUrl.indexOf('?'));
94
+ }
95
+ addTokenIfPresent(request) {
96
+ const token = this.storageService.getToken();
97
+ if (token) {
98
+ request = request.clone({ setHeaders: { Authorization: token } });
99
+ }
100
+ return request;
101
+ }
102
+ addModifierIdIfPresent(request) {
103
+ const modifierId = this.storageService.getUserId();
104
+ if (modifierId && request.method !== 'GET' && !(request.body instanceof FormData)) {
105
+ request = request.clone({ body: { ...request.body, modifierId } });
106
+ }
107
+ return request;
108
+ }
109
+ addEncryptPasswordIfPresent(request) {
110
+ const encriptPassword = this.storageService.get('encryptPassword');
111
+ if (request.method !== 'GET' && encriptPassword) {
112
+ if (request.body instanceof FormData) {
113
+ request.body.append('encriptPassword', encriptPassword);
114
+ }
115
+ else {
116
+ request = request.clone({ body: { ...request.body, encriptPassword } });
117
+ }
118
+ }
119
+ return request;
120
+ }
121
+ addAccountUuidIfPresent(request) {
122
+ const accountUuid = this.storageService.get('accountUuid');
123
+ if (request.method !== 'GET' && accountUuid) {
124
+ if (request.body instanceof FormData) {
125
+ request.body.append('accountUuid', accountUuid);
126
+ }
127
+ else {
128
+ request = request.clone({ body: { ...request.body, accountUuid } });
129
+ }
130
+ }
131
+ return request;
132
+ }
133
+ addContentType(request) {
134
+ return request.clone({ setHeaders: { contentType: 'application/json' } });
135
+ }
136
+ fixUrl(request) {
137
+ if (this.isAuthRequest(request.url) || this.isProfilesRequest(request.url)) {
138
+ return request.clone({
139
+ url: `${this.environment.API_URL.replace('/api', '')}/${request.url}`,
140
+ });
141
+ }
142
+ return request.clone({
143
+ url: request.url.startsWith('/assets/') ? request.url : `${this.environment.API_URL}/${request.url}`,
144
+ });
145
+ }
146
+ isAuthRequest(url) {
147
+ return url.includes('connect/token');
148
+ }
149
+ isProfilesRequest(url) {
150
+ return url.includes('connect/userinfo');
151
+ }
152
+ handle401Error(request, next) {
153
+ if (!this.isRefreshing) {
154
+ this.isRefreshing = true;
155
+ this.refreshTokenSubject.next(null);
156
+ const refreshToken = this.storageService.getRefreshToken();
157
+ if (refreshToken) {
158
+ return this.authService.getTokenByRefreshToken(refreshToken).pipe(switchMap((token) => {
159
+ this.isRefreshing = false;
160
+ this.refreshTokenSubject.next(this.storageService.getToken());
161
+ return next.handle(this.addTokenIfPresent(request));
162
+ }), catchError((err) => {
163
+ this.isRefreshing = false;
164
+ this.authService.logout();
165
+ return throwError(err);
166
+ }));
167
+ }
168
+ else {
169
+ this.isRefreshing = false;
170
+ this.authService.logout();
171
+ return throwError(new Error());
172
+ }
173
+ }
174
+ return this.refreshTokenSubject.pipe(filter((token) => token !== null), take(1), switchMap((token) => next.handle(this.addTokenIfPresent(request))));
175
+ }
176
+ }
177
+ HttpInterceptorProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider, deps: [{ token: i1.StorageService }, { token: i1.ErrorMessageService }, { token: i1.LoadingService }, { token: i1.AuthService }, { token: i2.MessageService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
178
+ HttpInterceptorProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider });
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: HttpInterceptorProvider, decorators: [{
180
+ type: Injectable
181
+ }], ctorParameters: function () { return [{ type: i1.StorageService }, { type: i1.ErrorMessageService }, { type: i1.LoadingService }, { type: i1.AuthService }, { type: i2.MessageService }, { type: undefined, decorators: [{
182
+ type: Inject,
183
+ args: ['environment']
184
+ }] }]; } });
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL2ludGVyY2VwdG9ycy9odHRwLWludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFNTCxZQUFZLEdBQ2IsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7QUFJMUMsTUFBTSxPQUFPLHVCQUF1QjtJQUlsQyxZQUNVLGNBQThCLEVBQzlCLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixXQUF3QixFQUN4QixjQUE4QixFQUNQLFdBQWdCO1FBTHZDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDUCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQVR6QyxtQkFBYyxHQUFhLEVBQUUsQ0FBQztRQUM5QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQix3QkFBbUIsR0FBeUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7SUFRaEYsQ0FBQztJQUVKLFNBQVMsQ0FBQyxPQUF5QixFQUFFLElBQWlCO1FBQ3BELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxP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LENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ25FLENBQUM7SUFDSixDQUFDOztvSEEvTVUsdUJBQXVCLDBLQVV4QixhQUFhO3dIQVZaLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOzswQkFXTixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEh0dHBFcnJvclJlc3BvbnNlLFxyXG4gIEh0dHBFdmVudCxcclxuICBIdHRwSGFuZGxlcixcclxuICBIdHRwSW50ZXJjZXB0b3IsXHJcbiAgSHR0cFJlcXVlc3QsXHJcbiAgSHR0cFJlc3BvbnNlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlsdGVyLCBzd2l0Y2hNYXAsIHRha2UsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTWVzc2FnZVN0YXR1cyB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBFcnJvck1lc3NhZ2VTZXJ2aWNlLCBMb2FkaW5nU2VydmljZSwgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBIdHRwSW50ZXJjZXB0b3JQcm92aWRlciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgcHJpdmF0ZSBhY3RpdmVSZXF1ZXN0czogc3RyaW5nW10gPSBbXTtcclxuICBwcml2YXRlIGlzUmVmcmVzaGluZyA9IGZhbHNlO1xyXG4gIHByaXZhdGUgcmVmcmVzaFRva2VuU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgZXJyb3JNZXNzYWdlU2VydmljZTogRXJyb3JNZXNzYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgbG9hZGluZ1NlcnZpY2U6IExvYWRpbmdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XHJcbiAgKSB7fVxyXG5cclxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcbiAgICBjb25zdCBpc0V4dGVybmFsVXJsID0gcmVxdWVzdC5oZWFkZXJzLmdldCgnZXh0ZXJuYWwtdXJsJyk7XHJcblxyXG4gICAgaWYgKCF0aGlzLmlzUmVmcmVzaFRva2VuUmVxdWVzdChyZXF1ZXN0LnVybCkpIHtcclxuICAgICAgaWYgKCFpc0V4dGVybmFsVXJsKSB7XHJcbiAgICAgICAgcmVxdWVzdCA9IHRoaXMuYWRkVG9rZW5JZlByZXNlbnQocmVxdWVzdCk7XHJcbiAgICAgICAgcmVxdWVzdCA9IHRoaXMuYWRkRW5jcnlwdFBhc3N3b3JkSWZQcmVzZW50KHJlcXVlc3QpO1xyXG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmFkZEFjY291bnRVdWlkSWZQcmVzZW50KHJlcXVlc3QpO1xyXG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmFkZE1vZGlmaWVySWRJZlByZXNlbnQocmVxdWVzdCk7XHJcbiAgICAgICAgcmVxdWVzdCA9IHRoaXMuYWRkQ29udGVudFR5cGUocmVxdWVzdCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWlzRXh0ZXJuYWxVcmwpIHtcclxuICAgICAgcmVxdWVzdCA9IHRoaXMuZml4VXJsKHJlcXVlc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5vU3Bpbm5lckhlYWRlciA9IHJlcXVlc3QuaGVhZGVycy5nZXQoJ25vLXNwaW5uZXInKTtcclxuICAgIGlmICghbm9TcGlubmVySGVhZGVyICYmICFyZXF1ZXN0LnVybC5zdGFydHNXaXRoKCcvYXNzZXRzLycpKSB7XHJcbiAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UubG9hZGluZyQubmV4dCh0cnVlKTtcclxuICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0cy5wdXNoKHRoaXMuZ2V0VXJsV2l0aG91dFBhcmFtcyhyZXF1ZXN0LnVybCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3I/Lm1lc3NhZ2VzPy5sZW5ndGgpIHtcclxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLm5leHQoXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmVycm9yLm1lc3NhZ2VzW3Jlc3BvbnNlLmVycm9yLm1lc3NhZ2VzLmxlbmd0aCAtIDFdXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXRoaXMuaXNSZWZyZXNoVG9rZW5SZXF1ZXN0KHJlcXVlc3QudXJsKSkge1xyXG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmhhbmRsZTQwMUVycm9yKHJlcXVlc3QsIG5leHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLm5leHQoJ1VzdcOhcmlvIHNlbSBwcml2aWzDqWdpb3MgcGFyYSByZWFsaXphciBlc3NhIGHDp8OjbycpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKCFpc0V4dGVybmFsVXJsKSB7XHJcbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZS5lcnJvciA9PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoeyBzZXZlcml0eTogTWVzc2FnZVN0YXR1cy5FUlJPUiwgc3VtbWFyeTogJ0Vycm8nLCBkZXRhaWw6IHJlc3BvbnNlLmVycm9yIH0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5hY3RpdmVSZXF1ZXN0cy5pbmNsdWRlcyh0aGlzLmdldFVybFdpdGhvdXRQYXJhbXMocmVzcG9uc2UudXJsKSkpIHtcclxuICAgICAgICAgIHRoaXMuYWN0aXZlUmVxdWVzdHMuc3BsaWNlKFxyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVJlcXVlc3RzLmZpbmRJbmRleCgoaXRlbSkgPT4gaXRlbSA9PT0gdGhpcy5nZXRVcmxXaXRob3V0UGFyYW1zKHJlcXVlc3QudXJsKSksXHJcbiAgICAgICAgICAgIDFcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBpZiAoIXRoaXMuYWN0aXZlUmVxdWVzdHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UubG9hZGluZyQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihyZXNwb25zZSk7XHJcbiAgICAgIH0pLFxyXG4gICAgICB0YXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlIGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5hY3RpdmVSZXF1ZXN0cy5pbmNsdWRlcyh0aGlzLmdldFVybFdpdGhvdXRQYXJhbXMocmVzcG9uc2UudXJsKSkpIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0cy5zcGxpY2UoXHJcbiAgICAgICAgICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0cy5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0gPT09IHRoaXMuZ2V0VXJsV2l0aG91dFBhcmFtcyhyZXF1ZXN0LnVybCkpLFxyXG4gICAgICAgICAgICAgIDFcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmFjdGl2ZVJlcXVlc3RzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UubG9hZGluZyQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIE9iamVjdChyZXNwb25zZS5ib2R5KS5oYXNPd25Qcm9wZXJ0eSgnc3RhdHVzQ29kZScpICYmXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmJvZHkuc3RhdHVzQ29kZSA9PT0gNDAwICYmXHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmJvZHkubWVzc2FnZXM/Lmxlbmd0aFxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLm5leHQoXHJcbiAgICAgICAgICAgICAgcmVzcG9uc2UuYm9keS5tZXNzYWdlc1tyZXNwb25zZS5ib2R5Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNSZWZyZXNoVG9rZW5SZXF1ZXN0KHVybDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdXJsLmluY2x1ZGVzKCdjb25uZWN0L3Rva2VuJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFVybFdpdGhvdXRQYXJhbXMoZnVsbFVybDogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyB7XHJcbiAgICBpZiAoIWZ1bGxVcmwpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRlY29kZWRVcmwgPSBkZWNvZGVVUklDb21wb25lbnQoZnVsbFVybC50cmltKCkpO1xyXG5cclxuICAgIGlmICghZGVjb2RlZFVybC5pbmNsdWRlcygnPycpKSB7XHJcbiAgICAgIHJldHVybiBkZWNvZGVkVXJsO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkZWNvZGVkVXJsLnN1YnN0cmluZygwLCBkZWNvZGVkVXJsLmluZGV4T2YoJz8nKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZFRva2VuSWZQcmVzZW50KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcclxuICAgIGNvbnN0IHRva2VuID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRUb2tlbigpO1xyXG4gICAgaWYgKHRva2VuKSB7XHJcbiAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHsgc2V0SGVhZGVyczogeyBBdXRob3JpemF0aW9uOiB0b2tlbiB9IH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZE1vZGlmaWVySWRJZlByZXNlbnQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IEh0dHBSZXF1ZXN0PGFueT4ge1xyXG4gICAgY29uc3QgbW9kaWZpZXJJZCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VXNlcklkKCk7XHJcbiAgICBpZiAobW9kaWZpZXJJZCAmJiByZXF1ZXN0Lm1ldGhvZCAhPT0gJ0dFVCcgJiYgIShyZXF1ZXN0LmJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YSkpIHtcclxuICAgICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoeyBib2R5OiB7IC4uLnJlcXVlc3QuYm9keSwgbW9kaWZpZXJJZCB9IH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZEVuY3J5cHRQYXNzd29yZElmUHJlc2VudChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogSHR0cFJlcXVlc3Q8YW55PiB7XHJcbiAgICBjb25zdCBlbmNyaXB0UGFzc3dvcmQgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnZW5jcnlwdFBhc3N3b3JkJyk7XHJcbiAgICBpZiAocmVxdWVzdC5tZXRob2QgIT09ICdHRVQnICYmIGVuY3JpcHRQYXNzd29yZCkge1xyXG4gICAgICBpZiAocmVxdWVzdC5ib2R5IGluc3RhbmNlb2YgRm9ybURhdGEpIHtcclxuICAgICAgICByZXF1ZXN0LmJvZHkuYXBwZW5kKCdlbmNyaXB0UGFzc3dvcmQnLCBlbmNyaXB0UGFzc3dvcmQpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHsgYm9keTogeyAuLi5yZXF1ZXN0LmJvZHksIGVuY3JpcHRQYXNzd29yZCB9IH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVxdWVzdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQWNjb3VudFV1aWRJZlByZXNlbnQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IEh0dHBSZXF1ZXN0PGFueT4ge1xyXG4gICAgY29uc3QgYWNjb3VudFV1aWQgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnYWNjb3VudFV1aWQnKTtcclxuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCAhPT0gJ0dFVCcgJiYgYWNjb3VudFV1aWQpIHtcclxuICAgICAgaWYgKHJlcXVlc3QuYm9keSBpbnN0YW5jZW9mIEZvcm1EYXRhKSB7XHJcbiAgICAgICAgcmVxdWVzdC5ib2R5LmFwcGVuZCgnYWNjb3VudFV1aWQnLCBhY2NvdW50VXVpZCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoeyBib2R5OiB7IC4uLnJlcXVlc3QuYm9keSwgYWNjb3VudFV1aWQgfSB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZENvbnRlbnRUeXBlKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcclxuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHsgc2V0SGVhZGVyczogeyBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nIH0gfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpeFVybChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogSHR0cFJlcXVlc3Q8YW55PiB7XHJcbiAgICBpZiAodGhpcy5pc0F1dGhSZXF1ZXN0KHJlcXVlc3QudXJsKSB8fCB0aGlzLmlzUHJvZmlsZXNSZXF1ZXN0KHJlcXVlc3QudXJsKSkge1xyXG4gICAgICByZXR1cm4gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVudmlyb25tZW50LkFQSV9VUkwucmVwbGFjZSgnL2FwaScsICcnKX0vJHtyZXF1ZXN0LnVybH1gLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcclxuICAgICAgdXJsOiByZXF1ZXN0LnVybC5zdGFydHNXaXRoKCcvYXNzZXRzLycpID8gcmVxdWVzdC51cmwgOiBgJHt0aGlzLmVudmlyb25tZW50LkFQSV9VUkx9LyR7cmVxdWVzdC51cmx9YCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0F1dGhSZXF1ZXN0KHVybDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdXJsLmluY2x1ZGVzKCdjb25uZWN0L3Rva2VuJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzUHJvZmlsZXNSZXF1ZXN0KHVybDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdXJsLmluY2x1ZGVzKCdjb25uZWN0L3VzZXJpbmZvJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZTQwMUVycm9yKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNSZWZyZXNoaW5nKSB7XHJcbiAgICAgIHRoaXMuaXNSZWZyZXNoaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0Lm5leHQobnVsbCk7XHJcblxyXG4gICAgICBjb25zdCByZWZyZXNoVG9rZW4gPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFJlZnJlc2hUb2tlbigpO1xyXG4gICAgICBpZiAocmVmcmVzaFRva2VuKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYXV0aFNlcnZpY2UuZ2V0VG9rZW5CeVJlZnJlc2hUb2tlbihyZWZyZXNoVG9rZW4pLnBpcGUoXHJcbiAgICAgICAgICBzd2l0Y2hNYXAoKHRva2VuOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc1JlZnJlc2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0Lm5leHQodGhpcy5zdG9yYWdlU2VydmljZS5nZXRUb2tlbigpKTtcclxuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHRoaXMuYWRkVG9rZW5JZlByZXNlbnQocmVxdWVzdCkpO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc1JlZnJlc2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dvdXQoKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmlzUmVmcmVzaGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0KCk7XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IobmV3IEVycm9yKCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5waXBlKFxyXG4gICAgICBmaWx0ZXIoKHRva2VuKSA9PiB0b2tlbiAhPT0gbnVsbCksXHJcbiAgICAgIHRha2UoMSksXHJcbiAgICAgIHN3aXRjaE1hcCgodG9rZW4pID0+IG5leHQuaGFuZGxlKHRoaXMuYWRkVG9rZW5JZlByZXNlbnQocmVxdWVzdCkpKVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
- export * from './http-interceptor';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9pbnRlcmNlcHRvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaHR0cC1pbnRlcmNlcHRvcic7XG4iXX0=
1
+ export * from './http-interceptor';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9pbnRlcmNlcHRvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaHR0cC1pbnRlcmNlcHRvcic7XHJcbiJdfQ==
@@ -1,10 +1,10 @@
1
- export var AppName;
2
- (function (AppName) {
3
- AppName["PORTAL"] = "PORTAL";
4
- AppName["FINTECH"] = "FINTECH";
5
- AppName["MARKETPLACE"] = "MARKETPLACE";
6
- AppName["LOGTECH"] = "LOGTECH";
7
- AppName["SURVEY"] = "SURVEY";
8
- AppName["PRODUCER_PORTAL"] = "PRODUCER_PORTAL";
9
- })(AppName || (AppName = {}));
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLW5hbWUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9hcHAtbmFtZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLE9BT1g7QUFQRCxXQUFZLE9BQU87SUFDakIsNEJBQWlCLENBQUE7SUFDakIsOEJBQW1CLENBQUE7SUFDbkIsc0NBQTJCLENBQUE7SUFDM0IsOEJBQW1CLENBQUE7SUFDbkIsNEJBQWlCLENBQUE7SUFDakIsOENBQW1DLENBQUE7QUFDckMsQ0FBQyxFQVBXLE9BQU8sS0FBUCxPQUFPLFFBT2xCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQXBwTmFtZSB7XG4gIFBPUlRBTCA9ICdQT1JUQUwnLFxuICBGSU5URUNIID0gJ0ZJTlRFQ0gnLFxuICBNQVJLRVRQTEFDRSA9ICdNQVJLRVRQTEFDRScsXG4gIExPR1RFQ0ggPSAnTE9HVEVDSCcsXG4gIFNVUlZFWSA9ICdTVVJWRVknLFxuICBQUk9EVUNFUl9QT1JUQUwgPSAnUFJPRFVDRVJfUE9SVEFMJyxcbn1cbiJdfQ==
1
+ export var AppName;
2
+ (function (AppName) {
3
+ AppName["PORTAL"] = "PORTAL";
4
+ AppName["FINTECH"] = "FINTECH";
5
+ AppName["MARKETPLACE"] = "MARKETPLACE";
6
+ AppName["LOGTECH"] = "LOGTECH";
7
+ AppName["SURVEY"] = "SURVEY";
8
+ AppName["PRODUCER_PORTAL"] = "PRODUCER_PORTAL";
9
+ })(AppName || (AppName = {}));
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLW5hbWUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9hcHAtbmFtZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLE9BT1g7QUFQRCxXQUFZLE9BQU87SUFDakIsNEJBQWlCLENBQUE7SUFDakIsOEJBQW1CLENBQUE7SUFDbkIsc0NBQTJCLENBQUE7SUFDM0IsOEJBQW1CLENBQUE7SUFDbkIsNEJBQWlCLENBQUE7SUFDakIsOENBQW1DLENBQUE7QUFDckMsQ0FBQyxFQVBXLE9BQU8sS0FBUCxPQUFPLFFBT2xCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQXBwTmFtZSB7XHJcbiAgUE9SVEFMID0gJ1BPUlRBTCcsXHJcbiAgRklOVEVDSCA9ICdGSU5URUNIJyxcclxuICBNQVJLRVRQTEFDRSA9ICdNQVJLRVRQTEFDRScsXHJcbiAgTE9HVEVDSCA9ICdMT0dURUNIJyxcclxuICBTVVJWRVkgPSAnU1VSVkVZJyxcclxuICBQUk9EVUNFUl9QT1JUQUwgPSAnUFJPRFVDRVJfUE9SVEFMJyxcclxufVxyXG4iXX0=
@@ -1,6 +1,6 @@
1
- export var BooleanType;
2
- (function (BooleanType) {
3
- BooleanType["YES"] = "YES";
4
- BooleanType["NO"] = "NO";
5
- })(BooleanType || (BooleanType = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RlbHMvYm9vbGVhbi10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQiwwQkFBVyxDQUFBO0lBQ1gsd0JBQVMsQ0FBQTtBQUNYLENBQUMsRUFIVyxXQUFXLEtBQVgsV0FBVyxRQUd0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEJvb2xlYW5UeXBlIHtcbiAgWUVTID0gJ1lFUycsXG4gIE5PID0gJ05PJyxcbn1cbiJdfQ==
1
+ export var BooleanType;
2
+ (function (BooleanType) {
3
+ BooleanType["YES"] = "YES";
4
+ BooleanType["NO"] = "NO";
5
+ })(BooleanType || (BooleanType = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RlbHMvYm9vbGVhbi10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQiwwQkFBVyxDQUFBO0lBQ1gsd0JBQVMsQ0FBQTtBQUNYLENBQUMsRUFIVyxXQUFXLEtBQVgsV0FBVyxRQUd0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEJvb2xlYW5UeXBlIHtcclxuICBZRVMgPSAnWUVTJyxcclxuICBOTyA9ICdOTycsXHJcbn1cclxuIl19
@@ -1,3 +1,3 @@
1
- export class CrudHistory {
2
- }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1oaXN0b3J5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvbW9kZWxzL2NydWQtaGlzdG9yeS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sV0FBVztDQU92QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDcnVkSGlzdG9yeTxUPiB7XG4gIGV2ZW50VHlwZT86IHN0cmluZztcbiAgbW9kaWZpZXJOYW1lPzogc3RyaW5nO1xuICBkYXRlVGltZT86IERhdGU7XG4gIGF1ZGl0SWQ/OiBudW1iZXI7XG4gIHR5cGVPZk1vZGlmaWNhdGlvbj86IHN0cmluZztcbiAgZGF0YUF1ZGl0RGVsdGE/OiBEYXRhQXVkaXREZWx0YVtdO1xufVxuXG5leHBvcnQgdHlwZSBEYXRhQXVkaXREZWx0YSA9IHtcbiAgZmllbGROYW1lPzogc3RyaW5nO1xuICBuZXdWYWx1ZT86IHN0cmluZztcbiAgb2xkVmFsdWU/OiBzdHJpbmc7XG59O1xuIl19
1
+ export class CrudHistory {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1oaXN0b3J5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvbW9kZWxzL2NydWQtaGlzdG9yeS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sV0FBVztDQU92QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDcnVkSGlzdG9yeTxUPiB7XHJcbiAgZXZlbnRUeXBlPzogc3RyaW5nO1xyXG4gIG1vZGlmaWVyTmFtZT86IHN0cmluZztcclxuICBkYXRlVGltZT86IERhdGU7XHJcbiAgYXVkaXRJZD86IG51bWJlcjtcclxuICB0eXBlT2ZNb2RpZmljYXRpb24/OiBzdHJpbmc7XHJcbiAgZGF0YUF1ZGl0RGVsdGE/OiBEYXRhQXVkaXREZWx0YVtdO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBEYXRhQXVkaXREZWx0YSA9IHtcclxuICBmaWVsZE5hbWU/OiBzdHJpbmc7XHJcbiAgbmV3VmFsdWU/OiBzdHJpbmc7XHJcbiAgb2xkVmFsdWU/OiBzdHJpbmc7XHJcbn07XHJcbiJdfQ==
@@ -1,7 +1,7 @@
1
- export var CrudMode;
2
- (function (CrudMode) {
3
- CrudMode[CrudMode["NEW"] = 0] = "NEW";
4
- CrudMode[CrudMode["EDIT"] = 1] = "EDIT";
5
- CrudMode[CrudMode["VIEW"] = 2] = "VIEW";
6
- })(CrudMode || (CrudMode = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1tb2RlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RlbHMvY3J1ZC1tb2RlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksUUFJWDtBQUpELFdBQVksUUFBUTtJQUNsQixxQ0FBRyxDQUFBO0lBQ0gsdUNBQUksQ0FBQTtJQUNKLHVDQUFJLENBQUE7QUFDTixDQUFDLEVBSlcsUUFBUSxLQUFSLFFBQVEsUUFJbkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDcnVkTW9kZSB7XG4gIE5FVyxcbiAgRURJVCxcbiAgVklFVyxcbn1cbiJdfQ==
1
+ export var CrudMode;
2
+ (function (CrudMode) {
3
+ CrudMode[CrudMode["NEW"] = 0] = "NEW";
4
+ CrudMode[CrudMode["EDIT"] = 1] = "EDIT";
5
+ CrudMode[CrudMode["VIEW"] = 2] = "VIEW";
6
+ })(CrudMode || (CrudMode = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1tb2RlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RlbHMvY3J1ZC1tb2RlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksUUFJWDtBQUpELFdBQVksUUFBUTtJQUNsQixxQ0FBRyxDQUFBO0lBQ0gsdUNBQUksQ0FBQTtJQUNKLHVDQUFJLENBQUE7QUFDTixDQUFDLEVBSlcsUUFBUSxLQUFSLFFBQVEsUUFJbkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDcnVkTW9kZSB7XHJcbiAgTkVXLFxyXG4gIEVESVQsXHJcbiAgVklFVyxcclxufVxyXG4iXX0=
@@ -1,7 +1,7 @@
1
- export var Currency;
2
- (function (Currency) {
3
- Currency["BR"] = "R$ ";
4
- Currency["AR"] = "$ ";
5
- Currency["US"] = "$ ";
6
- })(Currency || (Currency = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9jdXJyZW5jeS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBSVg7QUFKRCxXQUFZLFFBQVE7SUFDbEIsc0JBQVUsQ0FBQTtJQUNWLHFCQUFTLENBQUE7SUFDVCxxQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFFBQVEsS0FBUixRQUFRLFFBSW5CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ3VycmVuY3kge1xuICBCUiA9ICdSJCAnLFxuICBBUiA9ICckICcsXG4gIFVTID0gJyQgJyxcbn1cbiJdfQ==
1
+ export var Currency;
2
+ (function (Currency) {
3
+ Currency["BR"] = "R$ ";
4
+ Currency["AR"] = "$ ";
5
+ Currency["US"] = "$ ";
6
+ })(Currency || (Currency = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9jdXJyZW5jeS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBSVg7QUFKRCxXQUFZLFFBQVE7SUFDbEIsc0JBQVUsQ0FBQTtJQUNWLHFCQUFTLENBQUE7SUFDVCxxQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFFBQVEsS0FBUixRQUFRLFFBSW5CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ3VycmVuY3kge1xyXG4gIEJSID0gJ1IkICcsXHJcbiAgQVIgPSAnJCAnLFxyXG4gIFVTID0gJyQgJyxcclxufVxyXG4iXX0=
@@ -1,23 +1,23 @@
1
- export var TableColumnType;
2
- (function (TableColumnType) {
3
- TableColumnType["TEXT"] = "TEXT";
4
- TableColumnType["BOOLEAN"] = "BOOLEAN";
5
- TableColumnType["DATE"] = "DATE";
6
- TableColumnType["DATETIME"] = "DATETIME";
7
- TableColumnType["ENUM"] = "ENUM";
8
- TableColumnType["STATUS_BADGE"] = "STATUS_BADGE";
9
- TableColumnType["ACTIVE_BOOLEAN_BADGE"] = "ACTIVE_BOOLEAN_BADGE";
10
- TableColumnType["BUTTON"] = "BUTTON";
11
- TableColumnType["CUSTOM_STYLE"] = "CUSTOM_STYLE";
12
- TableColumnType["MASK"] = "MASK";
13
- TableColumnType["TEXT_BADGE"] = "TEXT_BADGE";
14
- TableColumnType["STACK_BADGE"] = "STACK_BADGE";
15
- TableColumnType["CURRENCY"] = "CURRENCY";
16
- TableColumnType["SCORE"] = "SCORE";
17
- })(TableColumnType || (TableColumnType = {}));
18
- export var SelectionType;
19
- (function (SelectionType) {
20
- SelectionType["CHECKBOX"] = "checkbox";
21
- SelectionType["RADIOBUTTON"] = "radiobutton";
22
- })(SelectionType || (SelectionType = {}));
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9kYXRhLXRhYmxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBTixJQUFZLGVBZVg7QUFmRCxXQUFZLGVBQWU7SUFDekIsZ0NBQWEsQ0FBQTtJQUNiLHNDQUFtQixDQUFBO0lBQ25CLGdDQUFhLENBQUE7SUFDYix3Q0FBcUIsQ0FBQTtJQUNyQixnQ0FBYSxDQUFBO0lBQ2IsZ0RBQTZCLENBQUE7SUFDN0IsZ0VBQTZDLENBQUE7SUFDN0Msb0NBQWlCLENBQUE7SUFDakIsZ0RBQTZCLENBQUE7SUFDN0IsZ0NBQWEsQ0FBQTtJQUNiLDRDQUF5QixDQUFBO0lBQ3pCLDhDQUEyQixDQUFBO0lBQzNCLHdDQUFxQixDQUFBO0lBQ3JCLGtDQUFlLENBQUE7QUFDakIsQ0FBQyxFQWZXLGVBQWUsS0FBZixlQUFlLFFBZTFCO0FBa0NELE1BQU0sQ0FBTixJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsc0NBQXFCLENBQUE7SUFDckIsNENBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQUhXLGFBQWEsS0FBYixhQUFhLFFBR3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBMaXN0SXRlbSB9IGZyb20gJy4vbGlzdC1pdGVtLm1vZGVsJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vc3RhdHVzLmVudW0nO1xuXG5leHBvcnQgdHlwZSBEYXRhVGFibGVCYXNlSXRlbSA9IHtcbiAgYWN0aW9ucz86IE1lbnVJdGVtW107XG59O1xuXG5leHBvcnQgZW51bSBUYWJsZUNvbHVtblR5cGUge1xuICBURVhUID0gJ1RFWFQnLFxuICBCT09MRUFOID0gJ0JPT0xFQU4nLFxuICBEQVRFID0gJ0RBVEUnLFxuICBEQVRFVElNRSA9ICdEQVRFVElNRScsXG4gIEVOVU0gPSAnRU5VTScsXG4gIFNUQVRVU19CQURHRSA9ICdTVEFUVVNfQkFER0UnLFxuICBBQ1RJVkVfQk9PTEVBTl9CQURHRSA9ICdBQ1RJVkVfQk9PTEVBTl9CQURHRScsXG4gIEJVVFRPTiA9ICdCVVRUT04nLFxuICBDVVNUT01fU1RZTEUgPSAnQ1VTVE9NX1NUWUxFJyxcbiAgTUFTSyA9ICdNQVNLJyxcbiAgVEVYVF9CQURHRSA9ICdURVhUX0JBREdFJyxcbiAgU1RBQ0tfQkFER0UgPSAnU1RBQ0tfQkFER0UnLFxuICBDVVJSRU5DWSA9ICdDVVJSRU5DWScsXG4gIFNDT1JFID0gJ1NDT1JFJyxcbn1cblxuZXhwb3J0IHR5cGUgVGFibGVDb2x1bW4gPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBmaWVsZDogc3RyaW5nO1xuICB3aWR0aD86IHN0cmluZztcbiAgdHlwZT86IFRhYmxlQ29sdW1uVHlwZTtcbiAgdGV4dEZpZWxkQ2xhc3M/OiBzdHJpbmc7XG4gIGdldEVudW1UcmFuc2xhdGVkPzogKGVudW1WYWw6IGFueSkgPT4gc3RyaW5nO1xuICBnZXRTdGF0dXM/OiAodmFsdWU6IGFueSkgPT4gU3RhdHVzO1xuICBjbGlja0Z1bmN0aW9uPzogRnVuY3Rpb247XG4gIGljb24/OiBzdHJpbmc7XG4gIG5vdFNvcnRhYmxlPzogYm9vbGVhbjtcbiAgbWFzaz86IHN0cmluZztcbiAgY3VycmVuY3lUeXBlPzogJ1VTRCcgfCAnQlJMJztcbn07XG5cbmV4cG9ydCB0eXBlIERhdGFUYWJsZUxhenlMb2FkRXZlbnQgPSB7XG4gIHN0YXJ0OiBudW1iZXI7XG4gIGxlbmd0aDogbnVtYmVyO1xuICBkcmF3OiBudW1iZXI7XG4gIHBhZ2U6IG51bWJlcjtcbiAgb3JkZXI6IHsgY29sdW1uOiBudW1iZXI7IGRpcjogJ2FzYycgfCAnZGVzYycgfVtdO1xuICBjb2x1bW5zOiB7XG4gICAgZGF0YTogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBvcmRlcmFibGU6IGJvb2xlYW47XG4gICAgc2VhcmNoOiB7IHZhbHVlOiBzdHJpbmc7IHJlZ2V4OiBib29sZWFuIH07XG4gICAgc2VhcmNoYWJsZTogYm9vbGVhbjtcbiAgfVtdO1xuICBzZWFyY2g6IHsgdmFsdWU6IHN0cmluZzsgcmVnZXg6IGJvb2xlYW4gfTtcbiAgdGFiOiBMaXN0SXRlbTtcbn07XG5cbmV4cG9ydCBlbnVtIFNlbGVjdGlvblR5cGUge1xuICBDSEVDS0JPWCA9ICdjaGVja2JveCcsXG4gIFJBRElPQlVUVE9OID0gJ3JhZGlvYnV0dG9uJyxcbn1cbiJdfQ==
1
+ export var TableColumnType;
2
+ (function (TableColumnType) {
3
+ TableColumnType["TEXT"] = "TEXT";
4
+ TableColumnType["BOOLEAN"] = "BOOLEAN";
5
+ TableColumnType["DATE"] = "DATE";
6
+ TableColumnType["DATETIME"] = "DATETIME";
7
+ TableColumnType["ENUM"] = "ENUM";
8
+ TableColumnType["STATUS_BADGE"] = "STATUS_BADGE";
9
+ TableColumnType["ACTIVE_BOOLEAN_BADGE"] = "ACTIVE_BOOLEAN_BADGE";
10
+ TableColumnType["BUTTON"] = "BUTTON";
11
+ TableColumnType["CUSTOM_STYLE"] = "CUSTOM_STYLE";
12
+ TableColumnType["MASK"] = "MASK";
13
+ TableColumnType["TEXT_BADGE"] = "TEXT_BADGE";
14
+ TableColumnType["STACK_BADGE"] = "STACK_BADGE";
15
+ TableColumnType["CURRENCY"] = "CURRENCY";
16
+ TableColumnType["SCORE"] = "SCORE";
17
+ })(TableColumnType || (TableColumnType = {}));
18
+ export var SelectionType;
19
+ (function (SelectionType) {
20
+ SelectionType["CHECKBOX"] = "checkbox";
21
+ SelectionType["RADIOBUTTON"] = "radiobutton";
22
+ })(SelectionType || (SelectionType = {}));
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL21vZGVscy9kYXRhLXRhYmxlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBTixJQUFZLGVBZVg7QUFmRCxXQUFZLGVBQWU7SUFDekIsZ0NBQWEsQ0FBQTtJQUNiLHNDQUFtQixDQUFBO0lBQ25CLGdDQUFhLENBQUE7SUFDYix3Q0FBcUIsQ0FBQTtJQUNyQixnQ0FBYSxDQUFBO0lBQ2IsZ0RBQTZCLENBQUE7SUFDN0IsZ0VBQTZDLENBQUE7SUFDN0Msb0NBQWlCLENBQUE7SUFDakIsZ0RBQTZCLENBQUE7SUFDN0IsZ0NBQWEsQ0FBQTtJQUNiLDRDQUF5QixDQUFBO0lBQ3pCLDhDQUEyQixDQUFBO0lBQzNCLHdDQUFxQixDQUFBO0lBQ3JCLGtDQUFlLENBQUE7QUFDakIsQ0FBQyxFQWZXLGVBQWUsS0FBZixlQUFlLFFBZTFCO0FBa0NELE1BQU0sQ0FBTixJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsc0NBQXFCLENBQUE7SUFDckIsNENBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQUhXLGFBQWEsS0FBYixhQUFhLFFBR3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IExpc3RJdGVtIH0gZnJvbSAnLi9saXN0LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuL3N0YXR1cy5lbnVtJztcclxuXHJcbmV4cG9ydCB0eXBlIERhdGFUYWJsZUJhc2VJdGVtID0ge1xyXG4gIGFjdGlvbnM/OiBNZW51SXRlbVtdO1xyXG59O1xyXG5cclxuZXhwb3J0IGVudW0gVGFibGVDb2x1bW5UeXBlIHtcclxuICBURVhUID0gJ1RFWFQnLFxyXG4gIEJPT0xFQU4gPSAnQk9PTEVBTicsXHJcbiAgREFURSA9ICdEQVRFJyxcclxuICBEQVRFVElNRSA9ICdEQVRFVElNRScsXHJcbiAgRU5VTSA9ICdFTlVNJyxcclxuICBTVEFUVVNfQkFER0UgPSAnU1RBVFVTX0JBREdFJyxcclxuICBBQ1RJVkVfQk9PTEVBTl9CQURHRSA9ICdBQ1RJVkVfQk9PTEVBTl9CQURHRScsXHJcbiAgQlVUVE9OID0gJ0JVVFRPTicsXHJcbiAgQ1VTVE9NX1NUWUxFID0gJ0NVU1RPTV9TVFlMRScsXHJcbiAgTUFTSyA9ICdNQVNLJyxcclxuICBURVhUX0JBREdFID0gJ1RFWFRfQkFER0UnLFxyXG4gIFNUQUNLX0JBREdFID0gJ1NUQUNLX0JBREdFJyxcclxuICBDVVJSRU5DWSA9ICdDVVJSRU5DWScsXHJcbiAgU0NPUkUgPSAnU0NPUkUnLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBUYWJsZUNvbHVtbiA9IHtcclxuICBoZWFkZXI6IHN0cmluZztcclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIHdpZHRoPzogc3RyaW5nO1xyXG4gIHR5cGU/OiBUYWJsZUNvbHVtblR5cGU7XHJcbiAgdGV4dEZpZWxkQ2xhc3M/OiBzdHJpbmc7XHJcbiAgZ2V0RW51bVRyYW5zbGF0ZWQ/OiAoZW51bVZhbDogYW55KSA9PiBzdHJpbmc7XHJcbiAgZ2V0U3RhdHVzPzogKHZhbHVlOiBhbnkpID0+IFN0YXR1cztcclxuICBjbGlja0Z1bmN0aW9uPzogRnVuY3Rpb247XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBub3RTb3J0YWJsZT86IGJvb2xlYW47XHJcbiAgbWFzaz86IHN0cmluZztcclxuICBjdXJyZW5jeVR5cGU/OiAnVVNEJyB8ICdCUkwnO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgRGF0YVRhYmxlTGF6eUxvYWRFdmVudCA9IHtcclxuICBzdGFydDogbnVtYmVyO1xyXG4gIGxlbmd0aDogbnVtYmVyO1xyXG4gIGRyYXc6IG51bWJlcjtcclxuICBwYWdlOiBudW1iZXI7XHJcbiAgb3JkZXI6IHsgY29sdW1uOiBudW1iZXI7IGRpcjogJ2FzYycgfCAnZGVzYycgfVtdO1xyXG4gIGNvbHVtbnM6IHtcclxuICAgIGRhdGE6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIG9yZGVyYWJsZTogYm9vbGVhbjtcclxuICAgIHNlYXJjaDogeyB2YWx1ZTogc3RyaW5nOyByZWdleDogYm9vbGVhbiB9O1xyXG4gICAgc2VhcmNoYWJsZTogYm9vbGVhbjtcclxuICB9W107XHJcbiAgc2VhcmNoOiB7IHZhbHVlOiBzdHJpbmc7IHJlZ2V4OiBib29sZWFuIH07XHJcbiAgdGFiOiBMaXN0SXRlbTtcclxufTtcclxuXHJcbmV4cG9ydCBlbnVtIFNlbGVjdGlvblR5cGUge1xyXG4gIENIRUNLQk9YID0gJ2NoZWNrYm94JyxcclxuICBSQURJT0JVVFRPTiA9ICdyYWRpb2J1dHRvbicsXHJcbn1cclxuIl19