@lifeready/core 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/bundles/lifeready-core.umd.js +15939 -0
  2. package/bundles/lifeready-core.umd.js.map +1 -0
  3. package/bundles/lifeready-core.umd.min.js +16 -0
  4. package/bundles/lifeready-core.umd.min.js.map +1 -0
  5. package/esm2015/lib/_common/ast.js +40 -0
  6. package/esm2015/lib/_common/deferred-promise.js +24 -0
  7. package/esm2015/lib/_common/exceptions.js +157 -0
  8. package/esm2015/lib/_common/queries.gql.js +190 -0
  9. package/esm2015/lib/_common/run-outside-angular.js +79 -0
  10. package/esm2015/lib/_common/types.js +1 -0
  11. package/esm2015/lib/_common/utils.js +44 -0
  12. package/esm2015/lib/api/contact-card.gql.js +79 -0
  13. package/esm2015/lib/api/contact-card.service.js +154 -0
  14. package/esm2015/lib/api/contact-card2.gql.js +60 -0
  15. package/esm2015/lib/api/contact-card2.service.js +103 -0
  16. package/esm2015/lib/api/file.service.js +74 -0
  17. package/esm2015/lib/api/item2.gql.js +110 -0
  18. package/esm2015/lib/api/item2.service.js +311 -0
  19. package/esm2015/lib/api/key-exchange.gql.js +188 -0
  20. package/esm2015/lib/api/key-exchange.service.js +442 -0
  21. package/esm2015/lib/api/key-exchange.types.js +18 -0
  22. package/esm2015/lib/api/key-exchange2.gql.js +171 -0
  23. package/esm2015/lib/api/key-exchange2.service.js +479 -0
  24. package/esm2015/lib/api/lock.gql.js +40 -0
  25. package/esm2015/lib/api/lock.service.js +64 -0
  26. package/esm2015/lib/api/lr-apollo.service.js +46 -0
  27. package/esm2015/lib/api/lr-graphql/index.js +6 -0
  28. package/esm2015/lib/api/lr-graphql/lr-graphql.service.js +155 -0
  29. package/esm2015/lib/api/lr-graphql/lr-merged-mutation.js +213 -0
  30. package/esm2015/lib/api/lr-graphql/lr-mutation-base.js +51 -0
  31. package/esm2015/lib/api/lr-graphql/lr-mutation.js +48 -0
  32. package/esm2015/lib/api/lr-graphql/lr.service.js +18 -0
  33. package/esm2015/lib/api/message.service.js +138 -0
  34. package/esm2015/lib/api/persist.service.js +181 -0
  35. package/esm2015/lib/api/query-processor/common-processors.service.js +93 -0
  36. package/esm2015/lib/api/query-processor/index.js +3 -0
  37. package/esm2015/lib/api/query-processor/query-processor.service.js +192 -0
  38. package/esm2015/lib/api/query-processor/tp-password-reset-processor.service.js +109 -0
  39. package/esm2015/lib/api/shared-contact-card.service.js +119 -0
  40. package/esm2015/lib/api/shared-contact-card2.gql.js +41 -0
  41. package/esm2015/lib/api/shared-contact-card2.service.js +117 -0
  42. package/esm2015/lib/api/time.service.js +146 -0
  43. package/esm2015/lib/api/types/graphql.types.js +7 -0
  44. package/esm2015/lib/api/types/index.js +3 -0
  45. package/esm2015/lib/api/types/lr-graphql.types.js +71 -0
  46. package/esm2015/lib/auth/auth.config.js +57 -0
  47. package/esm2015/lib/auth/auth.gql.js +48 -0
  48. package/esm2015/lib/auth/auth.types.js +27 -0
  49. package/esm2015/lib/auth/idle.service.js +168 -0
  50. package/esm2015/lib/auth/idle.types.js +7 -0
  51. package/esm2015/lib/auth/lbop.service.js +355 -0
  52. package/esm2015/lib/auth/life-ready-auth.service.js +500 -0
  53. package/esm2015/lib/auth/password.service.js +320 -0
  54. package/esm2015/lib/auth/register.service.js +172 -0
  55. package/esm2015/lib/auth/two-factor.service.js +74 -0
  56. package/esm2015/lib/category/category-meta.service.js +99 -0
  57. package/esm2015/lib/category/category.gql.js +406 -0
  58. package/esm2015/lib/category/category.service.js +390 -0
  59. package/esm2015/lib/category/category.types.js +29 -0
  60. package/esm2015/lib/cryptography/cryptography.types.js +11 -0
  61. package/esm2015/lib/cryptography/encryption.service.js +189 -0
  62. package/esm2015/lib/cryptography/key-factory.service.js +237 -0
  63. package/esm2015/lib/cryptography/key-graph.service.js +280 -0
  64. package/esm2015/lib/cryptography/key-meta.service.js +200 -0
  65. package/esm2015/lib/cryptography/key.service.js +124 -0
  66. package/esm2015/lib/cryptography/slip39.service.js +169 -0
  67. package/esm2015/lib/cryptography/web-crypto.service.js +29 -0
  68. package/esm2015/lib/life-ready.config.js +84 -0
  69. package/esm2015/lib/life-ready.module.js +74 -0
  70. package/esm2015/lib/plan/plan.gql.js +123 -0
  71. package/esm2015/lib/plan/plan.service.js +149 -0
  72. package/esm2015/lib/plan/plan.types.js +11 -0
  73. package/esm2015/lib/record/record-attachment.service.js +101 -0
  74. package/esm2015/lib/record/record.gql.js +179 -0
  75. package/esm2015/lib/record/record.service.js +206 -0
  76. package/esm2015/lib/record/record.types.js +15 -0
  77. package/esm2015/lib/record-type/record-type.service.js +75 -0
  78. package/esm2015/lib/record-type/record-type.types.js +28 -0
  79. package/esm2015/lib/scenario/approvals/scenario-approval.gql.js +105 -0
  80. package/esm2015/lib/scenario/approvals/scenario-approval.types.js +1 -0
  81. package/esm2015/lib/scenario/approvals/scenario-approver.service.js +300 -0
  82. package/esm2015/lib/scenario/claimants/scenario-claimant.gql.js +52 -0
  83. package/esm2015/lib/scenario/claimants/scenario-claimant.service.js +97 -0
  84. package/esm2015/lib/scenario/claimants/scenario-claimant.types.js +1 -0
  85. package/esm2015/lib/scenario/receivers/scenario-receiver.gql.js +150 -0
  86. package/esm2015/lib/scenario/receivers/scenario-receiver.service.js +229 -0
  87. package/esm2015/lib/scenario/receivers/scenario-receiver.types.js +1 -0
  88. package/esm2015/lib/scenario/scenario-setup.service.js +269 -0
  89. package/esm2015/lib/scenario/scenario.gql.js +368 -0
  90. package/esm2015/lib/scenario/scenario.service.js +611 -0
  91. package/esm2015/lib/scenario/scenario.types.js +64 -0
  92. package/esm2015/lib/search/search.gql.js +62 -0
  93. package/esm2015/lib/search/search.service.js +156 -0
  94. package/esm2015/lib/search/search.types.js +6 -0
  95. package/esm2015/lib/trusted-parties/tp-password-reset-request.service.js +112 -0
  96. package/esm2015/lib/trusted-parties/tp-password-reset-user.service.js +129 -0
  97. package/esm2015/lib/trusted-parties/tp-password-reset.constants.js +4 -0
  98. package/esm2015/lib/trusted-parties/tp-password-reset.gql.js +232 -0
  99. package/esm2015/lib/trusted-parties/tp-password-reset.service.js +299 -0
  100. package/esm2015/lib/trusted-parties/trusted-party.gql.js +148 -0
  101. package/esm2015/lib/trusted-parties/trusted-party.service.js +326 -0
  102. package/esm2015/lib/trusted-parties/trusted-party.types.js +41 -0
  103. package/esm2015/lib/trusted-parties/trusted-party2.gql.js +87 -0
  104. package/esm2015/lib/trusted-parties/trusted-party2.service.js +215 -0
  105. package/esm2015/lib/users/profile-details.service.js +214 -0
  106. package/esm2015/lib/users/profile.gql.js +97 -0
  107. package/esm2015/lib/users/profile.service.js +169 -0
  108. package/esm2015/lib/users/profile.types.js +34 -0
  109. package/esm2015/lib/users/user.gql.js +60 -0
  110. package/esm2015/lib/users/user.service.js +79 -0
  111. package/esm2015/lib/users/user.types.js +5 -0
  112. package/esm2015/lifeready-core.js +10 -0
  113. package/esm2015/public-api.js +81 -0
  114. package/fesm2015/lifeready-core.js +13314 -0
  115. package/fesm2015/lifeready-core.js.map +1 -0
  116. package/lib/_common/ast.d.ts +11 -0
  117. package/lib/_common/deferred-promise.d.ts +12 -0
  118. package/lib/_common/exceptions.d.ts +109 -0
  119. package/lib/_common/queries.gql.d.ts +10 -0
  120. package/lib/_common/run-outside-angular.d.ts +14 -0
  121. package/{src/lib/_common/types.ts → lib/_common/types.d.ts} +3 -6
  122. package/lib/_common/utils.d.ts +3 -0
  123. package/lib/api/contact-card.gql.d.ts +7 -0
  124. package/lib/api/contact-card.service.d.ts +52 -0
  125. package/lib/api/contact-card2.gql.d.ts +34 -0
  126. package/lib/api/contact-card2.service.d.ts +49 -0
  127. package/lib/api/file.service.d.ts +18 -0
  128. package/lib/api/item2.gql.d.ts +96 -0
  129. package/lib/api/item2.service.d.ts +177 -0
  130. package/lib/api/key-exchange.gql.d.ts +9 -0
  131. package/lib/api/key-exchange.service.d.ts +39 -0
  132. package/lib/api/key-exchange.types.d.ts +196 -0
  133. package/lib/api/key-exchange2.gql.d.ts +125 -0
  134. package/lib/api/key-exchange2.service.d.ts +187 -0
  135. package/lib/api/lock.gql.d.ts +27 -0
  136. package/lib/api/lock.service.d.ts +25 -0
  137. package/lib/api/lr-apollo.service.d.ts +15 -0
  138. package/lib/api/lr-graphql/lr-graphql.service.d.ts +60 -0
  139. package/lib/api/lr-graphql/lr-merged-mutation.d.ts +27 -0
  140. package/lib/api/lr-graphql/lr-mutation-base.d.ts +28 -0
  141. package/lib/api/lr-graphql/lr-mutation.d.ts +8 -0
  142. package/lib/api/lr-graphql/lr.service.d.ts +9 -0
  143. package/lib/api/message.service.d.ts +58 -0
  144. package/lib/api/persist.service.d.ts +31 -0
  145. package/lib/api/query-processor/common-processors.service.d.ts +36 -0
  146. package/lib/api/query-processor/query-processor.service.d.ts +18 -0
  147. package/lib/api/query-processor/tp-password-reset-processor.service.d.ts +15 -0
  148. package/lib/api/shared-contact-card.service.d.ts +33 -0
  149. package/lib/api/shared-contact-card2.gql.d.ts +36 -0
  150. package/lib/api/shared-contact-card2.service.d.ts +45 -0
  151. package/lib/api/time.service.d.ts +16 -0
  152. package/lib/api/types/graphql.types.d.ts +29 -0
  153. package/lib/api/types/lr-graphql.types.d.ts +385 -0
  154. package/lib/auth/auth.config.d.ts +5 -0
  155. package/lib/auth/auth.gql.d.ts +15 -0
  156. package/lib/auth/auth.types.d.ts +66 -0
  157. package/lib/auth/idle.service.d.ts +40 -0
  158. package/lib/auth/idle.types.d.ts +10 -0
  159. package/lib/auth/lbop.service.d.ts +91 -0
  160. package/lib/auth/life-ready-auth.service.d.ts +59 -0
  161. package/lib/auth/password.service.d.ts +78 -0
  162. package/lib/auth/register.service.d.ts +25 -0
  163. package/lib/auth/two-factor.service.d.ts +15 -0
  164. package/lib/category/category-meta.service.d.ts +23 -0
  165. package/lib/category/category.gql.d.ts +45 -0
  166. package/lib/category/category.service.d.ts +67 -0
  167. package/lib/category/category.types.d.ts +79 -0
  168. package/lib/cryptography/cryptography.types.d.ts +83 -0
  169. package/lib/cryptography/encryption.service.d.ts +41 -0
  170. package/lib/cryptography/key-factory.service.d.ts +38 -0
  171. package/lib/cryptography/key-graph.service.d.ts +33 -0
  172. package/lib/cryptography/key-meta.service.d.ts +44 -0
  173. package/lib/cryptography/key.service.d.ts +36 -0
  174. package/lib/cryptography/slip39.service.d.ts +43 -0
  175. package/lib/cryptography/web-crypto.service.d.ts +5 -0
  176. package/lib/life-ready.config.d.ts +14 -0
  177. package/lib/life-ready.module.d.ts +5 -0
  178. package/lib/plan/plan.gql.d.ts +11 -0
  179. package/lib/plan/plan.service.d.ts +33 -0
  180. package/lib/plan/plan.types.d.ts +31 -0
  181. package/lib/record/record-attachment.service.d.ts +16 -0
  182. package/lib/record/record.gql.d.ts +14 -0
  183. package/lib/record/record.service.d.ts +25 -0
  184. package/lib/record/record.types.d.ts +57 -0
  185. package/lib/record-type/record-type.service.d.ts +11 -0
  186. package/lib/record-type/record-type.types.d.ts +50 -0
  187. package/lib/scenario/approvals/scenario-approval.gql.d.ts +7 -0
  188. package/lib/scenario/approvals/scenario-approval.types.d.ts +63 -0
  189. package/lib/scenario/approvals/scenario-approver.service.d.ts +32 -0
  190. package/lib/scenario/claimants/scenario-claimant.gql.d.ts +5 -0
  191. package/lib/scenario/claimants/scenario-claimant.service.d.ts +17 -0
  192. package/lib/scenario/claimants/scenario-claimant.types.d.ts +18 -0
  193. package/lib/scenario/receivers/scenario-receiver.gql.d.ts +8 -0
  194. package/lib/scenario/receivers/scenario-receiver.service.d.ts +30 -0
  195. package/lib/scenario/receivers/scenario-receiver.types.d.ts +54 -0
  196. package/lib/scenario/scenario-setup.service.d.ts +22 -0
  197. package/lib/scenario/scenario.gql.d.ts +34 -0
  198. package/lib/scenario/scenario.service.d.ts +58 -0
  199. package/lib/scenario/scenario.types.d.ts +217 -0
  200. package/lib/search/search.gql.d.ts +1 -0
  201. package/lib/search/search.service.d.ts +25 -0
  202. package/lib/search/search.types.d.ts +20 -0
  203. package/lib/trusted-parties/tp-password-reset-request.service.d.ts +20 -0
  204. package/lib/trusted-parties/tp-password-reset-user.service.d.ts +35 -0
  205. package/lib/trusted-parties/tp-password-reset.constants.d.ts +3 -0
  206. package/lib/trusted-parties/tp-password-reset.gql.d.ts +218 -0
  207. package/lib/trusted-parties/tp-password-reset.service.d.ts +130 -0
  208. package/lib/trusted-parties/trusted-party.gql.d.ts +9 -0
  209. package/lib/trusted-parties/trusted-party.service.d.ts +44 -0
  210. package/lib/trusted-parties/trusted-party.types.d.ts +102 -0
  211. package/lib/trusted-parties/trusted-party2.gql.d.ts +79 -0
  212. package/lib/trusted-parties/trusted-party2.service.d.ts +114 -0
  213. package/lib/users/profile-details.service.d.ts +21 -0
  214. package/lib/users/profile.gql.d.ts +11 -0
  215. package/lib/users/profile.service.d.ts +35 -0
  216. package/lib/users/profile.types.d.ts +96 -0
  217. package/lib/users/user.gql.d.ts +9 -0
  218. package/lib/users/user.service.d.ts +12 -0
  219. package/lib/users/user.types.d.ts +23 -0
  220. package/lifeready-core.d.ts +9 -0
  221. package/lifeready-core.metadata.json +1 -0
  222. package/package.json +29 -21
  223. package/{src/public-api.ts → public-api.d.ts} +0 -19
  224. package/karma.conf.js +0 -32
  225. package/ng-package.json +0 -26
  226. package/src/lib/_common/ast.ts +0 -75
  227. package/src/lib/_common/deferred-promise.ts +0 -35
  228. package/src/lib/_common/exceptions.ts +0 -189
  229. package/src/lib/_common/queries.gql.ts +0 -200
  230. package/src/lib/_common/run-outside-angular.ts +0 -125
  231. package/src/lib/_common/tests.ts +0 -82
  232. package/src/lib/_common/utils.ts +0 -57
  233. package/src/lib/api/api-mutation.spec.ts +0 -547
  234. package/src/lib/api/api-query.spec.ts +0 -40
  235. package/src/lib/api/contact-card.gql.ts +0 -85
  236. package/src/lib/api/contact-card.service.spec.ts +0 -249
  237. package/src/lib/api/contact-card.service.ts +0 -228
  238. package/src/lib/api/contact-card2.gql.ts +0 -93
  239. package/src/lib/api/contact-card2.service.spec.ts +0 -297
  240. package/src/lib/api/contact-card2.service.ts +0 -139
  241. package/src/lib/api/file.service.spec.ts +0 -14
  242. package/src/lib/api/file.service.ts +0 -81
  243. package/src/lib/api/item2.gql.ts +0 -211
  244. package/src/lib/api/item2.service.spec.ts +0 -1043
  245. package/src/lib/api/item2.service.ts +0 -481
  246. package/src/lib/api/key-exchange.gql.ts +0 -196
  247. package/src/lib/api/key-exchange.service.spec.ts +0 -470
  248. package/src/lib/api/key-exchange.service.ts +0 -731
  249. package/src/lib/api/key-exchange.types.ts +0 -235
  250. package/src/lib/api/key-exchange2.gql.ts +0 -310
  251. package/src/lib/api/key-exchange2.service.spec.ts +0 -892
  252. package/src/lib/api/key-exchange2.service.ts +0 -875
  253. package/src/lib/api/lock.gql.ts +0 -67
  254. package/src/lib/api/lock.service.spec.ts +0 -549
  255. package/src/lib/api/lock.service.ts +0 -57
  256. package/src/lib/api/lr-apollo.service.spec.ts +0 -27
  257. package/src/lib/api/lr-apollo.service.ts +0 -43
  258. package/src/lib/api/lr-graphql/lr-graphql.service.ts +0 -313
  259. package/src/lib/api/lr-graphql/lr-merged-mutation.ts +0 -377
  260. package/src/lib/api/lr-graphql/lr-mutation-base.ts +0 -67
  261. package/src/lib/api/lr-graphql/lr-mutation.ts +0 -74
  262. package/src/lib/api/lr-graphql/lr.service.ts +0 -28
  263. package/src/lib/api/message.service.spec.ts +0 -20
  264. package/src/lib/api/message.service.ts +0 -210
  265. package/src/lib/api/persist.service.spec.ts +0 -209
  266. package/src/lib/api/persist.service.ts +0 -220
  267. package/src/lib/api/query-processor/common-processors.service.ts +0 -148
  268. package/src/lib/api/query-processor/query-processor.service.ts +0 -240
  269. package/src/lib/api/query-processor/tp-password-reset-processor.service.ts +0 -177
  270. package/src/lib/api/shared-contact-card.service.ts +0 -156
  271. package/src/lib/api/shared-contact-card2.gql.ts +0 -76
  272. package/src/lib/api/shared-contact-card2.service.ts +0 -154
  273. package/src/lib/api/time.service.spec.ts +0 -48
  274. package/src/lib/api/time.service.ts +0 -155
  275. package/src/lib/api/types/graphql.types.ts +0 -48
  276. package/src/lib/api/types/lr-graphql.types.ts +0 -467
  277. package/src/lib/auth/auth.config.ts +0 -83
  278. package/src/lib/auth/auth.gql.ts +0 -62
  279. package/src/lib/auth/auth.types.ts +0 -79
  280. package/src/lib/auth/idle.service.spec.ts +0 -119
  281. package/src/lib/auth/idle.service.ts +0 -208
  282. package/src/lib/auth/idle.types.ts +0 -11
  283. package/src/lib/auth/lbop.service.spec.ts +0 -56
  284. package/src/lib/auth/lbop.service.ts +0 -539
  285. package/src/lib/auth/life-ready-auth.service.spec.ts +0 -70
  286. package/src/lib/auth/life-ready-auth.service.ts +0 -454
  287. package/src/lib/auth/password.service.spec.ts +0 -51
  288. package/src/lib/auth/password.service.ts +0 -438
  289. package/src/lib/auth/register.service.spec.ts +0 -31
  290. package/src/lib/auth/register.service.ts +0 -181
  291. package/src/lib/auth/two-factor.service.spec.ts +0 -21
  292. package/src/lib/auth/two-factor.service.ts +0 -69
  293. package/src/lib/category/category-meta.service.spec.ts +0 -28
  294. package/src/lib/category/category-meta.service.ts +0 -125
  295. package/src/lib/category/category.gql.ts +0 -449
  296. package/src/lib/category/category.service.spec.ts +0 -26
  297. package/src/lib/category/category.service.ts +0 -498
  298. package/src/lib/category/category.types.ts +0 -89
  299. package/src/lib/cryptography/cryptography.types.ts +0 -108
  300. package/src/lib/cryptography/encryption.service.spec.ts +0 -125
  301. package/src/lib/cryptography/encryption.service.ts +0 -243
  302. package/src/lib/cryptography/key-factory.service.spec.ts +0 -15
  303. package/src/lib/cryptography/key-factory.service.ts +0 -303
  304. package/src/lib/cryptography/key-graph.service.spec.ts +0 -16
  305. package/src/lib/cryptography/key-graph.service.ts +0 -354
  306. package/src/lib/cryptography/key-meta.service.spec.ts +0 -40
  307. package/src/lib/cryptography/key-meta.service.ts +0 -254
  308. package/src/lib/cryptography/key.service.spec.ts +0 -16
  309. package/src/lib/cryptography/key.service.ts +0 -154
  310. package/src/lib/cryptography/slip39.service.spec.ts +0 -44
  311. package/src/lib/cryptography/slip39.service.ts +0 -204
  312. package/src/lib/cryptography/web-crypto.service.ts +0 -22
  313. package/src/lib/life-ready.config.ts +0 -127
  314. package/src/lib/life-ready.module.ts +0 -81
  315. package/src/lib/plan/plan.gql.ts +0 -133
  316. package/src/lib/plan/plan.service.spec.ts +0 -294
  317. package/src/lib/plan/plan.service.ts +0 -198
  318. package/src/lib/plan/plan.types.ts +0 -37
  319. package/src/lib/record/record-attachment.service.spec.ts +0 -31
  320. package/src/lib/record/record-attachment.service.ts +0 -101
  321. package/src/lib/record/record.gql.ts +0 -192
  322. package/src/lib/record/record.service.spec.ts +0 -598
  323. package/src/lib/record/record.service.ts +0 -236
  324. package/src/lib/record/record.types.ts +0 -86
  325. package/src/lib/record-type/record-type.service.spec.ts +0 -16
  326. package/src/lib/record-type/record-type.service.ts +0 -71
  327. package/src/lib/record-type/record-type.types.ts +0 -58
  328. package/src/lib/scenario/approvals/scenario-approval.gql.ts +0 -112
  329. package/src/lib/scenario/approvals/scenario-approval.types.ts +0 -85
  330. package/src/lib/scenario/approvals/scenario-approver.service.spec.ts +0 -16
  331. package/src/lib/scenario/approvals/scenario-approver.service.ts +0 -422
  332. package/src/lib/scenario/claimants/scenario-claimant.gql.ts +0 -56
  333. package/src/lib/scenario/claimants/scenario-claimant.service.spec.ts +0 -16
  334. package/src/lib/scenario/claimants/scenario-claimant.service.ts +0 -100
  335. package/src/lib/scenario/claimants/scenario-claimant.types.ts +0 -21
  336. package/src/lib/scenario/receivers/scenario-receiver.gql.ts +0 -157
  337. package/src/lib/scenario/receivers/scenario-receiver.service.spec.ts +0 -16
  338. package/src/lib/scenario/receivers/scenario-receiver.service.ts +0 -278
  339. package/src/lib/scenario/receivers/scenario-receiver.types.ts +0 -66
  340. package/src/lib/scenario/scenario-setup.service.spec.ts +0 -22
  341. package/src/lib/scenario/scenario-setup.service.ts +0 -369
  342. package/src/lib/scenario/scenario.gql.ts +0 -404
  343. package/src/lib/scenario/scenario.service.spec.ts +0 -1586
  344. package/src/lib/scenario/scenario.service.ts +0 -811
  345. package/src/lib/scenario/scenario.types.ts +0 -258
  346. package/src/lib/search/search.gql.ts +0 -62
  347. package/src/lib/search/search.service.spec.ts +0 -57
  348. package/src/lib/search/search.service.ts +0 -174
  349. package/src/lib/search/search.types.ts +0 -24
  350. package/src/lib/trusted-parties/tp-password-reset-request.service.ts +0 -140
  351. package/src/lib/trusted-parties/tp-password-reset-user.service.ts +0 -359
  352. package/src/lib/trusted-parties/tp-password-reset.gql.ts +0 -453
  353. package/src/lib/trusted-parties/tp-password-reset.service.spec.ts +0 -602
  354. package/src/lib/trusted-parties/tp-password-reset.service.ts +0 -482
  355. package/src/lib/trusted-parties/trusted-party.gql.ts +0 -159
  356. package/src/lib/trusted-parties/trusted-party.service.spec.ts +0 -1008
  357. package/src/lib/trusted-parties/trusted-party.service.ts +0 -394
  358. package/src/lib/trusted-parties/trusted-party.types.ts +0 -119
  359. package/src/lib/trusted-parties/trusted-party2.gql.ts +0 -165
  360. package/src/lib/trusted-parties/trusted-party2.service.spec.ts +0 -1782
  361. package/src/lib/trusted-parties/trusted-party2.service.ts +0 -272
  362. package/src/lib/users/profile-details.service.spec.ts +0 -45
  363. package/src/lib/users/profile-details.service.ts +0 -278
  364. package/src/lib/users/profile.gql.ts +0 -108
  365. package/src/lib/users/profile.service.spec.ts +0 -97
  366. package/src/lib/users/profile.service.ts +0 -224
  367. package/src/lib/users/profile.types.ts +0 -101
  368. package/src/lib/users/user.gql.ts +0 -69
  369. package/src/lib/users/user.service.spec.ts +0 -161
  370. package/src/lib/users/user.service.ts +0 -72
  371. package/src/lib/users/user.types.ts +0 -27
  372. package/src/test.ts +0 -21
  373. package/tsconfig.lib.json +0 -21
  374. package/tsconfig.lib.prod.json +0 -6
  375. package/tsconfig.spec.json +0 -10
  376. package/tslint.json +0 -17
  377. /package/{src/lib/api/lr-graphql/index.ts → lib/api/lr-graphql/index.d.ts} +0 -0
  378. /package/{src/lib/api/query-processor/index.ts → lib/api/query-processor/index.d.ts} +0 -0
  379. /package/{src/lib/api/types/index.ts → lib/api/types/index.d.ts} +0 -0
@@ -1,119 +0,0 @@
1
- import { TestBed } from '@angular/core/testing';
2
- import {
3
- loginTestUser,
4
- logoutUser,
5
- } from '../auth/life-ready-auth.service.spec';
6
- import { delaySec, lrConfigureTestingModule, lrit } from '../_common/tests';
7
- import { IdleService } from 'projects/core/src/lib/auth/idle.service';
8
- import { KeyService } from '../cryptography/key.service';
9
- import { PersistService } from 'projects/core/src/lib/api/persist.service';
10
-
11
- const TIMEOUT = 1000 * 60 * 10;
12
-
13
- describe('IdleService', () => {
14
- let idleService: IdleService;
15
- let keyService: KeyService;
16
- let persistService: PersistService;
17
-
18
- beforeEach(async () => {
19
- lrConfigureTestingModule();
20
-
21
- idleService = TestBed.inject(IdleService);
22
- keyService = TestBed.inject(KeyService);
23
- persistService = TestBed.inject(PersistService);
24
- }, TIMEOUT);
25
-
26
- lrit(
27
- 'should be created',
28
- () => {
29
- expect(idleService).toBeTruthy();
30
- },
31
- TIMEOUT
32
- );
33
-
34
- // The keyService.getMasterKey() returns the memory caches lastKey. So we need
35
- // to test directly against the persistService.
36
- async function expectMasterKey() {
37
- const value = await persistService.get(
38
- (keyService as any).STORE_MASTER_KEY
39
- );
40
- expect(value.jwk).toBeTruthy();
41
- }
42
-
43
- async function expectNoMasterKey() {
44
- const value = await persistService.get(
45
- (keyService as any).STORE_MASTER_KEY
46
- );
47
- expect(value).not.toBeTruthy();
48
- }
49
-
50
- async function shouldDetectIdle() {
51
- let timeoutCalled = 0;
52
- let keepaliveCalled = 0;
53
- const onTimeout = () => {
54
- console.log('onTimeout() called');
55
- ++timeoutCalled;
56
- };
57
-
58
- const onKeepalive = () => {
59
- console.log('onKeepalive() called');
60
- ++keepaliveCalled;
61
- };
62
-
63
- const idleSec = 3;
64
- const keepAliveIntervalSec = 0.5;
65
- const timeoutSec = 2;
66
-
67
- // The default expiry is 20 minutes. Too long for this test.
68
- // setting UseServerSessionExpiry to false will let is use:
69
- // (idleSec + keepAliveIntervalSec + timeoutSec) as the session expiry
70
- // for the passKey.
71
- await idleService.init({
72
- idleSec,
73
- keepAliveIntervalSec,
74
- timeoutSec,
75
- onTimeout,
76
- onKeepalive,
77
- });
78
-
79
- await logoutUser();
80
- const user = await loginTestUser();
81
- const { expiresAfterSeconds } = await idleService.keepalivePost();
82
- console.log('expiresAfterSeconds: ', expiresAfterSeconds);
83
-
84
- await expectMasterKey();
85
-
86
- await delaySec(idleSec / 2);
87
- // Should still be under the idle threshold
88
- await expectMasterKey();
89
-
90
- await delaySec(idleSec - idleSec / 2);
91
- // Idle should start, this is when it should stops sending keep alive pings.
92
- await expectMasterKey();
93
- // So +expiresAfterSeconds from now the passkey should expire
94
- const checkExpiry = (async () => {
95
- await delaySec(expiresAfterSeconds);
96
- await delaySec(1); // add some buffer just to be sure
97
-
98
- expect(timeoutCalled).toEqual(1);
99
- expect(keepaliveCalled).toBeGreaterThan(1);
100
-
101
- await expectNoMasterKey();
102
- })();
103
-
104
- await delaySec(timeoutSec);
105
- // Should be idling now.
106
- await expectMasterKey();
107
-
108
- return checkExpiry;
109
- }
110
-
111
- lrit(
112
- 'should detect idle',
113
- async () => {
114
- // Run in twice to make sure it's repeatable after login.
115
- await shouldDetectIdle();
116
- },
117
- TIMEOUT
118
- );
119
- });
@@ -1,208 +0,0 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { Idle, DEFAULT_INTERRUPTSOURCES } from '@ng-idle/core';
3
- import { Keepalive } from '@ng-idle/keepalive';
4
- import { KeyService } from '../cryptography/key.service';
5
- import {
6
- LrBadArgumentException,
7
- LrBadStateException,
8
- } from '../_common/exceptions';
9
- import { LifeReadyConfig, LR_CONFIG } from '../life-ready.config';
10
- import { HttpClient } from '@angular/common/http';
11
- import { Config, KeepaliveResult } from './idle.types';
12
- import { Key } from '../cryptography/cryptography.types';
13
- import { CognitoUser } from '@aws-amplify/auth';
14
- import { AuthClass } from '@aws-amplify/auth/lib-esm/Auth';
15
-
16
- export interface IdleServiceInit {
17
- // TODO: this should be EventEmitter instead of a callback.
18
- onTimeout?: (() => any) | (() => Promise<any>) | null;
19
- onKeepalive?: (() => any) | (() => Promise<any>) | null;
20
- idleSec?: number;
21
- timeoutSec?: number;
22
- keepAliveIntervalSec?: number;
23
- }
24
-
25
- @Injectable({
26
- providedIn: 'root',
27
- })
28
- export class IdleService {
29
- private readonly IDLE_EXPIRY_KEY = 'ng2Idle.main.expiry';
30
- private readonly IDLING_KEY = 'ng2Idle.main.idling';
31
-
32
- private initCalled = false;
33
- private onTimeout: (() => any) | (() => Promise<any>) | null;
34
- private onKeepalive: (() => any) | (() => Promise<any>) | null;
35
-
36
- constructor(
37
- @Inject(LR_CONFIG) private config: LifeReadyConfig,
38
- private http: HttpClient,
39
- private idle: Idle,
40
- private keepalive: Keepalive,
41
- private keyService: KeyService,
42
- private auth: AuthClass
43
- ) {}
44
-
45
- private assertInit(): void {
46
- if (!this.initCalled) {
47
- throw new LrBadStateException('Call IdleService.init() first.');
48
- }
49
- }
50
-
51
- public async init(params?: IdleServiceInit): Promise<void> {
52
- if (this.initCalled) {
53
- throw new LrBadStateException(
54
- 'IdleService.init() can only be called once. IdleService.start() calls init() with default values if init() has not been called yet.'
55
- );
56
- }
57
-
58
- this.initCalled = true;
59
-
60
- // Defaults
61
- params = {
62
- onTimeout: null,
63
- onKeepalive: null,
64
- idleSec: Config.IDLE,
65
- timeoutSec: Config.TIMEOUT,
66
- keepAliveIntervalSec: Config.KEEP_ALIVE_INTERVAL,
67
- ...params,
68
- };
69
-
70
- // If timeoutSec == 0 then the onTimeout() callback is never called.
71
- if (params.timeoutSec < 0.01) {
72
- throw new LrBadArgumentException(
73
- 'Minimum value for IdleService.init({ timeoutSec }) is 0.01'
74
- );
75
- }
76
-
77
- this.onTimeout = params.onTimeout;
78
- this.onKeepalive = params.onKeepalive;
79
-
80
- // ------------------------------------------------------------------------
81
- // Setup Idle
82
- // ------------------------------------------------------------------------
83
- // sets an idle timeout of 5 seconds, for testing purposes.
84
- this.idle.setIdle(params.idleSec);
85
- // sets a timeout period of 5 seconds. after 10 seconds of inactivity, the user will be considered timed out.
86
- this.idle.setTimeout(params.timeoutSec);
87
- // sets the default interrupts, in this case, things like clicks, scrolls, touches to the document
88
- this.idle.setInterrupts(DEFAULT_INTERRUPTSOURCES);
89
-
90
- this.idle.onIdleEnd.subscribe(() => console.log('Idle stopped'));
91
- this.idle.onIdleStart.subscribe(() => console.log('Idle started'));
92
-
93
- this.idle.onTimeout.subscribe(async () => {
94
- console.log('Idle timed out');
95
- this.reset();
96
- await Promise.resolve(this.onTimeout && this.onTimeout());
97
- });
98
- this.idle.onTimeoutWarning.subscribe((countdown: any) =>
99
- console.log(`Will timeout in ${countdown} seconds!`)
100
- );
101
-
102
- // ------------------------------------------------------------------------
103
- // Setup Keepalive
104
- // ------------------------------------------------------------------------
105
- // Ref: https://github.com/moribvndvs/ng2-idle#readme
106
- // ng-idle will instruct @ng-idle/keepalive to ping while the user is active, and stop once
107
- // they go idle or time out. When the user resumes activity or the idle state is reset, it will
108
- // ping immediately and then resume pinging.
109
- this.keepalive.interval(params.keepAliveIntervalSec);
110
- console.log(
111
- `Keep alive interval set at: ${Config.KEEP_ALIVE_INTERVAL} seconds`
112
- );
113
-
114
- this.keepalive.onPing.subscribe(() => this.onPing());
115
-
116
- // If the browser tab has been closed for a period longer thant the inactivity
117
- // period, then we should logout right from the start.
118
- const idleExpiry = localStorage.getItem(this.IDLE_EXPIRY_KEY);
119
- if (
120
- idleExpiry &&
121
- parseInt(idleExpiry, 10) + this.idle.getTimeout() * 1000 < Date.now()
122
- ) {
123
- this.reset();
124
- await Promise.resolve(this.onTimeout && this.onTimeout());
125
- }
126
- }
127
-
128
- public async keepalivePost(): Promise<{
129
- expiresAfterSeconds: number;
130
- keepaliveResult: KeepaliveResult;
131
- }> {
132
- // currentAuthenticatedUser() refreshes the access token if required.
133
- const cognitoUser: CognitoUser = await this.auth.currentAuthenticatedUser();
134
-
135
- const keepaliveResult = await this.http
136
- .post<KeepaliveResult>(`${this.config.authUrl}auth/keepalive/`, null, {
137
- withCredentials: true, // /auth/keepalive/ will be extending the sessions cookie.
138
- headers: {
139
- Authorization: `Bearer ${cognitoUser
140
- .getSignInUserSession()
141
- .getAccessToken()
142
- .getJwtToken()}`,
143
- },
144
- })
145
- .toPromise();
146
-
147
- return {
148
- keepaliveResult,
149
- expiresAfterSeconds:
150
- this.idle.getIdle() +
151
- this.idle.getTimeout() +
152
- this.keepalive.interval(),
153
- };
154
- }
155
-
156
- public async persistMasterKey(masterKey: Key): Promise<void> {
157
- // The keepalive API call extends the server-side session, the session cookie expiry, refresh key cookie
158
- // expiry, and returns the session expiry.
159
- // NOTE Use time delta rather than absolute time, since client clock and server clock maybe
160
- // out of sync. We can't use the serverTime() functionality because the cookie expiry still
161
- // run on local clock.
162
- const { expiresAfterSeconds } = await this.keepalivePost();
163
-
164
- // Persist the derived passKey
165
- await this.keyService.persistMasterKey(masterKey, expiresAfterSeconds);
166
-
167
- console.log('setMasterKey() done');
168
- }
169
-
170
- private async onPing(): Promise<void> {
171
- console.log(
172
- `Keep alive triggered at time: ${Date.now()}. Interval set at: ${this.keepalive.interval()} seconds`
173
- );
174
-
175
- // Keepalive API will extend the session expiry.
176
- const { expiresAfterSeconds } = await this.keepalivePost();
177
-
178
- // Extend the expiry of the persisted key
179
- await this.keyService.setMasterKeyExpiresAfterSeconds(expiresAfterSeconds);
180
-
181
- await Promise.resolve(this.onKeepalive && this.onKeepalive());
182
- }
183
-
184
- public async start(): Promise<void> {
185
- if (!this.initCalled) {
186
- await this.init();
187
- }
188
-
189
- if (this.idle.isRunning()) {
190
- return;
191
- }
192
-
193
- // Ping does not seem to happen right at the start. So we call it explicitly
194
- await this.onPing();
195
-
196
- this.idle.watch();
197
- }
198
-
199
- public stop(): void {
200
- this.idle.stop();
201
- this.reset();
202
- }
203
-
204
- private reset() {
205
- localStorage.removeItem(this.IDLE_EXPIRY_KEY);
206
- localStorage.removeItem(this.IDLING_KEY);
207
- }
208
- }
@@ -1,11 +0,0 @@
1
- export enum Config {
2
- TIMEOUT = 0.01, // seconds, min value 0.01, after state is idle, wait for TIMEOUT seconds before taking action
3
- IDLE = 60 * 20, // seconds, period of inactivity to consider state as idle
4
- KEEP_ALIVE_INTERVAL = 60 * 1, // seconds, triggered on a regular basis while active (i.e. while not idling)
5
- }
6
-
7
- export interface KeepaliveResult {
8
- session: {
9
- expires_after_seconds: number;
10
- };
11
- }
@@ -1,56 +0,0 @@
1
- import { TestBed } from '@angular/core/testing';
2
- import { loginTestUser } from '../auth/life-ready-auth.service.spec';
3
- import { LbopService } from './lbop.service';
4
- import { CurrentUser } from '../../public-api';
5
- import { lrConfigureTestingModule, lrit } from '../_common/tests';
6
-
7
- const TIMEOUT = 1000 * 60 * 10;
8
-
9
- describe('LbopService', () => {
10
- let lbopService: LbopService;
11
- let user: CurrentUser;
12
-
13
- beforeEach(async () => {
14
- lrConfigureTestingModule();
15
- lbopService = TestBed.inject(LbopService);
16
- user = await loginTestUser();
17
- }, TIMEOUT);
18
-
19
- lrit(
20
- 'should be created',
21
- () => {
22
- expect(lbopService).toBeTruthy();
23
- },
24
- TIMEOUT
25
- );
26
-
27
- lrit(
28
- 'should CRUD lbop',
29
- async () => {
30
- if (!user) return;
31
-
32
- const lbopsBefore = await lbopService.list();
33
- const lbop1 = await lbopService.create({ name: 'abc' });
34
- const lbop2 = await lbopService.create({ name: 'abc' });
35
- const lbopsAfterCreate = await lbopService.list();
36
-
37
- expect(lbop1.id).not.toBe(
38
- lbop2.id,
39
- 'the server should allow same name because it is encrypted.'
40
- );
41
- expect(lbopsAfterCreate.length).toBe(lbopsBefore.length + 2);
42
-
43
- await lbopService.remove(lbop1.id);
44
-
45
- const lbopsAfterDelete = await lbopService.list();
46
- expect(lbopsAfterDelete.length).toBe(lbopsAfterCreate.length - 1);
47
-
48
- // Make sure it's been deleted.
49
- expect(lbopsAfterDelete.some((t) => t.id === lbop1.id)).toBeFalsy();
50
-
51
- await lbopService.update({ id: lbop2.id, name: '123' });
52
- expect((await lbopService.get(lbop2.id)).name).toBe('123');
53
- },
54
- TIMEOUT
55
- );
56
- });