@wireapp/core-crypto 1.0.0-rc.7 → 1.0.0-rc.8
Sign up to get free protection for your applications and to get access to all the features.
package/package.json
CHANGED
Binary file
|
@@ -386,6 +386,45 @@ export interface DecryptedMessage {
|
|
386
386
|
* Present for all messages
|
387
387
|
*/
|
388
388
|
identity?: WireIdentity;
|
389
|
+
/**
|
390
|
+
* Only set when the decrypted message is a commit.
|
391
|
+
* Contains buffered messages for next epoch which were received before the commit creating the epoch
|
392
|
+
* because the DS did not fan them out in order.
|
393
|
+
*/
|
394
|
+
bufferedMessages?: BufferedDecryptedMessage[];
|
395
|
+
}
|
396
|
+
/**
|
397
|
+
* Almost same as {@link DecryptedMessage} but avoids recursion
|
398
|
+
*/
|
399
|
+
export interface BufferedDecryptedMessage {
|
400
|
+
/**
|
401
|
+
* see {@link DecryptedMessage.message}
|
402
|
+
*/
|
403
|
+
message?: Uint8Array;
|
404
|
+
/**
|
405
|
+
* see {@link DecryptedMessage.proposals}
|
406
|
+
*/
|
407
|
+
proposals: ProposalBundle[];
|
408
|
+
/**
|
409
|
+
* see {@link DecryptedMessage.isActive}
|
410
|
+
*/
|
411
|
+
isActive: boolean;
|
412
|
+
/**
|
413
|
+
* see {@link DecryptedMessage.commitDelay}
|
414
|
+
*/
|
415
|
+
commitDelay?: number;
|
416
|
+
/**
|
417
|
+
* see {@link DecryptedMessage.senderClientId}
|
418
|
+
*/
|
419
|
+
senderClientId?: ClientId;
|
420
|
+
/**
|
421
|
+
* see {@link DecryptedMessage.hasEpochChanged}
|
422
|
+
*/
|
423
|
+
hasEpochChanged: boolean;
|
424
|
+
/**
|
425
|
+
* see {@link DecryptedMessage.identity}
|
426
|
+
*/
|
427
|
+
identity?: WireIdentity;
|
389
428
|
}
|
390
429
|
/**
|
391
430
|
* Represents the identity claims identifying a client. Those claims are verifiable by any member in the group
|
@@ -625,7 +664,7 @@ export declare class CoreCrypto {
|
|
625
664
|
/**
|
626
665
|
* Closes this {@link CoreCrypto} instance and deallocates all loaded resources
|
627
666
|
*
|
628
|
-
* **CAUTION**: This {@link CoreCrypto} instance won't be
|
667
|
+
* **CAUTION**: This {@link CoreCrypto} instance won't be usable after a call to this method, but there's no way to express this requirement in TypeScript, so you'll get errors instead!
|
629
668
|
*/
|
630
669
|
close(): Promise<void>;
|
631
670
|
/**
|
@@ -691,7 +730,12 @@ export declare class CoreCrypto {
|
|
691
730
|
*/
|
692
731
|
createConversation(conversationId: ConversationId, creatorCredentialType: CredentialType, configuration?: ConversationConfiguration): Promise<any>;
|
693
732
|
/**
|
694
|
-
* Decrypts a message for a given conversation
|
733
|
+
* Decrypts a message for a given conversation.
|
734
|
+
*
|
735
|
+
* Note: you should catch & ignore the following error reasons:
|
736
|
+
* * "We already decrypted this message once"
|
737
|
+
* * "You tried to join with an external commit but did not merge it yet. We will reapply this message for you when you merge your external commit"
|
738
|
+
* * "Incoming message is for a future epoch. We will buffer it until the commit for that epoch arrives"
|
695
739
|
*
|
696
740
|
* @param conversationId - The ID of the conversation
|
697
741
|
* @param payload - The encrypted message buffer
|
@@ -723,7 +767,7 @@ export declare class CoreCrypto {
|
|
723
767
|
*
|
724
768
|
* @returns A {@link CommitBundle}
|
725
769
|
*/
|
726
|
-
|
770
|
+
updateTrustAnchorsFromConversation(conversationId: ConversationId, removeDomainNames: string[], addTrustAnchors: PerDomainTrustAnchor[]): Promise<CommitBundle>;
|
727
771
|
/**
|
728
772
|
* Ingest a TLS-serialized MLS welcome message to join an existing MLS group
|
729
773
|
*
|
@@ -737,7 +781,10 @@ export declare class CoreCrypto {
|
|
737
781
|
*/
|
738
782
|
processWelcomeMessage(welcomeMessage: Uint8Array, configuration?: CustomConfiguration): Promise<ConversationId>;
|
739
783
|
/**
|
740
|
-
*
|
784
|
+
* Get the client's public signature key. To upload to the DS for further backend side validation
|
785
|
+
*
|
786
|
+
* @param ciphersuite - of the signature key to get
|
787
|
+
* @returns the client's public signature key
|
741
788
|
*/
|
742
789
|
clientPublicKey(ciphersuite: Ciphersuite): Promise<Uint8Array>;
|
743
790
|
/**
|
@@ -766,7 +813,7 @@ export declare class CoreCrypto {
|
|
766
813
|
/**
|
767
814
|
* Adds new clients to a conversation, assuming the current client has the right to add new clients to the conversation.
|
768
815
|
*
|
769
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
816
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
770
817
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
771
818
|
* epoch, use new encryption secrets etc...
|
772
819
|
*
|
@@ -780,7 +827,7 @@ export declare class CoreCrypto {
|
|
780
827
|
* Removes the provided clients from a conversation; Assuming those clients exist and the current client is allowed
|
781
828
|
* to do so, otherwise this operation does nothing.
|
782
829
|
*
|
783
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
830
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
784
831
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
785
832
|
* epoch, use new encryption secrets etc...
|
786
833
|
*
|
@@ -791,9 +838,9 @@ export declare class CoreCrypto {
|
|
791
838
|
*/
|
792
839
|
removeClientsFromConversation(conversationId: ConversationId, clientIds: ClientId[]): Promise<CommitBundle>;
|
793
840
|
/**
|
794
|
-
* Creates an update commit which forces every client to update their
|
841
|
+
* Creates an update commit which forces every client to update their LeafNode in the conversation
|
795
842
|
*
|
796
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
843
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
797
844
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
798
845
|
* epoch, use new encryption secrets etc...
|
799
846
|
*
|
@@ -823,6 +870,9 @@ export declare class CoreCrypto {
|
|
823
870
|
* @returns A {@link ProposalBundle} containing the Proposal and its reference in order to roll it back if necessary
|
824
871
|
*/
|
825
872
|
newProposal(proposalType: ProposalType, args: ProposalArgs | AddProposalArgs | RemoveProposalArgs): Promise<ProposalBundle>;
|
873
|
+
/**
|
874
|
+
* Creates a new external Add proposal for self client to join a conversation.
|
875
|
+
*/
|
826
876
|
newExternalProposal(externalProposalType: ExternalProposalType, args: ExternalAddProposalArgs): Promise<Uint8Array>;
|
827
877
|
/**
|
828
878
|
* Allows to create an external commit to "apply" to join a group through its GroupInfo.
|
@@ -847,8 +897,9 @@ export declare class CoreCrypto {
|
|
847
897
|
* and deletes the temporary one. This step makes the group operational and ready to encrypt/decrypt message
|
848
898
|
*
|
849
899
|
* @param conversationId - The ID of the conversation
|
900
|
+
* @returns eventually decrypted buffered messages if any
|
850
901
|
*/
|
851
|
-
mergePendingGroupFromExternalCommit(conversationId: ConversationId): Promise<
|
902
|
+
mergePendingGroupFromExternalCommit(conversationId: ConversationId): Promise<BufferedDecryptedMessage[] | undefined>;
|
852
903
|
/**
|
853
904
|
* In case the external commit generated by {@link CoreCrypto.joinByExternalCommit} is rejected by the Delivery Service, and we
|
854
905
|
* want to abort this external commit once for all, we can wipe out the pending group from the keystore in order
|
@@ -858,26 +909,24 @@ export declare class CoreCrypto {
|
|
858
909
|
*/
|
859
910
|
clearPendingGroupFromExternalCommit(conversationId: ConversationId): Promise<void>;
|
860
911
|
/**
|
861
|
-
* Allows to mark the latest commit produced as "accepted" and be able to safely merge it
|
862
|
-
* into the local group state
|
912
|
+
* Allows to mark the latest commit produced as "accepted" and be able to safely merge it into the local group state
|
863
913
|
*
|
864
914
|
* @param conversationId - The group's ID
|
915
|
+
* @returns the messages from current epoch which had been buffered, if any
|
865
916
|
*/
|
866
|
-
commitAccepted(conversationId: ConversationId): Promise<
|
917
|
+
commitAccepted(conversationId: ConversationId): Promise<BufferedDecryptedMessage[] | undefined>;
|
867
918
|
/**
|
868
|
-
* Allows to remove a pending proposal (rollback). Use this when backend rejects the proposal you just sent e.g. if permissions
|
869
|
-
* have changed meanwhile.
|
919
|
+
* Allows to remove a pending proposal (rollback). Use this when backend rejects the proposal you just sent e.g. if permissions have changed meanwhile.
|
870
920
|
*
|
871
921
|
* **CAUTION**: only use this when you had an explicit response from the Delivery Service
|
872
|
-
* e.g. 403 or 409. Do not use otherwise e.g. 5xx responses, timeout etc
|
922
|
+
* e.g. 403 or 409. Do not use otherwise e.g. 5xx responses, timeout etc…
|
873
923
|
*
|
874
924
|
* @param conversationId - The group's ID
|
875
925
|
* @param proposalRef - A reference to the proposal to delete. You get one when using {@link CoreCrypto.newProposal}
|
876
926
|
*/
|
877
927
|
clearPendingProposal(conversationId: ConversationId, proposalRef: ProposalRef): Promise<void>;
|
878
928
|
/**
|
879
|
-
* Allows to remove a pending commit (rollback). Use this when backend rejects the commit you just sent e.g. if permissions
|
880
|
-
* have changed meanwhile.
|
929
|
+
* Allows to remove a pending commit (rollback). Use this when backend rejects the commit you just sent e.g. if permissions have changed meanwhile.
|
881
930
|
*
|
882
931
|
* **CAUTION**: only use this when you had an explicit response from the Delivery Service
|
883
932
|
* e.g. 403. Do not use otherwise e.g. 5xx responses, timeout etc..
|
@@ -921,7 +970,7 @@ export declare class CoreCrypto {
|
|
921
970
|
*/
|
922
971
|
reseedRng(seed: Uint8Array): Promise<void>;
|
923
972
|
/**
|
924
|
-
*
|
973
|
+
* Initializes the proteus client
|
925
974
|
*/
|
926
975
|
proteusInit(): Promise<void>;
|
927
976
|
/**
|
@@ -1054,47 +1103,49 @@ export declare class CoreCrypto {
|
|
1054
1103
|
* Creates an enrollment instance with private key material you can use in order to fetch
|
1055
1104
|
* a new x509 certificate from the acme server.
|
1056
1105
|
*
|
1057
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1058
|
-
* @param displayName human
|
1059
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
1060
|
-
* @param expiryDays generated x509 certificate expiry
|
1106
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1107
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
1108
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
1109
|
+
* @param expiryDays - generated x509 certificate expiry
|
1061
1110
|
* @param ciphersuite - for generating signing key material
|
1062
|
-
* @returns The new {@link
|
1111
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiMlsInitOnly}
|
1063
1112
|
*/
|
1064
|
-
e2eiNewEnrollment(clientId: string, displayName: string, handle: string, expiryDays: number, ciphersuite: Ciphersuite): Promise<
|
1113
|
+
e2eiNewEnrollment(clientId: string, displayName: string, handle: string, expiryDays: number, ciphersuite: Ciphersuite): Promise<E2eiEnrollment>;
|
1065
1114
|
/**
|
1066
1115
|
* Generates an E2EI enrollment instance for a "regular" client (with a Basic credential) willing to migrate to E2EI.
|
1067
1116
|
* Once the enrollment is finished, use the instance in {@link CoreCrypto.e2eiRotateAll} to do the rotation.
|
1068
1117
|
*
|
1069
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1070
|
-
* @param displayName human
|
1071
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
1072
|
-
* @param expiryDays generated x509 certificate expiry
|
1118
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1119
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
1120
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
1121
|
+
* @param expiryDays - generated x509 certificate expiry
|
1073
1122
|
* @param ciphersuite - for generating signing key material
|
1074
|
-
* @returns The new {@link
|
1123
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiRotateAll}
|
1075
1124
|
*/
|
1076
|
-
e2eiNewActivationEnrollment(clientId: string, displayName: string, handle: string, expiryDays: number, ciphersuite: Ciphersuite): Promise<
|
1125
|
+
e2eiNewActivationEnrollment(clientId: string, displayName: string, handle: string, expiryDays: number, ciphersuite: Ciphersuite): Promise<E2eiEnrollment>;
|
1077
1126
|
/**
|
1078
1127
|
* Generates an E2EI enrollment instance for a E2EI client (with a X509 certificate credential)
|
1079
1128
|
* having to change/rotate their credential, either because the former one is expired or it
|
1080
1129
|
* has been revoked. It lets you change the DisplayName or the handle
|
1081
1130
|
* if you need to. Once the enrollment is finished, use the instance in {@link CoreCrypto.e2eiRotateAll} to do the rotation.
|
1082
1131
|
*
|
1083
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1084
|
-
* @param expiryDays generated x509 certificate expiry
|
1132
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
1133
|
+
* @param expiryDays - generated x509 certificate expiry
|
1085
1134
|
* @param ciphersuite - for generating signing key material
|
1086
|
-
* @param displayName human
|
1087
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
1088
|
-
* @returns The new {@link
|
1135
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
1136
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
1137
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiRotateAll}
|
1089
1138
|
*/
|
1090
|
-
e2eiNewRotateEnrollment(clientId: string, expiryDays: number, ciphersuite: Ciphersuite, displayName?: string, handle?: string): Promise<
|
1139
|
+
e2eiNewRotateEnrollment(clientId: string, expiryDays: number, ciphersuite: Ciphersuite, displayName?: string, handle?: string): Promise<E2eiEnrollment>;
|
1091
1140
|
/**
|
1092
|
-
* Use this method to initialize end-to-end identity when a client signs up and the grace period is already expired ;
|
1141
|
+
* Use this method to initialize end-to-end identity when a client signs up and the grace period is already expired ;
|
1142
|
+
* that means he cannot initialize with a Basic credential
|
1093
1143
|
*
|
1094
1144
|
* @param enrollment - the enrollment instance used to fetch the certificates
|
1095
1145
|
* @param certificateChain - the raw response from ACME server
|
1146
|
+
* @returns a MlsClient initialized with only a x509 credential
|
1096
1147
|
*/
|
1097
|
-
e2eiMlsInitOnly(enrollment:
|
1148
|
+
e2eiMlsInitOnly(enrollment: E2eiEnrollment, certificateChain: string): Promise<void>;
|
1098
1149
|
/**
|
1099
1150
|
* Creates a commit in all local conversations for changing the credential. Requires first
|
1100
1151
|
* having enrolled a new X509 certificate with either {@link CoreCrypto.e2eiNewActivationEnrollment}
|
@@ -1103,8 +1154,9 @@ export declare class CoreCrypto {
|
|
1103
1154
|
* @param enrollment - the enrollment instance used to fetch the certificates
|
1104
1155
|
* @param certificateChain - the raw response from ACME server
|
1105
1156
|
* @param newKeyPackageCount - number of KeyPackages with new identity to generate
|
1157
|
+
* @returns a {@link RotateBundle} with commits to fan-out to other group members, KeyPackages to upload and old ones to delete
|
1106
1158
|
*/
|
1107
|
-
e2eiRotateAll(enrollment:
|
1159
|
+
e2eiRotateAll(enrollment: E2eiEnrollment, certificateChain: string, newKeyPackageCount: number): Promise<RotateBundle>;
|
1108
1160
|
/**
|
1109
1161
|
* Allows persisting an active enrollment (for example while redirecting the user during OAuth) in order to resume
|
1110
1162
|
* it later with {@link e2eiEnrollmentStashPop}
|
@@ -1112,14 +1164,14 @@ export declare class CoreCrypto {
|
|
1112
1164
|
* @param enrollment the enrollment instance to persist
|
1113
1165
|
* @returns a handle to fetch the enrollment later with {@link e2eiEnrollmentStashPop}
|
1114
1166
|
*/
|
1115
|
-
e2eiEnrollmentStash(enrollment:
|
1167
|
+
e2eiEnrollmentStash(enrollment: E2eiEnrollment): Promise<Uint8Array>;
|
1116
1168
|
/**
|
1117
1169
|
* Fetches the persisted enrollment and deletes it from the keystore
|
1118
1170
|
*
|
1119
1171
|
* @param handle returned by {@link e2eiEnrollmentStash}
|
1120
1172
|
* @returns the persisted enrollment instance
|
1121
1173
|
*/
|
1122
|
-
e2eiEnrollmentStashPop(handle: Uint8Array): Promise<
|
1174
|
+
e2eiEnrollmentStashPop(handle: Uint8Array): Promise<E2eiEnrollment>;
|
1123
1175
|
/**
|
1124
1176
|
* Indicates when to mark a conversation as degraded i.e. when not all its members have a X509.
|
1125
1177
|
* Credential generated by Wire's end-to-end identity enrollment
|
@@ -1132,9 +1184,18 @@ export declare class CoreCrypto {
|
|
1132
1184
|
* Returns true when end-to-end-identity is enabled for the given Ciphersuite
|
1133
1185
|
*
|
1134
1186
|
* @param ciphersuite of the credential to check
|
1135
|
-
* @returns true end-to-end identity is enabled for the given ciphersuite
|
1187
|
+
* @returns true if end-to-end identity is enabled for the given ciphersuite
|
1136
1188
|
*/
|
1137
1189
|
e2eiIsEnabled(ciphersuite: Ciphersuite): Promise<boolean>;
|
1190
|
+
/**
|
1191
|
+
* From a given conversation, get the identity of the members supplied. Identity is only present for members with a
|
1192
|
+
* Certificate Credential (after turning on end-to-end identity).
|
1193
|
+
*
|
1194
|
+
* @param conversationId - identifier of the conversation
|
1195
|
+
* @param clientIds - identifiers of the user
|
1196
|
+
* @returns identities or if no member has a x509 certificate, it will return an empty List
|
1197
|
+
*/
|
1198
|
+
getUserIdentities(conversationId: ConversationId, clientIds: ClientId[]): Promise<WireIdentity[]>;
|
1138
1199
|
/**
|
1139
1200
|
* Returns the current version of {@link CoreCrypto}
|
1140
1201
|
*
|
@@ -1143,7 +1204,7 @@ export declare class CoreCrypto {
|
|
1143
1204
|
static version(): string;
|
1144
1205
|
}
|
1145
1206
|
type JsonRawData = Uint8Array;
|
1146
|
-
export declare class
|
1207
|
+
export declare class E2eiEnrollment {
|
1147
1208
|
#private;
|
1148
1209
|
/** @hidden */
|
1149
1210
|
constructor(e2ei: unknown);
|
@@ -1252,7 +1313,7 @@ export declare class WireE2eIdentity {
|
|
1252
1313
|
* Parses the response from `POST /acme/{provisioner-name}/order/{order-id}`.
|
1253
1314
|
*
|
1254
1315
|
* @param order HTTP response body
|
1255
|
-
* @return
|
1316
|
+
* @return finalize url to use with {@link finalizeRequest}
|
1256
1317
|
* @see https://www.rfc-editor.org/rfc/rfc8555.html#section-7.4
|
1257
1318
|
*/
|
1258
1319
|
checkOrderResponse(order: JsonRawData): string;
|
@@ -234,12 +234,12 @@ function makeMutClosure(arg0, arg1, dtor, f) {
|
|
234
234
|
return real;
|
235
235
|
}
|
236
236
|
function __wbg_adapter_52(arg0, arg1, arg2) {
|
237
|
-
wasm$1.
|
237
|
+
wasm$1.wasm_bindgen__convert__closures__invoke1_mut__hdb6540dbb26cf63b(arg0, arg1, addHeapObject(arg2));
|
238
238
|
}
|
239
239
|
function __wbg_adapter_55(arg0, arg1, arg2) {
|
240
240
|
try {
|
241
241
|
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
242
|
-
wasm$1.
|
242
|
+
wasm$1.wasm_bindgen__convert__closures__invoke1_mut__h5e436dc96f7334f7(retptr, arg0, arg1, addHeapObject(arg2));
|
243
243
|
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
244
244
|
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
245
245
|
if (r1) {
|
@@ -313,8 +313,8 @@ function handleError(f, args) {
|
|
313
313
|
wasm$1.__wbindgen_exn_store(addHeapObject(e));
|
314
314
|
}
|
315
315
|
}
|
316
|
-
function
|
317
|
-
wasm$1.
|
316
|
+
function __wbg_adapter_310(arg0, arg1, arg2, arg3) {
|
317
|
+
wasm$1.wasm_bindgen__convert__closures__invoke2_mut__h5286c52f12e3fed2(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
|
318
318
|
}
|
319
319
|
/**
|
320
320
|
* see [core_crypto::prelude::MlsWirePolicy]
|
@@ -554,6 +554,83 @@ class AcmeDirectory {
|
|
554
554
|
}
|
555
555
|
}
|
556
556
|
/**
|
557
|
+
* to avoid recursion
|
558
|
+
*/
|
559
|
+
class BufferedDecryptedMessage {
|
560
|
+
static __wrap(ptr) {
|
561
|
+
ptr = ptr >>> 0;
|
562
|
+
const obj = Object.create(BufferedDecryptedMessage.prototype);
|
563
|
+
obj.__wbg_ptr = ptr;
|
564
|
+
return obj;
|
565
|
+
}
|
566
|
+
__destroy_into_raw() {
|
567
|
+
const ptr = this.__wbg_ptr;
|
568
|
+
this.__wbg_ptr = 0;
|
569
|
+
return ptr;
|
570
|
+
}
|
571
|
+
free() {
|
572
|
+
const ptr = this.__destroy_into_raw();
|
573
|
+
wasm$1.__wbg_buffereddecryptedmessage_free(ptr);
|
574
|
+
}
|
575
|
+
/**
|
576
|
+
* @returns {any}
|
577
|
+
*/
|
578
|
+
get message() {
|
579
|
+
const ret = wasm$1.buffereddecryptedmessage_message(this.__wbg_ptr);
|
580
|
+
return takeObject(ret);
|
581
|
+
}
|
582
|
+
/**
|
583
|
+
* @returns {Array<any>}
|
584
|
+
*/
|
585
|
+
get proposals() {
|
586
|
+
const ret = wasm$1.buffereddecryptedmessage_proposals(this.__wbg_ptr);
|
587
|
+
return takeObject(ret);
|
588
|
+
}
|
589
|
+
/**
|
590
|
+
* @returns {boolean}
|
591
|
+
*/
|
592
|
+
get is_active() {
|
593
|
+
const ret = wasm$1.buffereddecryptedmessage_is_active(this.__wbg_ptr);
|
594
|
+
return ret !== 0;
|
595
|
+
}
|
596
|
+
/**
|
597
|
+
* @returns {number | undefined}
|
598
|
+
*/
|
599
|
+
get commit_delay() {
|
600
|
+
try {
|
601
|
+
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
602
|
+
wasm$1.buffereddecryptedmessage_commit_delay(retptr, this.__wbg_ptr);
|
603
|
+
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
604
|
+
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
605
|
+
return r0 === 0 ? undefined : r1 >>> 0;
|
606
|
+
}
|
607
|
+
finally {
|
608
|
+
wasm$1.__wbindgen_add_to_stack_pointer(16);
|
609
|
+
}
|
610
|
+
}
|
611
|
+
/**
|
612
|
+
* @returns {any}
|
613
|
+
*/
|
614
|
+
get sender_client_id() {
|
615
|
+
const ret = wasm$1.buffereddecryptedmessage_sender_client_id(this.__wbg_ptr);
|
616
|
+
return takeObject(ret);
|
617
|
+
}
|
618
|
+
/**
|
619
|
+
* @returns {boolean}
|
620
|
+
*/
|
621
|
+
get has_epoch_changed() {
|
622
|
+
const ret = wasm$1.buffereddecryptedmessage_has_epoch_changed(this.__wbg_ptr);
|
623
|
+
return ret !== 0;
|
624
|
+
}
|
625
|
+
/**
|
626
|
+
* @returns {WireIdentity | undefined}
|
627
|
+
*/
|
628
|
+
get identity() {
|
629
|
+
const ret = wasm$1.buffereddecryptedmessage_identity(this.__wbg_ptr);
|
630
|
+
return ret === 0 ? undefined : WireIdentity.__wrap(ret);
|
631
|
+
}
|
632
|
+
}
|
633
|
+
/**
|
557
634
|
*/
|
558
635
|
class CommitBundle {
|
559
636
|
static __wrap(ptr) {
|
@@ -691,7 +768,7 @@ let CoreCrypto$1 = class CoreCrypto {
|
|
691
768
|
wasm$1.__wbg_corecrypto_free(ptr);
|
692
769
|
}
|
693
770
|
/**
|
694
|
-
* Returns: [`WasmCryptoResult<
|
771
|
+
* Returns: [`WasmCryptoResult<E2eiEnrollment>`]
|
695
772
|
*
|
696
773
|
* see [core_crypto::mls::MlsCentral::e2ei_new_enrollment]
|
697
774
|
* @param {string} client_id
|
@@ -712,7 +789,7 @@ let CoreCrypto$1 = class CoreCrypto {
|
|
712
789
|
return takeObject(ret);
|
713
790
|
}
|
714
791
|
/**
|
715
|
-
* Returns: [`WasmCryptoResult<
|
792
|
+
* Returns: [`WasmCryptoResult<E2eiEnrollment>`]
|
716
793
|
*
|
717
794
|
* see [core_crypto::mls::MlsCentral::e2ei_new_activation_enrollment]
|
718
795
|
* @param {string} client_id
|
@@ -733,7 +810,7 @@ let CoreCrypto$1 = class CoreCrypto {
|
|
733
810
|
return takeObject(ret);
|
734
811
|
}
|
735
812
|
/**
|
736
|
-
* Returns: [`WasmCryptoResult<
|
813
|
+
* Returns: [`WasmCryptoResult<E2eiEnrollment>`]
|
737
814
|
*
|
738
815
|
* see [core_crypto::mls::MlsCentral::e2ei_new_rotate_enrollment]
|
739
816
|
* @param {string} client_id
|
@@ -829,6 +906,22 @@ let CoreCrypto$1 = class CoreCrypto {
|
|
829
906
|
return takeObject(ret);
|
830
907
|
}
|
831
908
|
/**
|
909
|
+
* Returns [`WasmCryptoResult<Vec<WireIdentity>>`]
|
910
|
+
*
|
911
|
+
* see [core_crypto::mls::MlsCentral::get_user_identities]
|
912
|
+
* @param {Uint8Array} conversation_id
|
913
|
+
* @param {(Uint8Array)[]} client_ids
|
914
|
+
* @returns {Promise<any>}
|
915
|
+
*/
|
916
|
+
get_user_identities(conversation_id, client_ids) {
|
917
|
+
const ptr0 = passArray8ToWasm0(conversation_id, wasm$1.__wbindgen_malloc);
|
918
|
+
const len0 = WASM_VECTOR_LEN;
|
919
|
+
const ptr1 = passArrayJsValueToWasm0(client_ids, wasm$1.__wbindgen_malloc);
|
920
|
+
const len1 = WASM_VECTOR_LEN;
|
921
|
+
const ret = wasm$1.corecrypto_get_user_identities(this.__wbg_ptr, ptr0, len0, ptr1, len1);
|
922
|
+
return takeObject(ret);
|
923
|
+
}
|
924
|
+
/**
|
832
925
|
* Returns the current version of CoreCrypto
|
833
926
|
* @returns {string}
|
834
927
|
*/
|
@@ -1766,14 +1859,14 @@ class DecryptedMessage {
|
|
1766
1859
|
* @returns {any}
|
1767
1860
|
*/
|
1768
1861
|
get message() {
|
1769
|
-
const ret = wasm$1.
|
1862
|
+
const ret = wasm$1.buffereddecryptedmessage_message(this.__wbg_ptr);
|
1770
1863
|
return takeObject(ret);
|
1771
1864
|
}
|
1772
1865
|
/**
|
1773
1866
|
* @returns {Array<any>}
|
1774
1867
|
*/
|
1775
1868
|
get proposals() {
|
1776
|
-
const ret = wasm$1.
|
1869
|
+
const ret = wasm$1.buffereddecryptedmessage_proposals(this.__wbg_ptr);
|
1777
1870
|
return takeObject(ret);
|
1778
1871
|
}
|
1779
1872
|
/**
|
@@ -1789,7 +1882,7 @@ class DecryptedMessage {
|
|
1789
1882
|
get commit_delay() {
|
1790
1883
|
try {
|
1791
1884
|
const retptr = wasm$1.__wbindgen_add_to_stack_pointer(-16);
|
1792
|
-
wasm$1.
|
1885
|
+
wasm$1.buffereddecryptedmessage_commit_delay(retptr, this.__wbg_ptr);
|
1793
1886
|
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
1794
1887
|
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
1795
1888
|
return r0 === 0 ? undefined : r1 >>> 0;
|
@@ -1802,7 +1895,7 @@ class DecryptedMessage {
|
|
1802
1895
|
* @returns {any}
|
1803
1896
|
*/
|
1804
1897
|
get sender_client_id() {
|
1805
|
-
const ret = wasm$1.
|
1898
|
+
const ret = wasm$1.buffereddecryptedmessage_sender_client_id(this.__wbg_ptr);
|
1806
1899
|
return takeObject(ret);
|
1807
1900
|
}
|
1808
1901
|
/**
|
@@ -1816,9 +1909,16 @@ class DecryptedMessage {
|
|
1816
1909
|
* @returns {WireIdentity | undefined}
|
1817
1910
|
*/
|
1818
1911
|
get identity() {
|
1819
|
-
const ret = wasm$1.
|
1912
|
+
const ret = wasm$1.buffereddecryptedmessage_identity(this.__wbg_ptr);
|
1820
1913
|
return ret === 0 ? undefined : WireIdentity.__wrap(ret);
|
1821
1914
|
}
|
1915
|
+
/**
|
1916
|
+
* @returns {Array<any> | undefined}
|
1917
|
+
*/
|
1918
|
+
get buffered_messages() {
|
1919
|
+
const ret = wasm$1.decryptedmessage_buffered_messages(this.__wbg_ptr);
|
1920
|
+
return takeObject(ret);
|
1921
|
+
}
|
1822
1922
|
}
|
1823
1923
|
/**
|
1824
1924
|
*/
|
@@ -2869,18 +2969,14 @@ function __wbg_get_imports() {
|
|
2869
2969
|
const ret = getObject(arg0).length;
|
2870
2970
|
return ret;
|
2871
2971
|
};
|
2872
|
-
imports.wbg.__wbg_new_8125e318e6245eed = function (arg0) {
|
2873
|
-
const ret = new Uint8Array(getObject(arg0));
|
2874
|
-
return addHeapObject(ret);
|
2875
|
-
};
|
2876
2972
|
imports.wbg.__wbg_call_01734de55d61e11d = function () {
|
2877
2973
|
return handleError(function (arg0, arg1, arg2) {
|
2878
2974
|
const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
|
2879
2975
|
return addHeapObject(ret);
|
2880
2976
|
}, arguments);
|
2881
2977
|
};
|
2882
|
-
imports.wbg.
|
2883
|
-
const ret = new
|
2978
|
+
imports.wbg.__wbg_new_8125e318e6245eed = function (arg0) {
|
2979
|
+
const ret = new Uint8Array(getObject(arg0));
|
2884
2980
|
return addHeapObject(ret);
|
2885
2981
|
};
|
2886
2982
|
imports.wbg.__wbg_new_898a68150f225f2e = function () {
|
@@ -2890,26 +2986,33 @@ function __wbg_get_imports() {
|
|
2890
2986
|
imports.wbg.__wbg_set_502d29070ea18557 = function (arg0, arg1, arg2) {
|
2891
2987
|
getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
|
2892
2988
|
};
|
2989
|
+
imports.wbg.__wbg_ffiwiree2eidentity_new = function (arg0) {
|
2990
|
+
const ret = FfiWireE2EIdentity.__wrap(arg0);
|
2991
|
+
return addHeapObject(ret);
|
2992
|
+
};
|
2993
|
+
imports.wbg.__wbg_push_ca1c26067ef907ac = function (arg0, arg1) {
|
2994
|
+
const ret = getObject(arg0).push(getObject(arg1));
|
2995
|
+
return ret;
|
2996
|
+
};
|
2893
2997
|
imports.wbg.__wbindgen_bigint_from_u64 = function (arg0) {
|
2894
2998
|
const ret = BigInt.asUintN(64, arg0);
|
2895
2999
|
return addHeapObject(ret);
|
2896
3000
|
};
|
2897
|
-
imports.wbg.
|
2898
|
-
const ret =
|
3001
|
+
imports.wbg.__wbg_new_b51585de1b234aff = function () {
|
3002
|
+
const ret = new Object();
|
2899
3003
|
return addHeapObject(ret);
|
2900
3004
|
};
|
2901
|
-
imports.wbg.
|
2902
|
-
|
3005
|
+
imports.wbg.__wbg_set_841ac57cff3d672b = function (arg0, arg1, arg2) {
|
3006
|
+
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
3007
|
+
};
|
3008
|
+
imports.wbg.__wbindgen_number_new = function (arg0) {
|
3009
|
+
const ret = arg0;
|
2903
3010
|
return addHeapObject(ret);
|
2904
3011
|
};
|
2905
3012
|
imports.wbg.__wbg_proteusautoprekeybundle_new = function (arg0) {
|
2906
3013
|
const ret = ProteusAutoPrekeyBundle.__wrap(arg0);
|
2907
3014
|
return addHeapObject(ret);
|
2908
3015
|
};
|
2909
|
-
imports.wbg.__wbg_push_ca1c26067ef907ac = function (arg0, arg1) {
|
2910
|
-
const ret = getObject(arg0).push(getObject(arg1));
|
2911
|
-
return ret;
|
2912
|
-
};
|
2913
3016
|
imports.wbg.__wbg_new_56693dbed0c32988 = function () {
|
2914
3017
|
const ret = new Map();
|
2915
3018
|
return addHeapObject(ret);
|
@@ -2922,18 +3025,18 @@ function __wbg_get_imports() {
|
|
2922
3025
|
const ret = new Error(getStringFromWasm0(arg0, arg1));
|
2923
3026
|
return addHeapObject(ret);
|
2924
3027
|
};
|
2925
|
-
imports.wbg.__wbg_openCursor_555d508ba71b21cc = function () {
|
2926
|
-
return handleError(function (arg0, arg1) {
|
2927
|
-
const ret = getObject(arg0).openCursor(getObject(arg1));
|
2928
|
-
return addHeapObject(ret);
|
2929
|
-
}, arguments);
|
2930
|
-
};
|
2931
3028
|
imports.wbg.__wbg_openCursor_4d6f62b69b34be26 = function () {
|
2932
3029
|
return handleError(function (arg0) {
|
2933
3030
|
const ret = getObject(arg0).openCursor();
|
2934
3031
|
return addHeapObject(ret);
|
2935
3032
|
}, arguments);
|
2936
3033
|
};
|
3034
|
+
imports.wbg.__wbg_openCursor_555d508ba71b21cc = function () {
|
3035
|
+
return handleError(function (arg0, arg1) {
|
3036
|
+
const ret = getObject(arg0).openCursor(getObject(arg1));
|
3037
|
+
return addHeapObject(ret);
|
3038
|
+
}, arguments);
|
3039
|
+
};
|
2937
3040
|
imports.wbg.__wbg_setonsuccess_f518a37d8228a576 = function (arg0, arg1) {
|
2938
3041
|
getObject(arg0).onsuccess = getObject(arg1);
|
2939
3042
|
};
|
@@ -2990,9 +3093,6 @@ function __wbg_get_imports() {
|
|
2990
3093
|
const ret = CoreCrypto$1.__wrap(arg0);
|
2991
3094
|
return addHeapObject(ret);
|
2992
3095
|
};
|
2993
|
-
imports.wbg.__wbg_set_841ac57cff3d672b = function (arg0, arg1, arg2) {
|
2994
|
-
getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
|
2995
|
-
};
|
2996
3096
|
imports.wbg.__wbg_instanceof_Promise_0e98a5bf082e090f = function (arg0) {
|
2997
3097
|
let result;
|
2998
3098
|
try {
|
@@ -3044,7 +3144,7 @@ function __wbg_get_imports() {
|
|
3044
3144
|
const a = state0.a;
|
3045
3145
|
state0.a = 0;
|
3046
3146
|
try {
|
3047
|
-
return
|
3147
|
+
return __wbg_adapter_310(a, state0.b, arg0, arg1);
|
3048
3148
|
}
|
3049
3149
|
finally {
|
3050
3150
|
state0.a = a;
|
@@ -3069,6 +3169,10 @@ function __wbg_get_imports() {
|
|
3069
3169
|
const ret = ProposalBundle.__wrap(arg0);
|
3070
3170
|
return addHeapObject(ret);
|
3071
3171
|
};
|
3172
|
+
imports.wbg.__wbg_buffereddecryptedmessage_new = function (arg0) {
|
3173
|
+
const ret = BufferedDecryptedMessage.__wrap(arg0);
|
3174
|
+
return addHeapObject(ret);
|
3175
|
+
};
|
3072
3176
|
imports.wbg.__wbg_commitbundle_new = function (arg0) {
|
3073
3177
|
const ret = CommitBundle.__wrap(arg0);
|
3074
3178
|
return addHeapObject(ret);
|
@@ -3142,18 +3246,18 @@ function __wbg_get_imports() {
|
|
3142
3246
|
const ret = Date.now();
|
3143
3247
|
return ret;
|
3144
3248
|
};
|
3145
|
-
imports.wbg.__wbg_put_fb32824d87feec5c = function () {
|
3146
|
-
return handleError(function (arg0, arg1, arg2) {
|
3147
|
-
const ret = getObject(arg0).put(getObject(arg1), getObject(arg2));
|
3148
|
-
return addHeapObject(ret);
|
3149
|
-
}, arguments);
|
3150
|
-
};
|
3151
3249
|
imports.wbg.__wbg_put_d6937bc51f51a398 = function () {
|
3152
3250
|
return handleError(function (arg0, arg1) {
|
3153
3251
|
const ret = getObject(arg0).put(getObject(arg1));
|
3154
3252
|
return addHeapObject(ret);
|
3155
3253
|
}, arguments);
|
3156
3254
|
};
|
3255
|
+
imports.wbg.__wbg_put_fb32824d87feec5c = function () {
|
3256
|
+
return handleError(function (arg0, arg1, arg2) {
|
3257
|
+
const ret = getObject(arg0).put(getObject(arg1), getObject(arg2));
|
3258
|
+
return addHeapObject(ret);
|
3259
|
+
}, arguments);
|
3260
|
+
};
|
3157
3261
|
imports.wbg.__wbg_delete_ca1cfc48f1f7981c = function () {
|
3158
3262
|
return handleError(function (arg0, arg1) {
|
3159
3263
|
const ret = getObject(arg0).delete(getObject(arg1));
|
@@ -3493,12 +3597,12 @@ function __wbg_get_imports() {
|
|
3493
3597
|
return addHeapObject(ret);
|
3494
3598
|
}, arguments);
|
3495
3599
|
};
|
3496
|
-
imports.wbg.
|
3497
|
-
const ret = makeMutClosure(arg0, arg1,
|
3600
|
+
imports.wbg.__wbindgen_closure_wrapper1725 = function (arg0, arg1, arg2) {
|
3601
|
+
const ret = makeMutClosure(arg0, arg1, 149, __wbg_adapter_52);
|
3498
3602
|
return addHeapObject(ret);
|
3499
3603
|
};
|
3500
|
-
imports.wbg.
|
3501
|
-
const ret = makeMutClosure(arg0, arg1,
|
3604
|
+
imports.wbg.__wbindgen_closure_wrapper4854 = function (arg0, arg1, arg2) {
|
3605
|
+
const ret = makeMutClosure(arg0, arg1, 149, __wbg_adapter_55);
|
3502
3606
|
return addHeapObject(ret);
|
3503
3607
|
};
|
3504
3608
|
return imports;
|
@@ -3539,6 +3643,7 @@ var exports = /*#__PURE__*/Object.freeze({
|
|
3539
3643
|
__proto__: null,
|
3540
3644
|
AcmeChallenge: AcmeChallenge,
|
3541
3645
|
AcmeDirectory: AcmeDirectory,
|
3646
|
+
BufferedDecryptedMessage: BufferedDecryptedMessage,
|
3542
3647
|
Ciphersuite: Ciphersuite$1,
|
3543
3648
|
CommitBundle: CommitBundle,
|
3544
3649
|
ConversationConfiguration: ConversationConfiguration,
|
@@ -3564,26 +3669,35 @@ var exports = /*#__PURE__*/Object.freeze({
|
|
3564
3669
|
initSync: initSync
|
3565
3670
|
});
|
3566
3671
|
|
3567
|
-
|
3568
|
-
let {importHook, serverPath} = opt;
|
3672
|
+
const wasm_path = "assets/core_crypto_ffi-ded089fb.wasm";
|
3569
3673
|
|
3570
|
-
|
3674
|
+
|
3675
|
+
var wasm = async (opt = {}) => {
|
3676
|
+
let {importHook, serverPath, initializeHook} = opt;
|
3677
|
+
|
3678
|
+
let final_path = wasm_path;
|
3571
3679
|
|
3572
3680
|
if (serverPath != null) {
|
3573
|
-
|
3681
|
+
final_path = serverPath + /[^\/\\]*$/.exec(final_path)[0];
|
3574
3682
|
}
|
3575
3683
|
|
3576
3684
|
if (importHook != null) {
|
3577
|
-
|
3685
|
+
final_path = importHook(final_path);
|
3686
|
+
}
|
3687
|
+
|
3688
|
+
if (initializeHook != null) {
|
3689
|
+
await initializeHook(__wbg_init, final_path);
|
3690
|
+
|
3691
|
+
} else {
|
3692
|
+
await __wbg_init(final_path);
|
3578
3693
|
}
|
3579
3694
|
|
3580
|
-
await __wbg_init(path);
|
3581
3695
|
return exports;
|
3582
3696
|
};
|
3583
3697
|
|
3584
3698
|
// Wire
|
3585
3699
|
// Copyright (C) 2022 Wire Swiss GmbH
|
3586
|
-
var _a, _CoreCrypto_module, _CoreCrypto_cc, _CoreCrypto_assertModuleLoaded,
|
3700
|
+
var _a, _CoreCrypto_module, _CoreCrypto_cc, _CoreCrypto_assertModuleLoaded, _E2eiEnrollment_enrollment;
|
3587
3701
|
/**
|
3588
3702
|
* Error wrapper that takes care of extracting rich error details across the FFI (through JSON parsing)
|
3589
3703
|
*
|
@@ -3891,7 +4005,7 @@ class CoreCrypto {
|
|
3891
4005
|
/**
|
3892
4006
|
* Closes this {@link CoreCrypto} instance and deallocates all loaded resources
|
3893
4007
|
*
|
3894
|
-
* **CAUTION**: This {@link CoreCrypto} instance won't be
|
4008
|
+
* **CAUTION**: This {@link CoreCrypto} instance won't be usable after a call to this method, but there's no way to express this requirement in TypeScript, so you'll get errors instead!
|
3895
4009
|
*/
|
3896
4010
|
async close() {
|
3897
4011
|
await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").close());
|
@@ -3985,7 +4099,12 @@ class CoreCrypto {
|
|
3985
4099
|
}
|
3986
4100
|
}
|
3987
4101
|
/**
|
3988
|
-
* Decrypts a message for a given conversation
|
4102
|
+
* Decrypts a message for a given conversation.
|
4103
|
+
*
|
4104
|
+
* Note: you should catch & ignore the following error reasons:
|
4105
|
+
* * "We already decrypted this message once"
|
4106
|
+
* * "You tried to join with an external commit but did not merge it yet. We will reapply this message for you when you merge your external commit"
|
4107
|
+
* * "Incoming message is for a future epoch. We will buffer it until the commit for that epoch arrives"
|
3989
4108
|
*
|
3990
4109
|
* @param conversationId - The ID of the conversation
|
3991
4110
|
* @param payload - The encrypted message buffer
|
@@ -4010,6 +4129,16 @@ class CoreCrypto {
|
|
4010
4129
|
senderClientId: ffiDecryptedMessage.sender_client_id,
|
4011
4130
|
commitDelay,
|
4012
4131
|
hasEpochChanged: ffiDecryptedMessage.has_epoch_changed,
|
4132
|
+
bufferedMessages: ffiDecryptedMessage.buffered_messages?.map(m => {
|
4133
|
+
return {
|
4134
|
+
message: m.message,
|
4135
|
+
proposals: m.proposals,
|
4136
|
+
isActive: m.is_active,
|
4137
|
+
senderClientId: m.sender_client_id,
|
4138
|
+
commitDelay: m.commit_delay,
|
4139
|
+
hasEpochChanged: m.has_epoch_changed,
|
4140
|
+
};
|
4141
|
+
}),
|
4013
4142
|
};
|
4014
4143
|
return ret;
|
4015
4144
|
}
|
@@ -4043,7 +4172,7 @@ class CoreCrypto {
|
|
4043
4172
|
*
|
4044
4173
|
* @returns A {@link CommitBundle}
|
4045
4174
|
*/
|
4046
|
-
async
|
4175
|
+
async updateTrustAnchorsFromConversation(conversationId, removeDomainNames, addTrustAnchors) {
|
4047
4176
|
try {
|
4048
4177
|
const ffiRet = await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").update_trust_anchors_from_conversation(conversationId, removeDomainNames, addTrustAnchors));
|
4049
4178
|
const gi = ffiRet.group_info;
|
@@ -4084,7 +4213,10 @@ class CoreCrypto {
|
|
4084
4213
|
}
|
4085
4214
|
}
|
4086
4215
|
/**
|
4087
|
-
*
|
4216
|
+
* Get the client's public signature key. To upload to the DS for further backend side validation
|
4217
|
+
*
|
4218
|
+
* @param ciphersuite - of the signature key to get
|
4219
|
+
* @returns the client's public signature key
|
4088
4220
|
*/
|
4089
4221
|
async clientPublicKey(ciphersuite) {
|
4090
4222
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").client_public_key(ciphersuite));
|
@@ -4121,7 +4253,7 @@ class CoreCrypto {
|
|
4121
4253
|
/**
|
4122
4254
|
* Adds new clients to a conversation, assuming the current client has the right to add new clients to the conversation.
|
4123
4255
|
*
|
4124
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
4256
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
4125
4257
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
4126
4258
|
* epoch, use new encryption secrets etc...
|
4127
4259
|
*
|
@@ -4155,7 +4287,7 @@ class CoreCrypto {
|
|
4155
4287
|
* Removes the provided clients from a conversation; Assuming those clients exist and the current client is allowed
|
4156
4288
|
* to do so, otherwise this operation does nothing.
|
4157
4289
|
*
|
4158
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
4290
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
4159
4291
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
4160
4292
|
* epoch, use new encryption secrets etc...
|
4161
4293
|
*
|
@@ -4184,9 +4316,9 @@ class CoreCrypto {
|
|
4184
4316
|
}
|
4185
4317
|
}
|
4186
4318
|
/**
|
4187
|
-
* Creates an update commit which forces every client to update their
|
4319
|
+
* Creates an update commit which forces every client to update their LeafNode in the conversation
|
4188
4320
|
*
|
4189
|
-
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called
|
4321
|
+
* **CAUTION**: {@link CoreCrypto.commitAccepted} **HAS TO** be called afterward **ONLY IF** the Delivery Service responds
|
4190
4322
|
* '200 OK' to the {@link CommitBundle} upload. It will "merge" the commit locally i.e. increment the local group
|
4191
4323
|
* epoch, use new encryption secrets etc...
|
4192
4324
|
*
|
@@ -4274,6 +4406,9 @@ class CoreCrypto {
|
|
4274
4406
|
throw new Error("Invalid proposal type!");
|
4275
4407
|
}
|
4276
4408
|
}
|
4409
|
+
/**
|
4410
|
+
* Creates a new external Add proposal for self client to join a conversation.
|
4411
|
+
*/
|
4277
4412
|
async newExternalProposal(externalProposalType, args) {
|
4278
4413
|
switch (externalProposalType) {
|
4279
4414
|
case ExternalProposalType.Add: {
|
@@ -4327,6 +4462,7 @@ class CoreCrypto {
|
|
4327
4462
|
* and deletes the temporary one. This step makes the group operational and ready to encrypt/decrypt message
|
4328
4463
|
*
|
4329
4464
|
* @param conversationId - The ID of the conversation
|
4465
|
+
* @returns eventually decrypted buffered messages if any
|
4330
4466
|
*/
|
4331
4467
|
async mergePendingGroupFromExternalCommit(conversationId) {
|
4332
4468
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").merge_pending_group_from_external_commit(conversationId));
|
@@ -4342,20 +4478,19 @@ class CoreCrypto {
|
|
4342
4478
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").clear_pending_group_from_external_commit(conversationId));
|
4343
4479
|
}
|
4344
4480
|
/**
|
4345
|
-
* Allows to mark the latest commit produced as "accepted" and be able to safely merge it
|
4346
|
-
* into the local group state
|
4481
|
+
* Allows to mark the latest commit produced as "accepted" and be able to safely merge it into the local group state
|
4347
4482
|
*
|
4348
4483
|
* @param conversationId - The group's ID
|
4484
|
+
* @returns the messages from current epoch which had been buffered, if any
|
4349
4485
|
*/
|
4350
4486
|
async commitAccepted(conversationId) {
|
4351
4487
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").commit_accepted(conversationId));
|
4352
4488
|
}
|
4353
4489
|
/**
|
4354
|
-
* Allows to remove a pending proposal (rollback). Use this when backend rejects the proposal you just sent e.g. if permissions
|
4355
|
-
* have changed meanwhile.
|
4490
|
+
* Allows to remove a pending proposal (rollback). Use this when backend rejects the proposal you just sent e.g. if permissions have changed meanwhile.
|
4356
4491
|
*
|
4357
4492
|
* **CAUTION**: only use this when you had an explicit response from the Delivery Service
|
4358
|
-
* e.g. 403 or 409. Do not use otherwise e.g. 5xx responses, timeout etc
|
4493
|
+
* e.g. 403 or 409. Do not use otherwise e.g. 5xx responses, timeout etc…
|
4359
4494
|
*
|
4360
4495
|
* @param conversationId - The group's ID
|
4361
4496
|
* @param proposalRef - A reference to the proposal to delete. You get one when using {@link CoreCrypto.newProposal}
|
@@ -4364,8 +4499,7 @@ class CoreCrypto {
|
|
4364
4499
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").clear_pending_proposal(conversationId, proposalRef));
|
4365
4500
|
}
|
4366
4501
|
/**
|
4367
|
-
* Allows to remove a pending commit (rollback). Use this when backend rejects the commit you just sent e.g. if permissions
|
4368
|
-
* have changed meanwhile.
|
4502
|
+
* Allows to remove a pending commit (rollback). Use this when backend rejects the commit you just sent e.g. if permissions have changed meanwhile.
|
4369
4503
|
*
|
4370
4504
|
* **CAUTION**: only use this when you had an explicit response from the Delivery Service
|
4371
4505
|
* e.g. 403. Do not use otherwise e.g. 5xx responses, timeout etc..
|
@@ -4422,7 +4556,7 @@ class CoreCrypto {
|
|
4422
4556
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").reseed_rng(seed));
|
4423
4557
|
}
|
4424
4558
|
/**
|
4425
|
-
*
|
4559
|
+
* Initializes the proteus client
|
4426
4560
|
*/
|
4427
4561
|
async proteusInit() {
|
4428
4562
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").proteus_init());
|
@@ -4599,31 +4733,31 @@ class CoreCrypto {
|
|
4599
4733
|
* Creates an enrollment instance with private key material you can use in order to fetch
|
4600
4734
|
* a new x509 certificate from the acme server.
|
4601
4735
|
*
|
4602
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4603
|
-
* @param displayName human
|
4604
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
4605
|
-
* @param expiryDays generated x509 certificate expiry
|
4736
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4737
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
4738
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
4739
|
+
* @param expiryDays - generated x509 certificate expiry
|
4606
4740
|
* @param ciphersuite - for generating signing key material
|
4607
|
-
* @returns The new {@link
|
4741
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiMlsInitOnly}
|
4608
4742
|
*/
|
4609
4743
|
async e2eiNewEnrollment(clientId, displayName, handle, expiryDays, ciphersuite) {
|
4610
4744
|
const e2ei = await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_new_enrollment(clientId, displayName, handle, expiryDays, ciphersuite));
|
4611
|
-
return new
|
4745
|
+
return new E2eiEnrollment(e2ei);
|
4612
4746
|
}
|
4613
4747
|
/**
|
4614
4748
|
* Generates an E2EI enrollment instance for a "regular" client (with a Basic credential) willing to migrate to E2EI.
|
4615
4749
|
* Once the enrollment is finished, use the instance in {@link CoreCrypto.e2eiRotateAll} to do the rotation.
|
4616
4750
|
*
|
4617
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4618
|
-
* @param displayName human
|
4619
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
4620
|
-
* @param expiryDays generated x509 certificate expiry
|
4751
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4752
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
4753
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
4754
|
+
* @param expiryDays - generated x509 certificate expiry
|
4621
4755
|
* @param ciphersuite - for generating signing key material
|
4622
|
-
* @returns The new {@link
|
4756
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiRotateAll}
|
4623
4757
|
*/
|
4624
4758
|
async e2eiNewActivationEnrollment(clientId, displayName, handle, expiryDays, ciphersuite) {
|
4625
4759
|
const e2ei = await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_new_activation_enrollment(clientId, displayName, handle, expiryDays, ciphersuite));
|
4626
|
-
return new
|
4760
|
+
return new E2eiEnrollment(e2ei);
|
4627
4761
|
}
|
4628
4762
|
/**
|
4629
4763
|
* Generates an E2EI enrollment instance for a E2EI client (with a X509 certificate credential)
|
@@ -4631,22 +4765,24 @@ class CoreCrypto {
|
|
4631
4765
|
* has been revoked. It lets you change the DisplayName or the handle
|
4632
4766
|
* if you need to. Once the enrollment is finished, use the instance in {@link CoreCrypto.e2eiRotateAll} to do the rotation.
|
4633
4767
|
*
|
4634
|
-
* @param clientId client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4635
|
-
* @param expiryDays generated x509 certificate expiry
|
4768
|
+
* @param clientId - client identifier with user b64Url encoded & clientId hex encoded e.g. `NDUyMGUyMmY2YjA3NGU3NjkyZjE1NjJjZTAwMmQ2NTQ:6add501bacd1d90e@example.com`
|
4769
|
+
* @param expiryDays - generated x509 certificate expiry
|
4636
4770
|
* @param ciphersuite - for generating signing key material
|
4637
|
-
* @param displayName human
|
4638
|
-
* @param handle user handle e.g. `alice.smith.qa@example.com`
|
4639
|
-
* @returns The new {@link
|
4771
|
+
* @param displayName - human-readable name displayed in the application e.g. `Smith, Alice M (QA)`
|
4772
|
+
* @param handle - user handle e.g. `alice.smith.qa@example.com`
|
4773
|
+
* @returns The new {@link E2eiEnrollment} enrollment instance to use with {@link CoreCrypto.e2eiRotateAll}
|
4640
4774
|
*/
|
4641
4775
|
async e2eiNewRotateEnrollment(clientId, expiryDays, ciphersuite, displayName, handle) {
|
4642
4776
|
const e2ei = await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_new_rotate_enrollment(clientId, displayName, handle, expiryDays, ciphersuite));
|
4643
|
-
return new
|
4777
|
+
return new E2eiEnrollment(e2ei);
|
4644
4778
|
}
|
4645
4779
|
/**
|
4646
|
-
* Use this method to initialize end-to-end identity when a client signs up and the grace period is already expired ;
|
4780
|
+
* Use this method to initialize end-to-end identity when a client signs up and the grace period is already expired ;
|
4781
|
+
* that means he cannot initialize with a Basic credential
|
4647
4782
|
*
|
4648
4783
|
* @param enrollment - the enrollment instance used to fetch the certificates
|
4649
4784
|
* @param certificateChain - the raw response from ACME server
|
4785
|
+
* @returns a MlsClient initialized with only a x509 credential
|
4650
4786
|
*/
|
4651
4787
|
async e2eiMlsInitOnly(enrollment, certificateChain) {
|
4652
4788
|
return await __classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_mls_init_only(enrollment.inner(), certificateChain);
|
@@ -4659,6 +4795,7 @@ class CoreCrypto {
|
|
4659
4795
|
* @param enrollment - the enrollment instance used to fetch the certificates
|
4660
4796
|
* @param certificateChain - the raw response from ACME server
|
4661
4797
|
* @param newKeyPackageCount - number of KeyPackages with new identity to generate
|
4798
|
+
* @returns a {@link RotateBundle} with commits to fan-out to other group members, KeyPackages to upload and old ones to delete
|
4662
4799
|
*/
|
4663
4800
|
async e2eiRotateAll(enrollment, certificateChain, newKeyPackageCount) {
|
4664
4801
|
const ffiRet = await __classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_rotate_all(enrollment.inner(), certificateChain, newKeyPackageCount);
|
@@ -4687,7 +4824,7 @@ class CoreCrypto {
|
|
4687
4824
|
*/
|
4688
4825
|
async e2eiEnrollmentStashPop(handle) {
|
4689
4826
|
const e2ei = await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_enrollment_stash_pop(handle));
|
4690
|
-
return new
|
4827
|
+
return new E2eiEnrollment(e2ei);
|
4691
4828
|
}
|
4692
4829
|
/**
|
4693
4830
|
* Indicates when to mark a conversation as degraded i.e. when not all its members have a X509.
|
@@ -4705,11 +4842,22 @@ class CoreCrypto {
|
|
4705
4842
|
* Returns true when end-to-end-identity is enabled for the given Ciphersuite
|
4706
4843
|
*
|
4707
4844
|
* @param ciphersuite of the credential to check
|
4708
|
-
* @returns true end-to-end identity is enabled for the given ciphersuite
|
4845
|
+
* @returns true if end-to-end identity is enabled for the given ciphersuite
|
4709
4846
|
*/
|
4710
4847
|
async e2eiIsEnabled(ciphersuite) {
|
4711
4848
|
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").e2ei_is_enabled(ciphersuite));
|
4712
4849
|
}
|
4850
|
+
/**
|
4851
|
+
* From a given conversation, get the identity of the members supplied. Identity is only present for members with a
|
4852
|
+
* Certificate Credential (after turning on end-to-end identity).
|
4853
|
+
*
|
4854
|
+
* @param conversationId - identifier of the conversation
|
4855
|
+
* @param clientIds - identifiers of the user
|
4856
|
+
* @returns identities or if no member has a x509 certificate, it will return an empty List
|
4857
|
+
*/
|
4858
|
+
async getUserIdentities(conversationId, clientIds) {
|
4859
|
+
return await CoreCryptoError.asyncMapErr(__classPrivateFieldGet(this, _CoreCrypto_cc, "f").get_user_identities(conversationId, clientIds));
|
4860
|
+
}
|
4713
4861
|
/**
|
4714
4862
|
* Returns the current version of {@link CoreCrypto}
|
4715
4863
|
*
|
@@ -4727,21 +4875,21 @@ _a = CoreCrypto, _CoreCrypto_cc = new WeakMap(), _CoreCrypto_assertModuleLoaded
|
|
4727
4875
|
};
|
4728
4876
|
/** @hidden */
|
4729
4877
|
_CoreCrypto_module = { value: void 0 };
|
4730
|
-
class
|
4878
|
+
class E2eiEnrollment {
|
4731
4879
|
/** @hidden */
|
4732
4880
|
constructor(e2ei) {
|
4733
4881
|
/** @hidden */
|
4734
|
-
|
4735
|
-
__classPrivateFieldSet(this,
|
4882
|
+
_E2eiEnrollment_enrollment.set(this, void 0);
|
4883
|
+
__classPrivateFieldSet(this, _E2eiEnrollment_enrollment, e2ei, "f");
|
4736
4884
|
}
|
4737
4885
|
free() {
|
4738
|
-
__classPrivateFieldGet(this,
|
4886
|
+
__classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").free();
|
4739
4887
|
}
|
4740
4888
|
/**
|
4741
4889
|
* Should only be used internally
|
4742
4890
|
*/
|
4743
4891
|
inner() {
|
4744
|
-
return __classPrivateFieldGet(this,
|
4892
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f");
|
4745
4893
|
}
|
4746
4894
|
/**
|
4747
4895
|
* Parses the response from `GET /acme/{provisioner-name}/directory`.
|
@@ -4753,7 +4901,7 @@ class WireE2eIdentity {
|
|
4753
4901
|
*/
|
4754
4902
|
directoryResponse(directory) {
|
4755
4903
|
try {
|
4756
|
-
return __classPrivateFieldGet(this,
|
4904
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").directory_response(directory);
|
4757
4905
|
}
|
4758
4906
|
catch (e) {
|
4759
4907
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4768,7 +4916,7 @@ class WireE2eIdentity {
|
|
4768
4916
|
*/
|
4769
4917
|
newAccountRequest(previousNonce) {
|
4770
4918
|
try {
|
4771
|
-
return __classPrivateFieldGet(this,
|
4919
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_account_request(previousNonce);
|
4772
4920
|
}
|
4773
4921
|
catch (e) {
|
4774
4922
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4781,7 +4929,7 @@ class WireE2eIdentity {
|
|
4781
4929
|
*/
|
4782
4930
|
newAccountResponse(account) {
|
4783
4931
|
try {
|
4784
|
-
return __classPrivateFieldGet(this,
|
4932
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_account_response(account);
|
4785
4933
|
}
|
4786
4934
|
catch (e) {
|
4787
4935
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4795,7 +4943,7 @@ class WireE2eIdentity {
|
|
4795
4943
|
*/
|
4796
4944
|
newOrderRequest(previousNonce) {
|
4797
4945
|
try {
|
4798
|
-
return __classPrivateFieldGet(this,
|
4946
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_order_request(previousNonce);
|
4799
4947
|
}
|
4800
4948
|
catch (e) {
|
4801
4949
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4809,7 +4957,7 @@ class WireE2eIdentity {
|
|
4809
4957
|
*/
|
4810
4958
|
newOrderResponse(order) {
|
4811
4959
|
try {
|
4812
|
-
return __classPrivateFieldGet(this,
|
4960
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_order_response(order);
|
4813
4961
|
}
|
4814
4962
|
catch (e) {
|
4815
4963
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4825,7 +4973,7 @@ class WireE2eIdentity {
|
|
4825
4973
|
*/
|
4826
4974
|
newAuthzRequest(url, previousNonce) {
|
4827
4975
|
try {
|
4828
|
-
return __classPrivateFieldGet(this,
|
4976
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_authz_request(url, previousNonce);
|
4829
4977
|
}
|
4830
4978
|
catch (e) {
|
4831
4979
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4839,7 +4987,7 @@ class WireE2eIdentity {
|
|
4839
4987
|
*/
|
4840
4988
|
newAuthzResponse(authz) {
|
4841
4989
|
try {
|
4842
|
-
return __classPrivateFieldGet(this,
|
4990
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_authz_response(authz);
|
4843
4991
|
}
|
4844
4992
|
catch (e) {
|
4845
4993
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4858,7 +5006,7 @@ class WireE2eIdentity {
|
|
4858
5006
|
*/
|
4859
5007
|
createDpopToken(expirySecs, backendNonce) {
|
4860
5008
|
try {
|
4861
|
-
return __classPrivateFieldGet(this,
|
5009
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").create_dpop_token(expirySecs, backendNonce);
|
4862
5010
|
}
|
4863
5011
|
catch (e) {
|
4864
5012
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4873,7 +5021,7 @@ class WireE2eIdentity {
|
|
4873
5021
|
*/
|
4874
5022
|
newDpopChallengeRequest(accessToken, previousNonce) {
|
4875
5023
|
try {
|
4876
|
-
return __classPrivateFieldGet(this,
|
5024
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_dpop_challenge_request(accessToken, previousNonce);
|
4877
5025
|
}
|
4878
5026
|
catch (e) {
|
4879
5027
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4888,7 +5036,7 @@ class WireE2eIdentity {
|
|
4888
5036
|
*/
|
4889
5037
|
newOidcChallengeRequest(idToken, previousNonce) {
|
4890
5038
|
try {
|
4891
|
-
return __classPrivateFieldGet(this,
|
5039
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_oidc_challenge_request(idToken, previousNonce);
|
4892
5040
|
}
|
4893
5041
|
catch (e) {
|
4894
5042
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4902,7 +5050,7 @@ class WireE2eIdentity {
|
|
4902
5050
|
*/
|
4903
5051
|
newChallengeResponse(challenge) {
|
4904
5052
|
try {
|
4905
|
-
return __classPrivateFieldGet(this,
|
5053
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").new_challenge_response(challenge);
|
4906
5054
|
}
|
4907
5055
|
catch (e) {
|
4908
5056
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4917,7 +5065,7 @@ class WireE2eIdentity {
|
|
4917
5065
|
*/
|
4918
5066
|
checkOrderRequest(orderUrl, previousNonce) {
|
4919
5067
|
try {
|
4920
|
-
return __classPrivateFieldGet(this,
|
5068
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").check_order_request(orderUrl, previousNonce);
|
4921
5069
|
}
|
4922
5070
|
catch (e) {
|
4923
5071
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4927,12 +5075,12 @@ class WireE2eIdentity {
|
|
4927
5075
|
* Parses the response from `POST /acme/{provisioner-name}/order/{order-id}`.
|
4928
5076
|
*
|
4929
5077
|
* @param order HTTP response body
|
4930
|
-
* @return
|
5078
|
+
* @return finalize url to use with {@link finalizeRequest}
|
4931
5079
|
* @see https://www.rfc-editor.org/rfc/rfc8555.html#section-7.4
|
4932
5080
|
*/
|
4933
5081
|
checkOrderResponse(order) {
|
4934
5082
|
try {
|
4935
|
-
return __classPrivateFieldGet(this,
|
5083
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").check_order_response(order);
|
4936
5084
|
}
|
4937
5085
|
catch (e) {
|
4938
5086
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4946,7 +5094,7 @@ class WireE2eIdentity {
|
|
4946
5094
|
*/
|
4947
5095
|
finalizeRequest(previousNonce) {
|
4948
5096
|
try {
|
4949
|
-
return __classPrivateFieldGet(this,
|
5097
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").finalize_request(previousNonce);
|
4950
5098
|
}
|
4951
5099
|
catch (e) {
|
4952
5100
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4961,7 +5109,7 @@ class WireE2eIdentity {
|
|
4961
5109
|
*/
|
4962
5110
|
finalizeResponse(finalize) {
|
4963
5111
|
try {
|
4964
|
-
return __classPrivateFieldGet(this,
|
5112
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").finalize_response(finalize);
|
4965
5113
|
}
|
4966
5114
|
catch (e) {
|
4967
5115
|
throw CoreCryptoError.fromStdError(e);
|
@@ -4975,14 +5123,14 @@ class WireE2eIdentity {
|
|
4975
5123
|
*/
|
4976
5124
|
certificateRequest(previousNonce) {
|
4977
5125
|
try {
|
4978
|
-
return __classPrivateFieldGet(this,
|
5126
|
+
return __classPrivateFieldGet(this, _E2eiEnrollment_enrollment, "f").certificate_request(previousNonce);
|
4979
5127
|
}
|
4980
5128
|
catch (e) {
|
4981
5129
|
throw CoreCryptoError.fromStdError(e);
|
4982
5130
|
}
|
4983
5131
|
}
|
4984
5132
|
}
|
4985
|
-
|
5133
|
+
_E2eiEnrollment_enrollment = new WeakMap();
|
4986
5134
|
/**
|
4987
5135
|
* Indicates the state of a Conversation regarding end-to-end identity.
|
4988
5136
|
* Note: this does not check pending state (pending commit, pending proposals) so it does not
|
@@ -5004,4 +5152,4 @@ var E2eiConversationState;
|
|
5004
5152
|
E2eiConversationState[E2eiConversationState["NotEnabled"] = 3] = "NotEnabled";
|
5005
5153
|
})(E2eiConversationState || (E2eiConversationState = {}));
|
5006
5154
|
|
5007
|
-
export { Ciphersuite, CoreCrypto, CoreCryptoError, CredentialType, E2eiConversationState, ExternalProposalType, GroupInfoEncryptionType, ProposalType, RatchetTreeType,
|
5155
|
+
export { Ciphersuite, CoreCrypto, CoreCryptoError, CredentialType, E2eiConversationState, E2eiEnrollment, ExternalProposalType, GroupInfoEncryptionType, ProposalType, RatchetTreeType, WirePolicy };
|
Binary file
|