@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.
- package/bundles/lifeready-core.umd.js +15939 -0
- package/bundles/lifeready-core.umd.js.map +1 -0
- package/bundles/lifeready-core.umd.min.js +16 -0
- package/bundles/lifeready-core.umd.min.js.map +1 -0
- package/esm2015/lib/_common/ast.js +40 -0
- package/esm2015/lib/_common/deferred-promise.js +24 -0
- package/esm2015/lib/_common/exceptions.js +157 -0
- package/esm2015/lib/_common/queries.gql.js +190 -0
- package/esm2015/lib/_common/run-outside-angular.js +79 -0
- package/esm2015/lib/_common/types.js +1 -0
- package/esm2015/lib/_common/utils.js +44 -0
- package/esm2015/lib/api/contact-card.gql.js +79 -0
- package/esm2015/lib/api/contact-card.service.js +154 -0
- package/esm2015/lib/api/contact-card2.gql.js +60 -0
- package/esm2015/lib/api/contact-card2.service.js +103 -0
- package/esm2015/lib/api/file.service.js +74 -0
- package/esm2015/lib/api/item2.gql.js +110 -0
- package/esm2015/lib/api/item2.service.js +311 -0
- package/esm2015/lib/api/key-exchange.gql.js +188 -0
- package/esm2015/lib/api/key-exchange.service.js +442 -0
- package/esm2015/lib/api/key-exchange.types.js +18 -0
- package/esm2015/lib/api/key-exchange2.gql.js +171 -0
- package/esm2015/lib/api/key-exchange2.service.js +479 -0
- package/esm2015/lib/api/lock.gql.js +40 -0
- package/esm2015/lib/api/lock.service.js +64 -0
- package/esm2015/lib/api/lr-apollo.service.js +46 -0
- package/esm2015/lib/api/lr-graphql/index.js +6 -0
- package/esm2015/lib/api/lr-graphql/lr-graphql.service.js +155 -0
- package/esm2015/lib/api/lr-graphql/lr-merged-mutation.js +213 -0
- package/esm2015/lib/api/lr-graphql/lr-mutation-base.js +51 -0
- package/esm2015/lib/api/lr-graphql/lr-mutation.js +48 -0
- package/esm2015/lib/api/lr-graphql/lr.service.js +18 -0
- package/esm2015/lib/api/message.service.js +138 -0
- package/esm2015/lib/api/persist.service.js +181 -0
- package/esm2015/lib/api/query-processor/common-processors.service.js +93 -0
- package/esm2015/lib/api/query-processor/index.js +3 -0
- package/esm2015/lib/api/query-processor/query-processor.service.js +192 -0
- package/esm2015/lib/api/query-processor/tp-password-reset-processor.service.js +109 -0
- package/esm2015/lib/api/shared-contact-card.service.js +119 -0
- package/esm2015/lib/api/shared-contact-card2.gql.js +41 -0
- package/esm2015/lib/api/shared-contact-card2.service.js +117 -0
- package/esm2015/lib/api/time.service.js +146 -0
- package/esm2015/lib/api/types/graphql.types.js +7 -0
- package/esm2015/lib/api/types/index.js +3 -0
- package/esm2015/lib/api/types/lr-graphql.types.js +71 -0
- package/esm2015/lib/auth/auth.config.js +57 -0
- package/esm2015/lib/auth/auth.gql.js +48 -0
- package/esm2015/lib/auth/auth.types.js +27 -0
- package/esm2015/lib/auth/idle.service.js +168 -0
- package/esm2015/lib/auth/idle.types.js +7 -0
- package/esm2015/lib/auth/lbop.service.js +355 -0
- package/esm2015/lib/auth/life-ready-auth.service.js +500 -0
- package/esm2015/lib/auth/password.service.js +320 -0
- package/esm2015/lib/auth/register.service.js +172 -0
- package/esm2015/lib/auth/two-factor.service.js +74 -0
- package/esm2015/lib/category/category-meta.service.js +99 -0
- package/esm2015/lib/category/category.gql.js +406 -0
- package/esm2015/lib/category/category.service.js +390 -0
- package/esm2015/lib/category/category.types.js +29 -0
- package/esm2015/lib/cryptography/cryptography.types.js +11 -0
- package/esm2015/lib/cryptography/encryption.service.js +189 -0
- package/esm2015/lib/cryptography/key-factory.service.js +237 -0
- package/esm2015/lib/cryptography/key-graph.service.js +280 -0
- package/esm2015/lib/cryptography/key-meta.service.js +200 -0
- package/esm2015/lib/cryptography/key.service.js +124 -0
- package/esm2015/lib/cryptography/slip39.service.js +169 -0
- package/esm2015/lib/cryptography/web-crypto.service.js +29 -0
- package/esm2015/lib/life-ready.config.js +84 -0
- package/esm2015/lib/life-ready.module.js +74 -0
- package/esm2015/lib/plan/plan.gql.js +123 -0
- package/esm2015/lib/plan/plan.service.js +149 -0
- package/esm2015/lib/plan/plan.types.js +11 -0
- package/esm2015/lib/record/record-attachment.service.js +101 -0
- package/esm2015/lib/record/record.gql.js +179 -0
- package/esm2015/lib/record/record.service.js +206 -0
- package/esm2015/lib/record/record.types.js +15 -0
- package/esm2015/lib/record-type/record-type.service.js +75 -0
- package/esm2015/lib/record-type/record-type.types.js +28 -0
- package/esm2015/lib/scenario/approvals/scenario-approval.gql.js +105 -0
- package/esm2015/lib/scenario/approvals/scenario-approval.types.js +1 -0
- package/esm2015/lib/scenario/approvals/scenario-approver.service.js +300 -0
- package/esm2015/lib/scenario/claimants/scenario-claimant.gql.js +52 -0
- package/esm2015/lib/scenario/claimants/scenario-claimant.service.js +97 -0
- package/esm2015/lib/scenario/claimants/scenario-claimant.types.js +1 -0
- package/esm2015/lib/scenario/receivers/scenario-receiver.gql.js +150 -0
- package/esm2015/lib/scenario/receivers/scenario-receiver.service.js +229 -0
- package/esm2015/lib/scenario/receivers/scenario-receiver.types.js +1 -0
- package/esm2015/lib/scenario/scenario-setup.service.js +269 -0
- package/esm2015/lib/scenario/scenario.gql.js +368 -0
- package/esm2015/lib/scenario/scenario.service.js +611 -0
- package/esm2015/lib/scenario/scenario.types.js +64 -0
- package/esm2015/lib/search/search.gql.js +62 -0
- package/esm2015/lib/search/search.service.js +156 -0
- package/esm2015/lib/search/search.types.js +6 -0
- package/esm2015/lib/trusted-parties/tp-password-reset-request.service.js +112 -0
- package/esm2015/lib/trusted-parties/tp-password-reset-user.service.js +129 -0
- package/esm2015/lib/trusted-parties/tp-password-reset.constants.js +4 -0
- package/esm2015/lib/trusted-parties/tp-password-reset.gql.js +232 -0
- package/esm2015/lib/trusted-parties/tp-password-reset.service.js +299 -0
- package/esm2015/lib/trusted-parties/trusted-party.gql.js +148 -0
- package/esm2015/lib/trusted-parties/trusted-party.service.js +326 -0
- package/esm2015/lib/trusted-parties/trusted-party.types.js +41 -0
- package/esm2015/lib/trusted-parties/trusted-party2.gql.js +87 -0
- package/esm2015/lib/trusted-parties/trusted-party2.service.js +215 -0
- package/esm2015/lib/users/profile-details.service.js +214 -0
- package/esm2015/lib/users/profile.gql.js +97 -0
- package/esm2015/lib/users/profile.service.js +169 -0
- package/esm2015/lib/users/profile.types.js +34 -0
- package/esm2015/lib/users/user.gql.js +60 -0
- package/esm2015/lib/users/user.service.js +79 -0
- package/esm2015/lib/users/user.types.js +5 -0
- package/esm2015/lifeready-core.js +10 -0
- package/esm2015/public-api.js +81 -0
- package/fesm2015/lifeready-core.js +13314 -0
- package/fesm2015/lifeready-core.js.map +1 -0
- package/lib/_common/ast.d.ts +11 -0
- package/lib/_common/deferred-promise.d.ts +12 -0
- package/lib/_common/exceptions.d.ts +109 -0
- package/lib/_common/queries.gql.d.ts +10 -0
- package/lib/_common/run-outside-angular.d.ts +14 -0
- package/{src/lib/_common/types.ts → lib/_common/types.d.ts} +3 -6
- package/lib/_common/utils.d.ts +3 -0
- package/lib/api/contact-card.gql.d.ts +7 -0
- package/lib/api/contact-card.service.d.ts +52 -0
- package/lib/api/contact-card2.gql.d.ts +34 -0
- package/lib/api/contact-card2.service.d.ts +49 -0
- package/lib/api/file.service.d.ts +18 -0
- package/lib/api/item2.gql.d.ts +96 -0
- package/lib/api/item2.service.d.ts +177 -0
- package/lib/api/key-exchange.gql.d.ts +9 -0
- package/lib/api/key-exchange.service.d.ts +39 -0
- package/lib/api/key-exchange.types.d.ts +196 -0
- package/lib/api/key-exchange2.gql.d.ts +125 -0
- package/lib/api/key-exchange2.service.d.ts +187 -0
- package/lib/api/lock.gql.d.ts +27 -0
- package/lib/api/lock.service.d.ts +25 -0
- package/lib/api/lr-apollo.service.d.ts +15 -0
- package/lib/api/lr-graphql/lr-graphql.service.d.ts +60 -0
- package/lib/api/lr-graphql/lr-merged-mutation.d.ts +27 -0
- package/lib/api/lr-graphql/lr-mutation-base.d.ts +28 -0
- package/lib/api/lr-graphql/lr-mutation.d.ts +8 -0
- package/lib/api/lr-graphql/lr.service.d.ts +9 -0
- package/lib/api/message.service.d.ts +58 -0
- package/lib/api/persist.service.d.ts +31 -0
- package/lib/api/query-processor/common-processors.service.d.ts +36 -0
- package/lib/api/query-processor/query-processor.service.d.ts +18 -0
- package/lib/api/query-processor/tp-password-reset-processor.service.d.ts +15 -0
- package/lib/api/shared-contact-card.service.d.ts +33 -0
- package/lib/api/shared-contact-card2.gql.d.ts +36 -0
- package/lib/api/shared-contact-card2.service.d.ts +45 -0
- package/lib/api/time.service.d.ts +16 -0
- package/lib/api/types/graphql.types.d.ts +29 -0
- package/lib/api/types/lr-graphql.types.d.ts +385 -0
- package/lib/auth/auth.config.d.ts +5 -0
- package/lib/auth/auth.gql.d.ts +15 -0
- package/lib/auth/auth.types.d.ts +66 -0
- package/lib/auth/idle.service.d.ts +40 -0
- package/lib/auth/idle.types.d.ts +10 -0
- package/lib/auth/lbop.service.d.ts +91 -0
- package/lib/auth/life-ready-auth.service.d.ts +59 -0
- package/lib/auth/password.service.d.ts +78 -0
- package/lib/auth/register.service.d.ts +25 -0
- package/lib/auth/two-factor.service.d.ts +15 -0
- package/lib/category/category-meta.service.d.ts +23 -0
- package/lib/category/category.gql.d.ts +45 -0
- package/lib/category/category.service.d.ts +67 -0
- package/lib/category/category.types.d.ts +79 -0
- package/lib/cryptography/cryptography.types.d.ts +83 -0
- package/lib/cryptography/encryption.service.d.ts +41 -0
- package/lib/cryptography/key-factory.service.d.ts +38 -0
- package/lib/cryptography/key-graph.service.d.ts +33 -0
- package/lib/cryptography/key-meta.service.d.ts +44 -0
- package/lib/cryptography/key.service.d.ts +36 -0
- package/lib/cryptography/slip39.service.d.ts +43 -0
- package/lib/cryptography/web-crypto.service.d.ts +5 -0
- package/lib/life-ready.config.d.ts +14 -0
- package/lib/life-ready.module.d.ts +5 -0
- package/lib/plan/plan.gql.d.ts +11 -0
- package/lib/plan/plan.service.d.ts +33 -0
- package/lib/plan/plan.types.d.ts +31 -0
- package/lib/record/record-attachment.service.d.ts +16 -0
- package/lib/record/record.gql.d.ts +14 -0
- package/lib/record/record.service.d.ts +25 -0
- package/lib/record/record.types.d.ts +57 -0
- package/lib/record-type/record-type.service.d.ts +11 -0
- package/lib/record-type/record-type.types.d.ts +50 -0
- package/lib/scenario/approvals/scenario-approval.gql.d.ts +7 -0
- package/lib/scenario/approvals/scenario-approval.types.d.ts +63 -0
- package/lib/scenario/approvals/scenario-approver.service.d.ts +32 -0
- package/lib/scenario/claimants/scenario-claimant.gql.d.ts +5 -0
- package/lib/scenario/claimants/scenario-claimant.service.d.ts +17 -0
- package/lib/scenario/claimants/scenario-claimant.types.d.ts +18 -0
- package/lib/scenario/receivers/scenario-receiver.gql.d.ts +8 -0
- package/lib/scenario/receivers/scenario-receiver.service.d.ts +30 -0
- package/lib/scenario/receivers/scenario-receiver.types.d.ts +54 -0
- package/lib/scenario/scenario-setup.service.d.ts +22 -0
- package/lib/scenario/scenario.gql.d.ts +34 -0
- package/lib/scenario/scenario.service.d.ts +58 -0
- package/lib/scenario/scenario.types.d.ts +217 -0
- package/lib/search/search.gql.d.ts +1 -0
- package/lib/search/search.service.d.ts +25 -0
- package/lib/search/search.types.d.ts +20 -0
- package/lib/trusted-parties/tp-password-reset-request.service.d.ts +20 -0
- package/lib/trusted-parties/tp-password-reset-user.service.d.ts +35 -0
- package/lib/trusted-parties/tp-password-reset.constants.d.ts +3 -0
- package/lib/trusted-parties/tp-password-reset.gql.d.ts +218 -0
- package/lib/trusted-parties/tp-password-reset.service.d.ts +130 -0
- package/lib/trusted-parties/trusted-party.gql.d.ts +9 -0
- package/lib/trusted-parties/trusted-party.service.d.ts +44 -0
- package/lib/trusted-parties/trusted-party.types.d.ts +102 -0
- package/lib/trusted-parties/trusted-party2.gql.d.ts +79 -0
- package/lib/trusted-parties/trusted-party2.service.d.ts +114 -0
- package/lib/users/profile-details.service.d.ts +21 -0
- package/lib/users/profile.gql.d.ts +11 -0
- package/lib/users/profile.service.d.ts +35 -0
- package/lib/users/profile.types.d.ts +96 -0
- package/lib/users/user.gql.d.ts +9 -0
- package/lib/users/user.service.d.ts +12 -0
- package/lib/users/user.types.d.ts +23 -0
- package/lifeready-core.d.ts +9 -0
- package/lifeready-core.metadata.json +1 -0
- package/package.json +29 -21
- package/{src/public-api.ts → public-api.d.ts} +0 -19
- package/karma.conf.js +0 -32
- package/ng-package.json +0 -26
- package/src/lib/_common/ast.ts +0 -75
- package/src/lib/_common/deferred-promise.ts +0 -35
- package/src/lib/_common/exceptions.ts +0 -189
- package/src/lib/_common/queries.gql.ts +0 -200
- package/src/lib/_common/run-outside-angular.ts +0 -125
- package/src/lib/_common/tests.ts +0 -82
- package/src/lib/_common/utils.ts +0 -57
- package/src/lib/api/api-mutation.spec.ts +0 -547
- package/src/lib/api/api-query.spec.ts +0 -40
- package/src/lib/api/contact-card.gql.ts +0 -85
- package/src/lib/api/contact-card.service.spec.ts +0 -249
- package/src/lib/api/contact-card.service.ts +0 -228
- package/src/lib/api/contact-card2.gql.ts +0 -93
- package/src/lib/api/contact-card2.service.spec.ts +0 -297
- package/src/lib/api/contact-card2.service.ts +0 -139
- package/src/lib/api/file.service.spec.ts +0 -14
- package/src/lib/api/file.service.ts +0 -81
- package/src/lib/api/item2.gql.ts +0 -211
- package/src/lib/api/item2.service.spec.ts +0 -1043
- package/src/lib/api/item2.service.ts +0 -481
- package/src/lib/api/key-exchange.gql.ts +0 -196
- package/src/lib/api/key-exchange.service.spec.ts +0 -470
- package/src/lib/api/key-exchange.service.ts +0 -731
- package/src/lib/api/key-exchange.types.ts +0 -235
- package/src/lib/api/key-exchange2.gql.ts +0 -310
- package/src/lib/api/key-exchange2.service.spec.ts +0 -892
- package/src/lib/api/key-exchange2.service.ts +0 -875
- package/src/lib/api/lock.gql.ts +0 -67
- package/src/lib/api/lock.service.spec.ts +0 -549
- package/src/lib/api/lock.service.ts +0 -57
- package/src/lib/api/lr-apollo.service.spec.ts +0 -27
- package/src/lib/api/lr-apollo.service.ts +0 -43
- package/src/lib/api/lr-graphql/lr-graphql.service.ts +0 -313
- package/src/lib/api/lr-graphql/lr-merged-mutation.ts +0 -377
- package/src/lib/api/lr-graphql/lr-mutation-base.ts +0 -67
- package/src/lib/api/lr-graphql/lr-mutation.ts +0 -74
- package/src/lib/api/lr-graphql/lr.service.ts +0 -28
- package/src/lib/api/message.service.spec.ts +0 -20
- package/src/lib/api/message.service.ts +0 -210
- package/src/lib/api/persist.service.spec.ts +0 -209
- package/src/lib/api/persist.service.ts +0 -220
- package/src/lib/api/query-processor/common-processors.service.ts +0 -148
- package/src/lib/api/query-processor/query-processor.service.ts +0 -240
- package/src/lib/api/query-processor/tp-password-reset-processor.service.ts +0 -177
- package/src/lib/api/shared-contact-card.service.ts +0 -156
- package/src/lib/api/shared-contact-card2.gql.ts +0 -76
- package/src/lib/api/shared-contact-card2.service.ts +0 -154
- package/src/lib/api/time.service.spec.ts +0 -48
- package/src/lib/api/time.service.ts +0 -155
- package/src/lib/api/types/graphql.types.ts +0 -48
- package/src/lib/api/types/lr-graphql.types.ts +0 -467
- package/src/lib/auth/auth.config.ts +0 -83
- package/src/lib/auth/auth.gql.ts +0 -62
- package/src/lib/auth/auth.types.ts +0 -79
- package/src/lib/auth/idle.service.spec.ts +0 -119
- package/src/lib/auth/idle.service.ts +0 -208
- package/src/lib/auth/idle.types.ts +0 -11
- package/src/lib/auth/lbop.service.spec.ts +0 -56
- package/src/lib/auth/lbop.service.ts +0 -539
- package/src/lib/auth/life-ready-auth.service.spec.ts +0 -70
- package/src/lib/auth/life-ready-auth.service.ts +0 -454
- package/src/lib/auth/password.service.spec.ts +0 -51
- package/src/lib/auth/password.service.ts +0 -438
- package/src/lib/auth/register.service.spec.ts +0 -31
- package/src/lib/auth/register.service.ts +0 -181
- package/src/lib/auth/two-factor.service.spec.ts +0 -21
- package/src/lib/auth/two-factor.service.ts +0 -69
- package/src/lib/category/category-meta.service.spec.ts +0 -28
- package/src/lib/category/category-meta.service.ts +0 -125
- package/src/lib/category/category.gql.ts +0 -449
- package/src/lib/category/category.service.spec.ts +0 -26
- package/src/lib/category/category.service.ts +0 -498
- package/src/lib/category/category.types.ts +0 -89
- package/src/lib/cryptography/cryptography.types.ts +0 -108
- package/src/lib/cryptography/encryption.service.spec.ts +0 -125
- package/src/lib/cryptography/encryption.service.ts +0 -243
- package/src/lib/cryptography/key-factory.service.spec.ts +0 -15
- package/src/lib/cryptography/key-factory.service.ts +0 -303
- package/src/lib/cryptography/key-graph.service.spec.ts +0 -16
- package/src/lib/cryptography/key-graph.service.ts +0 -354
- package/src/lib/cryptography/key-meta.service.spec.ts +0 -40
- package/src/lib/cryptography/key-meta.service.ts +0 -254
- package/src/lib/cryptography/key.service.spec.ts +0 -16
- package/src/lib/cryptography/key.service.ts +0 -154
- package/src/lib/cryptography/slip39.service.spec.ts +0 -44
- package/src/lib/cryptography/slip39.service.ts +0 -204
- package/src/lib/cryptography/web-crypto.service.ts +0 -22
- package/src/lib/life-ready.config.ts +0 -127
- package/src/lib/life-ready.module.ts +0 -81
- package/src/lib/plan/plan.gql.ts +0 -133
- package/src/lib/plan/plan.service.spec.ts +0 -294
- package/src/lib/plan/plan.service.ts +0 -198
- package/src/lib/plan/plan.types.ts +0 -37
- package/src/lib/record/record-attachment.service.spec.ts +0 -31
- package/src/lib/record/record-attachment.service.ts +0 -101
- package/src/lib/record/record.gql.ts +0 -192
- package/src/lib/record/record.service.spec.ts +0 -598
- package/src/lib/record/record.service.ts +0 -236
- package/src/lib/record/record.types.ts +0 -86
- package/src/lib/record-type/record-type.service.spec.ts +0 -16
- package/src/lib/record-type/record-type.service.ts +0 -71
- package/src/lib/record-type/record-type.types.ts +0 -58
- package/src/lib/scenario/approvals/scenario-approval.gql.ts +0 -112
- package/src/lib/scenario/approvals/scenario-approval.types.ts +0 -85
- package/src/lib/scenario/approvals/scenario-approver.service.spec.ts +0 -16
- package/src/lib/scenario/approvals/scenario-approver.service.ts +0 -422
- package/src/lib/scenario/claimants/scenario-claimant.gql.ts +0 -56
- package/src/lib/scenario/claimants/scenario-claimant.service.spec.ts +0 -16
- package/src/lib/scenario/claimants/scenario-claimant.service.ts +0 -100
- package/src/lib/scenario/claimants/scenario-claimant.types.ts +0 -21
- package/src/lib/scenario/receivers/scenario-receiver.gql.ts +0 -157
- package/src/lib/scenario/receivers/scenario-receiver.service.spec.ts +0 -16
- package/src/lib/scenario/receivers/scenario-receiver.service.ts +0 -278
- package/src/lib/scenario/receivers/scenario-receiver.types.ts +0 -66
- package/src/lib/scenario/scenario-setup.service.spec.ts +0 -22
- package/src/lib/scenario/scenario-setup.service.ts +0 -369
- package/src/lib/scenario/scenario.gql.ts +0 -404
- package/src/lib/scenario/scenario.service.spec.ts +0 -1586
- package/src/lib/scenario/scenario.service.ts +0 -811
- package/src/lib/scenario/scenario.types.ts +0 -258
- package/src/lib/search/search.gql.ts +0 -62
- package/src/lib/search/search.service.spec.ts +0 -57
- package/src/lib/search/search.service.ts +0 -174
- package/src/lib/search/search.types.ts +0 -24
- package/src/lib/trusted-parties/tp-password-reset-request.service.ts +0 -140
- package/src/lib/trusted-parties/tp-password-reset-user.service.ts +0 -359
- package/src/lib/trusted-parties/tp-password-reset.gql.ts +0 -453
- package/src/lib/trusted-parties/tp-password-reset.service.spec.ts +0 -602
- package/src/lib/trusted-parties/tp-password-reset.service.ts +0 -482
- package/src/lib/trusted-parties/trusted-party.gql.ts +0 -159
- package/src/lib/trusted-parties/trusted-party.service.spec.ts +0 -1008
- package/src/lib/trusted-parties/trusted-party.service.ts +0 -394
- package/src/lib/trusted-parties/trusted-party.types.ts +0 -119
- package/src/lib/trusted-parties/trusted-party2.gql.ts +0 -165
- package/src/lib/trusted-parties/trusted-party2.service.spec.ts +0 -1782
- package/src/lib/trusted-parties/trusted-party2.service.ts +0 -272
- package/src/lib/users/profile-details.service.spec.ts +0 -45
- package/src/lib/users/profile-details.service.ts +0 -278
- package/src/lib/users/profile.gql.ts +0 -108
- package/src/lib/users/profile.service.spec.ts +0 -97
- package/src/lib/users/profile.service.ts +0 -224
- package/src/lib/users/profile.types.ts +0 -101
- package/src/lib/users/user.gql.ts +0 -69
- package/src/lib/users/user.service.spec.ts +0 -161
- package/src/lib/users/user.service.ts +0 -72
- package/src/lib/users/user.types.ts +0 -27
- package/src/test.ts +0 -21
- package/tsconfig.lib.json +0 -21
- package/tsconfig.lib.prod.json +0 -6
- package/tsconfig.spec.json +0 -10
- package/tslint.json +0 -17
- /package/{src/lib/api/lr-graphql/index.ts → lib/api/lr-graphql/index.d.ts} +0 -0
- /package/{src/lib/api/query-processor/index.ts → lib/api/query-processor/index.d.ts} +0 -0
- /package/{src/lib/api/types/index.ts → lib/api/types/index.d.ts} +0 -0
|
@@ -1,481 +0,0 @@
|
|
|
1
|
-
import { Injectable, Injector, NgZone } from '@angular/core';
|
|
2
|
-
import { JWK } from 'node-jose';
|
|
3
|
-
import { KeyFactoryService } from '../cryptography/key-factory.service';
|
|
4
|
-
import { KeyGraphService } from '../cryptography/key-graph.service';
|
|
5
|
-
import { KeyMetaService } from '../cryptography/key-meta.service';
|
|
6
|
-
import { KeyService } from '../cryptography/key.service';
|
|
7
|
-
import { LrBadArgumentException } from '../_common/exceptions';
|
|
8
|
-
import { RunOutsideAngular } from '../_common/run-outside-angular';
|
|
9
|
-
import { FileService } from './file.service';
|
|
10
|
-
import { LrGraphQLService, LrMutation, LrService } from './lr-graphql';
|
|
11
|
-
import {
|
|
12
|
-
DirectoryKeyQuery,
|
|
13
|
-
CreateDirectoryMutation,
|
|
14
|
-
DeleteDirectoryMutation,
|
|
15
|
-
CreateFileMutation,
|
|
16
|
-
DeleteFileMutation,
|
|
17
|
-
FileKeyQuery,
|
|
18
|
-
FileStateKeyQuery,
|
|
19
|
-
UpdateFileMutation,
|
|
20
|
-
UpdateDirectoryMutation,
|
|
21
|
-
ArchiveDirectoryMutation,
|
|
22
|
-
UnarchiveDirectoryMutation,
|
|
23
|
-
ChangeDirectoryParentsMutation,
|
|
24
|
-
ChangeFileParentsMutation,
|
|
25
|
-
} from './item2.gql';
|
|
26
|
-
import { ID, LrRelayIdInput } from './types';
|
|
27
|
-
|
|
28
|
-
export enum DirectoryLinkType {
|
|
29
|
-
HARD = 'HARD',
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
// Suffix "Options" are what's need by the KC client.
|
|
33
|
-
export interface ParentDirectoryOptions {
|
|
34
|
-
directoryId: LrRelayIdInput;
|
|
35
|
-
// If wrapping key provided, then we can try fetching it from the
|
|
36
|
-
// key graph. If not found in key graph, then fetch the directory.
|
|
37
|
-
wrappingKeyId?: LrRelayIdInput;
|
|
38
|
-
// TODO: this can be other types, but server side implementation has not been
|
|
39
|
-
// thoroughly tested. So best not use anything else and just leave it out so
|
|
40
|
-
// server uses the default value of "HARD"
|
|
41
|
-
linkType?: DirectoryLinkType.HARD;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export interface ParentRootDirectoryInput {
|
|
45
|
-
wrappedKey: string;
|
|
46
|
-
wrappingKeyId: LrRelayIdInput;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// Suffix "Input" matched with the graphql types
|
|
50
|
-
// TODO these should be change to be exactly the same on the server since all that differs
|
|
51
|
-
// is the wrappedKey/wrappedFileKey name
|
|
52
|
-
export interface ParentDirectoryInputBase {
|
|
53
|
-
directoryId: LrRelayIdInput;
|
|
54
|
-
wrappingKeyId: LrRelayIdInput;
|
|
55
|
-
linkType?: DirectoryLinkType.HARD;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export interface ParentDirectoryInput extends ParentDirectoryInputBase {
|
|
59
|
-
wrappedKey: string;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export interface FileParentDirectoryInput extends ParentDirectoryInputBase {
|
|
63
|
-
wrappedFileKey: string;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export interface DownloadFileContentOptions {
|
|
67
|
-
fileStateNodeId: LrRelayIdInput;
|
|
68
|
-
fileStateKeyId?: LrRelayIdInput;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export interface CommonDirectoryOptions {
|
|
72
|
-
plainMetaJson?: any;
|
|
73
|
-
cipherMetaClearJson?: any;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export interface CreateDirectoryOptions extends CommonDirectoryOptions {
|
|
77
|
-
asRootDirectory?: boolean;
|
|
78
|
-
parentDirectories?: ParentDirectoryOptions[];
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export interface UpdateDirectoryOptions extends CommonDirectoryOptions {
|
|
82
|
-
directoryId: LrRelayIdInput;
|
|
83
|
-
directoryKeyId?: LrRelayIdInput;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export interface CommonFileOptions {
|
|
87
|
-
plainMetaJson?: any;
|
|
88
|
-
cipherMetaClearJson?: any;
|
|
89
|
-
file?: File;
|
|
90
|
-
// custom uploader
|
|
91
|
-
upload?: (cipherFileContent: string) => Promise<string>;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
export interface CreateFileOptions extends CommonFileOptions {
|
|
95
|
-
parentDirectories: ParentDirectoryOptions[];
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
export interface UpdateFileOptions extends CommonFileOptions {
|
|
99
|
-
fileId: LrRelayIdInput;
|
|
100
|
-
fileKeyId?: LrRelayIdInput;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
interface ChangeItemParentsOptions {
|
|
104
|
-
parentsToRemove: LrRelayIdInput[];
|
|
105
|
-
parentsToAdd: ParentDirectoryOptions[];
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
export interface ChangeDirectoryParentsOptions
|
|
109
|
-
extends ChangeItemParentsOptions {
|
|
110
|
-
directoryId: LrRelayIdInput;
|
|
111
|
-
directoryKeyId?: LrRelayIdInput;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
export interface ChangeFileParentsOptions extends ChangeItemParentsOptions {
|
|
115
|
-
fileId: LrRelayIdInput;
|
|
116
|
-
fileKeyId?: LrRelayIdInput;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
@RunOutsideAngular({
|
|
120
|
-
ngZoneName: 'ngZone',
|
|
121
|
-
})
|
|
122
|
-
@Injectable({
|
|
123
|
-
providedIn: 'root',
|
|
124
|
-
})
|
|
125
|
-
export class Item2Service extends LrService {
|
|
126
|
-
constructor(
|
|
127
|
-
private ngZone: NgZone,
|
|
128
|
-
private injector: Injector,
|
|
129
|
-
private fileService: FileService,
|
|
130
|
-
private keyService: KeyService,
|
|
131
|
-
private keyMeta: KeyMetaService,
|
|
132
|
-
private keyFactory: KeyFactoryService,
|
|
133
|
-
private keyGraph: KeyGraphService
|
|
134
|
-
) {
|
|
135
|
-
super(injector);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
public async downloadFileContent(
|
|
139
|
-
options: DownloadFileContentOptions
|
|
140
|
-
): Promise<ArrayBuffer> {
|
|
141
|
-
const fileContent = await this.fileService.downloadEncryptedFile2(
|
|
142
|
-
options.fileStateNodeId
|
|
143
|
-
);
|
|
144
|
-
|
|
145
|
-
const fileStateKey = await this.keyGraph.getKey(
|
|
146
|
-
options.fileStateKeyId,
|
|
147
|
-
() => this.getFileStateKeyId(options.fileStateNodeId)
|
|
148
|
-
);
|
|
149
|
-
|
|
150
|
-
return this.keyGraph.decryptFromString(fileStateKey, fileContent, {
|
|
151
|
-
payloadType: 'ArrayBuffer',
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
public async createDirectory(options: CreateDirectoryOptions) {
|
|
156
|
-
const directoryKey = await this.keyFactory.createKey();
|
|
157
|
-
options.parentDirectories = options.parentDirectories || [];
|
|
158
|
-
if (!options.asRootDirectory && !options.parentDirectories?.length) {
|
|
159
|
-
throw new LrBadArgumentException(
|
|
160
|
-
'A new directory must be either a root directory or a sub-directory. So you must provide either parentDirectories and/or asRootDirectory parameter.'
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
const parentDirectories = await Promise.all(
|
|
165
|
-
options.parentDirectories?.map((t) =>
|
|
166
|
-
this.getParentDirectoryInput(t, directoryKey)
|
|
167
|
-
)
|
|
168
|
-
);
|
|
169
|
-
|
|
170
|
-
// TODO this is rather an unfortunate name, change it to asRootDirectory.
|
|
171
|
-
let parentRootDirectory: ParentRootDirectoryInput;
|
|
172
|
-
if (options.asRootDirectory) {
|
|
173
|
-
const rootKey = this.keyService.getCurrentRootKey();
|
|
174
|
-
parentRootDirectory = {
|
|
175
|
-
wrappingKeyId: rootKey.id,
|
|
176
|
-
wrappedKey: await this.keyGraph.wrapKey(rootKey, directoryKey),
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
const input = {
|
|
181
|
-
...(await this.getInput(directoryKey, options)),
|
|
182
|
-
parentDirectories,
|
|
183
|
-
parentRootDirectory,
|
|
184
|
-
};
|
|
185
|
-
|
|
186
|
-
return new LrMutation({
|
|
187
|
-
mutation: CreateDirectoryMutation,
|
|
188
|
-
variables: {
|
|
189
|
-
input,
|
|
190
|
-
},
|
|
191
|
-
});
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
updateDirectoryExec(options: UpdateDirectoryOptions) {
|
|
195
|
-
return this.mutate(this.updateDirectoryMutation(options));
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
updateDirectory(options: UpdateDirectoryOptions) {
|
|
199
|
-
return this.updateDirectoryMutation(options);
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
async updateDirectoryMutation(options: UpdateDirectoryOptions) {
|
|
203
|
-
const directoryKey = await this.getDirectoryKey(
|
|
204
|
-
options.directoryId,
|
|
205
|
-
options.directoryKeyId
|
|
206
|
-
);
|
|
207
|
-
|
|
208
|
-
return new LrMutation({
|
|
209
|
-
mutation: UpdateDirectoryMutation,
|
|
210
|
-
variables: {
|
|
211
|
-
input: {
|
|
212
|
-
...(await this.getInput(directoryKey.jwk, options)),
|
|
213
|
-
directoryId: options.directoryId,
|
|
214
|
-
},
|
|
215
|
-
},
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
public deleteDirectory(id: ID) {
|
|
220
|
-
return new LrMutation({
|
|
221
|
-
mutation: DeleteDirectoryMutation,
|
|
222
|
-
variables: {
|
|
223
|
-
input: {
|
|
224
|
-
directoryId: id,
|
|
225
|
-
},
|
|
226
|
-
},
|
|
227
|
-
});
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
async createFile(options: CreateFileOptions) {
|
|
231
|
-
const fileKey = await this.keyFactory.createKey();
|
|
232
|
-
|
|
233
|
-
const parentDirectories = await Promise.all(
|
|
234
|
-
options.parentDirectories.map(async (t) => {
|
|
235
|
-
const {
|
|
236
|
-
directoryId,
|
|
237
|
-
wrappingKeyId,
|
|
238
|
-
wrappedKey,
|
|
239
|
-
} = await this.getParentDirectoryInput(t, fileKey);
|
|
240
|
-
// remap from ParentDirectoryInput to FileParentDirectoryInput
|
|
241
|
-
// TODO the server should really just use wrappedKey instead of wrappedFileKey
|
|
242
|
-
return {
|
|
243
|
-
directoryId,
|
|
244
|
-
wrappingKeyId,
|
|
245
|
-
wrappedFileKey: wrappedKey,
|
|
246
|
-
} as FileParentDirectoryInput;
|
|
247
|
-
})
|
|
248
|
-
);
|
|
249
|
-
|
|
250
|
-
return new LrMutation({
|
|
251
|
-
mutation: CreateFileMutation,
|
|
252
|
-
variables: {
|
|
253
|
-
input: {
|
|
254
|
-
...(await this.createFileState(fileKey, options)),
|
|
255
|
-
parentDirectories,
|
|
256
|
-
},
|
|
257
|
-
},
|
|
258
|
-
});
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
async updateFile(options: UpdateFileOptions) {
|
|
262
|
-
const fileKey = await this.getFileKey(options.fileId, options.fileKeyId);
|
|
263
|
-
|
|
264
|
-
return new LrMutation({
|
|
265
|
-
mutation: UpdateFileMutation,
|
|
266
|
-
variables: {
|
|
267
|
-
input: {
|
|
268
|
-
...(await this.createFileState(fileKey.jwk, options)),
|
|
269
|
-
fileId: options.fileId,
|
|
270
|
-
},
|
|
271
|
-
},
|
|
272
|
-
});
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
public deleteFile(id: ID) {
|
|
276
|
-
return new LrMutation({
|
|
277
|
-
mutation: DeleteFileMutation,
|
|
278
|
-
variables: {
|
|
279
|
-
input: {
|
|
280
|
-
fileId: id,
|
|
281
|
-
},
|
|
282
|
-
},
|
|
283
|
-
});
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
private async getParentDirectoryInput(
|
|
287
|
-
options: ParentDirectoryOptions,
|
|
288
|
-
newKey: JWK.Key
|
|
289
|
-
): Promise<ParentDirectoryInput> {
|
|
290
|
-
// If directory's key is not already in the key graph, then need to
|
|
291
|
-
// fetch the directory's key.
|
|
292
|
-
const wrappingKey = await this.getDirectoryKey(
|
|
293
|
-
options.directoryId,
|
|
294
|
-
options.wrappingKeyId
|
|
295
|
-
);
|
|
296
|
-
|
|
297
|
-
return {
|
|
298
|
-
directoryId: options.directoryId,
|
|
299
|
-
wrappingKeyId: wrappingKey.id,
|
|
300
|
-
wrappedKey: await this.keyGraph.wrapKey(wrappingKey, newKey),
|
|
301
|
-
};
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
// async getKey(keyId: LrRelayIdInput, getKeyIdCallback: () => Promise<ID>) {
|
|
305
|
-
// if (!this.keyGraph.hasKey(keyId)) {
|
|
306
|
-
// keyId = await getKeyIdCallback();
|
|
307
|
-
// }
|
|
308
|
-
|
|
309
|
-
// return this.keyGraph.getKey(keyId);
|
|
310
|
-
// }
|
|
311
|
-
|
|
312
|
-
async getFileStateKeyId(fileStateNodeId: LrRelayIdInput) {
|
|
313
|
-
return (
|
|
314
|
-
await this.query({
|
|
315
|
-
query: FileStateKeyQuery,
|
|
316
|
-
variables: {
|
|
317
|
-
id: fileStateNodeId,
|
|
318
|
-
},
|
|
319
|
-
})
|
|
320
|
-
).fileState.keyId;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
async getDirectoryKeyId(directoryId: LrRelayIdInput) {
|
|
324
|
-
return (
|
|
325
|
-
await this.query({
|
|
326
|
-
query: DirectoryKeyQuery,
|
|
327
|
-
variables: {
|
|
328
|
-
id: directoryId,
|
|
329
|
-
},
|
|
330
|
-
})
|
|
331
|
-
).directory.keyId;
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
async getFileKeyId(fileId: LrRelayIdInput) {
|
|
335
|
-
return (
|
|
336
|
-
await this.query({
|
|
337
|
-
query: FileKeyQuery,
|
|
338
|
-
variables: {
|
|
339
|
-
id: fileId,
|
|
340
|
-
},
|
|
341
|
-
})
|
|
342
|
-
).file.keyId;
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
async getDirectoryKey(
|
|
346
|
-
directoryId: LrRelayIdInput,
|
|
347
|
-
directoryKeyId?: LrRelayIdInput
|
|
348
|
-
) {
|
|
349
|
-
return this.keyGraph.getKey(directoryKeyId, () =>
|
|
350
|
-
this.getDirectoryKeyId(directoryId)
|
|
351
|
-
);
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
async getFileKey(fileId: LrRelayIdInput, fileKeyId?: LrRelayIdInput) {
|
|
355
|
-
return this.keyGraph.getKey(fileKeyId, () => this.getFileKeyId(fileId));
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
private async getInput(
|
|
359
|
-
key: JWK.Key,
|
|
360
|
-
options: { plainMetaJson?: any; cipherMetaClearJson?: any }
|
|
361
|
-
) {
|
|
362
|
-
const { plainMetaJson, cipherMetaClearJson } = options;
|
|
363
|
-
|
|
364
|
-
return {
|
|
365
|
-
plainMeta: plainMetaJson && JSON.stringify(plainMetaJson),
|
|
366
|
-
cipherMeta:
|
|
367
|
-
cipherMetaClearJson &&
|
|
368
|
-
(await this.keyGraph.encryptToString(key, cipherMetaClearJson)),
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
private async createFileState(
|
|
373
|
-
fileKey: JWK.Key,
|
|
374
|
-
options: CreateFileOptions | UpdateFileOptions
|
|
375
|
-
) {
|
|
376
|
-
// Each version of the file is encrypted using a new key.
|
|
377
|
-
const fileStateKey = await this.keyFactory.createKey();
|
|
378
|
-
|
|
379
|
-
const fileContent =
|
|
380
|
-
options.file && (await this.fileService.loadFile(options.file));
|
|
381
|
-
|
|
382
|
-
let contentResource: string;
|
|
383
|
-
if (fileContent) {
|
|
384
|
-
const cipherFileContent = await this.keyGraph.encryptToString(
|
|
385
|
-
fileStateKey,
|
|
386
|
-
fileContent
|
|
387
|
-
);
|
|
388
|
-
if (options.upload) {
|
|
389
|
-
contentResource = await options.upload(cipherFileContent);
|
|
390
|
-
} else {
|
|
391
|
-
contentResource = await this.fileService.uploadEncryptedFile({
|
|
392
|
-
encryptedContent: cipherFileContent,
|
|
393
|
-
});
|
|
394
|
-
}
|
|
395
|
-
console.log('contentResource', contentResource);
|
|
396
|
-
}
|
|
397
|
-
|
|
398
|
-
return {
|
|
399
|
-
...(await this.getInput(fileStateKey, options)),
|
|
400
|
-
wrappedStateKey: await this.keyGraph.wrapKey(fileKey, fileStateKey),
|
|
401
|
-
contentResource,
|
|
402
|
-
};
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
archiveDirectory(directoryId: string, recursive: boolean) {
|
|
406
|
-
return new LrMutation({
|
|
407
|
-
mutation: ArchiveDirectoryMutation,
|
|
408
|
-
variables: {
|
|
409
|
-
input: {
|
|
410
|
-
directoryId,
|
|
411
|
-
recursive,
|
|
412
|
-
},
|
|
413
|
-
},
|
|
414
|
-
});
|
|
415
|
-
}
|
|
416
|
-
|
|
417
|
-
unarchiveDirectory(directoryId: string, recursive: boolean) {
|
|
418
|
-
return new LrMutation({
|
|
419
|
-
mutation: UnarchiveDirectoryMutation,
|
|
420
|
-
variables: {
|
|
421
|
-
input: {
|
|
422
|
-
directoryId,
|
|
423
|
-
recursive,
|
|
424
|
-
},
|
|
425
|
-
},
|
|
426
|
-
});
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
protected async getChangeItemParentsInput(
|
|
430
|
-
options: ChangeItemParentsOptions,
|
|
431
|
-
itemKey: JWK.Key
|
|
432
|
-
) {
|
|
433
|
-
const parentsToAdd = await Promise.all(
|
|
434
|
-
options.parentsToAdd.map((t) => this.getParentDirectoryInput(t, itemKey))
|
|
435
|
-
);
|
|
436
|
-
|
|
437
|
-
return {
|
|
438
|
-
directoriesToRemove: options.parentsToRemove,
|
|
439
|
-
directoriesToAdd: parentsToAdd,
|
|
440
|
-
};
|
|
441
|
-
}
|
|
442
|
-
|
|
443
|
-
changeDirectoryParents(options: ChangeDirectoryParentsOptions) {
|
|
444
|
-
return this.mutate(this.changeDirectoryParentsMutation(options));
|
|
445
|
-
}
|
|
446
|
-
|
|
447
|
-
async changeDirectoryParentsMutation(options: ChangeDirectoryParentsOptions) {
|
|
448
|
-
const directoryKey = await this.getDirectoryKey(
|
|
449
|
-
options.directoryId,
|
|
450
|
-
options.directoryKeyId
|
|
451
|
-
);
|
|
452
|
-
|
|
453
|
-
return new LrMutation({
|
|
454
|
-
mutation: ChangeDirectoryParentsMutation,
|
|
455
|
-
variables: {
|
|
456
|
-
input: {
|
|
457
|
-
...(await this.getChangeItemParentsInput(options, directoryKey.jwk)),
|
|
458
|
-
directoryId: options.directoryId,
|
|
459
|
-
},
|
|
460
|
-
},
|
|
461
|
-
});
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
async changeFileParents(options: ChangeFileParentsOptions) {
|
|
465
|
-
return this.mutate(this.changeFileParentsMutation(options));
|
|
466
|
-
}
|
|
467
|
-
|
|
468
|
-
async changeFileParentsMutation(options: ChangeFileParentsOptions) {
|
|
469
|
-
const fileKey = await this.getFileKey(options.fileId, options.fileKeyId);
|
|
470
|
-
|
|
471
|
-
return new LrMutation({
|
|
472
|
-
mutation: ChangeFileParentsMutation,
|
|
473
|
-
variables: {
|
|
474
|
-
input: {
|
|
475
|
-
...(await this.getChangeItemParentsInput(options, fileKey.jwk)),
|
|
476
|
-
fileId: options.fileId,
|
|
477
|
-
},
|
|
478
|
-
},
|
|
479
|
-
});
|
|
480
|
-
}
|
|
481
|
-
}
|
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
import gql from 'graphql-tag';
|
|
2
|
-
import { FetchKeyGraphField, KeyGraphFragment } from '../_common/queries.gql';
|
|
3
|
-
|
|
4
|
-
export const KeyExchangeFields = `
|
|
5
|
-
id
|
|
6
|
-
token
|
|
7
|
-
state
|
|
8
|
-
mode
|
|
9
|
-
isInitiator
|
|
10
|
-
initiator {
|
|
11
|
-
id
|
|
12
|
-
username
|
|
13
|
-
}
|
|
14
|
-
responder {
|
|
15
|
-
id
|
|
16
|
-
username
|
|
17
|
-
}
|
|
18
|
-
created
|
|
19
|
-
modified
|
|
20
|
-
tokenExpiryTime
|
|
21
|
-
isExpired
|
|
22
|
-
initiatorRootKeyCipher
|
|
23
|
-
initiatorActionRequired
|
|
24
|
-
responderActionRequired
|
|
25
|
-
responderEmailAddress
|
|
26
|
-
otk {
|
|
27
|
-
state
|
|
28
|
-
otKeyParams
|
|
29
|
-
otKeyCipher
|
|
30
|
-
sharedKey {
|
|
31
|
-
id
|
|
32
|
-
}
|
|
33
|
-
mkSharedKey {
|
|
34
|
-
id
|
|
35
|
-
}
|
|
36
|
-
initiatorSigPxk {
|
|
37
|
-
id
|
|
38
|
-
}
|
|
39
|
-
responderSigPxk {
|
|
40
|
-
id
|
|
41
|
-
}
|
|
42
|
-
initiatorOneTimePbkCipher
|
|
43
|
-
responderPbkCipher
|
|
44
|
-
}`;
|
|
45
|
-
|
|
46
|
-
export const UserSharedKeyFields = `
|
|
47
|
-
userSigPrk {
|
|
48
|
-
id
|
|
49
|
-
}
|
|
50
|
-
otherSigPbk {
|
|
51
|
-
id
|
|
52
|
-
}
|
|
53
|
-
sharedKey {
|
|
54
|
-
id
|
|
55
|
-
}
|
|
56
|
-
mkSharedKey {
|
|
57
|
-
id
|
|
58
|
-
}
|
|
59
|
-
mkPxk {
|
|
60
|
-
id
|
|
61
|
-
pbk
|
|
62
|
-
}
|
|
63
|
-
mkReshareRequestCipher
|
|
64
|
-
mkReshareResponseCipher
|
|
65
|
-
mkReshareRequestSent
|
|
66
|
-
mkReshareResponseSent
|
|
67
|
-
`;
|
|
68
|
-
|
|
69
|
-
export const CurrentUserSharedKeyQuery = gql`
|
|
70
|
-
query CurrentUserSharedKeyQuery(
|
|
71
|
-
$username: String
|
|
72
|
-
$userId: LrRelayIdInput
|
|
73
|
-
$cachedKeyIds: [LrRelayIdInput!]
|
|
74
|
-
) {
|
|
75
|
-
currentUserSharedKey(
|
|
76
|
-
username: $username
|
|
77
|
-
userId: $userId
|
|
78
|
-
) {
|
|
79
|
-
userSharedKey {
|
|
80
|
-
${UserSharedKeyFields}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
keyGraph(cachedKeyIds: $cachedKeyIds) {
|
|
84
|
-
...KeyGraphFragment
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
${KeyGraphFragment}`;
|
|
88
|
-
|
|
89
|
-
export const KeyExchangesQuery = gql`
|
|
90
|
-
query KeyExchangeQuery(
|
|
91
|
-
$orderBy: String
|
|
92
|
-
$isExpired: Boolean
|
|
93
|
-
$initiatorActionRequired: Boolean
|
|
94
|
-
$responderActionRequired: Boolean
|
|
95
|
-
$initiator: ID
|
|
96
|
-
$responder: ID
|
|
97
|
-
$state: String
|
|
98
|
-
) {
|
|
99
|
-
keyExchanges(
|
|
100
|
-
orderBy: $orderBy
|
|
101
|
-
isExpired: $isExpired
|
|
102
|
-
initiatorActionRequired: $initiatorActionRequired
|
|
103
|
-
responderActionRequired: $responderActionRequired
|
|
104
|
-
initiator: $initiator
|
|
105
|
-
responder: $responder
|
|
106
|
-
state: $state
|
|
107
|
-
) {
|
|
108
|
-
edges {
|
|
109
|
-
node {
|
|
110
|
-
${KeyExchangeFields}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
keyGraph {
|
|
115
|
-
...KeyGraphFragment
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
${KeyGraphFragment}
|
|
119
|
-
`;
|
|
120
|
-
|
|
121
|
-
export const KeyExchangeQuery = gql`
|
|
122
|
-
query KeyExchangeQuery(
|
|
123
|
-
$id: LrRelayIdInput!
|
|
124
|
-
) {
|
|
125
|
-
keyExchange(
|
|
126
|
-
id: $id
|
|
127
|
-
) {
|
|
128
|
-
${KeyExchangeFields}
|
|
129
|
-
}
|
|
130
|
-
keyGraph {
|
|
131
|
-
...KeyGraphFragment
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
${KeyGraphFragment}
|
|
135
|
-
`;
|
|
136
|
-
|
|
137
|
-
// Key graph is only available for authenticated users. This query
|
|
138
|
-
// is for unauthenticated users.
|
|
139
|
-
export const KeyExchangeTokenQuery = gql`
|
|
140
|
-
query KeyExchangeQuery(
|
|
141
|
-
$id: LrRelayIdInput!
|
|
142
|
-
$token: String
|
|
143
|
-
) {
|
|
144
|
-
keyExchange(
|
|
145
|
-
id: $id
|
|
146
|
-
token: $token
|
|
147
|
-
) {
|
|
148
|
-
${KeyExchangeFields}
|
|
149
|
-
}
|
|
150
|
-
}`;
|
|
151
|
-
|
|
152
|
-
export const InitiateOtkMutation = gql`
|
|
153
|
-
mutation InitiateKeyExchangeOtk(
|
|
154
|
-
$input: InitiateKeyExchangeOtkInput!
|
|
155
|
-
) {
|
|
156
|
-
initiateKeyExchangeOtk(input: $input) {
|
|
157
|
-
keyExchange {
|
|
158
|
-
${KeyExchangeFields}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
${FetchKeyGraphField}
|
|
162
|
-
}`;
|
|
163
|
-
|
|
164
|
-
export const RespondOtkMutation = gql`
|
|
165
|
-
mutation RespondKeyExchangeOtk(
|
|
166
|
-
$input: RespondKeyExchangeOtkInput!
|
|
167
|
-
) {
|
|
168
|
-
respondKeyExchangeOtk(input: $input) {
|
|
169
|
-
keyExchange {
|
|
170
|
-
${KeyExchangeFields}
|
|
171
|
-
}
|
|
172
|
-
userSharedKey {
|
|
173
|
-
${UserSharedKeyFields}
|
|
174
|
-
}
|
|
175
|
-
tp {
|
|
176
|
-
id
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}`;
|
|
180
|
-
|
|
181
|
-
export const CompleteOtkMutation = gql`
|
|
182
|
-
mutation CompleteKeyExchangeOtk(
|
|
183
|
-
$input: CompleteKeyExchangeOtkInput!
|
|
184
|
-
) {
|
|
185
|
-
completeKeyExchangeOtk(input: $input) {
|
|
186
|
-
keyExchange {
|
|
187
|
-
${KeyExchangeFields}
|
|
188
|
-
}
|
|
189
|
-
userSharedKey {
|
|
190
|
-
${UserSharedKeyFields}
|
|
191
|
-
}
|
|
192
|
-
tp {
|
|
193
|
-
id
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}`;
|