@signalapp/libsignal-client 0.33.0 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Native.d.ts +19 -1
- package/dist/Errors.d.ts +6 -1
- package/dist/Errors.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -2
- package/dist/net.d.ts +29 -0
- package/dist/net.js +45 -0
- package/dist/usernames.d.ts +1 -1
- package/dist/usernames.js +2 -2
- package/package.json +4 -3
- package/prebuilds/darwin-arm64/node.napi.node +0 -0
- package/prebuilds/darwin-x64/node.napi.node +0 -0
- package/prebuilds/linux-arm64/node.napi.node +0 -0
- package/prebuilds/linux-x64/node.napi.node +0 -0
- package/prebuilds/win32-arm64/node.napi.node +0 -0
- package/prebuilds/win32-x64/node.napi.node +0 -0
package/Native.d.ts
CHANGED
|
@@ -11,6 +11,13 @@ type Uuid = Buffer;
|
|
|
11
11
|
/// what's important is that it's an integer less than Number.MAX_SAFE_INTEGER.
|
|
12
12
|
type Timestamp = number;
|
|
13
13
|
|
|
14
|
+
type LookupResponse = Map<string, LookupResponseEntry>;
|
|
15
|
+
|
|
16
|
+
interface LookupResponseEntry {
|
|
17
|
+
readonly aci: string | undefined;
|
|
18
|
+
readonly pni: string | undefined;
|
|
19
|
+
}
|
|
20
|
+
|
|
14
21
|
export abstract class IdentityKeyStore {
|
|
15
22
|
_getIdentityKey(): Promise<PrivateKey>;
|
|
16
23
|
_getLocalRegistrationId(): Promise<number>;
|
|
@@ -101,9 +108,11 @@ export function CallLinkSecretParams_DecryptUserId(paramsBytes: Buffer, userId:
|
|
|
101
108
|
export function CallLinkSecretParams_DeriveFromRootKey(rootKey: Buffer): Buffer;
|
|
102
109
|
export function CallLinkSecretParams_GetPublicParams(paramsBytes: Buffer): Buffer;
|
|
103
110
|
export function Cds2ClientState_New(mrenclave: Buffer, attestationMsg: Buffer, currentTimestamp: Timestamp): SgxClientState;
|
|
111
|
+
export function CdsiLookup(asyncRuntime: Wrapper<TokioAsyncContext>, connectionManager: Wrapper<ConnectionManager>, username: string, password: string, request: Wrapper<LookupRequest>, timeoutMillis: number): Promise<LookupResponse>;
|
|
104
112
|
export function CiphertextMessage_FromPlaintextContent(m: Wrapper<PlaintextContent>): CiphertextMessage;
|
|
105
113
|
export function CiphertextMessage_Serialize(obj: Wrapper<CiphertextMessage>): Buffer;
|
|
106
114
|
export function CiphertextMessage_Type(msg: Wrapper<CiphertextMessage>): number;
|
|
115
|
+
export function ConnectionManager_new(environment: number): ConnectionManager;
|
|
107
116
|
export function CreateCallLinkCredentialPresentation_CheckValidContents(presentationBytes: Buffer): void;
|
|
108
117
|
export function CreateCallLinkCredentialPresentation_Verify(presentationBytes: Buffer, roomId: Buffer, now: Timestamp, serverParamsBytes: Buffer, callLinkParamsBytes: Buffer): void;
|
|
109
118
|
export function CreateCallLinkCredentialRequestContext_CheckValidContents(contextBytes: Buffer): void;
|
|
@@ -179,6 +188,10 @@ export function KyberPublicKey_Equals(lhs: Wrapper<KyberPublicKey>, rhs: Wrapper
|
|
|
179
188
|
export function KyberPublicKey_Serialize(obj: Wrapper<KyberPublicKey>): Buffer;
|
|
180
189
|
export function KyberSecretKey_Deserialize(data: Buffer): KyberSecretKey;
|
|
181
190
|
export function KyberSecretKey_Serialize(obj: Wrapper<KyberSecretKey>): Buffer;
|
|
191
|
+
export function LookupRequest_addAciAndAccessKey(request: Wrapper<LookupRequest>, aci: Buffer, accessKey: Buffer): void;
|
|
192
|
+
export function LookupRequest_addE164(request: Wrapper<LookupRequest>, e164: string): void;
|
|
193
|
+
export function LookupRequest_new(): LookupRequest;
|
|
194
|
+
export function LookupRequest_setReturnAcisWithoutUaks(request: Wrapper<LookupRequest>, returnAcisWithoutUaks: boolean): void;
|
|
182
195
|
export function Mp4Sanitizer_Sanitize(input: InputStream, len: Buffer): Promise<SanitizedMetadata>;
|
|
183
196
|
export function PlaintextContent_Deserialize(data: Buffer): PlaintextContent;
|
|
184
197
|
export function PlaintextContent_FromDecryptionErrorMessage(m: Wrapper<DecryptionErrorMessage>): PlaintextContent;
|
|
@@ -359,6 +372,7 @@ export function SignedPreKeyRecord_GetSignature(obj: Wrapper<SignedPreKeyRecord>
|
|
|
359
372
|
export function SignedPreKeyRecord_GetTimestamp(obj: Wrapper<SignedPreKeyRecord>): Timestamp;
|
|
360
373
|
export function SignedPreKeyRecord_New(id: number, timestamp: Timestamp, pubKey: Wrapper<PublicKey>, privKey: Wrapper<PrivateKey>, signature: Buffer): SignedPreKeyRecord;
|
|
361
374
|
export function SignedPreKeyRecord_Serialize(obj: Wrapper<SignedPreKeyRecord>): Buffer;
|
|
375
|
+
export function TESTING_CdsiLookupResponseConvert(): LookupResponse;
|
|
362
376
|
export function TESTING_ErrorOnBorrowAsync(_input: null): Promise<void>;
|
|
363
377
|
export function TESTING_ErrorOnBorrowIo(asyncRuntime: Wrapper<NonSuspendingBackgroundThreadRuntime>, _input: null): Promise<void>;
|
|
364
378
|
export function TESTING_ErrorOnBorrowSync(_input: null): void;
|
|
@@ -380,6 +394,7 @@ export function TESTING_PanicOnLoadSync(_needsCleanup: null, _input: null): void
|
|
|
380
394
|
export function TESTING_PanicOnReturnAsync(_needsCleanup: null): Promise<null>;
|
|
381
395
|
export function TESTING_PanicOnReturnIo(asyncRuntime: Wrapper<NonSuspendingBackgroundThreadRuntime>, _needsCleanup: null): Promise<null>;
|
|
382
396
|
export function TESTING_PanicOnReturnSync(_needsCleanup: null): null;
|
|
397
|
+
export function TokioAsyncContext_new(): TokioAsyncContext;
|
|
383
398
|
export function UnidentifiedSenderMessageContent_Deserialize(data: Buffer): UnidentifiedSenderMessageContent;
|
|
384
399
|
export function UnidentifiedSenderMessageContent_GetContentHint(m: Wrapper<UnidentifiedSenderMessageContent>): number;
|
|
385
400
|
export function UnidentifiedSenderMessageContent_GetContents(obj: Wrapper<UnidentifiedSenderMessageContent>): Buffer;
|
|
@@ -388,7 +403,7 @@ export function UnidentifiedSenderMessageContent_GetMsgType(m: Wrapper<Unidentif
|
|
|
388
403
|
export function UnidentifiedSenderMessageContent_GetSenderCert(m: Wrapper<UnidentifiedSenderMessageContent>): SenderCertificate;
|
|
389
404
|
export function UnidentifiedSenderMessageContent_New(message: Wrapper<CiphertextMessage>, sender: Wrapper<SenderCertificate>, contentHint: number, groupId: Buffer | null): UnidentifiedSenderMessageContent;
|
|
390
405
|
export function UnidentifiedSenderMessageContent_Serialize(obj: Wrapper<UnidentifiedSenderMessageContent>): Buffer;
|
|
391
|
-
export function UsernameLink_Create(username: string): Buffer;
|
|
406
|
+
export function UsernameLink_Create(username: string, entropy: Buffer | null): Buffer;
|
|
392
407
|
export function UsernameLink_DecryptUsername(entropy: Buffer, encryptedUsername: Buffer): string;
|
|
393
408
|
export function Username_CandidatesFrom(nickname: string, minLen: number, maxLen: number): string;
|
|
394
409
|
export function Username_Hash(username: string): Buffer;
|
|
@@ -406,6 +421,7 @@ interface AuthCredentialResponse { readonly __type: unique symbol; }
|
|
|
406
421
|
interface AuthCredentialWithPni { readonly __type: unique symbol; }
|
|
407
422
|
interface AuthCredentialWithPniResponse { readonly __type: unique symbol; }
|
|
408
423
|
interface CiphertextMessage { readonly __type: unique symbol; }
|
|
424
|
+
interface ConnectionManager { readonly __type: unique symbol; }
|
|
409
425
|
interface DecryptionErrorMessage { readonly __type: unique symbol; }
|
|
410
426
|
interface ExpiringProfileKeyCredential { readonly __type: unique symbol; }
|
|
411
427
|
interface ExpiringProfileKeyCredentialResponse { readonly __type: unique symbol; }
|
|
@@ -419,6 +435,7 @@ interface KyberKeyPair { readonly __type: unique symbol; }
|
|
|
419
435
|
interface KyberPreKeyRecord { readonly __type: unique symbol; }
|
|
420
436
|
interface KyberPublicKey { readonly __type: unique symbol; }
|
|
421
437
|
interface KyberSecretKey { readonly __type: unique symbol; }
|
|
438
|
+
interface LookupRequest { readonly __type: unique symbol; }
|
|
422
439
|
interface NonSuspendingBackgroundThreadRuntime { readonly __type: unique symbol; }
|
|
423
440
|
interface PlaintextContent { readonly __type: unique symbol; }
|
|
424
441
|
interface PreKeyBundle { readonly __type: unique symbol; }
|
|
@@ -450,6 +467,7 @@ interface SessionRecord { readonly __type: unique symbol; }
|
|
|
450
467
|
interface SgxClientState { readonly __type: unique symbol; }
|
|
451
468
|
interface SignalMessage { readonly __type: unique symbol; }
|
|
452
469
|
interface SignedPreKeyRecord { readonly __type: unique symbol; }
|
|
470
|
+
interface TokioAsyncContext { readonly __type: unique symbol; }
|
|
453
471
|
interface UnidentifiedSenderMessageContent { readonly __type: unique symbol; }
|
|
454
472
|
interface UuidCiphertext { readonly __type: unique symbol; }
|
|
455
473
|
interface ValidatingMac { readonly __type: unique symbol; }
|
package/dist/Errors.d.ts
CHANGED
|
@@ -20,7 +20,8 @@ export declare enum ErrorCode {
|
|
|
20
20
|
UnsupportedMediaInput = 16,
|
|
21
21
|
InputDataTooLong = 17,
|
|
22
22
|
InvalidEntropyDataLength = 18,
|
|
23
|
-
InvalidUsernameLinkEncryptedData = 19
|
|
23
|
+
InvalidUsernameLinkEncryptedData = 19,
|
|
24
|
+
RateLimitedError = 20
|
|
24
25
|
}
|
|
25
26
|
export declare class LibSignalErrorBase extends Error {
|
|
26
27
|
readonly code: ErrorCode;
|
|
@@ -93,4 +94,8 @@ export type InvalidMediaInputError = LibSignalErrorCommon & {
|
|
|
93
94
|
export type UnsupportedMediaInputError = LibSignalErrorCommon & {
|
|
94
95
|
code: ErrorCode.UnsupportedMediaInput;
|
|
95
96
|
};
|
|
97
|
+
export type RateLimitedError = LibSignalErrorBase & {
|
|
98
|
+
code: ErrorCode.RateLimitedError;
|
|
99
|
+
readonly retryAfterSecs: number;
|
|
100
|
+
};
|
|
96
101
|
export type LibSignalError = GenericError | DuplicatedMessageError | SealedSenderSelfSendError | UntrustedIdentityError | InvalidRegistrationIdError | VerificationFailedError | InvalidSessionError | InvalidSenderKeySessionError | CannotBeEmptyError | CannotStartWithDigitError | MissingSeparatorError | BadNicknameCharacterError | NicknameTooShortError | NicknameTooLongError | InputDataTooLong | InvalidEntropyDataLength | InvalidUsernameLinkEncryptedData | IoError | InvalidMediaInputError | UnsupportedMediaInputError;
|
package/dist/Errors.js
CHANGED
|
@@ -28,6 +28,7 @@ var ErrorCode;
|
|
|
28
28
|
ErrorCode[ErrorCode["InputDataTooLong"] = 17] = "InputDataTooLong";
|
|
29
29
|
ErrorCode[ErrorCode["InvalidEntropyDataLength"] = 18] = "InvalidEntropyDataLength";
|
|
30
30
|
ErrorCode[ErrorCode["InvalidUsernameLinkEncryptedData"] = 19] = "InvalidUsernameLinkEncryptedData";
|
|
31
|
+
ErrorCode[ErrorCode["RateLimitedError"] = 20] = "RateLimitedError";
|
|
31
32
|
})(ErrorCode = exports.ErrorCode || (exports.ErrorCode = {}));
|
|
32
33
|
class LibSignalErrorBase extends Error {
|
|
33
34
|
constructor(message, name, operation, extraProps) {
|
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { Aci, ProtocolAddress } from './Address';
|
|
|
4
4
|
export * from './Address';
|
|
5
5
|
export * as usernames from './usernames';
|
|
6
6
|
export * as io from './io';
|
|
7
|
+
export * as Net from './net';
|
|
7
8
|
export * as Mp4Sanitizer from './Mp4Sanitizer';
|
|
8
9
|
export * as WebpSanitizer from './WebpSanitizer';
|
|
9
10
|
import * as Native from '../Native';
|
package/dist/index.js
CHANGED
|
@@ -27,8 +27,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
27
27
|
});
|
|
28
28
|
};
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.
|
|
31
|
-
exports.initLogger = exports.LogLevel = exports.HsmEnclaveClient = exports.Cds2Client = exports.sealedSenderDecryptToUsmc = exports.sealedSenderDecryptMessage = exports.sealedSenderMultiRecipientMessageForSingleRecipient = exports.sealedSenderMultiRecipientEncrypt = exports.sealedSenderEncrypt = void 0;
|
|
30
|
+
exports.signalDecryptPreKey = exports.signalDecrypt = exports.signalEncrypt = exports.processPreKeyBundle = exports.DecryptionErrorMessage = exports.PlaintextContent = exports.CiphertextMessage = exports.SealedSenderDecryptionResult = exports.groupDecrypt = exports.groupEncrypt = exports.SenderKeyStore = exports.KyberPreKeyStore = exports.SignedPreKeyStore = exports.PreKeyStore = exports.IdentityKeyStore = exports.SessionStore = exports.UnidentifiedSenderMessageContent = exports.SenderKeyMessage = exports.processSenderKeyDistributionMessage = exports.SenderKeyDistributionMessage = exports.SenderCertificate = exports.SenderKeyRecord = exports.ServerCertificate = exports.SessionRecord = exports.PreKeySignalMessage = exports.SignalMessage = exports.KyberPreKeyRecord = exports.SignedPreKeyRecord = exports.PreKeyRecord = exports.PreKeyBundle = exports.IdentityKeyPair = exports.KEMKeyPair = exports.KEMSecretKey = exports.KEMPublicKey = exports.PrivateKey = exports.PublicKey = exports.Aes256GcmSiv = exports.Fingerprint = exports.DisplayableFingerprint = exports.ScannableFingerprint = exports.hkdf = exports.HKDF = exports.ContentHint = exports.Direction = exports.CiphertextMessageType = exports.WebpSanitizer = exports.Mp4Sanitizer = exports.Net = exports.io = exports.usernames = void 0;
|
|
31
|
+
exports.initLogger = exports.LogLevel = exports.HsmEnclaveClient = exports.Cds2Client = exports.sealedSenderDecryptToUsmc = exports.sealedSenderDecryptMessage = exports.sealedSenderMultiRecipientMessageForSingleRecipient = exports.sealedSenderMultiRecipientEncrypt = exports.sealedSenderEncrypt = exports.sealedSenderEncryptMessage = void 0;
|
|
32
32
|
const uuid = require("uuid");
|
|
33
33
|
const Errors = require("./Errors");
|
|
34
34
|
__exportStar(require("./Errors"), exports);
|
|
@@ -36,6 +36,7 @@ const Address_1 = require("./Address");
|
|
|
36
36
|
__exportStar(require("./Address"), exports);
|
|
37
37
|
exports.usernames = require("./usernames");
|
|
38
38
|
exports.io = require("./io");
|
|
39
|
+
exports.Net = require("./net");
|
|
39
40
|
exports.Mp4Sanitizer = require("./Mp4Sanitizer");
|
|
40
41
|
exports.WebpSanitizer = require("./WebpSanitizer");
|
|
41
42
|
const Native = require("../Native");
|
package/dist/net.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ReadonlyDeep } from 'type-fest';
|
|
2
|
+
export declare enum Environment {
|
|
3
|
+
Staging = 0,
|
|
4
|
+
Production = 1
|
|
5
|
+
}
|
|
6
|
+
export type CDSAuthType = {
|
|
7
|
+
username: string;
|
|
8
|
+
password: string;
|
|
9
|
+
};
|
|
10
|
+
export type CDSRequestOptionsType = {
|
|
11
|
+
e164s: Array<string>;
|
|
12
|
+
acisAndAccessKeys: Array<{
|
|
13
|
+
aci: string;
|
|
14
|
+
accessKey: string;
|
|
15
|
+
}>;
|
|
16
|
+
timeout: number;
|
|
17
|
+
returnAcisWithoutUaks: boolean;
|
|
18
|
+
};
|
|
19
|
+
export type CDSResponseEntryType<Aci, Pni> = {
|
|
20
|
+
aci: Aci | undefined;
|
|
21
|
+
pni: Pni | undefined;
|
|
22
|
+
};
|
|
23
|
+
export type CDSResponseType<Aci, Pni> = Map<string, CDSResponseEntryType<Aci, Pni>>;
|
|
24
|
+
export declare class Net {
|
|
25
|
+
private readonly _asyncContext;
|
|
26
|
+
private readonly _connectionManager;
|
|
27
|
+
constructor(env: Environment);
|
|
28
|
+
cdsiLookup({ username, password }: Readonly<CDSAuthType>, { e164s, acisAndAccessKeys, timeout, returnAcisWithoutUaks, }: ReadonlyDeep<CDSRequestOptionsType>): Promise<CDSResponseType<string, string>>;
|
|
29
|
+
}
|
package/dist/net.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2023 Signal Messenger, LLC.
|
|
4
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
5
|
+
//
|
|
6
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
7
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
8
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
9
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
10
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
11
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
12
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.Net = exports.Environment = void 0;
|
|
17
|
+
const Native = require("../Native");
|
|
18
|
+
const Address_1 = require("./Address");
|
|
19
|
+
// This must match the libsignal-bridge Rust enum of the same name.
|
|
20
|
+
var Environment;
|
|
21
|
+
(function (Environment) {
|
|
22
|
+
Environment[Environment["Staging"] = 0] = "Staging";
|
|
23
|
+
Environment[Environment["Production"] = 1] = "Production";
|
|
24
|
+
})(Environment = exports.Environment || (exports.Environment = {}));
|
|
25
|
+
class Net {
|
|
26
|
+
constructor(env) {
|
|
27
|
+
this._asyncContext = Native.TokioAsyncContext_new();
|
|
28
|
+
this._connectionManager = Native.ConnectionManager_new(env);
|
|
29
|
+
}
|
|
30
|
+
cdsiLookup({ username, password }, { e164s, acisAndAccessKeys, timeout, returnAcisWithoutUaks, }) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const request = { _nativeHandle: Native.LookupRequest_new() };
|
|
33
|
+
e164s.forEach((e164) => {
|
|
34
|
+
Native.LookupRequest_addE164(request, e164);
|
|
35
|
+
});
|
|
36
|
+
acisAndAccessKeys.forEach(({ aci: aciStr, accessKey: accessKeyStr }) => {
|
|
37
|
+
Native.LookupRequest_addAciAndAccessKey(request, Address_1.Aci.parseFromServiceIdString(aciStr).getServiceIdFixedWidthBinary(), Buffer.from(accessKeyStr, 'base64'));
|
|
38
|
+
});
|
|
39
|
+
Native.LookupRequest_setReturnAcisWithoutUaks(request, returnAcisWithoutUaks);
|
|
40
|
+
return yield Native.CdsiLookup({ _nativeHandle: this._asyncContext }, { _nativeHandle: this._connectionManager }, username, password, request, timeout);
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.Net = Net;
|
|
45
|
+
//# sourceMappingURL=net.js.map
|
package/dist/usernames.d.ts
CHANGED
|
@@ -8,5 +8,5 @@ export declare function hash(username: string): Buffer;
|
|
|
8
8
|
export declare function generateProof(username: string): Buffer;
|
|
9
9
|
export declare function generateProofWithRandom(username: string, random: Buffer): Buffer;
|
|
10
10
|
export declare function decryptUsernameLink(usernameLink: UsernameLink): string;
|
|
11
|
-
export declare function createUsernameLink(username: string): UsernameLink;
|
|
11
|
+
export declare function createUsernameLink(username: string, previousEntropy?: Buffer): UsernameLink;
|
|
12
12
|
export declare function verifyProof(proof: Buffer, hash: Buffer): void;
|
package/dist/usernames.js
CHANGED
|
@@ -30,8 +30,8 @@ function decryptUsernameLink(usernameLink) {
|
|
|
30
30
|
return Native.UsernameLink_DecryptUsername(usernameLink.entropy, usernameLink.encryptedUsername);
|
|
31
31
|
}
|
|
32
32
|
exports.decryptUsernameLink = decryptUsernameLink;
|
|
33
|
-
function createUsernameLink(username) {
|
|
34
|
-
const usernameLinkData = Native.UsernameLink_Create(username);
|
|
33
|
+
function createUsernameLink(username, previousEntropy) {
|
|
34
|
+
const usernameLinkData = Native.UsernameLink_Create(username, previousEntropy !== null && previousEntropy !== void 0 ? previousEntropy : null);
|
|
35
35
|
const entropy = usernameLinkData.slice(0, 32);
|
|
36
36
|
const encryptedUsername = usernameLinkData.slice(32);
|
|
37
37
|
return { entropy, encryptedUsername };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@signalapp/libsignal-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"license": "AGPL-3.0-only",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"node-gyp-build": "^4.2.3",
|
|
29
|
+
"type-fest": "^3.5.0",
|
|
29
30
|
"uuid": "^8.3.0"
|
|
30
31
|
},
|
|
31
32
|
"devDependencies": {
|
|
@@ -34,7 +35,7 @@
|
|
|
34
35
|
"@types/chai-as-promised": "^7.1.3",
|
|
35
36
|
"@types/chance": "^1.1.3",
|
|
36
37
|
"@types/mocha": "^5.2.7",
|
|
37
|
-
"@types/node": "
|
|
38
|
+
"@types/node": "~18.15.0",
|
|
38
39
|
"@types/uuid": "^8.3.0",
|
|
39
40
|
"@typescript-eslint/eslint-plugin": "^5.47.0",
|
|
40
41
|
"@typescript-eslint/parser": "^5.47.0",
|
|
@@ -48,7 +49,7 @@
|
|
|
48
49
|
"eslint-plugin-mocha": "^10.1.0",
|
|
49
50
|
"eslint-plugin-more": "^1.0.0",
|
|
50
51
|
"mocha": "^9",
|
|
51
|
-
"node-gyp": "^
|
|
52
|
+
"node-gyp": "^10.0.0",
|
|
52
53
|
"prettier": "^2.7.1",
|
|
53
54
|
"rimraf": "^3.0.1",
|
|
54
55
|
"source-map-support": "^0.5.19",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|