@softheon/armature 17.31.2 → 19.0.0

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 (277) hide show
  1. package/assets/styles/_b2b-variables.scss +78 -0
  2. package/assets/styles/_b2c-variables.scss +47 -0
  3. package/assets/styles/_typography.scss +20 -19
  4. package/assets/styles/_variables.scss +2 -1
  5. package/assets/styles/b2b/_b2b-buttons.scss +16 -0
  6. package/assets/styles/b2b/_b2b-inputs-override.scss +174 -0
  7. package/assets/styles/b2b/_b2b-override.scss +23 -0
  8. package/assets/styles/b2b/_b2b-spinner.scss +29 -0
  9. package/assets/styles/b2b/_b2b-tabs.scss +116 -0
  10. package/assets/styles/deprecated/_button-deprecated.scss +225 -225
  11. package/assets/styles/deprecated/_chip-deprecated.scss +57 -57
  12. package/assets/styles/deprecated/_material-override-deprecated.scss +3 -3
  13. package/assets/styles/deprecated/_table-deprecated.scss +3 -3
  14. package/assets/styles/material-override/_button-toggle-group.scss +15 -15
  15. package/assets/styles/material-override/_button.scss +69 -69
  16. package/assets/styles/material-override/_calendar.scss +6 -6
  17. package/assets/styles/material-override/_checkbox.scss +20 -19
  18. package/assets/styles/material-override/_expansion-panel.scss +19 -18
  19. package/assets/styles/material-override/_form-field.scss +22 -22
  20. package/assets/styles/material-override/_menu.scss +3 -3
  21. package/assets/styles/material-override/_radio-button.scss +24 -23
  22. package/assets/styles/material-override/_slider.scss +50 -50
  23. package/assets/styles/material-override/_switch.scss +10 -10
  24. package/assets/styles/material-override/_tooltip.scss +11 -11
  25. package/assets/styles/sof-styles-b2b.scss +78 -0
  26. package/assets/styles/sof-styles.scss +17 -17
  27. package/fesm2022/softheon-armature-ag-grid-components.mjs +20 -20
  28. package/fesm2022/softheon-armature-ag-grid-components.mjs.map +1 -1
  29. package/fesm2022/softheon-armature.mjs +422 -403
  30. package/fesm2022/softheon-armature.mjs.map +1 -1
  31. package/lib/base-components/sof-star-rating/sof-star-rating.component.d.ts +2 -0
  32. package/lib/faq/components/faq/faq.component.d.ts +4 -1
  33. package/lib/navigation/components/navigation/navigation.component.d.ts +1 -1
  34. package/lib/oauth/oauth.module.d.ts +1 -2
  35. package/package.json +15 -19
  36. package/esm2022/ag-grid-components/public-api.mjs +0 -6
  37. package/esm2022/ag-grid-components/softheon-armature-ag-grid-components.mjs +0 -5
  38. package/esm2022/ag-grid-components/src/ag-grid-components.module.mjs +0 -103
  39. package/esm2022/ag-grid-components/src/column-options-modal/column-options.component.mjs +0 -41
  40. package/esm2022/ag-grid-components/src/sof-table/sof-table.component.mjs +0 -526
  41. package/esm2022/ag-grid-components/src/table-cell/table-cell.component.mjs +0 -23
  42. package/esm2022/lib/alert-banner/alert-banner-api.mjs +0 -10
  43. package/esm2022/lib/alert-banner/alert-banner.module.mjs +0 -42
  44. package/esm2022/lib/alert-banner/components/alert-banner/alert-banner.component.mjs +0 -82
  45. package/esm2022/lib/alert-banner/models/alert-banner-config.mjs +0 -2
  46. package/esm2022/lib/alert-banner/models/alert-banner-context.mjs +0 -2
  47. package/esm2022/lib/alert-banner/models/constants.mjs +0 -16
  48. package/esm2022/lib/alert-banner/services/alert-banner.service.mjs +0 -44
  49. package/esm2022/lib/armature.module.mjs +0 -183
  50. package/esm2022/lib/base-components/base-component-api.mjs +0 -23
  51. package/esm2022/lib/base-components/base-component.module.mjs +0 -175
  52. package/esm2022/lib/base-components/confirm-address/sof-confirm-address/compare-address-pipe/compare-address.pipe.mjs +0 -20
  53. package/esm2022/lib/base-components/confirm-address/sof-confirm-address/sof-confirm-address.component.mjs +0 -60
  54. package/esm2022/lib/base-components/confirm-address/sof-confirm-address-county-change/sof-confirm-address-county-change.component.mjs +0 -58
  55. package/esm2022/lib/base-components/sof-alert/sof-alert.component.mjs +0 -79
  56. package/esm2022/lib/base-components/sof-badge/sof-badge.component.mjs +0 -132
  57. package/esm2022/lib/base-components/sof-banner/sof-banner.component.mjs +0 -49
  58. package/esm2022/lib/base-components/sof-bottom-sheet/sof-bottom-sheet.component.mjs +0 -152
  59. package/esm2022/lib/base-components/sof-button-toggle-group/sof-button-toggle-group.component.mjs +0 -182
  60. package/esm2022/lib/base-components/sof-callout/sof-callout.component.mjs +0 -72
  61. package/esm2022/lib/base-components/sof-chip/sof-chip.component.mjs +0 -62
  62. package/esm2022/lib/base-components/sof-context/sof-context.component.mjs +0 -124
  63. package/esm2022/lib/base-components/sof-handle/sof-handle.component.mjs +0 -115
  64. package/esm2022/lib/base-components/sof-image-checkbox/sof-image-checkbox.component.mjs +0 -58
  65. package/esm2022/lib/base-components/sof-input-stepper/sof-input-stepper.component.mjs +0 -179
  66. package/esm2022/lib/base-components/sof-modal/sof-modal.component.mjs +0 -61
  67. package/esm2022/lib/base-components/sof-progress-bar/sof-progress-bar.component.mjs +0 -79
  68. package/esm2022/lib/base-components/sof-radio-card/sof-radio-card.component.mjs +0 -35
  69. package/esm2022/lib/base-components/sof-simple-alert/sof-simple-alert.component.mjs +0 -49
  70. package/esm2022/lib/base-components/sof-star-rating/sof-star-rating.component.mjs +0 -38
  71. package/esm2022/lib/base-components/sof-utility-button/sof-utility-button.component.mjs +0 -62
  72. package/esm2022/lib/component-save-print/components/component-save-print/component-save-print.component.mjs +0 -91
  73. package/esm2022/lib/component-save-print/services/component-save-print.service.mjs +0 -30
  74. package/esm2022/lib/component-save-print/sof-ar-component-save-print.module.mjs +0 -29
  75. package/esm2022/lib/core/client-generated/api/session.service.mjs +0 -242
  76. package/esm2022/lib/core/client-generated/configuration.mjs +0 -59
  77. package/esm2022/lib/core/client-generated/encoder.mjs +0 -17
  78. package/esm2022/lib/core/client-generated/model/applicationUserModel.mjs +0 -20
  79. package/esm2022/lib/core/client-generated/model/assertedUserModel.mjs +0 -2
  80. package/esm2022/lib/core/client-generated/model/brandingModel.mjs +0 -2
  81. package/esm2022/lib/core/client-generated/model/errorModel.mjs +0 -13
  82. package/esm2022/lib/core/client-generated/model/folderLink.mjs +0 -13
  83. package/esm2022/lib/core/client-generated/model/identityProfile.mjs +0 -2
  84. package/esm2022/lib/core/client-generated/model/models.mjs +0 -20
  85. package/esm2022/lib/core/client-generated/model/oAuthModel.mjs +0 -13
  86. package/esm2022/lib/core/client-generated/model/preferencesRow.mjs +0 -13
  87. package/esm2022/lib/core/client-generated/model/rolesRow.mjs +0 -13
  88. package/esm2022/lib/core/client-generated/model/sessionGetResponseModel.mjs +0 -2
  89. package/esm2022/lib/core/client-generated/model/sessionPostRequestModel.mjs +0 -2
  90. package/esm2022/lib/core/client-generated/model/sessionPostResponseModel.mjs +0 -2
  91. package/esm2022/lib/core/client-generated/model/sessionPutRequestModel.mjs +0 -2
  92. package/esm2022/lib/core/client-generated/model/sessionPutResponseModel.mjs +0 -2
  93. package/esm2022/lib/core/client-generated/model/sessionResponseModel.mjs +0 -2
  94. package/esm2022/lib/core/client-generated/model/settingsProfile.mjs +0 -2
  95. package/esm2022/lib/core/client-generated/model/themePaletteColorsModel.mjs +0 -13
  96. package/esm2022/lib/core/client-generated/model/themePaletteModel.mjs +0 -2
  97. package/esm2022/lib/core/client-generated/model/trackingModel.mjs +0 -13
  98. package/esm2022/lib/core/client-generated/model/validationRecordsRow.mjs +0 -13
  99. package/esm2022/lib/core/client-generated/variables.mjs +0 -9
  100. package/esm2022/lib/core/components/app-template/app-template.component.mjs +0 -269
  101. package/esm2022/lib/core/functions/guid.mjs +0 -11
  102. package/esm2022/lib/core/functions/naming-convention.mjs +0 -33
  103. package/esm2022/lib/core/functions/route-to-pre-login-route.mjs +0 -13
  104. package/esm2022/lib/core/initializer/abstract-startup-service.mjs +0 -4
  105. package/esm2022/lib/core/initializer/initializer.service.mjs +0 -302
  106. package/esm2022/lib/core/interceptors/armature-auth-token-append.interceptor.mjs +0 -73
  107. package/esm2022/lib/core/models/base-config.mjs +0 -2
  108. package/esm2022/lib/core/models/constants.mjs +0 -17
  109. package/esm2022/lib/core/models/data-store-config.mjs +0 -4
  110. package/esm2022/lib/core/models/federated-module-config.mjs +0 -2
  111. package/esm2022/lib/core/models/header-config.mjs +0 -2
  112. package/esm2022/lib/core/models/http-verbs.mjs +0 -9
  113. package/esm2022/lib/core/models/nav-panel-config.mjs +0 -2
  114. package/esm2022/lib/core/models/navigation-config.mjs +0 -2
  115. package/esm2022/lib/core/models/oidc-auth-settings.mjs +0 -2
  116. package/esm2022/lib/core/models/route-path.mjs +0 -7
  117. package/esm2022/lib/core/models/session-config.mjs +0 -4
  118. package/esm2022/lib/core/models/styles.mjs +0 -2
  119. package/esm2022/lib/core/models/subdomain-config.mjs +0 -2
  120. package/esm2022/lib/core/models/typed-session.mjs +0 -4
  121. package/esm2022/lib/core/models/user-entity-service-config.mjs +0 -12
  122. package/esm2022/lib/core/services/authorization.service.mjs +0 -175
  123. package/esm2022/lib/core/services/banner.service.mjs +0 -43
  124. package/esm2022/lib/core/services/base-config.service.mjs +0 -32
  125. package/esm2022/lib/core/services/custom-auth-config.service.mjs +0 -4
  126. package/esm2022/lib/core/services/default-config.service.mjs +0 -19
  127. package/esm2022/lib/core/services/federated-module.service.mjs +0 -60
  128. package/esm2022/lib/core/services/session.service.mjs +0 -387
  129. package/esm2022/lib/core/services/user-entity.service.mjs +0 -145
  130. package/esm2022/lib/distributed-cache/client-generated/api/api.mjs +0 -4
  131. package/esm2022/lib/distributed-cache/client-generated/api/cache.service.mjs +0 -213
  132. package/esm2022/lib/distributed-cache/client-generated/configuration.mjs +0 -59
  133. package/esm2022/lib/distributed-cache/client-generated/encoder.mjs +0 -17
  134. package/esm2022/lib/distributed-cache/client-generated/model/cacheExpirationType.mjs +0 -16
  135. package/esm2022/lib/distributed-cache/client-generated/model/createCacheEntryRequestModel.mjs +0 -2
  136. package/esm2022/lib/distributed-cache/client-generated/model/models.mjs +0 -5
  137. package/esm2022/lib/distributed-cache/client-generated/model/retrieveCacheEntryResponseModel.mjs +0 -13
  138. package/esm2022/lib/distributed-cache/client-generated/model/updateCacheEntryRequestModel.mjs +0 -13
  139. package/esm2022/lib/distributed-cache/client-generated/variables.mjs +0 -9
  140. package/esm2022/lib/distributed-cache/distributed-cache-api.mjs +0 -8
  141. package/esm2022/lib/distributed-cache/distributed-cache.module.mjs +0 -38
  142. package/esm2022/lib/distributed-cache/models/constants.mjs +0 -3
  143. package/esm2022/lib/distributed-cache/models/policy-person.mjs +0 -9
  144. package/esm2022/lib/distributed-cache/services/server-cache.service.mjs +0 -48
  145. package/esm2022/lib/error/components/error-common/error-common.component.mjs +0 -25
  146. package/esm2022/lib/error/error-api.mjs +0 -7
  147. package/esm2022/lib/error/error.module.mjs +0 -31
  148. package/esm2022/lib/error/models/error-common-config.mjs +0 -8
  149. package/esm2022/lib/faq/components/faq/faq.component.mjs +0 -40
  150. package/esm2022/lib/faq/faq-api.mjs +0 -8
  151. package/esm2022/lib/faq/faq.module.mjs +0 -41
  152. package/esm2022/lib/faq/models/faq-config.mjs +0 -4
  153. package/esm2022/lib/faq/models/faq.mjs +0 -8
  154. package/esm2022/lib/feedback-tool/components/feedback-tool/feedback-tool.component.mjs +0 -81
  155. package/esm2022/lib/feedback-tool/feedback-tool-api.mjs +0 -5
  156. package/esm2022/lib/feedback-tool/feedback-tool.module.mjs +0 -44
  157. package/esm2022/lib/footer/components/footer/footer.component.mjs +0 -25
  158. package/esm2022/lib/footer/components/site-map/site-map.component.mjs +0 -25
  159. package/esm2022/lib/footer/footer-api.mjs +0 -10
  160. package/esm2022/lib/footer/footer.module.mjs +0 -45
  161. package/esm2022/lib/footer/models/enum/site-map-direction.mjs +0 -15
  162. package/esm2022/lib/footer/models/footer-config.mjs +0 -4
  163. package/esm2022/lib/footer/models/site-map-models.mjs +0 -2
  164. package/esm2022/lib/forms/components/sof-address/sof-address.component.mjs +0 -113
  165. package/esm2022/lib/forms/directives/alphanumeric/alphanumeric.directive.mjs +0 -78
  166. package/esm2022/lib/forms/directives/date-input-filter/date-input-filter.directive.mjs +0 -20
  167. package/esm2022/lib/forms/directives/input-trim/input-trim.directive.mjs +0 -110
  168. package/esm2022/lib/forms/directives/letters-characters/letters-characters.directive.mjs +0 -87
  169. package/esm2022/lib/forms/directives/letters-only/letters-only.directive.mjs +0 -85
  170. package/esm2022/lib/forms/directives/numbers-only/numbers-only.directive.mjs +0 -55
  171. package/esm2022/lib/forms/forms-api.mjs +0 -21
  172. package/esm2022/lib/forms/forms.module.mjs +0 -91
  173. package/esm2022/lib/forms/models/address.mjs +0 -2
  174. package/esm2022/lib/forms/models/constants.mjs +0 -10
  175. package/esm2022/lib/forms/models/county.mjs +0 -2
  176. package/esm2022/lib/forms/models/enums/states.mjs +0 -66
  177. package/esm2022/lib/forms/pipes/phone-format.pipe.mjs +0 -33
  178. package/esm2022/lib/forms/services/alert.service.mjs +0 -167
  179. package/esm2022/lib/header/components/header/header.component.mjs +0 -165
  180. package/esm2022/lib/header/components/mobile-header-menu/mobile-header-menu.component.mjs +0 -39
  181. package/esm2022/lib/header/components/sof-header/menu-prevent-close-directive/menu-prevent-close.directive.mjs +0 -21
  182. package/esm2022/lib/header/components/sof-header/sof-header.component.mjs +0 -156
  183. package/esm2022/lib/header/components/sof-header/user-initials-pipe/user-initials.pipe.mjs +0 -22
  184. package/esm2022/lib/header/header-api.mjs +0 -15
  185. package/esm2022/lib/header/header.module.mjs +0 -90
  186. package/esm2022/lib/header/models/header-auth.settings.mjs +0 -32
  187. package/esm2022/lib/header/models/header-external-links.mjs +0 -2
  188. package/esm2022/lib/header/models/header-language.settings.mjs +0 -2
  189. package/esm2022/lib/header/models/header-theme.settings.mjs +0 -2
  190. package/esm2022/lib/header/models/header.settings.mjs +0 -2
  191. package/esm2022/lib/header/models/mobile-header-nav.settings.mjs +0 -2
  192. package/esm2022/lib/mfe/components/entity-base/entity-base.component.mjs +0 -72
  193. package/esm2022/lib/mfe/components/entity-inject-wrapper/entity-inject-wrapper.component.mjs +0 -83
  194. package/esm2022/lib/mfe/mfe.module.mjs +0 -24
  195. package/esm2022/lib/mfe/models/entity-config-base.mjs +0 -2
  196. package/esm2022/lib/mfe/models/entity-dto.mjs +0 -5
  197. package/esm2022/lib/mfe/services/entity-helper.service.mjs +0 -113
  198. package/esm2022/lib/navigation/components/b2b-nav/b2b-nav.component.mjs +0 -232
  199. package/esm2022/lib/navigation/components/navigation/navigation.component.mjs +0 -560
  200. package/esm2022/lib/navigation/components/sof-breadcrumbs/sof-breadcrumbs-hierarchy/sof-breadcrumbs-hierarchy.component.mjs +0 -60
  201. package/esm2022/lib/navigation/components/sof-breadcrumbs/sof-breadcrumbs-history/sof-breadcrumbs-history.component.mjs +0 -76
  202. package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-logo.mjs +0 -2
  203. package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-nodes.mjs +0 -2
  204. package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-settings.mjs +0 -2
  205. package/esm2022/lib/navigation/components/sof-navigation-panel/sof-nav-panel.component.mjs +0 -105
  206. package/esm2022/lib/navigation/components/sof-sub-navigation/sof-sub-navigation.component.mjs +0 -60
  207. package/esm2022/lib/navigation/components/sof-tabs-navigation/sof-tabs.component.mjs +0 -22
  208. package/esm2022/lib/navigation/models/breadcrumb.mjs +0 -3
  209. package/esm2022/lib/navigation/models/nav-theme.settings.mjs +0 -2
  210. package/esm2022/lib/navigation/models/nav.settings.mjs +0 -2
  211. package/esm2022/lib/navigation/models/navigation.mjs +0 -2
  212. package/esm2022/lib/navigation/navigation-api.mjs +0 -18
  213. package/esm2022/lib/navigation/navigation.module.mjs +0 -139
  214. package/esm2022/lib/oauth/models/constants.mjs +0 -6
  215. package/esm2022/lib/oauth/models/generated/accountManagementAssertionModel.mjs +0 -2
  216. package/esm2022/lib/oauth/models/generated/accountManagementRefreshRequestModel.mjs +0 -2
  217. package/esm2022/lib/oauth/models/generated/accountManagementResponseModel.mjs +0 -2
  218. package/esm2022/lib/oauth/models/generated/applicationType.mjs +0 -33
  219. package/esm2022/lib/oauth/models/generated/coverageDetail.mjs +0 -19
  220. package/esm2022/lib/oauth/models/generated/finance.mjs +0 -13
  221. package/esm2022/lib/oauth/models/generated/iSsoResponseModel.mjs +0 -13
  222. package/esm2022/lib/oauth/models/generated/iSsoResponseModelAccountManagementAssertionModel.mjs +0 -2
  223. package/esm2022/lib/oauth/models/generated/person.mjs +0 -13
  224. package/esm2022/lib/oauth/models/generated/policy.mjs +0 -2
  225. package/esm2022/lib/oauth/models/generated/refreshResponseModel.mjs +0 -13
  226. package/esm2022/lib/oauth/models/hybrid-saml-oauth-config.mjs +0 -4
  227. package/esm2022/lib/oauth/oauth-api.mjs +0 -15
  228. package/esm2022/lib/oauth/oauth.module.mjs +0 -29
  229. package/esm2022/lib/oauth/services/hybrid-saml-oauth.service.mjs +0 -201
  230. package/esm2022/lib/rbac/directives/rbac-action.directive.mjs +0 -50
  231. package/esm2022/lib/rbac/models/access-token-claims.mjs +0 -23
  232. package/esm2022/lib/rbac/models/constants.mjs +0 -4
  233. package/esm2022/lib/rbac/models/decoded-access-token.mjs +0 -69
  234. package/esm2022/lib/rbac/models/rbac-config.mjs +0 -4
  235. package/esm2022/lib/rbac/models/role-access.mjs +0 -10
  236. package/esm2022/lib/rbac/rbac-api.mjs +0 -15
  237. package/esm2022/lib/rbac/rbac.module.mjs +0 -51
  238. package/esm2022/lib/rbac/services/ar-role-nav.service.mjs +0 -104
  239. package/esm2022/lib/rbac/services/oauth2-role.service.mjs +0 -114
  240. package/esm2022/lib/rbac/services/role-nav.service.mjs +0 -4
  241. package/esm2022/lib/rbac/services/tokens.mjs +0 -4
  242. package/esm2022/lib/resize-panels/components/resize-panels/resize-panels.component.mjs +0 -156
  243. package/esm2022/lib/resize-panels/models/resize-event.mjs +0 -2
  244. package/esm2022/lib/resize-panels/resize-panels-api.mjs +0 -5
  245. package/esm2022/lib/resize-panels/resize-panels.module.mjs +0 -23
  246. package/esm2022/lib/rum/models/arm-error.mjs +0 -29
  247. package/esm2022/lib/rum/models/rum-config.mjs +0 -4
  248. package/esm2022/lib/rum/rum-api.mjs +0 -10
  249. package/esm2022/lib/rum/rum.module.mjs +0 -48
  250. package/esm2022/lib/rum/services/rum.service.mjs +0 -115
  251. package/esm2022/lib/rum/services/shared-error.service.mjs +0 -45
  252. package/esm2022/lib/rum/services/softheon-error-handler.service.mjs +0 -76
  253. package/esm2022/lib/saml/components/redirect-saml/redirect-saml.component.mjs +0 -79
  254. package/esm2022/lib/saml/models/i-saml-request.mjs +0 -2
  255. package/esm2022/lib/saml/models/i-saml-response.mjs +0 -2
  256. package/esm2022/lib/saml/models/redirect-saml-request.mjs +0 -4
  257. package/esm2022/lib/saml/models/sso-gateway-model.mjs +0 -4
  258. package/esm2022/lib/saml/saml-api.mjs +0 -15
  259. package/esm2022/lib/saml/saml.module.mjs +0 -43
  260. package/esm2022/lib/saml/services/entry/abstract-saml-entry.service.mjs +0 -4
  261. package/esm2022/lib/saml/services/entry/sso-gateway-entry.service.mjs +0 -36
  262. package/esm2022/lib/saml/services/send-off/abstract-saml.service.mjs +0 -4
  263. package/esm2022/lib/saml/services/send-off/saml.service.mjs +0 -39
  264. package/esm2022/lib/sof-pipe/constants/constants.mjs +0 -17
  265. package/esm2022/lib/sof-pipe/models/sof-date-pipe-format.mjs +0 -2
  266. package/esm2022/lib/sof-pipe/pipes/sof-blank/sof-blank.pipe.mjs +0 -39
  267. package/esm2022/lib/sof-pipe/pipes/sof-date/sof-date.pipe.mjs +0 -59
  268. package/esm2022/lib/sof-pipe/pipes/sof-ssn/sof-ssn.pipe.mjs +0 -28
  269. package/esm2022/lib/sof-pipe/sof-pipe.api.mjs +0 -9
  270. package/esm2022/lib/sof-pipe/sof-pipe.module.mjs +0 -39
  271. package/esm2022/lib/theming/directives/css-override.directive.mjs +0 -69
  272. package/esm2022/lib/theming/models/css-override.mjs +0 -11
  273. package/esm2022/lib/theming/services/theme.service.mjs +0 -187
  274. package/esm2022/lib/theming/theme-api.mjs +0 -6
  275. package/esm2022/lib/theming/theme.module.mjs +0 -31
  276. package/esm2022/public-api.mjs +0 -60
  277. package/esm2022/softheon-armature.mjs +0 -5
@@ -1,175 +0,0 @@
1
- import { Injectable, Optional } from "@angular/core";
2
- import { AuthConfig } from "angular-oauth2-oidc";
3
- import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';
4
- import { BehaviorSubject } from "rxjs";
5
- import { preSignInRouteStorageKey } from "../models/constants";
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "angular-oauth2-oidc";
8
- import * as i2 from "@angular/common/http";
9
- import * as i3 from "../../oauth/oauth-api";
10
- import * as i4 from "./custom-auth-config.service";
11
- /** The session service */
12
- export class AuthorizationService {
13
- /**
14
- * Constructs authorization service
15
- * @param authService The OAuth Service
16
- * @param httpClient The HTTPClient
17
- * @param authStorage The AuthStorage
18
- * @param hybridAuthService The Hybrid Service
19
- * @param customAuthConfigService The Custom Authorization Service
20
- */
21
- constructor(authService, httpClient, authStorage, hybridAuthService, customAuthConfigService) {
22
- this.authService = authService;
23
- this.httpClient = httpClient;
24
- this.authStorage = authStorage;
25
- this.hybridAuthService = hybridAuthService;
26
- this.customAuthConfigService = customAuthConfigService;
27
- /** IsloggedIn behaviour subject **/
28
- this.isLoggedInBs = new BehaviorSubject(false);
29
- this.isLoggedIn$ = this.isLoggedInBs.asObservable();
30
- }
31
- /**
32
- * Initialize Authorization Settings.
33
- * @param authSettings The Authorization settings
34
- */
35
- initializeAuthSettings(authSettings, shouldTryLogin = true) {
36
- this.authSettings = authSettings;
37
- if (this.customAuthConfigService) {
38
- this.customAuthConfigService.configureAuthSettings().then(authConfig => {
39
- // Overwrite initial header auth setting with custom resolver
40
- this.authSettings = {
41
- ...authSettings,
42
- ...authConfig
43
- };
44
- if (shouldTryLogin) {
45
- this.handleTryLogin(authSettings.authSetOnStartup);
46
- }
47
- });
48
- }
49
- else {
50
- const authConfig = new AuthConfig({
51
- clientId: authSettings.clientId,
52
- redirectUri: authSettings.redirectUri,
53
- issuer: authSettings.issuer,
54
- scope: authSettings.scope,
55
- skipIssuerCheck: authSettings.skipIssuerCheck,
56
- timeoutFactor: authSettings.timeoutFactor || 0.75,
57
- postLogoutRedirectUri: authSettings.postLogOutUrl,
58
- loginUrl: authSettings.loginUrl,
59
- responseType: authSettings.responseType || 'code'
60
- });
61
- this.authService.configure(authConfig);
62
- this.authService.issuer = authSettings.issuer;
63
- this.authService.strictDiscoveryDocumentValidation = false;
64
- this.authService.skipIssuerCheck = true;
65
- this.authService.tokenValidationHandler = new JwksValidationHandler();
66
- this.authService.setupAutomaticSilentRefresh({}, 'access_token');
67
- this.authService.timeoutFactor = authSettings.timeoutFactor || 0.75;
68
- this.authService.responseType = authSettings.responseType || 'code';
69
- if (shouldTryLogin) {
70
- this.handleTryLogin(authSettings.authSetOnStartup);
71
- }
72
- }
73
- }
74
- /** The user name */
75
- userName() {
76
- let name = '';
77
- if (this.claims.given_name) {
78
- name += this.claims.given_name;
79
- }
80
- if (name && this.claims.family_name) {
81
- name += ` ${this.claims.family_name}`;
82
- }
83
- else if (this.claims.family_name) {
84
- name += this.claims.family_name;
85
- }
86
- return name || this.claims.upn;
87
- }
88
- /**
89
- * Authorize User.
90
- */
91
- authorizeUser() {
92
- if (this.authSettings) {
93
- if (!this.IsLoggedIn) {
94
- if (this.customAuthConfigService) {
95
- this.customAuthConfigService.configureAuthSettings().then(_ => {
96
- this.handleLogin();
97
- });
98
- }
99
- else {
100
- if (this.authService.issuer !== this.authSettings.issuer) {
101
- this.authService.issuer = this.authSettings.issuer;
102
- }
103
- this.handleLogin();
104
- }
105
- }
106
- else {
107
- if (this.hybridAuthService) {
108
- this.hybridAuthService.expireSession(true);
109
- }
110
- this.authService.logOut();
111
- this.authStorage.removeItem('access_token');
112
- this.isLoggedInBs.next(false);
113
- this.IsLoggedIn = false;
114
- return;
115
- }
116
- }
117
- }
118
- /**
119
- * Handle Login
120
- * @param authSetOnStartup Is auth set on startup
121
- */
122
- handleTryLogin(authSetOnStartup) {
123
- if (!authSetOnStartup) {
124
- this.authService.loadDiscoveryDocumentAndTryLogin()
125
- .then(() => {
126
- const token = this.authService.getAccessToken();
127
- const isValid = !!token;
128
- this.claims = this.authService.getIdentityClaims();
129
- this.isLoggedInBs.next(isValid);
130
- this.IsLoggedIn = isValid;
131
- })
132
- .catch(e => {
133
- console.error(e);
134
- });
135
- }
136
- else {
137
- this.authService.loadDiscoveryDocument()
138
- .then(() => {
139
- const token = this.authService.getAccessToken();
140
- const isValid = !!token;
141
- this.claims = this.authService.getIdentityClaims();
142
- this.isLoggedInBs.next(isValid);
143
- this.IsLoggedIn = isValid;
144
- })
145
- .catch(e => {
146
- console.error(e);
147
- });
148
- }
149
- }
150
- /** Handle Login */
151
- handleLogin() {
152
- window.sessionStorage.setItem(preSignInRouteStorageKey, window.location.pathname.toLowerCase());
153
- this.authService.loadDiscoveryDocumentAndLogin()
154
- .then(logInSuccess => {
155
- if (logInSuccess) {
156
- this.isLoggedInBs.next(true);
157
- this.IsLoggedIn = true;
158
- }
159
- })
160
- .catch(e => {
161
- console.error(e);
162
- });
163
- }
164
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, deps: [{ token: i1.OAuthService }, { token: i2.HttpClient }, { token: i1.OAuthStorage }, { token: i3.HybridSamlOauthService }, { token: i4.CustomAuthConfigService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
165
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, providedIn: 'root' }); }
166
- }
167
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, decorators: [{
168
- type: Injectable,
169
- args: [{
170
- providedIn: 'root'
171
- }]
172
- }], ctorParameters: () => [{ type: i1.OAuthService }, { type: i2.HttpClient }, { type: i1.OAuthStorage }, { type: i3.HybridSamlOauthService }, { type: i4.CustomAuthConfigService, decorators: [{
173
- type: Optional
174
- }] }] });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJtYXR1cmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2F1dGhvcml6YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsVUFBVSxFQUE4QixNQUFNLHFCQUFxQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFLbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQUcvRCwwQkFBMEI7QUFJMUIsTUFBTSxPQUFPLG9CQUFvQjtJQWlCL0I7Ozs7Ozs7T0FPRztJQUNILFlBQ21CLFdBQXlCLEVBQ3pCLFVBQXNCLEVBQ3RCLFdBQXlCLEVBQ3pCLGlCQUF5QyxFQUM3Qix1QkFBZ0Q7UUFKNUQsZ0JBQVcsR0FBWCxXQUFXLENBQWM7UUFDekIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBYztRQUN6QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXdCO1FBQzdCLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUF0Qi9FLG9DQUFvQztRQUNuQixpQkFBWSxHQUE2QixJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQXVCNUYsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSSxzQkFBc0IsQ0FBQyxZQUFnQyxFQUFFLGlCQUEwQixJQUFJO1FBQzVGLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxD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QUMsVUFBVSxHQUFHLElBQUksQ0FBQzthQUN4QjtRQUNILENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNULE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTVLVSxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkErQkksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBBdXRoQ29uZmlnLCBPQXV0aFNlcnZpY2UsIE9BdXRoU3RvcmFnZSB9IGZyb20gXCJhbmd1bGFyLW9hdXRoMi1vaWRjXCI7XHJcbmltcG9ydCB7IEp3a3NWYWxpZGF0aW9uSGFuZGxlciB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMtandrcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5pbXBvcnQgeyBIZWFkZXJBdXRoU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vaGVhZGVyL21vZGVscy9oZWFkZXItYXV0aC5zZXR0aW5nc1wiO1xyXG5pbXBvcnQgeyBIeWJyaWRTYW1sT2F1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL29hdXRoL29hdXRoLWFwaVwiO1xyXG5pbXBvcnQgeyBBY2Nlc3NUb2tlbkNsYWltcyB9IGZyb20gXCIuLi8uLi9yYmFjL3JiYWMtYXBpXCI7XHJcbmltcG9ydCB7IHByZVNpZ25JblJvdXRlU3RvcmFnZUtleSB9IGZyb20gXCIuLi9tb2RlbHMvY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IEN1c3RvbUF1dGhDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9jdXN0b20tYXV0aC1jb25maWcuc2VydmljZSc7XHJcblxyXG4vKiogVGhlIHNlc3Npb24gc2VydmljZSAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRob3JpemF0aW9uU2VydmljZSB7XHJcblxyXG4gIC8qKiBUaGUgY2xhaW1zICovXHJcbiAgcHJpdmF0ZSBjbGFpbXM6IEFjY2Vzc1Rva2VuQ2xhaW1zO1xyXG5cclxuICAvKiogQXV0aG9yaXphdGlvbiBzZXR0aW5ncy4qL1xyXG4gIHB1YmxpYyBhdXRoU2V0dGluZ3M6IEhlYWRlckF1dGhTZXR0aW5ncztcclxuXHJcbiAgLyoqIElzbG9nZ2VkSW4gYmVoYXZpb3VyIHN1YmplY3QgKiovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBpc0xvZ2dlZEluQnM6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICAvKiogSXNsb2dnZWRJbiBvYnNlcnZhYmxlICoqL1xyXG4gIHB1YmxpYyBpc0xvZ2dlZEluJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgLyoqIERldGVybWluZWQgd2hldGhlciBpcyB1c2VyIGlzIGxvZ2dlZCBpbioqL1xyXG4gIHB1YmxpYyBJc0xvZ2dlZEluOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RzIGF1dGhvcml6YXRpb24gc2VydmljZVxyXG4gICAqIEBwYXJhbSBhdXRoU2VydmljZSBUaGUgT0F1dGggU2VydmljZVxyXG4gICAqIEBwYXJhbSBodHRwQ2xpZW50IFRoZSBIVFRQQ2xpZW50XHJcbiAgICogQHBhcmFtIGF1dGhTdG9yYWdlIFRoZSBBdXRoU3RvcmFnZVxyXG4gICAqIEBwYXJhbSBoeWJyaWRBdXRoU2VydmljZSBUaGUgSHlicmlkIFNlcnZpY2VcclxuICAgKiBAcGFyYW0gY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UgVGhlIEN1c3RvbSBBdXRob3JpemF0aW9uIFNlcnZpY2VcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFN0b3JhZ2U6IE9BdXRoU3RvcmFnZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHlicmlkQXV0aFNlcnZpY2U6IEh5YnJpZFNhbWxPYXV0aFNlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGN1c3RvbUF1dGhDb25maWdTZXJ2aWNlOiBDdXN0b21BdXRoQ29uZmlnU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pc0xvZ2dlZEluJCA9IHRoaXMuaXNMb2dnZWRJbkJzLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5pdGlhbGl6ZSBBdXRob3JpemF0aW9uIFNldHRpbmdzLlxyXG4gICAqICBAcGFyYW0gYXV0aFNldHRpbmdzIFRoZSBBdXRob3JpemF0aW9uIHNldHRpbmdzXHJcbiAgICovXHJcbiAgcHVibGljIGluaXRpYWxpemVBdXRoU2V0dGluZ3MoYXV0aFNldHRpbmdzOiBIZWFkZXJBdXRoU2V0dGluZ3MsIHNob3VsZFRyeUxvZ2luOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5hdXRoU2V0dGluZ3MgPSBhdXRoU2V0dGluZ3M7XHJcblxyXG4gICAgaWYgKHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UpIHtcclxuICAgICAgdGhpcy5jdXN0b21BdXRoQ29uZmlnU2VydmljZS5jb25maWd1cmVBdXRoU2V0dGluZ3MoKS50aGVuKGF1dGhDb25maWcgPT4ge1xyXG4gICAgICAgIC8vIE92ZXJ3cml0ZSBpbml0aWFsIGhlYWRlciBhdXRoIHNldHRpbmcgd2l0aCBjdXN0b20gcmVzb2x2ZXJcclxuICAgICAgICB0aGlzLmF1dGhTZXR0aW5ncyA9IHtcclxuICAgICAgICAgIC4uLmF1dGhTZXR0aW5ncyxcclxuICAgICAgICAgIC4uLmF1dGhDb25maWdcclxuICAgICAgICB9O1xyXG4gICAgICAgIGlmIChzaG91bGRUcnlMb2dpbikge1xyXG4gICAgICAgICAgdGhpcy5oYW5kbGVUcnlMb2dpbihhdXRoU2V0dGluZ3MuYXV0aFNldE9uU3RhcnR1cCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zdCBhdXRoQ29uZmlnID0gbmV3IEF1dGhDb25maWcoe1xyXG4gICAgICAgIGNsaWVudElkOiBhdXRoU2V0dGluZ3MuY2xpZW50SWQsXHJcbiAgICAgICAgcmVkaXJlY3RVcmk6IGF1dGhTZXR0aW5ncy5yZWRpcmVjdFVyaSxcclxuICAgICAgICBpc3N1ZXI6IGF1dGhTZXR0aW5ncy5pc3N1ZXIsXHJcbiAgICAgICAgc2NvcGU6IGF1dGhTZXR0aW5ncy5zY29wZSxcclxuICAgICAgICBza2lwSXNzdWVyQ2hlY2s6IGF1dGhTZXR0aW5ncy5za2lwSXNzdWVyQ2hlY2ssXHJcbiAgICAgICAgdGltZW91dEZhY3RvcjogYXV0aFNldHRpbmdzLnRpbWVvdXRGYWN0b3IgfHwgMC43NSxcclxuICAgICAgICBwb3N0TG9nb3V0UmVkaXJlY3RVcmk6IGF1dGhTZXR0aW5ncy5wb3N0TG9nT3V0VXJsLFxyXG4gICAgICAgIGxvZ2luVXJsOiBhdXRoU2V0dGluZ3MubG9naW5VcmwsXHJcbiAgICAgICAgcmVzcG9uc2VUeXBlOiBhdXRoU2V0dGluZ3MucmVzcG9uc2VUeXBlIHx8ICdjb2RlJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5jb25maWd1cmUoYXV0aENvbmZpZyk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuaXNzdWVyID0gYXV0aFNldHRpbmdzLmlzc3VlcjtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5zdHJpY3REaXNjb3ZlcnlEb2N1bWVudFZhbGlkYXRpb24gPSBmYWxzZTtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5za2lwSXNzdWVyQ2hlY2sgPSB0cnVlO1xyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLnRva2VuVmFsaWRhdGlvbkhhbmRsZXIgPSBuZXcgSndrc1ZhbGlkYXRpb25IYW5kbGVyKCk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2Uuc2V0dXBBdXRvbWF0aWNTaWxlbnRSZWZyZXNoKHt9LCAnYWNjZXNzX3Rva2VuJyk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UudGltZW91dEZhY3RvciA9IGF1dGhTZXR0aW5ncy50aW1lb3V0RmFjdG9yIHx8IDAuNzU7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UucmVzcG9uc2VUeXBlID0gYXV0aFNldHRpbmdzLnJlc3BvbnNlVHlwZSB8fCAnY29kZSc7XHJcblxyXG4gICAgICBpZiAoc2hvdWxkVHJ5TG9naW4pIHtcclxuICAgICAgICB0aGlzLmhhbmRsZVRyeUxvZ2luKGF1dGhTZXR0aW5ncy5hdXRoU2V0T25TdGFydHVwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIFRoZSB1c2VyIG5hbWUgKi9cclxuICBwdWJsaWMgdXNlck5hbWUoKTogc3RyaW5nIHtcclxuICAgIGxldCBuYW1lID0gJyc7XHJcbiAgICBpZiAodGhpcy5jbGFpbXMuZ2l2ZW5fbmFtZSkge1xyXG4gICAgICBuYW1lICs9IHRoaXMuY2xhaW1zLmdpdmVuX25hbWU7XHJcbiAgICB9XHJcbiAgICBpZiAobmFtZSAmJiB0aGlzLmNsYWltcy5mYW1pbHlfbmFtZSkge1xyXG4gICAgICBuYW1lICs9IGAgJHt0aGlzLmNsYWltcy5mYW1pbHlfbmFtZX1gO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy5jbGFpbXMuZmFtaWx5X25hbWUpIHtcclxuICAgICAgbmFtZSArPSB0aGlzLmNsYWltcy5mYW1pbHlfbmFtZTtcclxuICAgIH1cclxuICAgIHJldHVybiBuYW1lIHx8IHRoaXMuY2xhaW1zLnVwbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEF1dGhvcml6ZSBVc2VyLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBhdXRob3JpemVVc2VyKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXV0aFNldHRpbmdzKSB7XHJcbiAgICAgIGlmICghdGhpcy5Jc0xvZ2dlZEluKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UpIHtcclxuICAgICAgICAgIHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UuY29uZmlndXJlQXV0aFNldHRpbmdzKCkudGhlbihfID0+IHtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVMb2dpbigpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHRoaXMuYXV0aFNlcnZpY2UuaXNzdWVyICE9PSB0aGlzLmF1dGhTZXR0aW5ncy5pc3N1ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5pc3N1ZXIgPSB0aGlzLmF1dGhTZXR0aW5ncy5pc3N1ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmhhbmRsZUxvZ2luKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLmh5YnJpZEF1dGhTZXJ2aWNlKSB7XHJcbiAgICAgICAgICB0aGlzLmh5YnJpZEF1dGhTZXJ2aWNlLmV4cGlyZVNlc3Npb24odHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nT3V0KCk7XHJcbiAgICAgICAgdGhpcy5hdXRoU3RvcmFnZS5yZW1vdmVJdGVtKCdhY2Nlc3NfdG9rZW4nKTtcclxuICAgICAgICB0aGlzLmlzTG9nZ2VkSW5Ccy5uZXh0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLklzTG9nZ2VkSW4gPSBmYWxzZTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogSGFuZGxlIExvZ2luXHJcbiAgKiBAcGFyYW0gYXV0aFNldE9uU3RhcnR1cCBJcyBhdXRoIHNldCBvbiBzdGFydHVwIFxyXG4gICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVUcnlMb2dpbihhdXRoU2V0T25TdGFydHVwOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBpZiAoIWF1dGhTZXRPblN0YXJ0dXApIHtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2FkRGlzY292ZXJ5RG9jdW1lbnRBbmRUcnlMb2dpbigpXHJcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCk7XHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gISF0b2tlbjtcclxuICAgICAgICAgIHRoaXMuY2xhaW1zID0gdGhpcy5hdXRoU2VydmljZS5nZXRJZGVudGl0eUNsYWltcygpIGFzIEFjY2Vzc1Rva2VuQ2xhaW1zO1xyXG4gICAgICAgICAgdGhpcy5pc0xvZ2dlZEluQnMubmV4dChpc1ZhbGlkKTtcclxuICAgICAgICAgIHRoaXMuSXNMb2dnZWRJbiA9IGlzVmFsaWQ7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goZSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9hZERpc2NvdmVyeURvY3VtZW50KClcclxuICAgICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QWNjZXNzVG9rZW4oKTtcclxuICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSAhIXRva2VuO1xyXG4gICAgICAgICAgdGhpcy5jbGFpbXMgPSB0aGlzLmF1dGhTZXJ2aWNlLmdldElkZW50aXR5Q2xhaW1zKCkgYXMgQWNjZXNzVG9rZW5DbGFpbXM7XHJcbiAgICAgICAgICB0aGlzLmlzTG9nZ2VkSW5Ccy5uZXh0KGlzVmFsaWQpO1xyXG4gICAgICAgICAgdGhpcy5Jc0xvZ2dlZEluID0gaXNWYWxpZDtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogSGFuZGxlIExvZ2luICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVMb2dpbigpOiB2b2lkIHtcclxuICAgIHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHByZVNpZ25JblJvdXRlU3RvcmFnZUtleSwgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2FkRGlzY292ZXJ5RG9jdW1lbnRBbmRMb2dpbigpXHJcbiAgICAgIC50aGVuKGxvZ0luU3VjY2VzcyA9PiB7XHJcbiAgICAgICAgaWYgKGxvZ0luU3VjY2Vzcykge1xyXG4gICAgICAgICAgdGhpcy5pc0xvZ2dlZEluQnMubmV4dCh0cnVlKTtcclxuICAgICAgICAgIHRoaXMuSXNMb2dnZWRJbiA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goZSA9PiB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,43 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Service for managing the banner
6
- */
7
- export class BannerService {
8
- constructor() {
9
- /** Behavior subject for show banner */
10
- this.showBanner = new BehaviorSubject(false);
11
- /** Behavior subject for banner message */
12
- this.message = new BehaviorSubject(undefined);
13
- /** Behavior subject for whether to show check mark or not */
14
- this.showCheckMark = new BehaviorSubject(true);
15
- this.showBanner$ = this.showBanner.asObservable();
16
- this.message$ = this.message.asObservable();
17
- this.showCheckMark$ = this.showCheckMark.asObservable();
18
- }
19
- /**
20
- * Shows the messaage in the banner
21
- * @param message The banner message
22
- */
23
- showMessage(message, showCheckMark = true) {
24
- this.showBanner.next(true);
25
- this.message.next(message);
26
- this.showCheckMark.next(showCheckMark);
27
- }
28
- /**
29
- * Hide Notification Message
30
- */
31
- hideMessage() {
32
- this.showBanner.next(false);
33
- }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
35
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, providedIn: 'root' }); }
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, decorators: [{
38
- type: Injectable,
39
- args: [{
40
- providedIn: 'root'
41
- }]
42
- }], ctorParameters: () => [] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL2NvcmUvc2VydmljZXMvYmFubmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUVuRDs7R0FFRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBb0J4QjtRQVRBLHVDQUF1QztRQUMvQixlQUFVLEdBQTZCLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRW5GLDBDQUEwQztRQUNsQyxZQUFPLEdBQTRCLElBQUksZUFBZSxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBRWxGLDZEQUE2RDtRQUNyRCxrQkFBYSxHQUE2QixJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUluRixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLE9BQWUsRUFBRSxnQkFBeUIsSUFBSTtRQUMvRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBMUNVLGFBQWE7a0hBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNlIGZvciBtYW5hZ2luZyB0aGUgYmFubmVyXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYW5uZXJTZXJ2aWNlIHtcclxuXHJcbiAgLyoqIE9ic2VydmFibGUgZm9yIHdoZXRoZXIgdGhlIGJhbm5lciBzaG91bGQgYmUgc2hvd24gKi9cclxuICBwdWJsaWMgc2hvd0Jhbm5lciQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gIC8qKiBPYnNlcnZhYmxlIGZvciB0aGUgYmFubmVyIG1lc3NhZ2UgKi9cclxuICBwdWJsaWMgbWVzc2FnZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcclxuXHJcbiAgLyoqIE9ic2VydmFibGUgZm9yIHdoZXRoZXIgb2Ygbm90IHRvIHNob3cgdGhlIGNoZWNrIG1hcmsgb24gdGhlIGJhbm5lciAqL1xyXG4gIHB1YmxpYyBzaG93Q2hlY2tNYXJrJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgLyoqIEJlaGF2aW9yIHN1YmplY3QgZm9yIHNob3cgYmFubmVyICovXHJcbiAgcHJpdmF0ZSBzaG93QmFubmVyOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgLyoqIEJlaGF2aW9yIHN1YmplY3QgZm9yIGJhbm5lciBtZXNzYWdlICovXHJcbiAgcHJpdmF0ZSBtZXNzYWdlOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xyXG5cclxuICAvKiogQmVoYXZpb3Igc3ViamVjdCBmb3Igd2hldGhlciB0byBzaG93IGNoZWNrIG1hcmsgb3Igbm90ICovXHJcbiAgcHJpdmF0ZSBzaG93Q2hlY2tNYXJrOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICApIHtcclxuICAgIHRoaXMuc2hvd0Jhbm5lciQgPSB0aGlzLnNob3dCYW5uZXIuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLm1lc3NhZ2UkID0gdGhpcy5tZXNzYWdlLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgdGhpcy5zaG93Q2hlY2tNYXJrJCA9IHRoaXMuc2hvd0NoZWNrTWFyay5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3dzIHRoZSBtZXNzYWFnZSBpbiB0aGUgYmFubmVyXHJcbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGJhbm5lciBtZXNzYWdlXHJcbiAgICovXHJcbiAgcHVibGljIHNob3dNZXNzYWdlKG1lc3NhZ2U6IHN0cmluZywgc2hvd0NoZWNrTWFyazogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0Jhbm5lci5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5tZXNzYWdlLm5leHQobWVzc2FnZSk7XHJcbiAgICB0aGlzLnNob3dDaGVja01hcmsubmV4dChzaG93Q2hlY2tNYXJrKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhpZGUgTm90aWZpY2F0aW9uIE1lc3NhZ2UgXHJcbiAgICovXHJcbiAgcHVibGljIGhpZGVNZXNzYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93QmFubmVyLm5leHQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -1,32 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- /** The base config service */
5
- export class BaseConfigService {
6
- /** Gets the configurations */
7
- get config() {
8
- return this.configBs.value;
9
- }
10
- /**
11
- * sets the configs
12
- * @param value The new configuration value
13
- */
14
- set config(value) {
15
- this.configBs.next(value);
16
- }
17
- /** Constructs the service */
18
- constructor() {
19
- /** The configuration behavior subject */
20
- this.configBs = new BehaviorSubject(undefined);
21
- this.config$ = this.configBs.asObservable();
22
- }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
24
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, providedIn: 'root' }); }
25
- }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, decorators: [{
27
- type: Injectable,
28
- args: [{
29
- providedIn: 'root'
30
- }]
31
- }], ctorParameters: () => [] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9iYXNlLWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFHbkQsOEJBQThCO0FBSTlCLE1BQU0sT0FBZ0IsaUJBQWlCO0lBS3JDLDhCQUE4QjtJQUM5QixJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFXLE1BQU0sQ0FBQyxLQUFRO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFLRCw2QkFBNkI7SUFDN0I7UUFwQkEseUNBQXlDO1FBQ3hCLGFBQVEsR0FBdUIsSUFBSSxlQUFlLENBQUksU0FBUyxDQUFDLENBQUM7UUFvQmhGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5QyxDQUFDOzhHQXhCbUIsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FGekIsTUFBTTs7MkZBRUUsaUJBQWlCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJhc2VDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvYmFzZS1jb25maWcnO1xyXG5cclxuLyoqIFRoZSBiYXNlIGNvbmZpZyBzZXJ2aWNlICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb25maWdTZXJ2aWNlPFQgPSBCYXNlQ29uZmlnPiB7XHJcblxyXG4gIC8qKiBUaGUgY29uZmlndXJhdGlvbiBiZWhhdmlvciBzdWJqZWN0ICovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWdCczogQmVoYXZpb3JTdWJqZWN0PFQ+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPih1bmRlZmluZWQpO1xyXG5cclxuICAvKiogR2V0cyB0aGUgY29uZmlndXJhdGlvbnMgKi9cclxuICBwdWJsaWMgZ2V0IGNvbmZpZygpOiBUIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ0JzLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogc2V0cyB0aGUgY29uZmlnc1xyXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgbmV3IGNvbmZpZ3VyYXRpb24gdmFsdWVcclxuICAgKi9cclxuICBwdWJsaWMgc2V0IGNvbmZpZyh2YWx1ZTogVCkge1xyXG4gICAgdGhpcy5jb25maWdCcy5uZXh0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKiBUaGUgY29uZmlndXJhdGlvbiBvYnNlcnZhYmxlICovXHJcbiAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyQ6IE9ic2VydmFibGU8VD47XHJcblxyXG4gIC8qKiBDb25zdHJ1Y3RzIHRoZSBzZXJ2aWNlICovXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmNvbmZpZyQgPSB0aGlzLmNvbmZpZ0JzLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,4 +0,0 @@
1
- /** Custom Authorization Service */
2
- export class CustomAuthConfigService {
3
- }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWF1dGgtY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL2NvcmUvc2VydmljZXMvY3VzdG9tLWF1dGgtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsbUNBQW1DO0FBQ25DLE1BQU0sT0FBZ0IsdUJBQXVCO0NBRzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aENvbmZpZyB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xyXG5cclxuLyoqIEN1c3RvbSBBdXRob3JpemF0aW9uIFNlcnZpY2UgKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEN1c3RvbUF1dGhDb25maWdTZXJ2aWNlIHtcclxuICAvKiogQ29uZmlndXJlIEF1dGggU2V0dGluZ3MgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlndXJlQXV0aFNldHRpbmdzKCk6IFByb21pc2U8QXV0aENvbmZpZz5cclxufVxyXG4iXX0=
@@ -1,19 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BaseConfigService } from './base-config.service';
3
- import * as i0 from "@angular/core";
4
- export class DefaultConfigService extends BaseConfigService {
5
- /** Constructs the service */
6
- constructor() {
7
- super();
8
- }
9
- ;
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
11
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, providedIn: 'root' }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, decorators: [{
14
- type: Injectable,
15
- args: [{
16
- providedIn: 'root'
17
- }]
18
- }], ctorParameters: () => [] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9kZWZhdWx0LWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBSzFELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFFekQsNkJBQTZCO0lBQzdCO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBQUEsQ0FBQzs4R0FMUyxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCYXNlQ29uZmlnU2VydmljZSB9IGZyb20gJy4vYmFzZS1jb25maWcuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0Q29uZmlnU2VydmljZSBleHRlbmRzIEJhc2VDb25maWdTZXJ2aWNlIHtcclxuXHJcbiAgLyoqIENvbnN0cnVjdHMgdGhlIHNlcnZpY2UgKi9cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -1,60 +0,0 @@
1
- import { Inject, Injectable, Optional } from '@angular/core';
2
- import { federatedModuleConfigStorageKey, FEDERATED_MODULE_ID, WINDOW } from '../models/constants';
3
- import * as i0 from "@angular/core";
4
- /** The federated module service */
5
- export class FederatedModuleService {
6
- /** The federated module configuration */
7
- get federatedModuleConfig() {
8
- if (this.federatedModuleId) {
9
- const configs = this.federatedModuleConfigDict;
10
- return configs.get(this.federatedModuleId);
11
- }
12
- return undefined;
13
- }
14
- /** True when application is running as a federated module */
15
- get isFederatedModule() {
16
- return !!this.federatedModuleConfig;
17
- }
18
- /** Gets the federated module config dictionary */
19
- get federatedModuleConfigDict() {
20
- const storageItem = this.window.sessionStorage.getItem(federatedModuleConfigStorageKey);
21
- if (!storageItem) {
22
- return undefined;
23
- }
24
- const dict = JSON.parse(storageItem);
25
- const result = new Map();
26
- Object.keys(dict).forEach(key => {
27
- result.set(key, dict[key]);
28
- });
29
- return result;
30
- }
31
- /**
32
- * Constructs the service
33
- * @param _window The browser window
34
- * @param federatedModuleId The federated module id
35
- */
36
- constructor(_window, federatedModuleId) {
37
- this._window = _window;
38
- this.federatedModuleId = federatedModuleId;
39
- this.window = _window || window;
40
- }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, deps: [{ token: WINDOW, optional: true }, { token: FEDERATED_MODULE_ID, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
42
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, providedIn: 'root' }); }
43
- }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, decorators: [{
45
- type: Injectable,
46
- args: [{
47
- providedIn: 'root'
48
- }]
49
- }], ctorParameters: () => [{ type: undefined, decorators: [{
50
- type: Optional
51
- }, {
52
- type: Inject,
53
- args: [WINDOW]
54
- }] }, { type: undefined, decorators: [{
55
- type: Optional
56
- }, {
57
- type: Inject,
58
- args: [FEDERATED_MODULE_ID]
59
- }] }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVkZXJhdGVkLW1vZHVsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJtYXR1cmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2ZlZGVyYXRlZC1tb2R1bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUduRyxtQ0FBbUM7QUFJbkMsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyx5Q0FBeUM7SUFDekMsSUFBVyxxQkFBcUI7UUFDOUIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1lBQy9DLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUM1QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCw2REFBNkQ7SUFDN0QsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFBO0lBQ3JDLENBQUM7SUFFRCxrREFBa0Q7SUFDbEQsSUFBWSx5QkFBeUI7UUFDbkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNoQixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUEyQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxFQUFpQyxDQUFDO1FBQ3hELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUtEOzs7O09BSUc7SUFDSCxZQUMrQyxPQUFZLEVBQ0EsaUJBQXlCO1FBRHJDLFlBQU8sR0FBUCxPQUFPLENBQUs7UUFDQSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7UUFFbEYsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLElBQUksTUFBTSxDQUFDO0lBQ2xDLENBQUM7OEdBM0NVLHNCQUFzQixrQkF1Q1gsTUFBTSw2QkFDTixtQkFBbUI7a0hBeEM5QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBd0NJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsTUFBTTs7MEJBQ3pCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmZWRlcmF0ZWRNb2R1bGVDb25maWdTdG9yYWdlS2V5LCBGRURFUkFURURfTU9EVUxFX0lELCBXSU5ET1cgfSBmcm9tICcuLi9tb2RlbHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHsgRmVkZXJhdGVkTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2ZlZGVyYXRlZC1tb2R1bGUtY29uZmlnJztcclxuXHJcbi8qKiBUaGUgZmVkZXJhdGVkIG1vZHVsZSBzZXJ2aWNlICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZlZGVyYXRlZE1vZHVsZVNlcnZpY2Uge1xyXG5cclxuICAvKiogVGhlIGZlZGVyYXRlZCBtb2R1bGUgY29uZmlndXJhdGlvbiAqL1xyXG4gIHB1YmxpYyBnZXQgZmVkZXJhdGVkTW9kdWxlQ29uZmlnKCk6IEZlZGVyYXRlZE1vZHVsZUNvbmZpZyB7XHJcbiAgICBpZiAodGhpcy5mZWRlcmF0ZWRNb2R1bGVJZCkge1xyXG4gICAgICBjb25zdCBjb25maWdzID0gdGhpcy5mZWRlcmF0ZWRNb2R1bGVDb25maWdEaWN0O1xyXG4gICAgICByZXR1cm4gY29uZmlncy5nZXQodGhpcy5mZWRlcmF0ZWRNb2R1bGVJZCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLyoqIFRydWUgd2hlbiBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGFzIGEgZmVkZXJhdGVkIG1vZHVsZSAqL1xyXG4gIHB1YmxpYyBnZXQgaXNGZWRlcmF0ZWRNb2R1bGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmZlZGVyYXRlZE1vZHVsZUNvbmZpZ1xyXG4gIH1cclxuXHJcbiAgLyoqIEdldHMgdGhlIGZlZGVyYXRlZCBtb2R1bGUgY29uZmlnIGRpY3Rpb25hcnkgKi9cclxuICBwcml2YXRlIGdldCBmZWRlcmF0ZWRNb2R1bGVDb25maWdEaWN0KCk6IE1hcDxzdHJpbmcsIEZlZGVyYXRlZE1vZHVsZUNvbmZpZz4ge1xyXG4gICAgY29uc3Qgc3RvcmFnZUl0ZW0gPSB0aGlzLndpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGZlZGVyYXRlZE1vZHVsZUNvbmZpZ1N0b3JhZ2VLZXkpO1xyXG4gICAgaWYgKCFzdG9yYWdlSXRlbSkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGljdCA9IEpTT04ucGFyc2Uoc3RvcmFnZUl0ZW0pIGFzIHtba2V5OiBzdHJpbmddOiBGZWRlcmF0ZWRNb2R1bGVDb25maWd9O1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcDxzdHJpbmcsIEZlZGVyYXRlZE1vZHVsZUNvbmZpZz4oKTtcclxuICAgIE9iamVjdC5rZXlzKGRpY3QpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgcmVzdWx0LnNldChrZXksIGRpY3Rba2V5XSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvKiogVGhlIHdpbmRvdyBpbnRlcmZhY2UgKi9cclxuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdHMgdGhlIHNlcnZpY2VcclxuICAgKiBAcGFyYW0gX3dpbmRvdyBUaGUgYnJvd3NlciB3aW5kb3dcclxuICAgKiBAcGFyYW0gZmVkZXJhdGVkTW9kdWxlSWQgVGhlIGZlZGVyYXRlZCBtb2R1bGUgaWRcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3c6IGFueSxcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRkVERVJBVEVEX01PRFVMRV9JRCkgcHVibGljIHJlYWRvbmx5IGZlZGVyYXRlZE1vZHVsZUlkOiBzdHJpbmdcclxuICApIHtcclxuICAgIHRoaXMud2luZG93ID0gX3dpbmRvdyB8fCB3aW5kb3c7XHJcbiAgfVxyXG59XHJcbiJdfQ==