@hmcts/opal-frontend-common 0.0.2

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 (262) hide show
  1. package/README.md +24 -0
  2. package/esm2022/hmcts-opal-frontend-common.mjs +5 -0
  3. package/esm2022/lib/components/govuk/govuk-button/govuk-button.component.mjs +34 -0
  4. package/esm2022/lib/components/govuk/govuk-text-input/govuk-text-input.component.mjs +57 -0
  5. package/esm2022/lib/components/govuk/index.mjs +3 -0
  6. package/esm2022/lib/guards/auth/auth.guard.mjs +20 -0
  7. package/esm2022/lib/guards/auth/index.mjs +2 -0
  8. package/esm2022/lib/guards/can-deactivate/can-deactivate.guard.mjs +6 -0
  9. package/esm2022/lib/guards/can-deactivate/index.mjs +5 -0
  10. package/esm2022/lib/guards/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.mjs +2 -0
  11. package/esm2022/lib/guards/can-deactivate/interfaces/index.mjs +2 -0
  12. package/esm2022/lib/guards/has-flow-state/has-flow-state.guard.mjs +16 -0
  13. package/esm2022/lib/guards/has-flow-state/index.mjs +2 -0
  14. package/esm2022/lib/guards/helpers/get-guard-with-dummy-url.mjs +19 -0
  15. package/esm2022/lib/guards/helpers/handle-observable-result.mjs +13 -0
  16. package/esm2022/lib/guards/helpers/index.mjs +5 -0
  17. package/esm2022/lib/guards/helpers/run-auth-guard-with-context.mjs +15 -0
  18. package/esm2022/lib/guards/helpers/run-has-flow-state-guard-with-context.mjs +9 -0
  19. package/esm2022/lib/guards/index.mjs +10 -0
  20. package/esm2022/lib/guards/route-permissions/index.mjs +2 -0
  21. package/esm2022/lib/guards/route-permissions/route-permissions.guard.mjs +25 -0
  22. package/esm2022/lib/guards/signed-in/index.mjs +3 -0
  23. package/esm2022/lib/guards/signed-in/signed-in.guard.mjs +20 -0
  24. package/esm2022/lib/guards/types/can-deactivate.type.mjs +2 -0
  25. package/esm2022/lib/guards/types/guard-return.type.mjs +2 -0
  26. package/esm2022/lib/guards/types/index.mjs +3 -0
  27. package/esm2022/lib/interceptors/http-error/http-error.interceptor.mjs +24 -0
  28. package/esm2022/lib/interceptors/index.mjs +3 -0
  29. package/esm2022/lib/opal-frontend-common.module.mjs +22 -0
  30. package/esm2022/lib/pages/access-denied/access-denied.component.mjs +18 -0
  31. package/esm2022/lib/pages/index.mjs +4 -0
  32. package/esm2022/lib/pages/routing/constants/routing-paths.constant.mjs +9 -0
  33. package/esm2022/lib/pages/routing/constants/routing-titles.constant.mjs +9 -0
  34. package/esm2022/lib/pages/routing/interfaces/routing-paths.interface.mjs +2 -0
  35. package/esm2022/lib/pages/routing/pages.routes.mjs +24 -0
  36. package/esm2022/lib/pages/sign-in/interfaces/index.mjs +2 -0
  37. package/esm2022/lib/pages/sign-in/interfaces/sign-in-stub-form.interface.mjs +2 -0
  38. package/esm2022/lib/pages/sign-in/sign-in-sso/sign-in-sso.component.mjs +23 -0
  39. package/esm2022/lib/pages/sign-in/sign-in-stub/sign-in-stub.component.mjs +39 -0
  40. package/esm2022/lib/pages/sign-in/sign-in.component.mjs +38 -0
  41. package/esm2022/lib/resolvers/index.mjs +3 -0
  42. package/esm2022/lib/resolvers/title/index.mjs +2 -0
  43. package/esm2022/lib/resolvers/title/title.resolver.mjs +22 -0
  44. package/esm2022/lib/resolvers/user-state/index.mjs +2 -0
  45. package/esm2022/lib/resolvers/user-state/user-state.resolver.mjs +12 -0
  46. package/esm2022/lib/routing/constants/index.mjs +2 -0
  47. package/esm2022/lib/routing/constants/sso-endpoints.constant.mjs +7 -0
  48. package/esm2022/lib/routing/index.mjs +3 -0
  49. package/esm2022/lib/routing/interfaces/child-routing-paths.interface.mjs +2 -0
  50. package/esm2022/lib/routing/interfaces/index.mjs +4 -0
  51. package/esm2022/lib/routing/interfaces/nested-routes.interface.mjs +2 -0
  52. package/esm2022/lib/routing/interfaces/sso-endpoints.interface.mjs +2 -0
  53. package/esm2022/lib/services/app-initializer-service/app-initializer.service.mjs +36 -0
  54. package/esm2022/lib/services/app-initializer-service/index.mjs +2 -0
  55. package/esm2022/lib/services/app-insights/app-insights.service.mjs +73 -0
  56. package/esm2022/lib/services/app-insights/index.mjs +4 -0
  57. package/esm2022/lib/services/auth-service/auth.service.mjs +36 -0
  58. package/esm2022/lib/services/auth-service/index.mjs +2 -0
  59. package/esm2022/lib/services/date-service/date.service.mjs +182 -0
  60. package/esm2022/lib/services/date-service/index.mjs +4 -0
  61. package/esm2022/lib/services/index.mjs +12 -0
  62. package/esm2022/lib/services/launch-darkly/index.mjs +5 -0
  63. package/esm2022/lib/services/launch-darkly/launch-darkly.service.mjs +94 -0
  64. package/esm2022/lib/services/launch-darkly/mocks/index.mjs +3 -0
  65. package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-change-flags.mock.mjs +5 -0
  66. package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-flags.mock.mjs +5 -0
  67. package/esm2022/lib/services/permissions-service/index.mjs +4 -0
  68. package/esm2022/lib/services/permissions-service/permissions.service.mjs +40 -0
  69. package/esm2022/lib/services/session-service/constants/index.mjs +2 -0
  70. package/esm2022/lib/services/session-service/constants/session-endpoints.constant.mjs +5 -0
  71. package/esm2022/lib/services/session-service/index.mjs +7 -0
  72. package/esm2022/lib/services/session-service/interfaces/index.mjs +4 -0
  73. package/esm2022/lib/services/session-service/interfaces/session-endpoints.interface.mjs +2 -0
  74. package/esm2022/lib/services/session-service/interfaces/session-token-expiry.interface.mjs +2 -0
  75. package/esm2022/lib/services/session-service/interfaces/session-user-state.interface.mjs +2 -0
  76. package/esm2022/lib/services/session-service/mocks/index.mjs +3 -0
  77. package/esm2022/lib/services/session-service/mocks/session-token-expiry.mock.mjs +5 -0
  78. package/esm2022/lib/services/session-service/mocks/session-user-state.mock.mjs +386 -0
  79. package/esm2022/lib/services/session-service/session.service.mjs +64 -0
  80. package/esm2022/lib/services/sort-service/index.mjs +6 -0
  81. package/esm2022/lib/services/sort-service/interfaces/index.mjs +3 -0
  82. package/esm2022/lib/services/sort-service/interfaces/sort-service-values.interface.mjs +2 -0
  83. package/esm2022/lib/services/sort-service/interfaces/sort-service.interface.mjs +2 -0
  84. package/esm2022/lib/services/sort-service/sort-service.mjs +90 -0
  85. package/esm2022/lib/services/sort-service/types/index.mjs +2 -0
  86. package/esm2022/lib/services/sort-service/types/sort-service.type.mjs +2 -0
  87. package/esm2022/lib/services/transfer-state-service/index.mjs +6 -0
  88. package/esm2022/lib/services/transfer-state-service/interfaces/index.mjs +4 -0
  89. package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-app-insights-config.interface.mjs +2 -0
  90. package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface.mjs +2 -0
  91. package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-server-state.interface.mjs +2 -0
  92. package/esm2022/lib/services/transfer-state-service/mocks/index.mjs +4 -0
  93. package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-app-insights-config.mock.mjs +6 -0
  94. package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-launch-darkly-config.mock.mjs +6 -0
  95. package/esm2022/lib/services/transfer-state-service/mocks/transfer-state.mock.mjs +8 -0
  96. package/esm2022/lib/services/transfer-state-service/transfer-state.service.mjs +59 -0
  97. package/esm2022/lib/services/transformation-service/index.mjs +5 -0
  98. package/esm2022/lib/services/transformation-service/interfaces/index.mjs +2 -0
  99. package/esm2022/lib/services/transformation-service/interfaces/transform-item.interface.mjs +2 -0
  100. package/esm2022/lib/services/transformation-service/transformation.service.mjs +69 -0
  101. package/esm2022/lib/services/utils/index.mjs +4 -0
  102. package/esm2022/lib/services/utils/utils.service.mjs +86 -0
  103. package/esm2022/lib/stores/global/global.store.mjs +33 -0
  104. package/esm2022/lib/stores/global/index.mjs +6 -0
  105. package/esm2022/lib/stores/global/interfaces/error-state.interface.mjs +2 -0
  106. package/esm2022/lib/stores/global/interfaces/index.mjs +2 -0
  107. package/esm2022/lib/stores/global/types/global-store.type.mjs +2 -0
  108. package/esm2022/lib/stores/global/types/index.mjs +2 -0
  109. package/esm2022/lib/stores/index.mjs +2 -0
  110. package/esm2022/lib/validators/alphabetical-text/alphabetical-text.validator.mjs +10 -0
  111. package/esm2022/lib/validators/amount/amount.validator.mjs +15 -0
  112. package/esm2022/lib/validators/date-after-year/date-after-year.validator.mjs +12 -0
  113. package/esm2022/lib/validators/date-before/date-before.validator.mjs +15 -0
  114. package/esm2022/lib/validators/date-of-birth/date-of-birth.validator.mjs +18 -0
  115. package/esm2022/lib/validators/future-date/future-date.validator.mjs +15 -0
  116. package/esm2022/lib/validators/index.mjs +20 -0
  117. package/esm2022/lib/validators/invalid-value/invalid-value.validator.mjs +9 -0
  118. package/esm2022/lib/validators/national-insurance-number/national-insurance-number.validator.mjs +16 -0
  119. package/esm2022/lib/validators/numerical-only/numerical-only.validator.mjs +10 -0
  120. package/esm2022/lib/validators/optional-max-length/optional-max-length.validator.mjs +10 -0
  121. package/esm2022/lib/validators/optional-valid-date/optional-valid-date.validator.mjs +23 -0
  122. package/esm2022/lib/validators/optional-valid-email-address/optional-valid-email-address.validator.mjs +11 -0
  123. package/esm2022/lib/validators/optional-valid-telephone/optional-valid-telephone.validator.mjs +14 -0
  124. package/esm2022/lib/validators/over-eighteen/over-eighteen.validator.mjs +45 -0
  125. package/esm2022/lib/validators/past-date/past-date.validator.mjs +16 -0
  126. package/esm2022/lib/validators/special-characters/special-characters.validator.mjs +11 -0
  127. package/esm2022/lib/validators/two-decimal-places/two-decimal-places.validator.mjs +12 -0
  128. package/esm2022/lib/validators/valid-value/valid-value.validator.mjs +9 -0
  129. package/esm2022/public-api.mjs +11 -0
  130. package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs +41 -0
  131. package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs.map +1 -0
  132. package/fesm2022/hmcts-opal-frontend-common.mjs +1947 -0
  133. package/fesm2022/hmcts-opal-frontend-common.mjs.map +1 -0
  134. package/index.d.ts +5 -0
  135. package/lib/components/govuk/govuk-button/govuk-button.component.d.ts +14 -0
  136. package/lib/components/govuk/govuk-text-input/govuk-text-input.component.d.ts +17 -0
  137. package/lib/components/govuk/index.d.ts +2 -0
  138. package/lib/guards/auth/auth.guard.d.ts +6 -0
  139. package/lib/guards/auth/index.d.ts +1 -0
  140. package/lib/guards/can-deactivate/can-deactivate.guard.d.ts +3 -0
  141. package/lib/guards/can-deactivate/index.d.ts +2 -0
  142. package/lib/guards/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.d.ts +4 -0
  143. package/lib/guards/can-deactivate/interfaces/index.d.ts +2 -0
  144. package/lib/guards/has-flow-state/has-flow-state.guard.d.ts +2 -0
  145. package/lib/guards/has-flow-state/index.d.ts +1 -0
  146. package/lib/guards/helpers/get-guard-with-dummy-url.d.ts +12 -0
  147. package/lib/guards/helpers/handle-observable-result.d.ts +8 -0
  148. package/lib/guards/helpers/index.d.ts +4 -0
  149. package/lib/guards/helpers/run-auth-guard-with-context.d.ts +9 -0
  150. package/lib/guards/helpers/run-has-flow-state-guard-with-context.d.ts +3 -0
  151. package/lib/guards/index.d.ts +7 -0
  152. package/lib/guards/route-permissions/index.d.ts +1 -0
  153. package/lib/guards/route-permissions/route-permissions.guard.d.ts +2 -0
  154. package/lib/guards/signed-in/index.d.ts +1 -0
  155. package/lib/guards/signed-in/signed-in.guard.d.ts +8 -0
  156. package/lib/guards/types/can-deactivate.type.d.ts +3 -0
  157. package/lib/guards/types/guard-return.type.d.ts +2 -0
  158. package/lib/guards/types/index.d.ts +2 -0
  159. package/lib/interceptors/http-error/http-error.interceptor.d.ts +2 -0
  160. package/lib/interceptors/index.d.ts +2 -0
  161. package/lib/opal-frontend-common.module.d.ts +14 -0
  162. package/lib/pages/access-denied/access-denied.component.d.ts +7 -0
  163. package/lib/pages/index.d.ts +3 -0
  164. package/lib/pages/routing/constants/routing-paths.constant.d.ts +2 -0
  165. package/lib/pages/routing/constants/routing-titles.constant.d.ts +2 -0
  166. package/lib/pages/routing/interfaces/routing-paths.interface.d.ts +8 -0
  167. package/lib/pages/routing/pages.routes.d.ts +2 -0
  168. package/lib/pages/sign-in/interfaces/index.d.ts +2 -0
  169. package/lib/pages/sign-in/interfaces/sign-in-stub-form.interface.d.ts +3 -0
  170. package/lib/pages/sign-in/sign-in-sso/sign-in-sso.component.d.ts +11 -0
  171. package/lib/pages/sign-in/sign-in-stub/sign-in-stub.component.d.ts +19 -0
  172. package/lib/pages/sign-in/sign-in.component.d.ts +51 -0
  173. package/lib/resolvers/index.d.ts +2 -0
  174. package/lib/resolvers/title/index.d.ts +1 -0
  175. package/lib/resolvers/title/title.resolver.d.ts +10 -0
  176. package/lib/resolvers/user-state/index.d.ts +1 -0
  177. package/lib/resolvers/user-state/user-state.resolver.d.ts +7 -0
  178. package/lib/routing/constants/index.d.ts +1 -0
  179. package/lib/routing/constants/sso-endpoints.constant.d.ts +2 -0
  180. package/lib/routing/index.d.ts +2 -0
  181. package/lib/routing/interfaces/child-routing-paths.interface.d.ts +6 -0
  182. package/lib/routing/interfaces/index.d.ts +3 -0
  183. package/lib/routing/interfaces/nested-routes.interface.d.ts +4 -0
  184. package/lib/routing/interfaces/sso-endpoints.interface.d.ts +6 -0
  185. package/lib/services/app-initializer-service/app-initializer.service.d.ts +20 -0
  186. package/lib/services/app-initializer-service/index.d.ts +1 -0
  187. package/lib/services/app-insights/app-insights.service.d.ts +33 -0
  188. package/lib/services/app-insights/index.d.ts +1 -0
  189. package/lib/services/auth-service/auth.service.d.ts +8 -0
  190. package/lib/services/auth-service/index.d.ts +1 -0
  191. package/lib/services/date-service/date.service.d.ts +123 -0
  192. package/lib/services/date-service/index.d.ts +1 -0
  193. package/lib/services/index.d.ts +11 -0
  194. package/lib/services/launch-darkly/index.d.ts +2 -0
  195. package/lib/services/launch-darkly/launch-darkly.service.d.ts +41 -0
  196. package/lib/services/launch-darkly/mocks/index.d.ts +2 -0
  197. package/lib/services/launch-darkly/mocks/launch-darkly-change-flags.mock.d.ts +10 -0
  198. package/lib/services/launch-darkly/mocks/launch-darkly-flags.mock.d.ts +4 -0
  199. package/lib/services/permissions-service/index.d.ts +1 -0
  200. package/lib/services/permissions-service/permissions.service.d.ts +14 -0
  201. package/lib/services/session-service/constants/index.d.ts +1 -0
  202. package/lib/services/session-service/constants/session-endpoints.constant.d.ts +2 -0
  203. package/lib/services/session-service/index.d.ts +4 -0
  204. package/lib/services/session-service/interfaces/index.d.ts +3 -0
  205. package/lib/services/session-service/interfaces/session-endpoints.interface.d.ts +4 -0
  206. package/lib/services/session-service/interfaces/session-token-expiry.interface.d.ts +4 -0
  207. package/lib/services/session-service/interfaces/session-user-state.interface.d.ts +15 -0
  208. package/lib/services/session-service/mocks/index.d.ts +2 -0
  209. package/lib/services/session-service/mocks/session-token-expiry.mock.d.ts +2 -0
  210. package/lib/services/session-service/mocks/session-user-state.mock.d.ts +2 -0
  211. package/lib/services/session-service/session.service.d.ts +30 -0
  212. package/lib/services/sort-service/index.d.ts +3 -0
  213. package/lib/services/sort-service/interfaces/index.d.ts +2 -0
  214. package/lib/services/sort-service/interfaces/sort-service-values.interface.d.ts +6 -0
  215. package/lib/services/sort-service/interfaces/sort-service.interface.d.ts +4 -0
  216. package/lib/services/sort-service/sort-service.d.ts +64 -0
  217. package/lib/services/sort-service/types/index.d.ts +1 -0
  218. package/lib/services/sort-service/types/sort-service.type.d.ts +1 -0
  219. package/lib/services/transfer-state-service/index.d.ts +3 -0
  220. package/lib/services/transfer-state-service/interfaces/index.d.ts +3 -0
  221. package/lib/services/transfer-state-service/interfaces/transfer-state-app-insights-config.interface.d.ts +5 -0
  222. package/lib/services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface.d.ts +5 -0
  223. package/lib/services/transfer-state-service/interfaces/transfer-state-server-state.interface.d.ts +7 -0
  224. package/lib/services/transfer-state-service/mocks/index.d.ts +3 -0
  225. package/lib/services/transfer-state-service/mocks/transfer-state-app-insights-config.mock.d.ts +5 -0
  226. package/lib/services/transfer-state-service/mocks/transfer-state-launch-darkly-config.mock.d.ts +5 -0
  227. package/lib/services/transfer-state-service/mocks/transfer-state.mock.d.ts +2 -0
  228. package/lib/services/transfer-state-service/transfer-state.service.d.ts +23 -0
  229. package/lib/services/transformation-service/index.d.ts +2 -0
  230. package/lib/services/transformation-service/interfaces/index.d.ts +1 -0
  231. package/lib/services/transformation-service/interfaces/transform-item.interface.d.ts +6 -0
  232. package/lib/services/transformation-service/transformation.service.d.ts +30 -0
  233. package/lib/services/utils/index.d.ts +1 -0
  234. package/lib/services/utils/utils.service.d.ts +54 -0
  235. package/lib/stores/global/global.store.d.ts +35 -0
  236. package/lib/stores/global/index.d.ts +3 -0
  237. package/lib/stores/global/interfaces/error-state.interface.d.ts +4 -0
  238. package/lib/stores/global/interfaces/index.d.ts +1 -0
  239. package/lib/stores/global/types/global-store.type.d.ts +2 -0
  240. package/lib/stores/global/types/index.d.ts +1 -0
  241. package/lib/stores/index.d.ts +1 -0
  242. package/lib/validators/alphabetical-text/alphabetical-text.validator.d.ts +2 -0
  243. package/lib/validators/amount/amount.validator.d.ts +2 -0
  244. package/lib/validators/date-after-year/date-after-year.validator.d.ts +2 -0
  245. package/lib/validators/date-before/date-before.validator.d.ts +2 -0
  246. package/lib/validators/date-of-birth/date-of-birth.validator.d.ts +2 -0
  247. package/lib/validators/future-date/future-date.validator.d.ts +2 -0
  248. package/lib/validators/index.d.ts +19 -0
  249. package/lib/validators/invalid-value/invalid-value.validator.d.ts +2 -0
  250. package/lib/validators/national-insurance-number/national-insurance-number.validator.d.ts +2 -0
  251. package/lib/validators/numerical-only/numerical-only.validator.d.ts +2 -0
  252. package/lib/validators/optional-max-length/optional-max-length.validator.d.ts +2 -0
  253. package/lib/validators/optional-valid-date/optional-valid-date.validator.d.ts +2 -0
  254. package/lib/validators/optional-valid-email-address/optional-valid-email-address.validator.d.ts +2 -0
  255. package/lib/validators/optional-valid-telephone/optional-valid-telephone.validator.d.ts +2 -0
  256. package/lib/validators/over-eighteen/over-eighteen.validator.d.ts +14 -0
  257. package/lib/validators/past-date/past-date.validator.d.ts +2 -0
  258. package/lib/validators/special-characters/special-characters.validator.d.ts +2 -0
  259. package/lib/validators/two-decimal-places/two-decimal-places.validator.d.ts +2 -0
  260. package/lib/validators/valid-value/valid-value.validator.d.ts +2 -0
  261. package/package.json +28 -0
  262. package/public-api.d.ts +10 -0
@@ -0,0 +1,5 @@
1
+ export interface ITransferStateAppInsightsConfig {
2
+ enabled: boolean | null;
3
+ connectionString: string | null;
4
+ cloudRoleName: string | null;
5
+ }
@@ -0,0 +1,5 @@
1
+ export interface ITransferStateLaunchDarklyConfig {
2
+ enabled: boolean | null;
3
+ clientId: string | null;
4
+ stream: boolean | null;
5
+ }
@@ -0,0 +1,7 @@
1
+ import { ITransferStateAppInsightsConfig } from './transfer-state-app-insights-config.interface';
2
+ import { ITransferStateLaunchDarklyConfig } from './transfer-state-launch-darkly-config.interface';
3
+ export interface ITransferStateServerState {
4
+ launchDarklyConfig: ITransferStateLaunchDarklyConfig;
5
+ ssoEnabled: boolean;
6
+ appInsightsConfig: ITransferStateAppInsightsConfig;
7
+ }
@@ -0,0 +1,3 @@
1
+ export * from './transfer-state-app-insights-config.mock';
2
+ export * from './transfer-state-launch-darkly-config.mock';
3
+ export * from './transfer-state.mock';
@@ -0,0 +1,5 @@
1
+ export declare const TRANSFER_STATE_APP_INSIGHTS_CONFIG_MOCK: {
2
+ enabled: boolean;
3
+ connectionString: string;
4
+ cloudRoleName: string;
5
+ };
@@ -0,0 +1,5 @@
1
+ export declare const TRANSFER_STATE_LAUNCH_DARKLY_CONFIG_MOCK: {
2
+ enabled: boolean;
3
+ clientId: string;
4
+ stream: boolean;
5
+ };
@@ -0,0 +1,2 @@
1
+ import { ITransferStateServerState } from '../interfaces/transfer-state-server-state.interface';
2
+ export declare const TRANSFER_STATE_MOCK: ITransferStateServerState;
@@ -0,0 +1,23 @@
1
+ import { PLATFORM_ID, TransferState } from '@angular/core';
2
+ import { ITransferStateServerState } from './interfaces/transfer-state-server-state.interface';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TransferStateService {
5
+ private readonly platformId;
6
+ readonly serverTransferState: ITransferStateServerState | null;
7
+ private readonly transferState;
8
+ private readonly globalStore;
9
+ private readonly storedServerTransferState;
10
+ constructor(platformId: typeof PLATFORM_ID, serverTransferState: ITransferStateServerState | null, transferState: TransferState);
11
+ /**
12
+ * Initializes the SSO (Single Sign-On) enabled state.
13
+ * Sets the SSO enabled state based on the stored server transfer state.
14
+ */
15
+ initializeSsoEnabled(): void;
16
+ /**
17
+ * Initializes the LaunchDarkly configuration by assigning the stored server transfer state's
18
+ * launchDarklyConfig value to the globalStore's launchDarklyConfig property.
19
+ */
20
+ initializeLaunchDarklyConfig(): void;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<TransferStateService, [null, { optional: true; }, null]>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<TransferStateService>;
23
+ }
@@ -0,0 +1,2 @@
1
+ export * from './transformation.service';
2
+ export * from './interfaces';
@@ -0,0 +1 @@
1
+ export * from './transform-item.interface';
@@ -0,0 +1,6 @@
1
+ export interface ITransformItem {
2
+ key: string;
3
+ transformType: string;
4
+ dateInputFormat: string | null;
5
+ dateOutputFormat: string | null;
6
+ }
@@ -0,0 +1,30 @@
1
+ import { ITransformItem } from './interfaces/transform-item.interface';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TransformationService {
4
+ private readonly dateService;
5
+ /**
6
+ * Applies a transformation to the given value based on the specified transformation configuration.
7
+ *
8
+ * @param value - The value to be transformed.
9
+ * @param transformItem - The configuration for the transformation, including the type of transformation and any necessary format details.
10
+ * @returns The transformed value, or the original value if no transformation is applied.
11
+ */
12
+ private applyTransformation;
13
+ /**
14
+ * Transforms the values of an object based on a given transformation configuration.
15
+ *
16
+ * @param obj - The object whose values need to be transformed. It should be a non-null object.
17
+ * @param toTransform - An array of transformation configurations, where each configuration specifies
18
+ * the key to transform and the transformation details.
19
+ * @returns The transformed object with values modified according to the transformation configuration.
20
+ *
21
+ * @remarks
22
+ * - If the input `obj` is not an object or is null, it returns the input as is.
23
+ * - The function recursively processes nested objects.
24
+ */
25
+ transformObjectValues(obj: {
26
+ [key: string]: any;
27
+ }, toTransform: ITransformItem[]): any;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<TransformationService, never>;
29
+ static ɵprov: i0.ɵɵInjectableDeclaration<TransformationService>;
30
+ }
@@ -0,0 +1 @@
1
+ export * from './utils.service';
@@ -0,0 +1,54 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class UtilsService {
3
+ private readonly viewportScroller;
4
+ /**
5
+ * Converts the first letter of a string to uppercase.
6
+ * @param str - The input string.
7
+ * @returns The input string with the first letter capitalized.
8
+ */
9
+ upperCaseFirstLetter(str: string): string;
10
+ /**
11
+ * Converts the entire string to uppercase.
12
+ * @param str - The input string.
13
+ * @returns The input string in uppercase.
14
+ */
15
+ upperCaseAllLetters(str: string): string;
16
+ /**
17
+ * Converts a number to a monetary string representation.
18
+ * @param amount - The number to convert.
19
+ * @returns The monetary string representation of the number.
20
+ */
21
+ convertToMonetaryString(amount: number | string): string;
22
+ /**
23
+ * Formats a 6-digit number or string as a sort code.
24
+ * @param value - The 6-digit value to format.
25
+ * @returns The formatted sort code string (xx-xx-xx).
26
+ */
27
+ formatSortCode(value: string | number): string;
28
+ /**
29
+ * Filters out null or empty strings from an array of address lines.
30
+ *
31
+ * @param address - An array of address lines which may contain strings or null values.
32
+ * @returns A new array containing only non-empty strings from the input array.
33
+ */
34
+ formatAddress(address: (string | null)[]): string[];
35
+ /**
36
+ * Scrolls the viewport to the top of the page.
37
+ * Utilizes the `viewportScroller` service to scroll to the position [0, 0].
38
+ */
39
+ scrollToTop(): void;
40
+ checkFormValues(form: {
41
+ [key: string]: any;
42
+ }): boolean;
43
+ checkFormArrayValues(forms: {
44
+ [key: string]: any;
45
+ }[]): boolean;
46
+ getFormStatus(form: {
47
+ [key: string]: any;
48
+ }, providedMessage: string, notProvidedMessage: string): string;
49
+ getArrayFormStatus(forms: {
50
+ [key: string]: any;
51
+ }[], providedMessage: string, notProvidedMessage: string): string;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<UtilsService, never>;
53
+ static ɵprov: i0.ɵɵInjectableDeclaration<UtilsService>;
54
+ }
@@ -0,0 +1,35 @@
1
+ import { LDFlagSet } from 'launchdarkly-js-client-sdk';
2
+ import { IErrorState } from './interfaces/error-state.interface';
3
+ import { ISessionUserState } from '../../services/session-service/interfaces/session-user-state.interface';
4
+ import { ITransferStateLaunchDarklyConfig } from '../../services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface';
5
+ import { ISessionTokenExpiry } from '../../services/session-service/interfaces/session-token-expiry.interface';
6
+ export declare const GlobalStore: import("@angular/core").Type<{
7
+ authenticated: import("@angular/core").Signal<boolean>;
8
+ error: import("@ngrx/signals").DeepSignal<{
9
+ error: boolean;
10
+ message: string;
11
+ }>;
12
+ featureFlags: import("@angular/core").Signal<LDFlagSet>;
13
+ userState: import("@ngrx/signals").DeepSignal<ISessionUserState>;
14
+ ssoEnabled: import("@angular/core").Signal<boolean>;
15
+ launchDarklyConfig: import("@ngrx/signals").DeepSignal<ITransferStateLaunchDarklyConfig>;
16
+ tokenExpiry: import("@ngrx/signals").DeepSignal<ISessionTokenExpiry>;
17
+ setAuthenticated: (authenticated: boolean) => void;
18
+ setError: (error: IErrorState) => void;
19
+ setFeatureFlags: (featureFlags: LDFlagSet) => void;
20
+ setUserState: (userState: ISessionUserState) => void;
21
+ setSsoEnabled: (ssoEnabled: boolean) => void;
22
+ setLaunchDarklyConfig: (config: ITransferStateLaunchDarklyConfig) => void;
23
+ setTokenExpiry: (tokenExpiry: ISessionTokenExpiry) => void;
24
+ } & import("@ngrx/signals").StateSource<{
25
+ authenticated: boolean;
26
+ error: {
27
+ error: boolean;
28
+ message: string;
29
+ };
30
+ featureFlags: LDFlagSet;
31
+ userState: ISessionUserState;
32
+ ssoEnabled: boolean;
33
+ launchDarklyConfig: ITransferStateLaunchDarklyConfig;
34
+ tokenExpiry: ISessionTokenExpiry;
35
+ }>>;
@@ -0,0 +1,3 @@
1
+ export * from './global.store';
2
+ export * from './interfaces';
3
+ export * from './types';
@@ -0,0 +1,4 @@
1
+ export interface IErrorState {
2
+ error: boolean;
3
+ message: string;
4
+ }
@@ -0,0 +1 @@
1
+ export * from './error-state.interface';
@@ -0,0 +1,2 @@
1
+ import { GlobalStore } from '../global.store';
2
+ export type GlobalStoreType = InstanceType<typeof GlobalStore>;
@@ -0,0 +1 @@
1
+ export * from './global-store.type';
@@ -0,0 +1 @@
1
+ export * from './global';
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function alphabeticalTextValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function amountValidator(maxIntegers: number, maxDecimals: number): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function dateAfterYearValidator(year: number): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function dateBeforeValidator(targetDate: Date | null): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function dateOfBirthValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function futureDateValidator(): ValidatorFn;
@@ -0,0 +1,19 @@
1
+ import { alphabeticalTextValidator } from './alphabetical-text/alphabetical-text.validator';
2
+ import { amountValidator } from './amount/amount.validator';
3
+ import { dateAfterYearValidator } from './date-after-year/date-after-year.validator';
4
+ import { dateBeforeValidator } from './date-before/date-before.validator';
5
+ import { dateOfBirthValidator } from './date-of-birth/date-of-birth.validator';
6
+ import { futureDateValidator } from './future-date/future-date.validator';
7
+ import { invalidValueValidator } from './invalid-value/invalid-value.validator';
8
+ import { nationalInsuranceNumberValidator } from './national-insurance-number/national-insurance-number.validator';
9
+ import { numericalTextValidator } from './numerical-only/numerical-only.validator';
10
+ import { optionalMaxLengthValidator } from './optional-max-length/optional-max-length.validator';
11
+ import { optionalValidDateValidator } from './optional-valid-date/optional-valid-date.validator';
12
+ import { optionalEmailAddressValidator } from './optional-valid-email-address/optional-valid-email-address.validator';
13
+ import { optionalPhoneNumberValidator } from './optional-valid-telephone/optional-valid-telephone.validator';
14
+ import { overEighteenValidator } from './over-eighteen/over-eighteen.validator';
15
+ import { pastDateValidator } from './past-date/past-date.validator';
16
+ import { specialCharactersValidator } from './special-characters/special-characters.validator';
17
+ import { twoDecimalPlacesValidator } from './two-decimal-places/two-decimal-places.validator';
18
+ import { validValueValidator } from './valid-value/valid-value.validator';
19
+ export { alphabeticalTextValidator, amountValidator, dateAfterYearValidator, dateBeforeValidator, dateOfBirthValidator, futureDateValidator, invalidValueValidator, nationalInsuranceNumberValidator, numericalTextValidator, optionalMaxLengthValidator, optionalValidDateValidator, optionalEmailAddressValidator, optionalPhoneNumberValidator, overEighteenValidator, pastDateValidator, specialCharactersValidator, twoDecimalPlacesValidator, validValueValidator, };
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function invalidValueValidator(invalidValues: string[]): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function nationalInsuranceNumberValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function numericalTextValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function optionalMaxLengthValidator(maxLength: number): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function optionalValidDateValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function optionalEmailAddressValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function optionalPhoneNumberValidator(): ValidatorFn;
@@ -0,0 +1,14 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ import { DateService } from '../../services/date-service/date.service';
3
+ /**
4
+ * Validates whether a date, constructed from provided form controls for day, month and year
5
+ * is at least 18 years in the past.
6
+ *
7
+ * @param dayControl - Name of the control for the day portion of the date
8
+ * @param monthControl - Name of the control for the month portion of the date
9
+ * @param yearControl - Name of the control for the year portion of the date
10
+ * @param dateService - An instance of DateService
11
+ * @returns Validator function that returns null if the date is valid and the age is 18 years older,
12
+ * or an error object within { underEighteen: true } if under 18.
13
+ */
14
+ export declare const overEighteenValidator: (dayControl: string, monthControl: string, yearControl: string, dateService: DateService) => ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function pastDateValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function specialCharactersValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function twoDecimalPlacesValidator(): ValidatorFn;
@@ -0,0 +1,2 @@
1
+ import { ValidatorFn } from '@angular/forms';
2
+ export declare function validValueValidator(validValues: string[]): ValidatorFn;
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@hmcts/opal-frontend-common",
3
+ "version": "0.0.2",
4
+ "peerDependencies": {
5
+ "@angular/common": "^18.2.0",
6
+ "@angular/core": "^18.2.0"
7
+ },
8
+ "dependencies": {
9
+ "tslib": "^2.3.0"
10
+ },
11
+ "sideEffects": false,
12
+ "exports": {
13
+ "./services": {
14
+ "default": "./services/public-api"
15
+ },
16
+ "./package.json": {
17
+ "default": "./package.json"
18
+ },
19
+ ".": {
20
+ "types": "./index.d.ts",
21
+ "esm2022": "./esm2022/hmcts-opal-frontend-common.mjs",
22
+ "esm": "./esm2022/hmcts-opal-frontend-common.mjs",
23
+ "default": "./fesm2022/hmcts-opal-frontend-common.mjs"
24
+ }
25
+ },
26
+ "module": "fesm2022/hmcts-opal-frontend-common.mjs",
27
+ "typings": "index.d.ts"
28
+ }
@@ -0,0 +1,10 @@
1
+ export * from './lib/opal-frontend-common.module';
2
+ export * from './lib/components/govuk';
3
+ export * from './lib/guards';
4
+ export * from './lib/interceptors';
5
+ export * from './lib/pages';
6
+ export * from './lib/resolvers';
7
+ export * from './lib/routing';
8
+ export * from './lib/services';
9
+ export * from './lib/stores';
10
+ export * from './lib/validators';