new-front-common-library 16.1.32-ROY-2 → 16.1.32-ROY-3

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 (603) hide show
  1. package/karma.conf.js +44 -0
  2. package/ng-package.json +10 -0
  3. package/package.json +2 -19
  4. package/src/lib/new-front-common-library.component.spec.ts +25 -0
  5. package/src/lib/new-front-common-library.component.ts +20 -0
  6. package/src/lib/new-front-common-library.module.ts +26 -0
  7. package/src/lib/new-front-common-library.service.spec.ts +16 -0
  8. package/src/lib/new-front-common-library.service.ts +10 -0
  9. package/src/lib/util/animations/actions.animation.ts +16 -0
  10. package/src/lib/util/animations/fade.animation.ts +16 -0
  11. package/src/lib/util/array.service.ts +14 -0
  12. package/src/lib/util/component/header/header.component.html +389 -0
  13. package/src/lib/util/component/header/header.component.scss +265 -0
  14. package/src/lib/util/component/header/header.component.ts +245 -0
  15. package/src/lib/util/component/header/menu/menu.component.html +52 -0
  16. package/src/lib/util/component/header/menu/menu.component.scss +127 -0
  17. package/src/lib/util/component/header/menu/menu.component.spec.ts +21 -0
  18. package/src/lib/util/component/header/menu/menu.component.ts +94 -0
  19. package/src/lib/util/component/header/menu/menu.const.ts +546 -0
  20. package/src/lib/util/component/header/menu/menu.model.ts +26 -0
  21. package/src/lib/util/component/overlay/overlay.component.css +20 -0
  22. package/src/lib/util/component/overlay/overlay.component.html +10 -0
  23. package/src/lib/util/component/overlay/overlay.component.ts +42 -0
  24. package/src/lib/util/component/overlay/overlay.service.ts +23 -0
  25. package/src/lib/util/component/popup/popup-login/popup-login.component.css +3 -0
  26. package/src/lib/util/component/popup/popup-login/popup-login.component.html +29 -0
  27. package/src/lib/util/component/popup/popup-login/popup-login.component.ts +96 -0
  28. package/src/lib/util/component/sub-header/sub-header.component.css +136 -0
  29. package/src/lib/util/component/sub-header/sub-header.component.html +20 -0
  30. package/src/lib/util/component/sub-header/sub-header.component.spec.ts +25 -0
  31. package/src/lib/util/component/sub-header/sub-header.component.ts +37 -0
  32. package/src/lib/util/config.ts +15 -0
  33. package/src/lib/util/date/PeriodModel.ts +7 -0
  34. package/src/lib/util/date/date-format-constants.ts +12 -0
  35. package/src/lib/util/date/date.util.ts +222 -0
  36. package/src/lib/util/decorators/theme.decorator.ts +24 -0
  37. package/src/lib/util/decorators/user.decorator.ts +30 -0
  38. package/src/lib/util/directives/my-number-formatter-directive.ts +32 -0
  39. package/src/lib/util/directives/show-if-truncated.directive.ts +19 -0
  40. package/src/lib/util/enums/family.enum.ts +4 -0
  41. package/src/lib/util/enums/rapid-search-item-type.enum.ts +11 -0
  42. package/src/lib/util/enums/status-color.enum.ts +9 -0
  43. package/src/lib/util/event/header/header-events.service.ts +20 -0
  44. package/src/lib/util/event/storage/local-storage-events.service.ts +15 -0
  45. package/src/lib/util/event/storage/session-storage-events.service.ts +15 -0
  46. package/src/lib/util/http/http-params.builder.ts +33 -0
  47. package/src/lib/util/i18n/de.ts +173 -0
  48. package/src/lib/util/i18n/en.ts +173 -0
  49. package/src/lib/util/i18n/fr.ts +174 -0
  50. package/src/lib/util/i18n/multi-translate-http-loader.ts +31 -0
  51. package/src/lib/util/models/any-line.model.ts +45 -0
  52. package/src/lib/util/models/audio-content.model.ts +40 -0
  53. package/src/lib/util/models/authPermission.model.ts +17 -0
  54. package/src/lib/util/models/authUser.model.ts +28 -0
  55. package/src/lib/util/models/basic-hierarchy.model.ts +8 -0
  56. package/src/lib/util/models/basic.model.ts +31 -0
  57. package/src/lib/util/models/box-set-item.model.ts +23 -0
  58. package/src/lib/util/models/commercial/deal-rapid-search-model.ts +10 -0
  59. package/src/lib/util/models/commercial/invoice-rapid-search-model.ts +25 -0
  60. package/src/lib/util/models/commercial/work-record-rapid-search-model.ts +28 -0
  61. package/src/lib/util/models/custom-typings.d.ts +166 -0
  62. package/src/lib/util/models/disc-program.model.ts +29 -0
  63. package/src/lib/util/models/disc.model.ts +26 -0
  64. package/src/lib/util/models/eventType.model.ts +7 -0
  65. package/src/lib/util/models/expenditure-commitment/purchase-order-file.model.ts +27 -0
  66. package/src/lib/util/models/expenditure-commitment/purchase-order-rapid-search.model.ts +10 -0
  67. package/src/lib/util/models/family.model.ts +6 -0
  68. package/{lib/util/models/index.d.ts → src/lib/util/models/index.ts} +1 -0
  69. package/src/lib/util/models/lang-line.model.ts +31 -0
  70. package/src/lib/util/models/legal/contract-rapid-search-model.ts +13 -0
  71. package/src/lib/util/models/legal/contract-work.model.ts +43 -0
  72. package/src/lib/util/models/legal/contract-work2.model.ts +39 -0
  73. package/src/lib/util/models/legal/type-status-rapid-search.model.ts +5 -0
  74. package/src/lib/util/models/media-line.model.ts +20 -0
  75. package/src/lib/util/models/menu-language.model.ts +16 -0
  76. package/src/lib/util/models/milo/territory.model.ts +19 -0
  77. package/src/lib/util/models/module.model.ts +9 -0
  78. package/src/lib/util/models/permission.model.ts +21 -0
  79. package/src/lib/util/models/product-box-set.model.ts +19 -0
  80. package/src/lib/util/models/product-disc-detail.model.ts +25 -0
  81. package/src/lib/util/models/product-disc.model.ts +31 -0
  82. package/src/lib/util/models/product-division.model.ts +35 -0
  83. package/src/lib/util/models/product-type.model.ts +26 -0
  84. package/src/lib/util/models/product.model.ts +73 -0
  85. package/src/lib/util/models/program.model.ts +34 -0
  86. package/src/lib/util/models/purchase-order/purchase-order.model.ts +61 -0
  87. package/src/lib/util/models/referential/WorkVersionArticleDto.ts +20 -0
  88. package/src/lib/util/models/referential/adress-type.model.ts +13 -0
  89. package/src/lib/util/models/referential/adress.model.ts +31 -0
  90. package/src/lib/util/models/referential/attached-file.model.ts +21 -0
  91. package/src/lib/util/models/referential/bank-account.model.ts +25 -0
  92. package/src/lib/util/models/referential/bank-accounts.model.ts +34 -0
  93. package/src/lib/util/models/referential/basic-hierarchy.model.ts +8 -0
  94. package/src/lib/util/models/referential/broadcast-list-item.model.ts +19 -0
  95. package/src/lib/util/models/referential/color.model.ts +16 -0
  96. package/src/lib/util/models/referential/company.model.ts +17 -0
  97. package/src/lib/util/models/referential/content-type.model.ts +22 -0
  98. package/src/lib/util/models/referential/content.model.ts +26 -0
  99. package/src/lib/util/models/referential/cost-center-criteria-values.model.ts +17 -0
  100. package/src/lib/util/models/referential/cost-center-criteria.model.ts +23 -0
  101. package/src/lib/util/models/referential/cost-center.model.ts +37 -0
  102. package/src/lib/util/models/referential/coutry.model.ts +17 -0
  103. package/src/lib/util/models/referential/currency.model.ts +22 -0
  104. package/src/lib/util/models/referential/editorial-content.model.ts +37 -0
  105. package/src/lib/util/models/referential/fixing.model.ts +21 -0
  106. package/src/lib/util/models/referential/flat-media.model.ts +19 -0
  107. package/src/lib/util/models/referential/format-image.model.ts +17 -0
  108. package/src/lib/util/models/referential/format-type.model.ts +16 -0
  109. package/src/lib/util/models/referential/format.model.ts +17 -0
  110. package/src/lib/util/models/referential/fsk-index.model.ts +36 -0
  111. package/src/lib/util/models/referential/fsk.model.ts +53 -0
  112. package/src/lib/util/models/referential/function.model.ts +25 -0
  113. package/src/lib/util/models/referential/genre.model.ts +17 -0
  114. package/src/lib/util/models/referential/invoice-product-type.model.ts +24 -0
  115. package/src/lib/util/models/referential/keywords.model.ts +16 -0
  116. package/src/lib/util/models/referential/language.model.ts +22 -0
  117. package/src/lib/util/models/referential/media-filter.model.ts +10 -0
  118. package/src/lib/util/models/referential/media.model.ts +21 -0
  119. package/src/lib/util/models/referential/module.model.ts +21 -0
  120. package/{lib/util/models/referential/parameter.model.d.ts → src/lib/util/models/referential/parameter.model.ts} +2 -0
  121. package/src/lib/util/models/referential/participant.model.ts +31 -0
  122. package/src/lib/util/models/referential/person.model.ts +30 -0
  123. package/src/lib/util/models/referential/po/WorkRestrictionPO.ts +11 -0
  124. package/src/lib/util/models/referential/project-status.model.ts +16 -0
  125. package/src/lib/util/models/referential/quota.model.ts +17 -0
  126. package/src/lib/util/models/referential/referential-entity-state.model.ts +22 -0
  127. package/src/lib/util/models/referential/referential-value.model.ts +21 -0
  128. package/src/lib/util/models/referential/referentiel.model.ts +29 -0
  129. package/src/lib/util/models/referential/restriction.model.ts +26 -0
  130. package/src/lib/util/models/referential/sap-order.model.ts +48 -0
  131. package/src/lib/util/models/referential/service-error.model.ts +16 -0
  132. package/src/lib/util/models/referential/sound.model.ts +16 -0
  133. package/src/lib/util/models/referential/territories-languages.model.ts +19 -0
  134. package/src/lib/util/models/referential/territory-filter.model.ts +6 -0
  135. package/src/lib/util/models/referential/territory.model.ts +27 -0
  136. package/src/lib/util/models/referential/theme.model.ts +17 -0
  137. package/src/lib/util/models/referential/third-party-address-rapid-search.model.ts +8 -0
  138. package/src/lib/util/models/referential/third-party-creation-request.model.ts +59 -0
  139. package/src/lib/util/models/referential/third-party-module.model.ts +21 -0
  140. package/src/lib/util/models/referential/third-party-rapid-search.model.ts +10 -0
  141. package/src/lib/util/models/referential/third-party.model.ts +100 -0
  142. package/src/lib/util/models/referential/translated-value-model.ts +20 -0
  143. package/src/lib/util/models/referential/tva.model.ts +17 -0
  144. package/src/lib/util/models/referential/type-export.model.ts +17 -0
  145. package/src/lib/util/models/referential/type-tva-company-territory.model.ts +36 -0
  146. package/src/lib/util/models/referential/type-tva.model.ts +29 -0
  147. package/{lib/util/models/referential/user-form.model.d.ts → src/lib/util/models/referential/user-form.model.ts} +2 -0
  148. package/src/lib/util/models/referential/work-addons-model.ts +36 -0
  149. package/src/lib/util/models/referential/work-appartenance.model.ts +17 -0
  150. package/src/lib/util/models/referential/work-genre.model.ts +21 -0
  151. package/src/lib/util/models/referential/work-language.model.ts +21 -0
  152. package/src/lib/util/models/referential/work-milo.model.ts +65 -0
  153. package/src/lib/util/models/referential/work-participant.model.ts +28 -0
  154. package/src/lib/util/models/referential/work-restrictions-model.ts +34 -0
  155. package/src/lib/util/models/referential/work-theme.model.ts +21 -0
  156. package/src/lib/util/models/referential/work-title.model.ts +27 -0
  157. package/src/lib/util/models/referential/work-version-origin.model.ts +20 -0
  158. package/src/lib/util/models/referential/work-version-rapid-search.model.ts +10 -0
  159. package/src/lib/util/models/referential/work-versions-used.model.ts +22 -0
  160. package/src/lib/util/models/referential/work-versions.model.ts +47 -0
  161. package/src/lib/util/models/referential/work-year-production.model.ts +16 -0
  162. package/src/lib/util/models/referential/work.model.ts +88 -0
  163. package/src/lib/util/models/referential/zone.model.ts +16 -0
  164. package/src/lib/util/models/referentiel.model.ts +29 -0
  165. package/src/lib/util/models/search-response.model.ts +7 -0
  166. package/src/lib/util/models/section.model.ts +11 -0
  167. package/src/lib/util/models/select/options.model.ts +8 -0
  168. package/src/lib/util/models/select/select.model.ts +4 -0
  169. package/src/lib/util/models/subsidiary.model.ts +10 -0
  170. package/src/lib/util/models/subtitle-content.model.ts +39 -0
  171. package/src/lib/util/models/user-video.model.ts +29 -0
  172. package/src/lib/util/models/user.model.ts +41 -0
  173. package/src/lib/util/models/video/product-rapid-search.model.ts +10 -0
  174. package/src/lib/util/models/video/support-rapid-search.model.ts +7 -0
  175. package/src/lib/util/models/video-content.model.ts +37 -0
  176. package/src/lib/util/number.validator.ts +123 -0
  177. package/src/lib/util/paginator/custom-paginator-configuration.ts +68 -0
  178. package/src/lib/util/permissions/permissions.service.ts +47 -0
  179. package/src/lib/util/pipes/capitalizefirst.pipe.ts +39 -0
  180. package/src/lib/util/pipes/comma-separated-number.pipe.ts +9 -0
  181. package/src/lib/util/pipes/common-translate.pipe.ts +37 -0
  182. package/src/lib/util/pipes/display-html.pipe.ts +15 -0
  183. package/src/lib/util/pipes/display-null.pipe.ts +19 -0
  184. package/src/lib/util/pipes/format-currency.pipe.ts +26 -0
  185. package/src/lib/util/pipes/format-duration.pipe.ts +16 -0
  186. package/src/lib/util/pipes/format-number-input.pipe.ts +19 -0
  187. package/src/lib/util/pipes/local-date.pipe.ts +29 -0
  188. package/src/lib/util/pipes/my-number.pipe.ts +51 -0
  189. package/src/lib/util/pipes/third-party-address-search.pipe.ts +12 -0
  190. package/src/lib/util/pipes/third-party-address.pipe.ts +13 -0
  191. package/src/lib/util/pipes/trim-string.pipe.ts +24 -0
  192. package/src/lib/util/regex/regex.service.ts +94 -0
  193. package/src/lib/util/regex/regex.spec.ts +45 -0
  194. package/src/lib/util/services/api/commercial-api.service.ts +23 -0
  195. package/src/lib/util/services/api/common-api.service.ts +121 -0
  196. package/src/lib/util/services/api/legal-api.service.ts +27 -0
  197. package/src/lib/util/services/api/video-api.service.ts +45 -0
  198. package/src/lib/util/services/auth/auth.service.spec.ts +16 -0
  199. package/src/lib/util/services/auth/auth.service.ts +14 -0
  200. package/src/lib/util/services/elasticsearch/elasticsearch.service.ts +179 -0
  201. package/src/lib/util/services/elasticsearch/subsidiaries.service.ts +48 -0
  202. package/src/lib/util/services/form-action/form-actions-events.service.ts +25 -0
  203. package/src/lib/util/services/guard/auth.guard.ts +44 -0
  204. package/src/lib/util/services/guard/login.guard.ts +26 -0
  205. package/src/lib/util/services/history/history.service.ts +38 -0
  206. package/src/lib/util/services/interceptor/auth.interceptor.ts +66 -0
  207. package/src/lib/util/services/jwt-security/aes.service.ts +48 -0
  208. package/src/lib/util/services/jwt-security/interceptorhttp.service.ts +98 -0
  209. package/src/lib/util/services/jwt-security/jwt.helpher.ts +38 -0
  210. package/src/lib/util/services/storage/local-storage.service.ts +36 -0
  211. package/src/lib/util/services/storage/session-storage.service.ts +39 -0
  212. package/src/lib/util/services/translate-language/lang.service.ts +26 -0
  213. package/src/lib/util/services/user/user-subsidiary.service.spec.ts +207 -0
  214. package/src/lib/util/services/user/user-subsidiary.service.ts +21 -0
  215. package/src/lib/util/sort.ts +27 -0
  216. package/src/lib/util/theme/theme-event.service.ts +15 -0
  217. package/src/lib/util/toaster/toaster-events.service.ts +32 -0
  218. package/src/lib/util/util.module.ts +185 -0
  219. package/{public-api.d.ts → src/public-api.ts} +17 -2
  220. package/src/test.ts +13 -0
  221. package/tsconfig.lib.json +19 -0
  222. package/tsconfig.lib.prod.json +10 -0
  223. package/tsconfig.spec.json +17 -0
  224. package/esm2022/lib/util/array.service.mjs +0 -19
  225. package/esm2022/lib/util/component/header/header.component.mjs +0 -224
  226. package/esm2022/lib/util/component/header/menu/menu.component.mjs +0 -96
  227. package/esm2022/lib/util/component/header/menu/menu.const.mjs +0 -544
  228. package/esm2022/lib/util/component/header/menu/menu.model.mjs +0 -2
  229. package/esm2022/lib/util/component/overlay/overlay.component.mjs +0 -40
  230. package/esm2022/lib/util/component/overlay/overlay.service.mjs +0 -24
  231. package/esm2022/lib/util/component/popup/popup-login/popup-login.component.mjs +0 -90
  232. package/esm2022/lib/util/component/sub-header/sub-header.component.mjs +0 -44
  233. package/esm2022/lib/util/config.mjs +0 -8
  234. package/esm2022/lib/util/date/PeriodModel.mjs +0 -8
  235. package/esm2022/lib/util/date/date-format-constants.mjs +0 -12
  236. package/esm2022/lib/util/date/date.util.mjs +0 -218
  237. package/esm2022/lib/util/decorators/theme.decorator.mjs +0 -22
  238. package/esm2022/lib/util/decorators/user.decorator.mjs +0 -25
  239. package/esm2022/lib/util/directives/my-number-formatter-directive.mjs +0 -34
  240. package/esm2022/lib/util/directives/show-if-truncated.directive.mjs +0 -25
  241. package/esm2022/lib/util/enums/family.enum.mjs +0 -6
  242. package/esm2022/lib/util/enums/rapid-search-item-type.enum.mjs +0 -13
  243. package/esm2022/lib/util/enums/status-color.enum.mjs +0 -11
  244. package/esm2022/lib/util/event/header/header-events.service.mjs +0 -21
  245. package/esm2022/lib/util/event/storage/local-storage-events.service.mjs +0 -17
  246. package/esm2022/lib/util/event/storage/session-storage-events.service.mjs +0 -18
  247. package/esm2022/lib/util/http/http-params.builder.mjs +0 -27
  248. package/esm2022/lib/util/i18n/de.mjs +0 -158
  249. package/esm2022/lib/util/i18n/en.mjs +0 -158
  250. package/esm2022/lib/util/i18n/fr.mjs +0 -159
  251. package/esm2022/lib/util/i18n/multi-translate-http-loader.mjs +0 -21
  252. package/esm2022/lib/util/interfaces/permissions.interface.mjs +0 -2
  253. package/esm2022/lib/util/models/any-line.model.mjs +0 -37
  254. package/esm2022/lib/util/models/audio-content.model.mjs +0 -27
  255. package/esm2022/lib/util/models/authPermission.model.mjs +0 -16
  256. package/esm2022/lib/util/models/authUser.model.mjs +0 -21
  257. package/esm2022/lib/util/models/basic.model.mjs +0 -14
  258. package/esm2022/lib/util/models/box-set-item.model.mjs +0 -19
  259. package/esm2022/lib/util/models/commercial/deal-rapid-search-model.mjs +0 -3
  260. package/esm2022/lib/util/models/commercial/invoice-rapid-search-model.mjs +0 -9
  261. package/esm2022/lib/util/models/commercial/work-record-rapid-search-model.mjs +0 -13
  262. package/esm2022/lib/util/models/disc-program.model.mjs +0 -26
  263. package/esm2022/lib/util/models/disc.model.mjs +0 -22
  264. package/esm2022/lib/util/models/eventType.model.mjs +0 -7
  265. package/esm2022/lib/util/models/expenditure-commitment/purchase-order-file.model.mjs +0 -22
  266. package/esm2022/lib/util/models/expenditure-commitment/purchase-order-rapid-search.model.mjs +0 -3
  267. package/esm2022/lib/util/models/family.model.mjs +0 -7
  268. package/esm2022/lib/util/models/index.mjs +0 -101
  269. package/esm2022/lib/util/models/lang-line.model.mjs +0 -27
  270. package/esm2022/lib/util/models/legal/contract-rapid-search-model.mjs +0 -3
  271. package/esm2022/lib/util/models/legal/contract-work.model.mjs +0 -23
  272. package/esm2022/lib/util/models/legal/contract-work2.model.mjs +0 -21
  273. package/esm2022/lib/util/models/legal/type-status-rapid-search.model.mjs +0 -3
  274. package/esm2022/lib/util/models/media-line.model.mjs +0 -18
  275. package/esm2022/lib/util/models/menu-language.model.mjs +0 -15
  276. package/esm2022/lib/util/models/permission.model.mjs +0 -20
  277. package/esm2022/lib/util/models/product-box-set.model.mjs +0 -16
  278. package/esm2022/lib/util/models/product-disc-detail.model.mjs +0 -22
  279. package/esm2022/lib/util/models/product-disc.model.mjs +0 -27
  280. package/esm2022/lib/util/models/product-division.model.mjs +0 -29
  281. package/esm2022/lib/util/models/product-type.model.mjs +0 -22
  282. package/esm2022/lib/util/models/product.model.mjs +0 -62
  283. package/esm2022/lib/util/models/program.model.mjs +0 -28
  284. package/esm2022/lib/util/models/purchase-order/purchase-order.model.mjs +0 -53
  285. package/esm2022/lib/util/models/referential/WorkVersionArticleDto.mjs +0 -17
  286. package/esm2022/lib/util/models/referential/adress-type.model.mjs +0 -14
  287. package/esm2022/lib/util/models/referential/adress.model.mjs +0 -28
  288. package/esm2022/lib/util/models/referential/attached-file.model.mjs +0 -17
  289. package/esm2022/lib/util/models/referential/bank-account.model.mjs +0 -24
  290. package/esm2022/lib/util/models/referential/bank-accounts.model.mjs +0 -31
  291. package/esm2022/lib/util/models/referential/basic-hierarchy.model.mjs +0 -8
  292. package/esm2022/lib/util/models/referential/broadcast-list-item.model.mjs +0 -13
  293. package/esm2022/lib/util/models/referential/color.model.mjs +0 -16
  294. package/esm2022/lib/util/models/referential/company.model.mjs +0 -16
  295. package/esm2022/lib/util/models/referential/content-type.model.mjs +0 -17
  296. package/esm2022/lib/util/models/referential/content.model.mjs +0 -22
  297. package/esm2022/lib/util/models/referential/cost-center-criteria-values.model.mjs +0 -14
  298. package/esm2022/lib/util/models/referential/cost-center-criteria.model.mjs +0 -13
  299. package/esm2022/lib/util/models/referential/cost-center.model.mjs +0 -28
  300. package/esm2022/lib/util/models/referential/coutry.model.mjs +0 -16
  301. package/esm2022/lib/util/models/referential/currency.model.mjs +0 -20
  302. package/esm2022/lib/util/models/referential/editorial-content.model.mjs +0 -18
  303. package/esm2022/lib/util/models/referential/fixing.model.mjs +0 -16
  304. package/esm2022/lib/util/models/referential/flat-media.model.mjs +0 -18
  305. package/esm2022/lib/util/models/referential/format-image.model.mjs +0 -16
  306. package/esm2022/lib/util/models/referential/format-type.model.mjs +0 -16
  307. package/esm2022/lib/util/models/referential/format.model.mjs +0 -17
  308. package/esm2022/lib/util/models/referential/fsk-index.model.mjs +0 -20
  309. package/esm2022/lib/util/models/referential/fsk.model.mjs +0 -22
  310. package/esm2022/lib/util/models/referential/function.model.mjs +0 -23
  311. package/esm2022/lib/util/models/referential/genre.model.mjs +0 -17
  312. package/esm2022/lib/util/models/referential/invoice-product-type.model.mjs +0 -22
  313. package/esm2022/lib/util/models/referential/keywords.model.mjs +0 -13
  314. package/esm2022/lib/util/models/referential/language.model.mjs +0 -18
  315. package/esm2022/lib/util/models/referential/media-filter.model.mjs +0 -3
  316. package/esm2022/lib/util/models/referential/media.model.mjs +0 -20
  317. package/esm2022/lib/util/models/referential/module.model.mjs +0 -20
  318. package/esm2022/lib/util/models/referential/parameter.model.mjs +0 -2
  319. package/esm2022/lib/util/models/referential/participant.model.mjs +0 -20
  320. package/esm2022/lib/util/models/referential/person.model.mjs +0 -23
  321. package/esm2022/lib/util/models/referential/project-status.model.mjs +0 -16
  322. package/esm2022/lib/util/models/referential/quota.model.mjs +0 -17
  323. package/esm2022/lib/util/models/referential/referential-entity-state.model.mjs +0 -16
  324. package/esm2022/lib/util/models/referential/referential-value.model.mjs +0 -16
  325. package/esm2022/lib/util/models/referential/referentiel.model.mjs +0 -26
  326. package/esm2022/lib/util/models/referential/restriction.model.mjs +0 -20
  327. package/esm2022/lib/util/models/referential/sap-order.model.mjs +0 -20
  328. package/esm2022/lib/util/models/referential/service-error.model.mjs +0 -15
  329. package/esm2022/lib/util/models/referential/sound.model.mjs +0 -16
  330. package/esm2022/lib/util/models/referential/territories-languages.model.mjs +0 -16
  331. package/esm2022/lib/util/models/referential/territory-filter.model.mjs +0 -3
  332. package/esm2022/lib/util/models/referential/territory.model.mjs +0 -17
  333. package/esm2022/lib/util/models/referential/theme.model.mjs +0 -17
  334. package/esm2022/lib/util/models/referential/third-party-address-rapid-search.model.mjs +0 -3
  335. package/esm2022/lib/util/models/referential/third-party-creation-request.model.mjs +0 -44
  336. package/esm2022/lib/util/models/referential/third-party-module.model.mjs +0 -20
  337. package/esm2022/lib/util/models/referential/third-party-rapid-search.model.mjs +0 -3
  338. package/esm2022/lib/util/models/referential/third-party.model.mjs +0 -83
  339. package/esm2022/lib/util/models/referential/translated-value-model.mjs +0 -16
  340. package/esm2022/lib/util/models/referential/tva.model.mjs +0 -16
  341. package/esm2022/lib/util/models/referential/type-export.model.mjs +0 -16
  342. package/esm2022/lib/util/models/referential/type-tva-company-territory.model.mjs +0 -32
  343. package/esm2022/lib/util/models/referential/type-tva.model.mjs +0 -25
  344. package/esm2022/lib/util/models/referential/user-form.model.mjs +0 -2
  345. package/esm2022/lib/util/models/referential/work-addons-model.mjs +0 -16
  346. package/esm2022/lib/util/models/referential/work-appartenance.model.mjs +0 -17
  347. package/esm2022/lib/util/models/referential/work-genre.model.mjs +0 -16
  348. package/esm2022/lib/util/models/referential/work-language.model.mjs +0 -16
  349. package/esm2022/lib/util/models/referential/work-milo.model.mjs +0 -61
  350. package/esm2022/lib/util/models/referential/work-participant.model.mjs +0 -21
  351. package/esm2022/lib/util/models/referential/work-restrictions-model.mjs +0 -13
  352. package/esm2022/lib/util/models/referential/work-theme.model.mjs +0 -16
  353. package/esm2022/lib/util/models/referential/work-title.model.mjs +0 -20
  354. package/esm2022/lib/util/models/referential/work-version-origin.model.mjs +0 -16
  355. package/esm2022/lib/util/models/referential/work-version-rapid-search.model.mjs +0 -3
  356. package/esm2022/lib/util/models/referential/work-versions-used.model.mjs +0 -19
  357. package/esm2022/lib/util/models/referential/work-versions.model.mjs +0 -27
  358. package/esm2022/lib/util/models/referential/work-year-production.model.mjs +0 -13
  359. package/esm2022/lib/util/models/referential/work.model.mjs +0 -22
  360. package/esm2022/lib/util/models/referential/zone.model.mjs +0 -14
  361. package/esm2022/lib/util/models/referentiel.model.mjs +0 -26
  362. package/esm2022/lib/util/models/search-response.model.mjs +0 -10
  363. package/esm2022/lib/util/models/section.model.mjs +0 -8
  364. package/esm2022/lib/util/models/select/options.model.mjs +0 -8
  365. package/esm2022/lib/util/models/select/select.model.mjs +0 -7
  366. package/esm2022/lib/util/models/subsidiary.model.mjs +0 -8
  367. package/esm2022/lib/util/models/subtitle-content.model.mjs +0 -28
  368. package/esm2022/lib/util/models/user-video.model.mjs +0 -22
  369. package/esm2022/lib/util/models/user.model.mjs +0 -35
  370. package/esm2022/lib/util/models/video/product-rapid-search.model.mjs +0 -3
  371. package/esm2022/lib/util/models/video/support-rapid-search.model.mjs +0 -3
  372. package/esm2022/lib/util/models/video-content.model.mjs +0 -18
  373. package/esm2022/lib/util/number.validator.mjs +0 -129
  374. package/esm2022/lib/util/paginator/custom-paginator-configuration.mjs +0 -59
  375. package/esm2022/lib/util/permissions/permissions.service.mjs +0 -49
  376. package/esm2022/lib/util/pipes/capitalizefirst.pipe.mjs +0 -41
  377. package/esm2022/lib/util/pipes/comma-separated-number.pipe.mjs +0 -15
  378. package/esm2022/lib/util/pipes/common-translate.pipe.mjs +0 -38
  379. package/esm2022/lib/util/pipes/display-html.pipe.mjs +0 -20
  380. package/esm2022/lib/util/pipes/display-null.pipe.mjs +0 -24
  381. package/esm2022/lib/util/pipes/format-currency.pipe.mjs +0 -31
  382. package/esm2022/lib/util/pipes/format-duration.pipe.mjs +0 -23
  383. package/esm2022/lib/util/pipes/format-number-input.pipe.mjs +0 -22
  384. package/esm2022/lib/util/pipes/local-date.pipe.mjs +0 -27
  385. package/esm2022/lib/util/pipes/my-number.pipe.mjs +0 -44
  386. package/esm2022/lib/util/pipes/third-party-address-search.pipe.mjs +0 -15
  387. package/esm2022/lib/util/pipes/third-party-address.pipe.mjs +0 -16
  388. package/esm2022/lib/util/pipes/trim-string.pipe.mjs +0 -25
  389. package/esm2022/lib/util/regex/regex.service.mjs +0 -94
  390. package/esm2022/lib/util/services/api/commercial-api.service.mjs +0 -28
  391. package/esm2022/lib/util/services/api/common-api.service.mjs +0 -98
  392. package/esm2022/lib/util/services/api/legal-api.service.mjs +0 -32
  393. package/esm2022/lib/util/services/api/video-api.service.mjs +0 -45
  394. package/esm2022/lib/util/services/auth/auth.service.mjs +0 -18
  395. package/esm2022/lib/util/services/elasticsearch/elasticsearch.service.mjs +0 -166
  396. package/esm2022/lib/util/services/elasticsearch/subsidiaries.service.mjs +0 -48
  397. package/esm2022/lib/util/services/form-action/form-actions-events.service.mjs +0 -25
  398. package/esm2022/lib/util/services/guard/auth.guard.mjs +0 -32
  399. package/esm2022/lib/util/services/guard/login.guard.mjs +0 -23
  400. package/esm2022/lib/util/services/history/history.service.mjs +0 -39
  401. package/esm2022/lib/util/services/interceptor/auth.interceptor.mjs +0 -53
  402. package/esm2022/lib/util/services/jwt-security/aes.service.mjs +0 -34
  403. package/esm2022/lib/util/services/jwt-security/interceptorhttp.service.mjs +0 -18
  404. package/esm2022/lib/util/services/jwt-security/jwt.helpher.mjs +0 -34
  405. package/esm2022/lib/util/services/storage/local-storage.service.mjs +0 -36
  406. package/esm2022/lib/util/services/storage/session-storage.service.mjs +0 -38
  407. package/esm2022/lib/util/services/translate-language/lang.service.mjs +0 -31
  408. package/esm2022/lib/util/services/user/user-subsidiary.service.mjs +0 -22
  409. package/esm2022/lib/util/sort.mjs +0 -22
  410. package/esm2022/lib/util/theme/theme-event.service.mjs +0 -17
  411. package/esm2022/lib/util/toaster/toaster-events.service.mjs +0 -32
  412. package/esm2022/lib/util/util.module.mjs +0 -281
  413. package/esm2022/new-front-common-library.mjs +0 -5
  414. package/esm2022/public-api.mjs +0 -59
  415. package/fesm2022/new-front-common-library.mjs +0 -5700
  416. package/fesm2022/new-front-common-library.mjs.map +0 -1
  417. package/index.d.ts +0 -5
  418. package/lib/util/array.service.d.ts +0 -7
  419. package/lib/util/component/header/header.component.d.ts +0 -74
  420. package/lib/util/component/header/menu/menu.component.d.ts +0 -27
  421. package/lib/util/component/header/menu/menu.const.d.ts +0 -2
  422. package/lib/util/component/header/menu/menu.model.d.ts +0 -23
  423. package/lib/util/component/overlay/overlay.component.d.ts +0 -17
  424. package/lib/util/component/overlay/overlay.service.d.ts +0 -13
  425. package/lib/util/component/popup/popup-login/popup-login.component.d.ts +0 -35
  426. package/lib/util/component/sub-header/sub-header.component.d.ts +0 -13
  427. package/lib/util/config.d.ts +0 -8
  428. package/lib/util/date/PeriodModel.d.ts +0 -6
  429. package/lib/util/date/date-format-constants.d.ts +0 -25
  430. package/lib/util/date/date.util.d.ts +0 -16
  431. package/lib/util/decorators/theme.decorator.d.ts +0 -1
  432. package/lib/util/decorators/user.decorator.d.ts +0 -1
  433. package/lib/util/directives/my-number-formatter-directive.d.ts +0 -15
  434. package/lib/util/directives/show-if-truncated.directive.d.ts +0 -11
  435. package/lib/util/enums/family.enum.d.ts +0 -4
  436. package/lib/util/enums/rapid-search-item-type.enum.d.ts +0 -11
  437. package/lib/util/enums/status-color.enum.d.ts +0 -9
  438. package/lib/util/event/header/header-events.service.d.ts +0 -11
  439. package/lib/util/event/storage/local-storage-events.service.d.ts +0 -9
  440. package/lib/util/event/storage/session-storage-events.service.d.ts +0 -10
  441. package/lib/util/http/http-params.builder.d.ts +0 -9
  442. package/lib/util/i18n/de.d.ts +0 -141
  443. package/lib/util/i18n/en.d.ts +0 -141
  444. package/lib/util/i18n/fr.d.ts +0 -142
  445. package/lib/util/i18n/multi-translate-http-loader.d.ts +0 -14
  446. package/lib/util/models/any-line.model.d.ts +0 -24
  447. package/lib/util/models/audio-content.model.d.ts +0 -27
  448. package/lib/util/models/authPermission.model.d.ts +0 -7
  449. package/lib/util/models/authUser.model.d.ts +0 -16
  450. package/lib/util/models/basic.model.d.ts +0 -11
  451. package/lib/util/models/box-set-item.model.d.ts +0 -12
  452. package/lib/util/models/commercial/deal-rapid-search-model.d.ts +0 -10
  453. package/lib/util/models/commercial/invoice-rapid-search-model.d.ts +0 -18
  454. package/lib/util/models/commercial/work-record-rapid-search-model.d.ts +0 -21
  455. package/lib/util/models/disc-program.model.d.ts +0 -9
  456. package/lib/util/models/disc.model.d.ts +0 -15
  457. package/lib/util/models/eventType.model.d.ts +0 -5
  458. package/lib/util/models/expenditure-commitment/purchase-order-file.model.d.ts +0 -8
  459. package/lib/util/models/expenditure-commitment/purchase-order-rapid-search.model.d.ts +0 -10
  460. package/lib/util/models/family.model.d.ts +0 -5
  461. package/lib/util/models/lang-line.model.d.ts +0 -18
  462. package/lib/util/models/legal/contract-rapid-search-model.d.ts +0 -10
  463. package/lib/util/models/legal/contract-work.model.d.ts +0 -27
  464. package/lib/util/models/legal/contract-work2.model.d.ts +0 -23
  465. package/lib/util/models/legal/type-status-rapid-search.model.d.ts +0 -5
  466. package/lib/util/models/media-line.model.d.ts +0 -9
  467. package/lib/util/models/menu-language.model.d.ts +0 -6
  468. package/lib/util/models/permission.model.d.ts +0 -12
  469. package/lib/util/models/product-box-set.model.d.ts +0 -8
  470. package/lib/util/models/product-disc-detail.model.d.ts +0 -14
  471. package/lib/util/models/product-disc.model.d.ts +0 -11
  472. package/lib/util/models/product-division.model.d.ts +0 -15
  473. package/lib/util/models/product-type.model.d.ts +0 -7
  474. package/lib/util/models/product.model.d.ts +0 -52
  475. package/lib/util/models/program.model.d.ts +0 -21
  476. package/lib/util/models/purchase-order/purchase-order.model.d.ts +0 -40
  477. package/lib/util/models/referential/WorkVersionArticleDto.d.ts +0 -10
  478. package/lib/util/models/referential/adress-type.model.d.ts +0 -5
  479. package/lib/util/models/referential/adress.model.d.ts +0 -20
  480. package/lib/util/models/referential/attached-file.model.d.ts +0 -11
  481. package/lib/util/models/referential/bank-account.model.d.ts +0 -15
  482. package/lib/util/models/referential/bank-accounts.model.d.ts +0 -17
  483. package/lib/util/models/referential/basic-hierarchy.model.d.ts +0 -6
  484. package/lib/util/models/referential/broadcast-list-item.model.d.ts +0 -8
  485. package/lib/util/models/referential/color.model.d.ts +0 -6
  486. package/lib/util/models/referential/company.model.d.ts +0 -7
  487. package/lib/util/models/referential/content-type.model.d.ts +0 -12
  488. package/lib/util/models/referential/content.model.d.ts +0 -7
  489. package/lib/util/models/referential/cost-center-criteria-values.model.d.ts +0 -7
  490. package/lib/util/models/referential/cost-center-criteria.model.d.ts +0 -12
  491. package/lib/util/models/referential/cost-center.model.d.ts +0 -18
  492. package/lib/util/models/referential/coutry.model.d.ts +0 -7
  493. package/lib/util/models/referential/currency.model.d.ts +0 -11
  494. package/lib/util/models/referential/editorial-content.model.d.ts +0 -25
  495. package/lib/util/models/referential/fixing.model.d.ts +0 -10
  496. package/lib/util/models/referential/flat-media.model.d.ts +0 -9
  497. package/lib/util/models/referential/format-image.model.d.ts +0 -7
  498. package/lib/util/models/referential/format-type.model.d.ts +0 -6
  499. package/lib/util/models/referential/format.model.d.ts +0 -7
  500. package/lib/util/models/referential/fsk-index.model.d.ts +0 -22
  501. package/lib/util/models/referential/fsk.model.d.ts +0 -37
  502. package/lib/util/models/referential/function.model.d.ts +0 -8
  503. package/lib/util/models/referential/genre.model.d.ts +0 -7
  504. package/lib/util/models/referential/invoice-product-type.model.d.ts +0 -7
  505. package/lib/util/models/referential/keywords.model.d.ts +0 -6
  506. package/lib/util/models/referential/language.model.d.ts +0 -11
  507. package/lib/util/models/referential/media-filter.model.d.ts +0 -10
  508. package/lib/util/models/referential/media.model.d.ts +0 -11
  509. package/lib/util/models/referential/module.model.d.ts +0 -11
  510. package/lib/util/models/referential/participant.model.d.ts +0 -11
  511. package/lib/util/models/referential/person.model.d.ts +0 -13
  512. package/lib/util/models/referential/project-status.model.d.ts +0 -6
  513. package/lib/util/models/referential/quota.model.d.ts +0 -7
  514. package/lib/util/models/referential/referential-entity-state.model.d.ts +0 -11
  515. package/lib/util/models/referential/referential-value.model.d.ts +0 -11
  516. package/lib/util/models/referential/referentiel.model.d.ts +0 -12
  517. package/lib/util/models/referential/restriction.model.d.ts +0 -9
  518. package/lib/util/models/referential/sap-order.model.d.ts +0 -27
  519. package/lib/util/models/referential/service-error.model.d.ts +0 -13
  520. package/lib/util/models/referential/sound.model.d.ts +0 -6
  521. package/lib/util/models/referential/territories-languages.model.d.ts +0 -8
  522. package/lib/util/models/referential/territory-filter.model.d.ts +0 -6
  523. package/lib/util/models/referential/territory.model.d.ts +0 -12
  524. package/lib/util/models/referential/theme.model.d.ts +0 -7
  525. package/lib/util/models/referential/third-party-address-rapid-search.model.d.ts +0 -8
  526. package/lib/util/models/referential/third-party-creation-request.model.d.ts +0 -48
  527. package/lib/util/models/referential/third-party-module.model.d.ts +0 -11
  528. package/lib/util/models/referential/third-party-rapid-search.model.d.ts +0 -8
  529. package/lib/util/models/referential/third-party.model.d.ts +0 -45
  530. package/lib/util/models/referential/translated-value-model.d.ts +0 -10
  531. package/lib/util/models/referential/tva.model.d.ts +0 -7
  532. package/lib/util/models/referential/type-export.model.d.ts +0 -7
  533. package/lib/util/models/referential/type-tva-company-territory.model.d.ts +0 -18
  534. package/lib/util/models/referential/type-tva.model.d.ts +0 -10
  535. package/lib/util/models/referential/work-addons-model.d.ts +0 -25
  536. package/lib/util/models/referential/work-appartenance.model.d.ts +0 -7
  537. package/lib/util/models/referential/work-genre.model.d.ts +0 -11
  538. package/lib/util/models/referential/work-language.model.d.ts +0 -11
  539. package/lib/util/models/referential/work-milo.model.d.ts +0 -46
  540. package/lib/util/models/referential/work-participant.model.d.ts +0 -10
  541. package/lib/util/models/referential/work-restrictions-model.d.ts +0 -18
  542. package/lib/util/models/referential/work-theme.model.d.ts +0 -11
  543. package/lib/util/models/referential/work-title.model.d.ts +0 -10
  544. package/lib/util/models/referential/work-version-origin.model.d.ts +0 -10
  545. package/lib/util/models/referential/work-version-rapid-search.model.d.ts +0 -9
  546. package/lib/util/models/referential/work-versions-used.model.d.ts +0 -12
  547. package/lib/util/models/referential/work-versions.model.d.ts +0 -29
  548. package/lib/util/models/referential/work-year-production.model.d.ts +0 -6
  549. package/lib/util/models/referential/work.model.d.ts +0 -74
  550. package/lib/util/models/referential/zone.model.d.ts +0 -6
  551. package/lib/util/models/referentiel.model.d.ts +0 -12
  552. package/lib/util/models/search-response.model.d.ts +0 -7
  553. package/lib/util/models/section.model.d.ts +0 -7
  554. package/lib/util/models/select/options.model.d.ts +0 -6
  555. package/lib/util/models/select/select.model.d.ts +0 -5
  556. package/lib/util/models/subsidiary.model.d.ts +0 -7
  557. package/lib/util/models/subtitle-content.model.d.ts +0 -26
  558. package/lib/util/models/user-video.model.d.ts +0 -10
  559. package/lib/util/models/user.model.d.ts +0 -27
  560. package/lib/util/models/video/product-rapid-search.model.d.ts +0 -8
  561. package/lib/util/models/video/support-rapid-search.model.d.ts +0 -6
  562. package/lib/util/models/video-content.model.d.ts +0 -24
  563. package/lib/util/number.validator.d.ts +0 -14
  564. package/lib/util/paginator/custom-paginator-configuration.d.ts +0 -16
  565. package/lib/util/permissions/permissions.service.d.ts +0 -15
  566. package/lib/util/pipes/capitalizefirst.pipe.d.ts +0 -8
  567. package/lib/util/pipes/comma-separated-number.pipe.d.ts +0 -7
  568. package/lib/util/pipes/common-translate.pipe.d.ts +0 -12
  569. package/lib/util/pipes/display-html.pipe.d.ts +0 -10
  570. package/lib/util/pipes/display-null.pipe.d.ts +0 -8
  571. package/lib/util/pipes/format-currency.pipe.d.ts +0 -10
  572. package/lib/util/pipes/format-duration.pipe.d.ts +0 -7
  573. package/lib/util/pipes/format-number-input.pipe.d.ts +0 -7
  574. package/lib/util/pipes/local-date.pipe.d.ts +0 -9
  575. package/lib/util/pipes/my-number.pipe.d.ts +0 -11
  576. package/lib/util/pipes/third-party-address-search.pipe.d.ts +0 -8
  577. package/lib/util/pipes/third-party-address.pipe.d.ts +0 -8
  578. package/lib/util/pipes/trim-string.pipe.d.ts +0 -7
  579. package/lib/util/regex/regex.service.d.ts +0 -12
  580. package/lib/util/services/api/commercial-api.service.d.ts +0 -12
  581. package/lib/util/services/api/common-api.service.d.ts +0 -27
  582. package/lib/util/services/api/legal-api.service.d.ts +0 -15
  583. package/lib/util/services/api/video-api.service.d.ts +0 -17
  584. package/lib/util/services/auth/auth.service.d.ts +0 -9
  585. package/lib/util/services/elasticsearch/elasticsearch.service.d.ts +0 -35
  586. package/lib/util/services/elasticsearch/subsidiaries.service.d.ts +0 -12
  587. package/lib/util/services/form-action/form-actions-events.service.d.ts +0 -14
  588. package/lib/util/services/guard/auth.guard.d.ts +0 -2
  589. package/lib/util/services/guard/login.guard.d.ts +0 -1
  590. package/lib/util/services/history/history.service.d.ts +0 -10
  591. package/lib/util/services/interceptor/auth.interceptor.d.ts +0 -16
  592. package/lib/util/services/jwt-security/aes.service.d.ts +0 -12
  593. package/lib/util/services/jwt-security/interceptorhttp.service.d.ts +0 -8
  594. package/lib/util/services/jwt-security/jwt.helpher.d.ts +0 -4
  595. package/lib/util/services/storage/local-storage.service.d.ts +0 -13
  596. package/lib/util/services/storage/session-storage.service.d.ts +0 -13
  597. package/lib/util/services/translate-language/lang.service.d.ts +0 -14
  598. package/lib/util/services/user/user-subsidiary.service.d.ts +0 -9
  599. package/lib/util/sort.d.ts +0 -4
  600. package/lib/util/theme/theme-event.service.d.ts +0 -9
  601. package/lib/util/toaster/toaster-events.service.d.ts +0 -15
  602. package/lib/util/util.module.d.ts +0 -49
  603. /package/{lib/util/interfaces/permissions.interface.d.ts → src/lib/util/interfaces/permissions.interface.ts} +0 -0
@@ -1,166 +0,0 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { from } from 'rxjs';
3
- import { Client as ClientJs } from 'elasticsearch-browser';
4
- import { WEB_CONFIG } from '../../config';
5
- import { WorkRecordRapidSearchModel } from "../../models/commercial/work-record-rapid-search-model";
6
- import { InvoiceRapidSearchModel } from "../../models/commercial/invoice-rapid-search-model";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./subsidiaries.service";
9
- export class ElasticsearchService {
10
- constructor(config, subsidiariesMappingService) {
11
- this.config = config;
12
- this.subsidiariesMappingService = subsidiariesMappingService;
13
- this.PROFILE_SEARCH_CONFIG = {
14
- 'COMMERCIAL': ['unity-invoice*', 'unity-deal*', 'unity-work-record*'],
15
- 'ACCOUNTANT': ['unity-invoice*', 'unity-deal*', 'unity-work-record*'],
16
- 'ADMINISTRATIVE_CONTROLLER': ['unity-invoice*', 'unity-deal*', 'unity-work-record*'],
17
- 'VIDEO_CONSULT': ['unity-product*'],
18
- 'BDC': ['unity-purchase-order*'],
19
- 'LEGAL': ['unity-contract*'],
20
- 'ROYALTY': ['unity-royalty-contract'],
21
- };
22
- }
23
- getElasticsearchClient() {
24
- if (!this.client) {
25
- this.client = new ClientJs({
26
- host: this.config.elasticsearch_url
27
- });
28
- }
29
- return this.client;
30
- }
31
- getSearchResponse(text, user) {
32
- const allIndexes = new Set();
33
- allIndexes.add('unity-work-version*');
34
- allIndexes.add('unity-third-party*');
35
- for (const permission of user.permissions) {
36
- const indexes = this.PROFILE_SEARCH_CONFIG[permission.code];
37
- indexes?.forEach(idx => allIndexes.add(idx));
38
- }
39
- const body = [];
40
- for (const index of allIndexes) {
41
- body.push({ index });
42
- switch (index) {
43
- case 'unity-work-version*':
44
- body.push({
45
- query: {
46
- dis_max: {
47
- queries: [{ wildcard: { miloCode: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }, { wildcard: { title: { value: text + '*' } } }, { wildcard: { title: { value: text } } }],
48
- tie_breaker: 0.5
49
- }
50
- },
51
- sort: [{ _score: { order: 'desc' } }, { title: { order: "asc" } }],
52
- size: 50
53
- });
54
- break;
55
- case 'unity-product*':
56
- body.push({
57
- query: { dis_max: { queries: [{ wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { title: { value: '*' + text + '*' } } }] } },
58
- sort: { releaseDate: { order: 'desc' } },
59
- size: 50
60
- });
61
- break;
62
- case 'unity-purchase-order*':
63
- body.push({
64
- query: { dis_max: { queries: [{ wildcard: { poNumber: { value: '*' + text + '*' } } }, { wildcard: { ean: { value: '*' + text + '*' } } }, { wildcard: { basketNumber: { value: '*' + text + '*' } } }] } },
65
- size: 50
66
- });
67
- break;
68
- case 'unity-deal*':
69
- body.push({
70
- query: { dis_max: { queries: [{ wildcard: { dealNumber: { value: '*' + text + '*' } } }] } },
71
- sort: [{ _score: { order: 'desc' } }, { 'dealNumber.keyword': { order: 'asc' } }],
72
- size: 50
73
- });
74
- break;
75
- case 'unity-work-record*':
76
- body.push({
77
- query: { dis_max: { queries: [{ wildcard: { workRecordId: { value: '*' + text + '*' } } }] } },
78
- sort: [{ 'workRecordId.keyword': { order: 'asc' } }],
79
- size: 50
80
- });
81
- break;
82
- case 'unity-invoice*':
83
- body.push({
84
- query: { dis_max: { queries: [{ wildcard: { number: { value: '*' + text + '*' } } }] } },
85
- sort: [{ 'number.keyword': { order: 'asc' } }],
86
- size: 50
87
- });
88
- break;
89
- case 'unity-third-party*':
90
- body.push({
91
- query: {
92
- dis_max: {
93
- queries: [{ wildcard: { companyOrPersonName: { value: '*' + text + '*' } } }, { wildcard: { companyOrPersonName: { value: text + '*' } } }, { wildcard: { companyOrPersonName: { value: text } } }],
94
- tie_breaker: 0.5
95
- }
96
- },
97
- sort: [{ _score: { order: 'desc' } }, { companyOrPersonName: { order: 'asc' } }],
98
- size: 50
99
- });
100
- break;
101
- case 'unity-contract*':
102
- body.push({
103
- query: { bool: this.composeContractQuery(text, user.subsidiaries) },
104
- sort: [{ 'lisaId.keyword': { order: 'asc' } }],
105
- size: 50
106
- });
107
- break;
108
- case 'unity-royalty-contract':
109
- body.push({
110
- query: { dis_max: { queries: [{ wildcard: { contractNumber: { value: '*' + text + '*' } } }] } },
111
- sort: [{ 'contractNumber.keyword': { order: 'asc' } }],
112
- size: 50
113
- });
114
- break;
115
- }
116
- }
117
- return from(this.getElasticsearchClient().msearch({ body }));
118
- }
119
- getDocuments(searchResponse) {
120
- let results = [];
121
- if (searchResponse && searchResponse.responses) {
122
- for (const r of searchResponse.responses) {
123
- if (r.error || !r.hits) {
124
- continue;
125
- }
126
- const item = r.hits.hits && r.hits.hits.length > 0 ? r.hits.hits.map(v => this.mapDocument(v)) : [];
127
- results = results.concat(item);
128
- }
129
- }
130
- return results;
131
- }
132
- mapDocument(doc) {
133
- switch (doc._source.docType) {
134
- case 'INVOICE':
135
- return Object.assign(new InvoiceRapidSearchModel(), doc._source);
136
- case 'WORK_RECORD':
137
- return Object.assign(new WorkRecordRapidSearchModel(), doc._source);
138
- default:
139
- return doc._source;
140
- }
141
- }
142
- composeContractQuery(text, subsidiadies) {
143
- const societes = this.subsidiariesMappingService.getSocieteAppartenance(subsidiadies);
144
- const must = [
145
- { wildcard: { lisaId: { value: '*' + text + '*' } } }
146
- ];
147
- const should = [];
148
- should.push({ bool: { must_not: { exists: { field: 'societeAppartenance' } } } });
149
- if (societes && societes.length > 0) {
150
- should.push({ terms: { societeAppartenance: societes } });
151
- }
152
- const boolQuery = { must };
153
- boolQuery.should = should;
154
- boolQuery.minimum_should_match = 1;
155
- return boolQuery;
156
- }
157
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ElasticsearchService, deps: [{ token: WEB_CONFIG }, { token: i1.SubsidiariesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
158
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ElasticsearchService }); }
159
- }
160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ElasticsearchService, decorators: [{
161
- type: Injectable
162
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
163
- type: Inject,
164
- args: [WEB_CONFIG]
165
- }] }, { type: i1.SubsidiariesService }]; } });
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhc3RpY3NlYXJjaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV3LWZyb250LWNvbW1vbi1saWJyYXJ5L3NyYy9saWIvdXRpbC9zZXJ2aWNlcy9lbGFzdGljc2VhcmNoL2VsYXN0aWNzZWFyY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsSUFBSSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBQyxNQUFNLElBQUksUUFBUSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFJekQsT0FBTyxFQUFTLFVBQVUsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUloRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUVsRyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxvREFBb0QsQ0FBQzs7O0FBTTNGLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFBd0MsTUFBYyxFQUNsQywwQkFBK0M7UUFEM0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNsQywrQkFBMEIsR0FBMUIsMEJBQTBCLENBQXFCO1FBSW5FLDBCQUFxQixHQUFHO1lBQ3RCLFlBQVksRUFBRSxDQUFDLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxvQkFBb0IsQ0FBQztZQUNyRSxZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLENBQUM7WUFDckUsMkJBQTJCLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLENBQUM7WUFDcEYsZUFBZSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7WUFDbkMsS0FBSyxFQUFFLENBQUMsdUJBQXVCLENBQUM7WUFDaEMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDNUIsU0FBUyxF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O1lBQ2xCLEVBQUMsUUFBUSxFQUFFLEVBQUMsTUFBTSxFQUFFLEVBQUMsS0FBSyxFQUFFLEdBQUcsR0FBRyxJQUFJLEdBQUcsR0FBRyxFQUFDLEVBQUMsRUFBQztTQUNoRCxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQVUsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUUsRUFBQyxRQUFRLEVBQUUsRUFBQyxNQUFNLEVBQUUsRUFBQyxLQUFLLEVBQUUscUJBQXFCLEVBQUMsRUFBQyxFQUFDLEVBQUMsQ0FBQyxDQUFDO1FBQzFFLElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25DLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxLQUFLLEVBQUUsRUFBQyxtQkFBbUIsRUFBRSxRQUFRLEVBQUMsRUFBQyxDQUFDLENBQUM7U0FDdkQ7UUFDRCxNQUFNLFNBQVMsR0FBUSxFQUFDLElBQUksRUFBQyxDQUFDO1FBQzlCLFNBQVMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzFCLFNBQVMsQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7UUFDbkMsT0FBTyxTQUFTLENBQUE7SUFDbEIsQ0FBQzsrR0E5SlUsb0JBQW9CLGtCQUVYLFVBQVU7bUhBRm5CLG9CQUFvQjs7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVTs7MEJBR0ksTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtmcm9tLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q2xpZW50IGFzIENsaWVudEpzfSBmcm9tICdlbGFzdGljc2VhcmNoLWJyb3dzZXInO1xuaW1wb3J0IHtDbGllbnQsIE1TZWFyY2hSZXNwb25zZX0gZnJvbSAnZWxhc3RpY3NlYXJjaCc7XG5pbXBvcnQge1B1cmNoYXNlT3JkZXJSYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2V4cGVuZGl0dXJlLWNvbW1pdG1lbnQvcHVyY2hhc2Utb3JkZXItcmFwaWQtc2VhcmNoLm1vZGVsXCI7XG5pbXBvcnQge1Byb2R1Y3RSYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3ZpZGVvL3Byb2R1Y3QtcmFwaWQtc2VhcmNoLm1vZGVsXCI7XG5pbXBvcnQge0NvbmZpZywgV0VCX0NPTkZJR30gZnJvbSAnLi4vLi4vY29uZmlnJztcbmltcG9ydCB7V29ya1ZlcnNpb25SYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3JlZmVyZW50aWFsL3dvcmstdmVyc2lvbi1yYXBpZC1zZWFyY2gubW9kZWxcIjtcbmltcG9ydCB7RGVhbFJhcGlkU2VhcmNoTW9kZWx9IGZyb20gJy4uLy4uL21vZGVscy9jb21tZXJjaWFsL2RlYWwtcmFwaWQtc2VhcmNoLW1vZGVsJztcbmltcG9ydCB7VGhpcmRQYXJ0eVJhcGlkU2VhcmNoTW9kZWx9IGZyb20gXCIuLi8uLi9tb2RlbHMvcmVmZXJlbnRpYWwvdGhpcmQtcGFydHktcmFwaWQtc2VhcmNoLm1vZGVsXCI7XG5pbXBvcnQge1dvcmtSZWNvcmRSYXBpZFNlYXJjaE1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvbW1lcmNpYWwvd29yay1yZWNvcmQtcmFwaWQtc2VhcmNoLW1vZGVsXCI7XG5pbXBvcnQge0NvbnRyYWN0UmFwaWRTZWFyY2hNb2RlbH0gZnJvbSBcIi4uLy4uL21vZGVscy9sZWdhbC9jb250cmFjdC1yYXBpZC1zZWFyY2gtbW9kZWxcIjtcbmltcG9ydCB7SW52b2ljZVJhcGlkU2VhcmNoTW9kZWx9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29tbWVyY2lhbC9pbnZvaWNlLXJhcGlkLXNlYXJjaC1tb2RlbFwiO1xuaW1wb3J0IHtBdXRoVXNlck1vZGVsfSBmcm9tIFwiLi4vLi4vbW9kZWxzXCI7XG5pbXBvcnQge1N1YnNpZGlhcmllc1NlcnZpY2V9IGZyb20gXCIuL3N1YnNpZGlhcmllcy5zZXJ2aWNlXCI7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVsYXN0aWNzZWFyY2hTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFdFQl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgICAgICAgICAgIHByaXZhdGUgc3Vic2lkaWFyaWVzTWFwcGluZ1NlcnZpY2U6IFN1YnNpZGlhcmllc1NlcnZpY2UpIHtcbiAgfVxuXG4gIHByaXZhdGUgY2xpZW50OiBDbGllbnQ7XG4gIFBST0ZJTEVfU0VBUkNIX0NPTkZJRyA9IHtcbiAgICAnQ09NTUVSQ0lBTCc6IFsndW5pdHktaW52b2ljZSonLCAndW5pdHktZGVhbConLCAndW5pdHktd29yay1yZWNvcmQqJ10sXG4gICAgJ0FDQ09VTlRBTlQnOiBbJ3VuaXR5LWludm9pY2UqJywgJ3VuaXR5LWRlYWwqJywgJ3VuaXR5LXdvcmstcmVjb3JkKiddLFxuICAgICdBRE1JTklTVFJBVElWRV9DT05UUk9MTEVSJzogWyd1bml0eS1pbnZvaWNlKicsICd1bml0eS1kZWFsKicsICd1bml0eS13b3JrLXJlY29yZConXSxcbiAgICAnVklERU9fQ09OU1VMVCc6IFsndW5pdHktcHJvZHVjdConXSxcbiAgICAnQkRDJzogWyd1bml0eS1wdXJjaGFzZS1vcmRlcionXSxcbiAgICAnTEVHQUwnOiBbJ3VuaXR5LWNvbnRyYWN0KiddLFxuICAgICdST1lBTFRZJzogWyd1bml0eS1yb3lhbHR5LWNvbnRyYWN0J10sXG4gIH1cblxuICBwcml2YXRlIGdldEVsYXN0aWNzZWFyY2hDbGllbnQoKTogQ2xpZW50IHtcbiAgICBpZiAoIXRoaXMuY2xpZW50KSB7XG4gICAgICB0aGlzLmNsaWVudCA9IG5ldyBDbGllbnRKcyh7XG4gICAgICAgIGhvc3Q6IHRoaXMuY29uZmlnLmVsYXN0aWNzZWFyY2hfdXJsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2xpZW50O1xuICB9XG5cbiAgcHVibGljIGdldFNlYXJjaFJlc3BvbnNlKHRleHQ6IHN0cmluZywgdXNlcjogQXV0aFVzZXJNb2RlbCk6IE9ic2VydmFibGU8TVNlYXJjaFJlc3BvbnNlPGFueT4+IHtcbiAgICBjb25zdCBhbGxJbmRleGVzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIGFsbEluZGV4ZXMuYWRkKCd1bml0eS13b3JrLXZlcnNpb24qJylcbiAgICBhbGxJbmRleGVzLmFkZCgndW5pdHktdGhpcmQtcGFydHkqJylcblxuICAgIGZvciAoY29uc3QgcGVybWlzc2lvbiBvZiB1c2VyLnBlcm1pc3Npb25zKSB7XG4gICAgICBjb25zdCBpbmRleGVzID0gdGhpcy5QUk9GSUxFX1NFQVJDSF9DT05GSUdbcGVybWlzc2lvbi5jb2RlXTtcbiAgICAgIGluZGV4ZXM/LmZvckVhY2goaWR4ID0+IGFsbEluZGV4ZXMuYWRkKGlkeCkpO1xuICAgIH1cblxuICAgIGNvbnN0IGJvZHk6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCBpbmRleCBvZiBhbGxJbmRleGVzKSB7XG4gICAgICBib2R5LnB1c2goe2luZGV4fSk7XG4gICAgICBzd2l0Y2ggKGluZGV4KSB7XG4gICAgICAgIGNhc2UgJ3VuaXR5LXdvcmstdmVyc2lvbionIDpcbiAgICAgICAgICBib2R5LnB1c2goe1xuICAgICAgICAgICAgcXVlcnk6IHtcbiAgICAgICAgICAgICAgZGlzX21heDoge1xuICAgICAgICAgICAgICAgIHF1ZXJpZXM6IFt7d2lsZGNhcmQ6IHttaWxvQ29kZToge3ZhbHVlOiAnKicgKyB0ZXh0ICsgJyonfX19LCB7d2lsZGNhcmQ6IHt0aXRsZToge3ZhbHVlOiAnKicgKyB0ZXh0ICsgJyonfX19LCB7d2lsZGNhcmQ6IHt0aXRsZToge3ZhbHVlOiB0ZXh0ICsgJyonfX19LCB7d2lsZGNhcmQ6IHt0aXRsZToge3ZhbHVlOiB0ZXh0fX19XSxcbiAgICAgICAgICAgICAgICB0aWVfYnJlYWtlcjogMC41XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzb3J0OiBbe19zY29yZToge29yZGVyOiAnZGVzYyd9fSwge3RpdGxlOiB7b3JkZXI6IFwiYXNjXCJ9fV0sXG4gICAgICAgICAgICBzaXplOiA1MFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd1bml0eS1wcm9kdWN0KicgOlxuICAgICAgICAgIGJvZHkucHVzaCh7XG4gICAgICAgICAgICBxdWVyeToge2Rpc19tYXg6IHtxdWVyaWVzOiBbe3dpbGRjYXJkOiB7ZWFuOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge3RpdGxlOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX1dfX0sXG4gICAgICAgICAgICBzb3J0OiB7cmVsZWFzZURhdGU6IHtvcmRlcjogJ2Rlc2MnfX0sXG4gICAgICAgICAgICBzaXplOiA1MFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd1bml0eS1wdXJjaGFzZS1vcmRlcionIDpcbiAgICAgICAgICBib2R5LnB1c2goe1xuICAgICAgICAgICAgcXVlcnk6IHtkaXNfbWF4OiB7cXVlcmllczogW3t3aWxkY2FyZDoge3BvTnVtYmVyOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX0sIHt3aWxkY2FyZDoge2Vhbjoge3ZhbHVlOiAnKicgKyB0ZXh0ICsgJyonfX19LCB7d2lsZGNhcmQ6IHtiYXNrZXROdW1iZXI6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fV19fSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VuaXR5LWRlYWwqJyA6XG4gICAgICAgICAgYm9keS5wdXNoKHtcbiAgICAgICAgICAgIHF1ZXJ5OiB7ZGlzX21heDoge3F1ZXJpZXM6IFt7d2lsZGNhcmQ6IHtkZWFsTnVtYmVyOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX1dfX0sXG4gICAgICAgICAgICBzb3J0OiBbe19zY29yZToge29yZGVyOiAnZGVzYyd9fSwgeydkZWFsTnVtYmVyLmtleXdvcmQnOiB7b3JkZXI6ICdhc2MnfX1dLFxuICAgICAgICAgICAgc2l6ZTogNTBcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndW5pdHktd29yay1yZWNvcmQqJyA6XG4gICAgICAgICAgYm9keS5wdXNoKHtcbiAgICAgICAgICAgIHF1ZXJ5OiB7ZGlzX21heDoge3F1ZXJpZXM6IFt7d2lsZGNhcmQ6IHt3b3JrUmVjb3JkSWQ6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fV19fSxcbiAgICAgICAgICAgIHNvcnQ6IFt7J3dvcmtSZWNvcmRJZC5rZXl3b3JkJzoge29yZGVyOiAnYXNjJ319XSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VuaXR5LWludm9pY2UqJyA6XG4gICAgICAgICAgYm9keS5wdXNoKHtcbiAgICAgICAgICAgIHF1ZXJ5OiB7ZGlzX21heDoge3F1ZXJpZXM6IFt7d2lsZGNhcmQ6IHtudW1iZXI6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fV19fSxcbiAgICAgICAgICAgIHNvcnQ6IFt7J251bWJlci5rZXl3b3JkJzoge29yZGVyOiAnYXNjJ319XSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VuaXR5LXRoaXJkLXBhcnR5KicgOlxuICAgICAgICAgIGJvZHkucHVzaCh7XG4gICAgICAgICAgICBxdWVyeToge1xuICAgICAgICAgICAgICBkaXNfbWF4OiB7XG4gICAgICAgICAgICAgICAgcXVlcmllczogW3t3aWxkY2FyZDoge2NvbXBhbnlPclBlcnNvbk5hbWU6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fSwge3dpbGRjYXJkOiB7Y29tcGFueU9yUGVyc29uTmFtZToge3ZhbHVlOiB0ZXh0ICsgJyonfX19LCB7d2lsZGNhcmQ6IHtjb21wYW55T3JQZXJzb25OYW1lOiB7dmFsdWU6IHRleHR9fX1dLFxuICAgICAgICAgICAgICAgIHRpZV9icmVha2VyOiAwLjVcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNvcnQ6IFt7X3Njb3JlOiB7b3JkZXI6ICdkZXNjJ319LCB7Y29tcGFueU9yUGVyc29uTmFtZToge29yZGVyOiAnYXNjJ319XSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VuaXR5LWNvbnRyYWN0KicgOlxuICAgICAgICAgIGJvZHkucHVzaCh7XG4gICAgICAgICAgICBxdWVyeToge2Jvb2w6IHRoaXMuY29tcG9zZUNvbnRyYWN0UXVlcnkodGV4dCwgdXNlci5zdWJzaWRpYXJpZXMpfSxcbiAgICAgICAgICAgIHNvcnQ6IFt7J2xpc2FJZC5rZXl3b3JkJzoge29yZGVyOiAnYXNjJ319XSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VuaXR5LXJveWFsdHktY29udHJhY3QnIDpcbiAgICAgICAgICBib2R5LnB1c2goe1xuICAgICAgICAgICAgcXVlcnk6IHtkaXNfbWF4OiB7cXVlcmllczogW3t3aWxkY2FyZDoge2NvbnRyYWN0TnVtYmVyOiB7dmFsdWU6ICcqJyArIHRleHQgKyAnKid9fX1dfX0sXG4gICAgICAgICAgICBzb3J0OiBbeydjb250cmFjdE51bWJlci5rZXl3b3JkJzoge29yZGVyOiAnYXNjJ319XSxcbiAgICAgICAgICAgIHNpemU6IDUwXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmcm9tKHRoaXMuZ2V0RWxhc3RpY3NlYXJjaENsaWVudCgpLm1zZWFyY2goe2JvZHl9KSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RG9jdW1lbnRzKHNlYXJjaFJlc3BvbnNlOiBhbnkpOiAoUHVyY2hhc2VPcmRlclJhcGlkU2VhcmNoTW9kZWwgfCBQcm9kdWN0UmFwaWRTZWFyY2hNb2RlbCB8XG4gICAgV29ya1ZlcnNpb25SYXBpZFNlYXJjaE1vZGVsIHwgRGVhbFJhcGlkU2VhcmNoTW9kZWwgfCBXb3JrUmVjb3JkUmFwaWRTZWFyY2hNb2RlbCB8IFRoaXJkUGFydHlSYXBpZFNlYXJjaE1vZGVsIHwgQ29udHJhY3RSYXBpZFNlYXJjaE1vZGVsKVtdIHtcbiAgICBsZXQgcmVzdWx0cyA9IFtdO1xuICAgIGlmIChzZWFyY2hSZXNwb25zZSAmJiBzZWFyY2hSZXNwb25zZS5yZXNwb25zZXMpIHtcbiAgICAgIGZvciAoY29uc3QgciBvZiBzZWFyY2hSZXNwb25zZS5yZXNwb25zZXMpIHtcbiAgICAgICAgaWYgKHIuZXJyb3IgfHwgIXIuaGl0cykge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXRlbSA9IHIuaGl0cy5oaXRzICYmIHIuaGl0cy5oaXRzLmxlbmd0aCA+IDAgPyByLmhpdHMuaGl0cy5tYXAodiA9PiB0aGlzLm1hcERvY3VtZW50KHYpKSA6IFtdO1xuICAgICAgICByZXN1bHRzID0gcmVzdWx0cy5jb25jYXQoaXRlbSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHRzO1xuICB9XG5cbiAgbWFwRG9jdW1lbnQoZG9jOiBhbnkpOiBhbnkge1xuICAgIHN3aXRjaCAoZG9jLl9zb3VyY2UuZG9jVHlwZSkge1xuICAgICAgY2FzZSAnSU5WT0lDRSc6XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBJbnZvaWNlUmFwaWRTZWFyY2hNb2RlbCgpLCBkb2MuX3NvdXJjZSk7XG4gICAgICBjYXNlICdXT1JLX1JFQ09SRCc6XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBXb3JrUmVjb3JkUmFwaWRTZWFyY2hNb2RlbCgpLCBkb2MuX3NvdXJjZSk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZG9jLl9zb3VyY2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjb21wb3NlQ29udHJhY3RRdWVyeSh0ZXh0OiBzdHJpbmcsIHN1YnNpZGlhZGllcykge1xuICAgIGNvbnN0IHNvY2lldGVzID0gdGhpcy5zdWJzaWRpYXJpZXNNYXBwaW5nU2VydmljZS5nZXRTb2NpZXRlQXBwYXJ0ZW5hbmNlKHN1YnNpZGlhZGllcyk7XG4gICAgY29uc3QgbXVzdDogYW55W10gPSBbXG4gICAgICB7d2lsZGNhcmQ6IHtsaXNhSWQ6IHt2YWx1ZTogJyonICsgdGV4dCArICcqJ319fVxuICAgIF07XG4gICAgY29uc3Qgc2hvdWxkOiBhbnlbXSA9IFtdO1xuICAgIHNob3VsZC5wdXNoKHtib29sOiB7bXVzdF9ub3Q6IHtleGlzdHM6IHtmaWVsZDogJ3NvY2lldGVBcHBhcnRlbmFuY2UnfX19fSk7XG4gICAgaWYgKHNvY2lldGVzICYmIHNvY2lldGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHNob3VsZC5wdXNoKHt0ZXJtczoge3NvY2lldGVBcHBhcnRlbmFuY2U6IHNvY2lldGVzfX0pO1xuICAgIH1cbiAgICBjb25zdCBib29sUXVlcnk6IGFueSA9IHttdXN0fTtcbiAgICBib29sUXVlcnkuc2hvdWxkID0gc2hvdWxkO1xuICAgIGJvb2xRdWVyeS5taW5pbXVtX3Nob3VsZF9tYXRjaCA9IDE7XG4gICAgcmV0dXJuIGJvb2xRdWVyeVxuICB9XG5cbn1cbiJdfQ==
@@ -1,48 +0,0 @@
1
- import { inject, Injectable } from "@angular/core";
2
- import { LegalApiService } from "../api/legal-api.service";
3
- import * as i0 from "@angular/core";
4
- export class SubsidiariesService {
5
- constructor() {
6
- this.legalService = inject(LegalApiService);
7
- this.defaultMapping = {
8
- 1: [4991],
9
- 2: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990],
10
- 3: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990],
11
- 4: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990],
12
- 5: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990],
13
- 6: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990],
14
- 7: [332, 333, 334, 739, 335, 1379, 1380, 4988, 4990]
15
- };
16
- this.subsidiaryToSocieteMapLegal = {};
17
- this.loadTableSocieteAppartenance();
18
- }
19
- loadTableSocieteAppartenance() {
20
- this.legalService.getMappingSocietesSubsidiaries().subscribe({
21
- next: (map) => {
22
- this.subsidiaryToSocieteMapLegal = map;
23
- },
24
- error: () => {
25
- console.log('Default mapping for subsidiaryToSocieteMapLegal');
26
- this.subsidiaryToSocieteMapLegal = { ...this.defaultMapping };
27
- }
28
- });
29
- }
30
- getSocieteAppartenance(subsidiaries) {
31
- if (subsidiaries === null) {
32
- return null;
33
- }
34
- return subsidiaries
35
- .reduce((acc, sub) => {
36
- const societes = this.subsidiaryToSocieteMapLegal[sub.id] || [];
37
- return acc.concat(societes);
38
- }, [])
39
- .filter((v, i, arr) => arr.indexOf(v) === i);
40
- }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SubsidiariesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
42
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SubsidiariesService, providedIn: 'root' }); }
43
- }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SubsidiariesService, decorators: [{
45
- type: Injectable,
46
- args: [{ providedIn: 'root' }]
47
- }], ctorParameters: function () { return []; } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2lkaWFyaWVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXctZnJvbnQtY29tbW9uLWxpYnJhcnkvc3JjL2xpYi91dGlsL3NlcnZpY2VzL2VsYXN0aWNzZWFyY2gvc3Vic2lkaWFyaWVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDOztBQUd6RCxNQUFNLE9BQU8sbUJBQW1CO0lBZ0I5QjtRQWRpQixpQkFBWSxHQUFvQixNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFakUsbUJBQWMsR0FBNkI7WUFDakQsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO1lBQ1QsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7U0FDckQsQ0FBQTtRQUVPLGdDQUEyQixHQUE2QixFQUFFLENBQUM7UUFHakUsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUNELDRCQUE0QjtRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLDhCQUE4QixFQUFFLENBQUMsU0FBUyxDQUFDO1lBQzNELElBQUksRUFBRSxDQUFDLEdBQTZCLEVBQUUsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEdBQUcsQ0FBQztZQUN6QyxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDVixPQUFPLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7Z0JBQy9ELElBQUksQ0FBQywyQkFBMkIsR0FBRyxFQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBQyxDQUFDO1lBQzlELENBQUM7U0FDRixDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsc0JBQXNCLENBQUMsWUFBK0I7UUFDcEQsSUFBSSxZQUFZLEtBQUssSUFBSSxFQUFFO1lBQ3pCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLFlBQVk7YUFDaEIsTUFBTSxDQUFDLENBQUMsR0FBYSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzdCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2hFLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQ0wsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQzsrR0F6Q1UsbUJBQW1CO21IQUFuQixtQkFBbUIsY0FEUCxNQUFNOzs0RkFDbEIsbUJBQW1CO2tCQUQvQixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtTdWJzaWRpYXJ5TW9kZWx9IGZyb20gXCIuLi8uLi9tb2RlbHNcIjtcbmltcG9ydCB7TGVnYWxBcGlTZXJ2aWNlfSBmcm9tIFwiLi4vYXBpL2xlZ2FsLWFwaS5zZXJ2aWNlXCI7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFN1YnNpZGlhcmllc1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbGVnYWxTZXJ2aWNlOiBMZWdhbEFwaVNlcnZpY2UgPSBpbmplY3QoTGVnYWxBcGlTZXJ2aWNlKTtcblxuICBwcml2YXRlIGRlZmF1bHRNYXBwaW5nOiBSZWNvcmQ8bnVtYmVyLCBudW1iZXJbXT4gPSB7XG4gICAgMTogWzQ5OTFdLFxuICAgIDI6IFszMzIsIDMzMywgMzM0LCA3MzksIDMzNSwgMTM3OSwgMTM4MCwgNDk4OCwgNDk5MF0sXG4gICAgMzogWzMzMiwgMzMzLCAzMzQsIDczOSwgMzM1LCAxMzc5LCAxMzgwLCA0OTg4LCA0OTkwXSxcbiAgICA0OiBbMzMyLCAzMzMsIDMzNCwgNzM5LCAzMzUsIDEzNzksIDEzODAsIDQ5ODgsIDQ5OTBdLFxuICAgIDU6IFszMzIsIDMzMywgMzM0LCA3MzksIDMzNSwgMTM3OSwgMTM4MCwgNDk4OCwgNDk5MF0sXG4gICAgNjogWzMzMiwgMzMzLCAzMzQsIDczOSwgMzM1LCAxMzc5LCAxMzgwLCA0OTg4LCA0OTkwXSxcbiAgICA3OiBbMzMyLCAzMzMsIDMzNCwgNzM5LCAzMzUsIDEzNzksIDEzODAsIDQ5ODgsIDQ5OTBdXG4gIH1cblxuICBwcml2YXRlIHN1YnNpZGlhcnlUb1NvY2lldGVNYXBMZWdhbDogUmVjb3JkPG51bWJlciwgbnVtYmVyW10+ID0ge307XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sb2FkVGFibGVTb2NpZXRlQXBwYXJ0ZW5hbmNlKCk7XG4gIH1cbiAgbG9hZFRhYmxlU29jaWV0ZUFwcGFydGVuYW5jZSgpIHtcbiAgICB0aGlzLmxlZ2FsU2VydmljZS5nZXRNYXBwaW5nU29jaWV0ZXNTdWJzaWRpYXJpZXMoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKG1hcDogUmVjb3JkPG51bWJlciwgbnVtYmVyW10+KSA9PiB7XG4gICAgICAgIHRoaXMuc3Vic2lkaWFyeVRvU29jaWV0ZU1hcExlZ2FsID0gbWFwO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdEZWZhdWx0IG1hcHBpbmcgZm9yIHN1YnNpZGlhcnlUb1NvY2lldGVNYXBMZWdhbCcpO1xuICAgICAgICB0aGlzLnN1YnNpZGlhcnlUb1NvY2lldGVNYXBMZWdhbCA9IHsuLi50aGlzLmRlZmF1bHRNYXBwaW5nfTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgZ2V0U29jaWV0ZUFwcGFydGVuYW5jZShzdWJzaWRpYXJpZXM6IFN1YnNpZGlhcnlNb2RlbFtdKSB7XG4gICAgaWYgKHN1YnNpZGlhcmllcyA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBzdWJzaWRpYXJpZXNcbiAgICAgIC5yZWR1Y2UoKGFjYzogbnVtYmVyW10sIHN1YikgPT4ge1xuICAgICAgICBjb25zdCBzb2NpZXRlcyA9IHRoaXMuc3Vic2lkaWFyeVRvU29jaWV0ZU1hcExlZ2FsW3N1Yi5pZF0gfHwgW107XG4gICAgICAgIHJldHVybiBhY2MuY29uY2F0KHNvY2lldGVzKTtcbiAgICAgIH0sIFtdKVxuICAgICAgLmZpbHRlcigodiwgaSwgYXJyKSA9PiBhcnIuaW5kZXhPZih2KSA9PT0gaSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,25 +0,0 @@
1
- import { EventEmitter, Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class FormActionsEventsService {
4
- constructor() {
5
- this.updateEvent = new EventEmitter(true);
6
- this.consultToEdit = new EventEmitter(true);
7
- this.EditToConsult = new EventEmitter(true);
8
- this.consultToDuplicate = new EventEmitter(true);
9
- }
10
- emitUpdateEvent() {
11
- this.updateEvent.emit();
12
- }
13
- emitEventIsUpdateTrue() {
14
- this.consultToEdit.emit(true);
15
- }
16
- emitConsultEvent() {
17
- this.EditToConsult.emit();
18
- }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormActionsEventsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
20
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormActionsEventsService }); }
21
- }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormActionsEventsService, decorators: [{
23
- type: Injectable
24
- }], ctorParameters: function () { return []; } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hY3Rpb25zLWV2ZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV3LWZyb250LWNvbW1vbi1saWJyYXJ5L3NyYy9saWIvdXRpbC9zZXJ2aWNlcy9mb3JtLWFjdGlvbi9mb3JtLWFjdGlvbnMtZXZlbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR3pELE1BQU0sT0FBTyx3QkFBd0I7SUFPakM7UUFMTyxnQkFBVyxHQUEwQixJQUFJLFlBQVksQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUNyRSxrQkFBYSxHQUEwQixJQUFJLFlBQVksQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN2RSxrQkFBYSxHQUEwQixJQUFJLFlBQVksQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN2RSx1QkFBa0IsR0FBMEIsSUFBSSxZQUFZLENBQVUsSUFBSSxDQUFDLENBQUM7SUFHbkYsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0scUJBQXFCO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxnQkFBZ0I7UUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDOytHQXBCUSx3QkFBd0I7bUhBQXhCLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFEcEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRm9ybUFjdGlvbnNFdmVudHNTZXJ2aWNlIHtcblxuICAgIHB1YmxpYyB1cGRhdGVFdmVudDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPih0cnVlKTtcbiAgICBwdWJsaWMgY29uc3VsdFRvRWRpdDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPih0cnVlKTtcbiAgICBwdWJsaWMgRWRpdFRvQ29uc3VsdDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPih0cnVlKTtcbiAgICBwdWJsaWMgY29uc3VsdFRvRHVwbGljYXRlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KHRydWUpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGVtaXRVcGRhdGVFdmVudCgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVFdmVudC5lbWl0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGVtaXRFdmVudElzVXBkYXRlVHJ1ZSgpIHtcbiAgICAgICAgdGhpcy5jb25zdWx0VG9FZGl0LmVtaXQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGVtaXRDb25zdWx0RXZlbnQoKSB7XG4gICAgICAgIHRoaXMuRWRpdFRvQ29uc3VsdC5lbWl0KCk7XG4gICAgfVxufVxuIl19
@@ -1,32 +0,0 @@
1
- import { WEB_CONFIG } from '../../config';
2
- import { CookieService } from 'ngx-cookie-service';
3
- import { CommonApiService } from '../api/common-api.service';
4
- import { catchError, map } from 'rxjs/operators';
5
- import { inject } from '@angular/core';
6
- import { AuthService } from '../auth/auth.service';
7
- import { of } from "rxjs";
8
- export const authGuard = (route, state) => {
9
- const cookieService = inject(CookieService);
10
- const commonApiService = inject(CommonApiService);
11
- const webConfig = inject(WEB_CONFIG);
12
- const authService = inject(AuthService);
13
- if (state.url.includes('/login/invalid')) {
14
- return true;
15
- }
16
- if (commonApiService.isTokenValid()) {
17
- authService.setAuthenticated(true);
18
- return true;
19
- }
20
- const user = commonApiService.getUserDataFromToken();
21
- const email = user.secondary ? user.email : cookieService.get('auth-mail');
22
- return commonApiService.ssoLogin(email).pipe(map((data) => {
23
- user.secondary ? commonApiService.setSecondaryToken(data.token) : commonApiService.setToken(data.token);
24
- authService.setAuthenticated(true);
25
- return true;
26
- }), catchError(() => {
27
- authService.setAuthenticated(false);
28
- window.location.href = webConfig.api_url + '/login/invalid';
29
- return of(false);
30
- }));
31
- };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldy1mcm9udC1jb21tb24tbGlicmFyeS9zcmMvbGliL3V0aWwvc2VydmljZXMvZ3VhcmQvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFrQixDQUN0QyxLQUE2QixFQUM3QixLQUEwQixFQUMxQixFQUFFO0lBQ0YsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUV4QyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUU7UUFDeEMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELElBQUksZ0JBQWdCLENBQUMsWUFBWSxFQUFFLEVBQUU7UUFDbkMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxNQUFNLElBQUksR0FBa0IsZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUNwRSxNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRW5GLE9BQU8sZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEcsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsT0FBTyxHQUFHLGdCQUFnQixDQUFDO1FBQzVELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlRm4sIFJvdXRlclN0YXRlU25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgV0VCX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1vbkFwaVNlcnZpY2UgfSBmcm9tICcuLi9hcGkvY29tbW9uLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEF1dGhVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL2F1dGgvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IG9mIH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGNvbnN0IGF1dGhHdWFyZDogQ2FuQWN0aXZhdGVGbiA9IChcbiAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90XG4pID0+IHtcbiAgY29uc3QgY29va2llU2VydmljZSA9IGluamVjdChDb29raWVTZXJ2aWNlKTtcbiAgY29uc3QgY29tbW9uQXBpU2VydmljZSA9IGluamVjdChDb21tb25BcGlTZXJ2aWNlKTtcbiAgY29uc3Qgd2ViQ29uZmlnID0gaW5qZWN0KFdFQl9DT05GSUcpO1xuICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG5cbiAgaWYgKHN0YXRlLnVybC5pbmNsdWRlcygnL2xvZ2luL2ludmFsaWQnKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKGNvbW1vbkFwaVNlcnZpY2UuaXNUb2tlblZhbGlkKCkpIHtcbiAgICBhdXRoU2VydmljZS5zZXRBdXRoZW50aWNhdGVkKHRydWUpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3QgdXNlcjogQXV0aFVzZXJNb2RlbCA9IGNvbW1vbkFwaVNlcnZpY2UuZ2V0VXNlckRhdGFGcm9tVG9rZW4oKTtcbiAgY29uc3QgZW1haWw6IHN0cmluZyA9IHVzZXIuc2Vjb25kYXJ5ID8gdXNlci5lbWFpbCA6IGNvb2tpZVNlcnZpY2UuZ2V0KCdhdXRoLW1haWwnKTtcblxuICByZXR1cm4gY29tbW9uQXBpU2VydmljZS5zc29Mb2dpbihlbWFpbCkucGlwZShcbiAgICBtYXAoKGRhdGEpID0+IHtcbiAgICAgIHVzZXIuc2Vjb25kYXJ5ID8gY29tbW9uQXBpU2VydmljZS5zZXRTZWNvbmRhcnlUb2tlbihkYXRhLnRva2VuKSA6IGNvbW1vbkFwaVNlcnZpY2Uuc2V0VG9rZW4oZGF0YS50b2tlbik7XG4gICAgICBhdXRoU2VydmljZS5zZXRBdXRoZW50aWNhdGVkKHRydWUpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSksXG4gICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICBhdXRoU2VydmljZS5zZXRBdXRoZW50aWNhdGVkKGZhbHNlKTtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gd2ViQ29uZmlnLmFwaV91cmwgKyAnL2xvZ2luL2ludmFsaWQnO1xuICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICB9KVxuICApO1xufTtcbiJdfQ==
@@ -1,23 +0,0 @@
1
- import { inject } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
- import { MyDialogPopupLoginComponent } from '../../component/popup/popup-login/popup-login.component';
4
- import { AuthService } from '../auth/auth.service';
5
- import { map } from "rxjs/operators";
6
- export const loginGuard = () => {
7
- const dialog = inject(MatDialog);
8
- const authService = inject(AuthService);
9
- if (sessionStorage.getItem('authToken') !== null) {
10
- authService.setAuthenticated(true);
11
- return true;
12
- }
13
- else {
14
- const dialogRef = dialog.open(MyDialogPopupLoginComponent, {
15
- disableClose: true
16
- });
17
- return dialogRef.afterClosed().pipe(map((res) => {
18
- authService.setAuthenticated(res);
19
- return res;
20
- }));
21
- }
22
- };
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXctZnJvbnQtY29tbW9uLWxpYnJhcnkvc3JjL2xpYi91dGlsL3NlcnZpY2VzL2d1YXJkL2xvZ2luLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEdBQUcsRUFBRTtJQUMzQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFDLElBQUksY0FBYyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDOUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7U0FBTTtRQUNMLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDekQsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsQ0FBQyxHQUFZLEVBQUUsRUFBRTtZQUNuQixXQUFXLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbEMsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FDSCxDQUFDO0tBQ0g7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNeURpYWxvZ1BvcHVwTG9naW5Db21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnQvcG9wdXAvcG9wdXAtbG9naW4vcG9wdXAtbG9naW4uY29tcG9uZW50JztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHttYXB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5leHBvcnQgY29uc3QgbG9naW5HdWFyZCA9ICgpID0+IHtcbiAgICBjb25zdCBkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcbiAgICBjb25zdCBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG5cbiAgaWYgKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ2F1dGhUb2tlbicpICE9PSBudWxsKSB7XG4gICAgICBhdXRoU2VydmljZS5zZXRBdXRoZW50aWNhdGVkKHRydWUpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gZGlhbG9nLm9wZW4oTXlEaWFsb2dQb3B1cExvZ2luQ29tcG9uZW50LCB7XG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWVcbiAgICB9KTtcblxuICAgIHJldHVybiBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5waXBlKFxuICAgICAgbWFwKChyZXM6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgYXV0aFNlcnZpY2Uuc2V0QXV0aGVudGljYXRlZChyZXMpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59O1xuIl19
@@ -1,39 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../storage/local-storage.service";
4
- export class HistoryService {
5
- constructor(localStorage) {
6
- this.localStorage = localStorage;
7
- }
8
- add(type, id, ref) {
9
- let history = [];
10
- if (this.localStorage.exist('history')) {
11
- history = this.localStorage.get('history');
12
- }
13
- // DELETE EXISTING SCREEN
14
- history.forEach((element, index) => {
15
- if (this.exist(type, id, ref, element))
16
- history.splice(index, 1);
17
- });
18
- // ADD THE LAST CONSULTED SCREEN TO THE BEGINNING
19
- history.unshift({ type: type, id: id, ref: ref });
20
- // SHOW ONLY THE 10 LAST CONSULTED SCREENS
21
- if (history.length >= 10) {
22
- history = history.slice(0, 10);
23
- }
24
- // POST TO LOCAL STORAGE
25
- this.localStorage.post('history', history);
26
- }
27
- exist(type, id, ref, history) {
28
- if (type == history.type && id == history.id && ref == history.ref) {
29
- return true;
30
- }
31
- return false;
32
- }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HistoryService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
34
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HistoryService }); }
35
- }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HistoryService, decorators: [{
37
- type: Injectable
38
- }], ctorParameters: function () { return [{ type: i1.LocalStorageService }]; } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV3LWZyb250LWNvbW1vbi1saWJyYXJ5L3NyYy9saWIvdXRpbC9zZXJ2aWNlcy9oaXN0b3J5L2hpc3Rvcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJM0MsTUFBTSxPQUFPLGNBQWM7SUFFdkIsWUFBb0IsWUFBaUM7UUFBakMsaUJBQVksR0FBWixZQUFZLENBQXFCO0lBQ3JELENBQUM7SUFFTSxHQUFHLENBQUMsSUFBd0csRUFBRSxFQUFVLEVBQUUsR0FBUTtRQUNySSxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNwQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDOUM7UUFDRCx5QkFBeUI7UUFDekIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMvQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDO2dCQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsaURBQWlEO1FBQ2pELE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7UUFFaEQsMENBQTBDO1FBQzFDLElBQUksT0FBTyxDQUFDLE1BQU0sSUFBSSxFQUFFLEVBQUU7WUFDdEIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ2xDO1FBRUQsd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU8sS0FBSyxDQUFDLElBQXdHLEVBQUUsRUFBVSxFQUFFLEdBQVcsRUFBRSxPQUFZO1FBQ3pKLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxFQUFFLElBQUksR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDaEUsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7K0dBL0JRLGNBQWM7bUhBQWQsY0FBYzs7NEZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIaXN0b3J5U2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvY2FsU3RvcmFnZTogTG9jYWxTdG9yYWdlU2VydmljZSkge1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGQodHlwZTogJ1BST0RVQ1QnIHwgJ1BPJyB8ICdERUFMJyB8ICdXT1JLJyB8ICdDT05UUkFDVF9BQ1EnIHwgJ0NPTlRSQUNUX0NFU1MnIHwgJ0NPTlRSQUNUX0FVVEgnIHwgJ0JVREdFVCcsIGlkOiBzdHJpbmcsIHJlZjogYW55KSB7XG4gICAgICAgIGxldCBoaXN0b3J5ID0gW107XG4gICAgICAgIGlmICh0aGlzLmxvY2FsU3RvcmFnZS5leGlzdCgnaGlzdG9yeScpKSB7XG4gICAgICAgICAgICBoaXN0b3J5ID0gdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0KCdoaXN0b3J5Jyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gREVMRVRFIEVYSVNUSU5HIFNDUkVFTlxuICAgICAgICBoaXN0b3J5LmZvckVhY2goKGVsZW1lbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5leGlzdCh0eXBlLCBpZCwgcmVmLCBlbGVtZW50KSkgaGlzdG9yeS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gQUREIFRIRSBMQVNUIENPTlNVTFRFRCBTQ1JFRU4gVE8gVEhFIEJFR0lOTklOR1xuICAgICAgICBoaXN0b3J5LnVuc2hpZnQoe3R5cGU6IHR5cGUsIGlkOiBpZCwgcmVmOiByZWZ9KTtcblxuICAgICAgICAvLyBTSE9XIE9OTFkgVEhFIDEwIExBU1QgQ09OU1VMVEVEIFNDUkVFTlNcbiAgICAgICAgaWYgKGhpc3RvcnkubGVuZ3RoID49IDEwKSB7XG4gICAgICAgICAgICBoaXN0b3J5ID0gaGlzdG9yeS5zbGljZSgwLCAxMCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQT1NUIFRPIExPQ0FMIFNUT1JBR0VcbiAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2UucG9zdCgnaGlzdG9yeScsIGhpc3RvcnkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZXhpc3QodHlwZTogJ1BST0RVQ1QnIHwgJ1BPJyB8ICdERUFMJyB8ICdXT1JLJyB8ICdDT05UUkFDVF9BQ1EnIHwgJ0NPTlRSQUNUX0NFU1MnIHwgJ0NPTlRSQUNUX0FVVEgnIHwgJ0JVREdFVCcsIGlkOiBzdHJpbmcsIHJlZjogc3RyaW5nLCBoaXN0b3J5OiBhbnkpIHtcbiAgICAgICAgaWYgKHR5cGUgPT0gaGlzdG9yeS50eXBlICYmIGlkID09IGhpc3RvcnkuaWQgJiYgcmVmID09IGhpc3RvcnkucmVmKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG59XG4iXX0=
@@ -1,53 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { filter, switchMap, take } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../api/common-api.service";
6
- import * as i2 from "ngx-cookie-service";
7
- export class AuthInterceptor {
8
- constructor(authService, cookieService) {
9
- this.authService = authService;
10
- this.cookieService = cookieService;
11
- this.refreshTokenInProgress = false;
12
- this.refreshTokenSubject = new BehaviorSubject(null);
13
- }
14
- intercept(request, next) {
15
- if (request.url.includes('/login/email') || request.url.includes('/login/findUser') || request.url.startsWith('./')) {
16
- return next.handle(request);
17
- }
18
- if (!this.authService.isTokenValid()) {
19
- if (this.refreshTokenInProgress) {
20
- return this.refreshTokenSubject.pipe(filter((result) => result !== null), take(1), switchMap(() => next.handle(this.addToken(request))));
21
- }
22
- else {
23
- this.refreshTokenInProgress = true;
24
- this.refreshTokenSubject.next(null);
25
- const user = this.authService.getUserDataFromToken();
26
- const email = user.secondary ? user.email : this.cookieService.get('auth-mail');
27
- return this.authService.ssoLogin(email)
28
- .pipe(switchMap((data) => {
29
- this.authService.setToken(data.token);
30
- this.refreshTokenInProgress = false;
31
- this.refreshTokenSubject.next(data.token);
32
- return next.handle(this.addToken(request));
33
- }));
34
- }
35
- }
36
- return next.handle(this.addToken(request));
37
- }
38
- addToken(request) {
39
- const token = this.authService.getToken();
40
- if (!token) {
41
- return request;
42
- }
43
- return request.clone({
44
- headers: request.headers.set('Authorization', `Bearer ${token}`)
45
- });
46
- }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthInterceptor, deps: [{ token: i1.CommonApiService }, { token: i2.CookieService }], target: i0.ɵɵFactoryTarget.Injectable }); }
48
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthInterceptor }); }
49
- }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthInterceptor, decorators: [{
51
- type: Injectable
52
- }], ctorParameters: function () { return [{ type: i1.CommonApiService }, { type: i2.CookieService }]; } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldy1mcm9udC1jb21tb24tbGlicmFyeS9zcmMvbGliL3V0aWwvc2VydmljZXMvaW50ZXJjZXB0b3IvYXV0aC5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNekQsTUFBTSxPQUFPLGVBQWU7SUFPeEIsWUFDWSxXQUE2QixFQUM3QixhQUE0QjtRQUQ1QixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0Isa0JBQWEsR0FBYixhQUFhLENBQWU7UUFQaEMsMkJBQXNCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLHdCQUFtQixHQUF5QixJQUFJLGVBQWUsQ0FDbkUsSUFBSSxDQUNQLENBQUM7SUFNRixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDbEQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pILE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMvQjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQ2xDLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO2dCQUM3QixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQ2hDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxFQUNuQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ3ZELENBQUM7YUFDTDtpQkFBTTtnQkFDSCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO2dCQUNuQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwQyxNQUFNLElBQUksR0FBa0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO2dCQUNwRSxNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFFeEYsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7cUJBQ2xDLElBQUksQ0FDRCxTQUFTLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtvQkFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN0QyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO29CQUNwQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDMUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDL0MsQ0FBQyxDQUFDLENBQ0wsQ0FBQzthQUNUO1NBQ0o7UUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTyxRQUFRLENBQUMsT0FBeUI7UUFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1IsT0FBTyxPQUFPLENBQUM7U0FDbEI7UUFFRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDakIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxVQUFVLEtBQUssRUFBRSxDQUFDO1NBQ25FLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBdkRRLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XG5pbXBvcnQgeyBDb21tb25BcGlTZXJ2aWNlIH0gZnJvbSAnLi4vYXBpL2NvbW1vbi1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgICBwcml2YXRlIHJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICBwcml2YXRlIHJlZnJlc2hUb2tlblN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KFxuICAgICAgICBudWxsXG4gICAgKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBDb21tb25BcGlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2VcbiAgICApIHtcbiAgICB9XG5cbiAgICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgICAgIGlmIChyZXF1ZXN0LnVybC5pbmNsdWRlcygnL2xvZ2luL2VtYWlsJykgfHwgcmVxdWVzdC51cmwuaW5jbHVkZXMoJy9sb2dpbi9maW5kVXNlcicpIHx8IHJlcXVlc3QudXJsLnN0YXJ0c1dpdGgoJy4vJykpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5hdXRoU2VydmljZS5pc1Rva2VuVmFsaWQoKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcykge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QucGlwZShcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyKChyZXN1bHQpID0+IHJlc3VsdCAhPT0gbnVsbCksXG4gICAgICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiBuZXh0LmhhbmRsZSh0aGlzLmFkZFRva2VuKHJlcXVlc3QpKSlcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5uZXh0KG51bGwpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHVzZXI6IEF1dGhVc2VyTW9kZWwgPSB0aGlzLmF1dGhTZXJ2aWNlLmdldFVzZXJEYXRhRnJvbVRva2VuKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgZW1haWw6IHN0cmluZyA9IHVzZXIuc2Vjb25kYXJ5ID8gdXNlci5lbWFpbCA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ2F1dGgtbWFpbCcpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXV0aFNlcnZpY2Uuc3NvTG9naW4oZW1haWwpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnNldFRva2VuKGRhdGEudG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5uZXh0KGRhdGEudG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZSh0aGlzLmFkZFRva2VuKHJlcXVlc3QpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUodGhpcy5hZGRUb2tlbihyZXF1ZXN0KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRUb2tlbihyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogSHR0cFJlcXVlc3Q8YW55PiB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5hdXRoU2VydmljZS5nZXRUb2tlbigpO1xuICAgICAgICBpZiAoIXRva2VuKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVxdWVzdDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVycy5zZXQoJ0F1dGhvcml6YXRpb24nLCBgQmVhcmVyICR7dG9rZW59YClcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -1,34 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as CryptoJS from 'crypto-js';
3
- import * as i0 from "@angular/core";
4
- export class AesService {
5
- // private cipherText: string;
6
- constructor() {
7
- // private SECRET_CODE: string ;
8
- this.SECRET_CODE = '1234567891234567';
9
- this.keySize = 128 / 32;
10
- this.iterationCount = 1000;
11
- }
12
- generateKey(salt) {
13
- // this.SECRET_CODE = sessionStorage.getItem('_uniqueKey');
14
- const key = CryptoJS.PBKDF2(this.SECRET_CODE, CryptoJS.enc.Hex.parse(salt), { keySize: this.keySize, iterations: this.iterationCount });
15
- return key;
16
- }
17
- encrypt(planText) {
18
- const iv = CryptoJS.lib.WordArray.random(16).toString(CryptoJS.enc.Hex);
19
- const salt = CryptoJS.lib.WordArray.random(16).toString(CryptoJS.enc.Hex);
20
- const key = this.generateKey(salt);
21
- const encrypted = CryptoJS.AES.encrypt(planText, key, { iv: CryptoJS.enc.Hex.parse(iv) });
22
- const cipherText = encrypted.ciphertext.toString(CryptoJS.enc.Base64);
23
- const aesPassword = (iv + '::' + salt + '::' + cipherText);
24
- // conversion en base 64
25
- this.pwdEncrypted = btoa(aesPassword);
26
- return this.pwdEncrypted;
27
- }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AesService }); }
30
- }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AesService, decorators: [{
32
- type: Injectable
33
- }], ctorParameters: function () { return []; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXctZnJvbnQtY29tbW9uLWxpYnJhcnkvc3JjL2xpYi91dGlsL3NlcnZpY2VzL2p3dC1zZWN1cml0eS9hZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxRQUFRLE1BQU0sV0FBVyxDQUFDOztBQUd0QyxNQUFNLE9BQU8sVUFBVTtJQVVuQiw4QkFBOEI7SUFFOUI7UUFWQSxnQ0FBZ0M7UUFDZixnQkFBVyxHQUFXLGtCQUFrQixDQUFDO1FBQ2xELFlBQU8sR0FBVyxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQzNCLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBUTlCLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBWTtRQUUzQiwyREFBMkQ7UUFDM0QsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FDdkIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUM1QixFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFDLENBQUMsQ0FBQztRQUU5RCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFTSxPQUFPLENBQUMsUUFBZ0I7UUFDM0IsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUUxRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5DLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsRUFBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztRQUV4RixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXRFLE1BQU0sV0FBVyxHQUFHLENBQUMsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQzNELHdCQUF3QjtRQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV0QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDN0IsQ0FBQzsrR0F6Q1EsVUFBVTttSEFBVixVQUFVOzs0RkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgQ3J5cHRvSlMgZnJvbSAnY3J5cHRvLWpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFlc1NlcnZpY2Uge1xuXG4gICAgLy8gcHJpdmF0ZSBTRUNSRVRfQ09ERTogc3RyaW5nIDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFNFQ1JFVF9DT0RFOiBzdHJpbmcgPSAnMTIzNDU2Nzg5MTIzNDU2Nyc7XG4gICAgcHJpdmF0ZSBrZXlTaXplOiBudW1iZXIgPSAxMjggLyAzMjtcbiAgICBwcml2YXRlIGl0ZXJhdGlvbkNvdW50ID0gMTAwMDtcbiAgICAvLyBwcml2YXRlICBpdjogc3RyaW5nICA7XG4gICAgLy8gcHJpdmF0ZSBzYWx0OiBzdHJpbmcgO1xuICAgIHByaXZhdGUgcHdkRW5jcnlwdGVkOiBzdHJpbmc7XG5cbiAgICAvLyBwcml2YXRlIGNpcGhlclRleHQ6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgIH1cblxuICAgIHB1YmxpYyBnZW5lcmF0ZUtleShzYWx0OiBzdHJpbmcpIHtcblxuICAgICAgICAvLyB0aGlzLlNFQ1JFVF9DT0RFID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnX3VuaXF1ZUtleScpO1xuICAgICAgICBjb25zdCBrZXkgPSBDcnlwdG9KUy5QQktERjIoXG4gICAgICAgICAgICB0aGlzLlNFQ1JFVF9DT0RFLFxuICAgICAgICAgICAgQ3J5cHRvSlMuZW5jLkhleC5wYXJzZShzYWx0KSxcbiAgICAgICAgICAgIHtrZXlTaXplOiB0aGlzLmtleVNpemUsIGl0ZXJhdGlvbnM6IHRoaXMuaXRlcmF0aW9uQ291bnR9KTtcblxuICAgICAgICByZXR1cm4ga2V5O1xuICAgIH1cblxuICAgIHB1YmxpYyBlbmNyeXB0KHBsYW5UZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgaXYgPSBDcnlwdG9KUy5saWIuV29yZEFycmF5LnJhbmRvbSgxNikudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLkhleCk7XG4gICAgICAgIGNvbnN0IHNhbHQgPSBDcnlwdG9KUy5saWIuV29yZEFycmF5LnJhbmRvbSgxNikudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLkhleCk7XG5cbiAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5nZW5lcmF0ZUtleShzYWx0KTtcblxuICAgICAgICBjb25zdCBlbmNyeXB0ZWQgPSBDcnlwdG9KUy5BRVMuZW5jcnlwdChwbGFuVGV4dCwga2V5LCB7aXY6IENyeXB0b0pTLmVuYy5IZXgucGFyc2UoaXYpfSk7XG5cbiAgICAgICAgY29uc3QgY2lwaGVyVGV4dCA9IGVuY3J5cHRlZC5jaXBoZXJ0ZXh0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5CYXNlNjQpO1xuXG4gICAgICAgIGNvbnN0IGFlc1Bhc3N3b3JkID0gKGl2ICsgJzo6JyArIHNhbHQgKyAnOjonICsgY2lwaGVyVGV4dCk7XG4gICAgICAgIC8vIGNvbnZlcnNpb24gZW4gYmFzZSA2NFxuICAgICAgICB0aGlzLnB3ZEVuY3J5cHRlZCA9IGJ0b2EoYWVzUGFzc3dvcmQpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnB3ZEVuY3J5cHRlZDtcbiAgICB9XG5cbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- const AUTH_HEADER_KEY = 'Authorization';
4
- const AUTH_PREFIX = 'Bearer ';
5
- const TOKEN_NAME = 'authToken';
6
- export class InterceptorHttpService {
7
- intercept(req, next) {
8
- const token = `${AUTH_PREFIX}${sessionStorage.getItem(TOKEN_NAME)}`;
9
- req.headers.set(AUTH_HEADER_KEY, `${AUTH_PREFIX} ${token}`);
10
- return next.handle(req);
11
- }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InterceptorHttpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
13
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InterceptorHttpService }); }
14
- }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InterceptorHttpService, decorators: [{
16
- type: Injectable
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3JodHRwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXctZnJvbnQtY29tbW9uLWxpYnJhcnkvc3JjL2xpYi91dGlsL3NlcnZpY2VzL2p3dC1zZWN1cml0eS9pbnRlcmNlcHRvcmh0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkzQyxNQUFNLGVBQWUsR0FBRyxlQUFlLENBQUM7QUFDeEMsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUFDO0FBQzlCLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQztBQUcvQixNQUFNLE9BQU8sc0JBQXNCO0lBRS9CLFNBQVMsQ0FBQyxHQUFxQixFQUFFLElBQWlCO1FBQzlDLE1BQU0sS0FBSyxHQUFHLEdBQUcsV0FBVyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUNwRSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxXQUFXLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDNUIsQ0FBQzsrR0FOUSxzQkFBc0I7bUhBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEhhbmRsZXIsIEh0dHBJbnRlcmNlcHRvciwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmNvbnN0IEFVVEhfSEVBREVSX0tFWSA9ICdBdXRob3JpemF0aW9uJztcbmNvbnN0IEFVVEhfUFJFRklYID0gJ0JlYXJlciAnO1xuY29uc3QgVE9LRU5fTkFNRSA9ICdhdXRoVG9rZW4nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSW50ZXJjZXB0b3JIdHRwU2VydmljZSBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSBgJHtBVVRIX1BSRUZJWH0ke3Nlc3Npb25TdG9yYWdlLmdldEl0ZW0oVE9LRU5fTkFNRSl9YDtcbiAgICAgICAgcmVxLmhlYWRlcnMuc2V0KEFVVEhfSEVBREVSX0tFWSwgYCR7QVVUSF9QUkVGSVh9ICR7dG9rZW59YCk7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xuICAgIH1cblxuICAgIC8vIFRPRE8gw6AgcmVmYWlyZSBsb3JzcXVlIGwnb24gcsOpYWN0aXZlcmEgbCdpbnRlcmNlcHRvciBkdSBCQUNLIGQnb3JwaGVcbiAgICAvLyBwdWJsaWMgcmVxdWVzdCh1cmw6IHN0cmluZyB8IFJlcXVlc3QpOiBPYnNlcnZhYmxlPFJlc3BvbnNlPiB7XG4gICAgLy9cbiAgICAvLyAgIGNvbnN0IHRva2VuID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShUT0tFTl9OQU1FKTtcbiAgICAvL1xuICAgIC8vICAgY29uc3Qgb3B0aW9ucyA9IHtoZWFkZXJzOiBuZXcgSGVhZGVycygpfTtcbiAgICAvLyAgIGlmICh0eXBlb2YgdXJsID09PSAnc3RyaW5nJykge1xuICAgIC8vXG4gICAgLy8gICAgIG9wdGlvbnMuaGVhZGVycy5zZXQoQVVUSF9IRUFERVJfS0VZLCBgJHtBVVRIX1BSRUZJWH0gJHt0b2tlbn1gKTtcbiAgICAvLyAgIH0gZWxzZSB7XG4gICAgLy8gICAgIHVybC5oZWFkZXJzLnNldChBVVRIX0hFQURFUl9LRVksIGAke0FVVEhfUFJFRklYfSAke3Rva2VufWApO1xuICAgIC8vICAgfVxuICAgIC8vICAgcmV0dXJuIHN1cGVyLnJlcXVlc3QodXJsLCBvcHRpb25zKS5jYXRjaCh0aGlzLmNhdGNoRXJyb3IpO1xuICAgIC8vIH1cbiAgICAvL1xuICAgIC8vIHB1YmxpYyBnZXQodXJsOiBzdHJpbmcsIG9wdGlvbnM/KTogT2JzZXJ2YWJsZTxSZXNwb25zZT4ge1xuICAgIC8vICAgY29uc3QgZW5oYWNlZE9wdGlvbnMgPSB0aGlzLnNldEF1dGhvcml6YXRpb25IZWFkZXIob3B0aW9ucyk7XG4gICAgLy8gICByZXR1cm4gc3VwZXIuZ2V0KHVybCwgZW5oYWNlZE9wdGlvbnMpLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmNhdGNoRXJyb3IpKTtcbiAgICAvLyB9XG4gICAgLy9cbiAgICAvLyBwdWJsaWMgcG9zdCh1cmw6IHN0cmluZywgYm9keTogYW55LCBvcHRpb25zPyk6IE9ic2VydmFibGU8UmVzcG9uc2U+IHtcbiAgICAvLyAgIGNvbnN0IGVuaGFjZWRPcHRpb25zID0gdGhpcy5zZXRBdXRob3JpemF0aW9uSGVhZGVyKG9wdGlvbnMpO1xuICAgIC8vICAgcmV0dXJuIHN1cGVyLnBvc3QodXJsLCBib2R5LCBlbmhhY2VkT3B0aW9ucykucGlwZShjYXRjaEVycm9yKHRoaXMuY2F0Y2hFcnJvcikpO1xuICAgIC8vIH1cbiAgICAvL1xuICAgIC8vIHB1YmxpYyBwdXQodXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgb3B0aW9ucz8pOiBPYnNlcnZhYmxlPFJlc3BvbnNlPiB7XG4gICAgLy8gICBjb25zdCBlbmhhY2VkT3B0aW9ucyA9IHRoaXMuc2V0QXV0aG9yaXphdGlvbkhlYWRlcihvcHRpb25zKTtcbiAgICAvLyAgIHJldHVybiBzdXBlci5wdXQodXJsLCBib2R5LCBlbmhhY2VkT3B0aW9ucykucGlwZShjYXRjaEVycm9yKHRoaXMuY2F0Y2hFcnJvcikpO1xuICAgIC8vIH1cbiAgICAvL1xuICAgIC8vIHB1YmxpYyBkZWxldGUodXJsOiBzdHJpbmcsIG9wdGlvbnM/KTogT2JzZXJ2YWJsZTxSZXNwb25zZT4ge1xuICAgIC8vICAgY29uc3QgZW5oYWNlZE9wdGlvbnMgPSB0aGlzLnNldEF1dGhvcml6YXRpb25IZWFkZXIob3B0aW9ucyk7XG4gICAgLy8gICByZXR1cm4gc3VwZXIuZGVsZXRlKHVybCwgZW5oYWNlZE9wdGlvbnMpLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmNhdGNoRXJyb3IpKTtcbiAgICAvLyB9XG4gICAgLy9cbiAgICAvLyBwdWJsaWMgcGF0Y2godXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgb3B0aW9ucz8pOiBPYnNlcnZhYmxlPFJlc3BvbnNlPiB7XG4gICAgLy8gICBjb25zdCBlbmhhY2VkT3B0aW9ucyA9IHRoaXMuc2V0QXV0aG9yaXphdGlvbkhlYWRlcihvcHRpb25zKTtcbiAgICAvLyAgIHJldHVybiBzdXBlci5wYXRjaCh1cmwsIGJvZHksIGVuaGFjZWRPcHRpb25zKS5waXBlKGNhdGNoRXJyb3IodGhpcy5jYXRjaEVycm9yKSk7XG4gICAgLy8gfVxuICAgIC8vXG4gICAgLy8gcHVibGljIGhlYWQodXJsOiBzdHJpbmcsIG9wdGlvbnM/KTogT2JzZXJ2YWJsZTxSZXNwb25zZT4ge1xuICAgIC8vICAgY29uc3QgZW5oYWNlZE9wdGlvbnMgPSB0aGlzLnNldEF1dGhvcml6YXRpb25IZWFkZXIob3B0aW9ucyk7XG4gICAgLy8gICByZXR1cm4gc3VwZXIuaGVhZCh1cmwsIGVuaGFjZWRPcHRpb25zKS5waXBlKGNhdGNoRXJyb3IodGhpcy5jYXRjaEVycm9yKSk7XG4gICAgLy8gfVxuICAgIC8vXG4gICAgLy8gcHVibGljIG9wdGlvbnModXJsOiBzdHJpbmcsIG9wdGlvbnM/KTogT2JzZXJ2YWJsZTxSZXNwb25zZT4ge1xuICAgIC8vICAgY29uc3QgZW5oYWNlZE9wdGlvbnMgPSB0aGlzLnNldEF1dGhvcml6YXRpb25IZWFkZXIob3B0aW9ucyk7XG4gICAgLy8gICByZXR1cm4gc3VwZXIub3B0aW9ucyh1cmwsIGVuaGFjZWRPcHRpb25zKS5waXBlKGNhdGNoRXJyb3IodGhpcy5jYXRjaEVycm9yKSk7XG4gICAgLy8gfVxuICAgIC8vXG4gICAgLy8gLy8gQWpvdXQgZGUgbCdhdHRyaWJ1dCBBdXRob3JpemF0aW9uIGF1IEhlYWRlclxuICAgIC8vIHByaXZhdGUgc2V0QXV0aG9yaXphdGlvbkhlYWRlcihvcHRpb25zPykge1xuICAgIC8vXG4gICAgLy8gICBjb25zdCB0b2tlbiA9IGAke0FVVEhfUFJFRklYfSR7c2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShUT0tFTl9OQU1FKX1gO1xuICAgIC8vICAgLy8gQ29waWUgZHUgaGVhZGVyIGRhbnMgbGUgUmVxdWVzdE9wdGlvbnMgZXQgYWpvdXQgZHUgdG9rZW4gYSAnQXV0aG9yaXphdGlvbidcbiAgICAvLyAgIGNvbnN0IGhlYWRlcnMgPSB7XG4gICAgLy8gICAgIC4uLm9wdGlvbnMuaGVhZGVycy50b0pTT04oKSxcbiAgICAvLyAgICAgQXV0aG9yaXphdGlvbjogdG9rZW5cbiAgICAvLyAgIH07XG4gICAgLy8gICBvcHRpb25zLmhlYWRlcnMgPSBuZXcgSGVhZGVycyhoZWFkZXJzKTtcbiAgICAvLyAgIHJldHVybiBvcHRpb25zO1xuICAgIC8vIH1cbiAgICAvL1xuICAgIC8vIC8vIFJlc3BvbnNlIEludGVyY2VwdG9yXG4gICAgLy8gcHJpdmF0ZSBjYXRjaEVycm9yKGVycm9yOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIC8vXG4gICAgLy8gICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgIC8vICAgICByZXR1cm4gT2JzZXJ2YWJsZS50aHJvdyhlcnJvcik7XG4gICAgLy8gICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgUmVzcG9uc2UpIHtcbiAgICAvLyAgICAgaWYgKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ2xvZ2luRmxhZycpID09PSAndHJ1ZScgJiYgZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcbiAgICAvLyAgICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKFRPS0VOX05BTUUpO1xuICAgIC8vICAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oJ2xvZ2luRmxhZycpO1xuICAgIC8vICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgICByZXR1cm4gT2JzZXJ2YWJsZS50aHJvdyhlcnJvcik7XG4gICAgLy8gICB9IGVsc2Uge1xuICAgIC8vICAgICByZXR1cm4gT2JzZXJ2YWJsZS50aHJvdyhlcnJvcik7XG4gICAgLy8gICB9XG4gICAgLy8gfVxufVxuXG4iXX0=
@@ -1,34 +0,0 @@
1
- export class JwtHelper {
2
- decodeToken(token) {
3
- let parts = token.split('.');
4
- if (parts.length !== 3) {
5
- throw new Error('JWT must have 3 parts');
6
- }
7
- let decoded = this.urlBase64Decode(parts[1]);
8
- if (!decoded) {
9
- throw new Error('Cannot decode the token');
10
- }
11
- return JSON.parse(decoded);
12
- }
13
- urlBase64Decode(str) {
14
- let output = str.replace(/-/g, '+').replace(/_/g, '/');
15
- switch (output.length % 4) {
16
- case 0: {
17
- break;
18
- }
19
- case 2: {
20
- output += '==';
21
- break;
22
- }
23
- case 3: {
24
- output += '=';
25
- break;
26
- }
27
- default: {
28
- throw 'Illegal base64url string!';
29
- }
30
- }
31
- return decodeURIComponent(window.escape(window.atob(output)));
32
- }
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LmhlbHBoZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXctZnJvbnQtY29tbW9uLWxpYnJhcnkvc3JjL2xpYi91dGlsL3NlcnZpY2VzL2p3dC1zZWN1cml0eS9qd3QuaGVscGhlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUVYLFdBQVcsQ0FBQyxLQUFhO1FBQzVCLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDNUM7UUFDRCxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDOUM7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVPLGVBQWUsQ0FBQyxHQUFXO1FBQy9CLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdkQsUUFBUSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2QixLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNKLE1BQU07YUFDVDtZQUNELEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ0osTUFBTSxJQUFJLElBQUksQ0FBQztnQkFDZixNQUFNO2FBQ1Q7WUFDRCxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNKLE1BQU0sSUFBSSxHQUFHLENBQUM7Z0JBQ2QsTUFBTTthQUNUO1lBQ0QsT0FBTyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSwyQkFBMkIsQ0FBQzthQUNyQztTQUNKO1FBQ0QsT0FBTyxrQkFBa0IsQ0FBTyxNQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXpFLENBQUM7Q0FHSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBKd3RIZWxwZXIge1xuXG4gICAgcHVibGljIGRlY29kZVRva2VuKHRva2VuOiBzdHJpbmcpIHtcbiAgICAgICAgbGV0IHBhcnRzID0gdG9rZW4uc3BsaXQoJy4nKTtcbiAgICAgICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdKV1QgbXVzdCBoYXZlIDMgcGFydHMnKTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgZGVjb2RlZCA9IHRoaXMudXJsQmFzZTY0RGVjb2RlKHBhcnRzWzFdKTtcbiAgICAgICAgaWYgKCFkZWNvZGVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBkZWNvZGUgdGhlIHRva2VuJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZGVjb2RlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cmxCYXNlNjREZWNvZGUoc3RyOiBzdHJpbmcpIHtcbiAgICAgICAgbGV0IG91dHB1dCA9IHN0ci5yZXBsYWNlKC8tL2csICcrJykucmVwbGFjZSgvXy9nLCAnLycpO1xuICAgICAgICBzd2l0Y2ggKG91dHB1dC5sZW5ndGggJSA0KSB7XG4gICAgICAgICAgICBjYXNlIDA6IHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgMjoge1xuICAgICAgICAgICAgICAgIG91dHB1dCArPSAnPT0nO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAzOiB7XG4gICAgICAgICAgICAgICAgb3V0cHV0ICs9ICc9JztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICB0aHJvdyAnSWxsZWdhbCBiYXNlNjR1cmwgc3RyaW5nISc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCgoPGFueT53aW5kb3cpLmVzY2FwZSh3aW5kb3cuYXRvYihvdXRwdXQpKSk7XG5cbiAgICB9XG5cblxufVxuIl19