@oxidezap/baileyrs 0.0.17 → 0.0.20
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/lib/Bridge/__tests__/adapt.test.js +41 -9
- package/lib/Bridge/__tests__/adapt.test.js.map +1 -1
- package/lib/Bridge/adapt.d.ts +10 -16
- package/lib/Bridge/adapt.d.ts.map +1 -1
- package/lib/Bridge/adapt.js +12 -514
- package/lib/Bridge/adapt.js.map +1 -1
- package/lib/Bridge/schema.d.ts +36 -0
- package/lib/Bridge/schema.d.ts.map +1 -0
- package/lib/Bridge/schema.js +773 -0
- package/lib/Bridge/schema.js.map +1 -0
- package/lib/Bridge/types.d.ts +259 -3
- package/lib/Bridge/types.d.ts.map +1 -1
- package/lib/Socket/events.d.ts +18 -9
- package/lib/Socket/events.d.ts.map +1 -1
- package/lib/Socket/events.js +522 -204
- package/lib/Socket/events.js.map +1 -1
- package/lib/Socket/group-notifications.d.ts +6 -0
- package/lib/Socket/group-notifications.d.ts.map +1 -1
- package/lib/Socket/group-notifications.js +123 -16
- package/lib/Socket/group-notifications.js.map +1 -1
- package/lib/Socket/groups.d.ts +10 -2
- package/lib/Socket/groups.d.ts.map +1 -1
- package/lib/Socket/groups.js +24 -30
- package/lib/Socket/groups.js.map +1 -1
- package/lib/Socket/index.d.ts +31 -8
- package/lib/Socket/index.d.ts.map +1 -1
- package/lib/Socket/index.js +188 -14
- package/lib/Socket/index.js.map +1 -1
- package/lib/Socket/messages.d.ts +13 -2
- package/lib/Socket/messages.d.ts.map +1 -1
- package/lib/Socket/messages.js +27 -6
- package/lib/Socket/messages.js.map +1 -1
- package/lib/Socket/transport.js +3 -3
- package/lib/Socket/transport.js.map +1 -1
- package/lib/Types/Call.d.ts +20 -0
- package/lib/Types/Call.d.ts.map +1 -1
- package/lib/Types/Contact.d.ts +3 -1
- package/lib/Types/Contact.d.ts.map +1 -1
- package/lib/Types/Events.d.ts +2 -0
- package/lib/Types/Events.d.ts.map +1 -1
- package/lib/Types/index.d.ts +1 -0
- package/lib/Types/index.d.ts.map +1 -1
- package/lib/Types/index.js.map +1 -1
- package/lib/Utils/bridge-call.d.ts +22 -0
- package/lib/Utils/bridge-call.d.ts.map +1 -0
- package/lib/Utils/bridge-call.js +105 -0
- package/lib/Utils/bridge-call.js.map +1 -0
- package/lib/Utils/browser-utils.d.ts.map +1 -1
- package/lib/Utils/browser-utils.js +1 -0
- package/lib/Utils/browser-utils.js.map +1 -1
- package/lib/Utils/generics.d.ts +17 -0
- package/lib/Utils/generics.d.ts.map +1 -1
- package/lib/Utils/generics.js +31 -0
- package/lib/Utils/generics.js.map +1 -1
- package/lib/Utils/group-stub-params.d.ts +29 -0
- package/lib/Utils/group-stub-params.d.ts.map +1 -0
- package/lib/Utils/group-stub-params.js +45 -0
- package/lib/Utils/group-stub-params.js.map +1 -0
- package/lib/Utils/messages-media.d.ts +1 -1
- package/lib/Utils/messages-media.d.ts.map +1 -1
- package/lib/Utils/messages-media.js +1 -1
- package/lib/Utils/messages-media.js.map +1 -1
- package/lib/Utils/messages.d.ts.map +1 -1
- package/lib/Utils/messages.js +4 -6
- package/lib/Utils/messages.js.map +1 -1
- package/lib/Utils/process-history-message.d.ts +30 -0
- package/lib/Utils/process-history-message.d.ts.map +1 -0
- package/lib/Utils/process-history-message.js +148 -0
- package/lib/Utils/process-history-message.js.map +1 -0
- package/lib/Utils/use-bridge-store.d.ts.map +1 -1
- package/lib/Utils/use-bridge-store.js +50 -6
- package/lib/Utils/use-bridge-store.js.map +1 -1
- package/lib/Utils/use-multi-file-auth-state.d.ts +7 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -1
- package/lib/Utils/use-multi-file-auth-state.js +11 -1
- package/lib/Utils/use-multi-file-auth-state.js.map +1 -1
- package/lib/Utils/wrap-legacy-store.d.ts.map +1 -1
- package/lib/Utils/wrap-legacy-store.js +110 -90
- package/lib/Utils/wrap-legacy-store.js.map +1 -1
- package/lib/WABinary/generic-utils.d.ts +17 -0
- package/lib/WABinary/generic-utils.d.ts.map +1 -0
- package/lib/WABinary/generic-utils.js +44 -0
- package/lib/WABinary/generic-utils.js.map +1 -0
- package/lib/WABinary/index.d.ts +1 -0
- package/lib/WABinary/index.d.ts.map +1 -1
- package/lib/WABinary/index.js +1 -0
- package/lib/WABinary/index.js.map +1 -1
- package/lib/WABinary/jid-utils.d.ts +4 -0
- package/lib/WABinary/jid-utils.d.ts.map +1 -1
- package/lib/WABinary/jid-utils.js +4 -0
- package/lib/WABinary/jid-utils.js.map +1 -1
- package/lib/__tests__/expect.d.ts +14 -0
- package/lib/__tests__/expect.d.ts.map +1 -1
- package/lib/__tests__/expect.js +42 -2
- package/lib/__tests__/expect.js.map +1 -1
- package/package.json +2 -2
|
@@ -40,6 +40,10 @@ export const jidDecode = (jid) => {
|
|
|
40
40
|
export const isJidGroup = (jid) => jid?.endsWith('@g.us');
|
|
41
41
|
export const isJidStatusBroadcast = (jid) => jid === 'status@broadcast';
|
|
42
42
|
export const isJidNewsletter = (jid) => jid?.endsWith('@newsletter');
|
|
43
|
+
export const isLidUser = (jid) => jid?.endsWith('@lid');
|
|
44
|
+
export const isPnUser = (jid) => jid?.endsWith('@s.whatsapp.net') || jid?.endsWith('@c.us');
|
|
45
|
+
export const isHostedLidUser = (jid) => jid?.endsWith('@hosted.lid');
|
|
46
|
+
export const isHostedPnUser = (jid) => jid?.endsWith('@hosted');
|
|
43
47
|
export const jidNormalizedUser = (jid) => {
|
|
44
48
|
const result = jidDecode(jid);
|
|
45
49
|
if (!result) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jid-utils.js","sourceRoot":"","sources":["../../src/WABinary/jid-utils.ts"],"names":[],"mappings":"AAYA,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACvB,uDAAY,CAAA;IACZ,6CAAO,CAAA;IACP,qDAAY,CAAA;IACZ,6DAAgB,CAAA;AACjB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AASD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAA4B,EAAE,MAAiB,EAAE,MAAe,EAAE,KAAc,EAAE,EAAE;IAC7G,OAAO,GAAG,IAAI,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,MAAM,EAAE,CAAA;AACzF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAuB,EAAuB,EAAE;IACzE,MAAM,MAAM,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,SAAS,CAAA;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,GAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACrC,MAAM,YAAY,GAAG,GAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IAE1C,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACnD,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,SAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE3C,IAAI,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAA;IACtC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACtB,UAAU,GAAG,YAAY,CAAC,GAAG,CAAA;IAC9B,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,UAAU,GAAG,YAAY,CAAC,MAAM,CAAA;IACjC,CAAC;SAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QACpC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAA;IACrC,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QAClB,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;IAED,OAAO;QACN,MAAM,EAAE,MAAmB;QAC3B,IAAI,EAAE,IAAK;QACX,UAAU;QACV,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KACpC,CAAA;AACF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAA;AAC/E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"jid-utils.js","sourceRoot":"","sources":["../../src/WABinary/jid-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type StubParticipantPayload } from '../Utils/group-stub-params.js';
|
|
1
2
|
type Ctor = new (...args: never[]) => unknown;
|
|
2
3
|
type ThrowMatcher = string | RegExp | Error | Ctor | ((err: Error) => boolean);
|
|
3
4
|
interface Matchers<T> {
|
|
@@ -10,10 +11,14 @@ interface Matchers<T> {
|
|
|
10
11
|
toBeInstanceOf(ctor: Ctor): void;
|
|
11
12
|
toBeGreaterThan(n: number): void;
|
|
12
13
|
toBeGreaterThanOrEqual(n: number): void;
|
|
14
|
+
toBeLessThan(n: number): void;
|
|
15
|
+
toBeLessThanOrEqual(n: number): void;
|
|
13
16
|
toContain(item: unknown): void;
|
|
14
17
|
toHaveLength(n: number): void;
|
|
15
18
|
toHaveProperty(path: string): void;
|
|
16
19
|
toThrow(matcher?: ThrowMatcher): void;
|
|
20
|
+
/** Asserts the actual object contains all the given keys with deep-equal values (extra keys allowed). */
|
|
21
|
+
toMatchObject(expected: Partial<T> | Record<string, unknown>): void;
|
|
17
22
|
}
|
|
18
23
|
interface AsyncMatchers<T> {
|
|
19
24
|
toBe(expected: T): Promise<void>;
|
|
@@ -25,6 +30,15 @@ interface Expect<T> extends Matchers<T> {
|
|
|
25
30
|
readonly resolves: AsyncMatchers<Awaited<T>>;
|
|
26
31
|
readonly rejects: AsyncMatchers<unknown>;
|
|
27
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Assert a `messageStubParameters[i]` raw string decodes to a participant
|
|
35
|
+
* payload that contains AT LEAST the expected fields. Extra fields on the
|
|
36
|
+
* decoded payload (e.g. a `phoneNumber` the bridge happens to include) do
|
|
37
|
+
* NOT fail the assert — callers state only what they care about. Fails
|
|
38
|
+
* loudly when the string is missing, not valid JSON, or has the wrong
|
|
39
|
+
* shape, which catches regressions where a raw JID leaks back in.
|
|
40
|
+
*/
|
|
41
|
+
export declare function expectStubParticipant(raw: string | null | undefined, expected: StubParticipantPayload): void;
|
|
28
42
|
export declare function expect<T>(actual: T): Expect<T>;
|
|
29
43
|
export {};
|
|
30
44
|
//# sourceMappingURL=expect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../../src/__tests__/expect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"expect.d.ts","sourceRoot":"","sources":["../../src/__tests__/expect.ts"],"names":[],"mappings":"AACA,OAAO,EAAyB,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AAElG,KAAK,IAAI,GAAG,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAA;AAC7C,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC,CAAA;AAE9E,UAAU,QAAQ,CAAC,CAAC;IACnB,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAA;IACvB,OAAO,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAA;IAChC,WAAW,IAAI,IAAI,CAAA;IACnB,aAAa,IAAI,IAAI,CAAA;IACrB,UAAU,IAAI,IAAI,CAAA;IAClB,SAAS,IAAI,IAAI,CAAA;IACjB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;IAChC,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,sBAAsB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvC,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAA;IAC9B,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,OAAO,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IACrC,yGAAyG;IACzG,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CACnE;AAED,UAAU,aAAa,CAAC,CAAC;IACxB,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9C;AAED,UAAU,MAAM,CAAC,CAAC,CAAE,SAAQ,QAAQ,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACnD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;CACxC;AA6CD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAO5G;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAuC9C"}
|
package/lib/__tests__/expect.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import assert from 'node:assert/strict';
|
|
2
|
+
import { decodeStubParticipant } from "../Utils/group-stub-params.js";
|
|
2
3
|
function toContainImpl(actual, item) {
|
|
3
4
|
if (typeof actual === 'string') {
|
|
4
5
|
assert.ok(actual.includes(String(item)), `expected string to contain ${String(item)}`);
|
|
@@ -20,6 +21,42 @@ function toHavePropertyImpl(actual, path) {
|
|
|
20
21
|
cur = cur[p];
|
|
21
22
|
}
|
|
22
23
|
}
|
|
24
|
+
function toMatchObjectImpl(actual, expected) {
|
|
25
|
+
if (actual == null || typeof actual !== 'object') {
|
|
26
|
+
assert.fail(`expected object, got ${typeof actual}`);
|
|
27
|
+
}
|
|
28
|
+
if (expected == null || typeof expected !== 'object') {
|
|
29
|
+
assert.fail(`toMatchObject expects an object, got ${typeof expected}`);
|
|
30
|
+
}
|
|
31
|
+
for (const [key, expVal] of Object.entries(expected)) {
|
|
32
|
+
// Catches the case where `expVal === undefined` would otherwise let
|
|
33
|
+
// a missing key on `actual` pass silently.
|
|
34
|
+
assert.ok(Object.prototype.hasOwnProperty.call(actual, key), `missing property "${key}"`);
|
|
35
|
+
const actVal = actual[key];
|
|
36
|
+
if (expVal !== null && typeof expVal === 'object' && !Array.isArray(expVal)) {
|
|
37
|
+
toMatchObjectImpl(actVal, expVal);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
assert.deepStrictEqual(actVal, expVal, `mismatch at "${key}"`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Assert a `messageStubParameters[i]` raw string decodes to a participant
|
|
46
|
+
* payload that contains AT LEAST the expected fields. Extra fields on the
|
|
47
|
+
* decoded payload (e.g. a `phoneNumber` the bridge happens to include) do
|
|
48
|
+
* NOT fail the assert — callers state only what they care about. Fails
|
|
49
|
+
* loudly when the string is missing, not valid JSON, or has the wrong
|
|
50
|
+
* shape, which catches regressions where a raw JID leaks back in.
|
|
51
|
+
*/
|
|
52
|
+
export function expectStubParticipant(raw, expected) {
|
|
53
|
+
const decoded = decodeStubParticipant(raw);
|
|
54
|
+
assert.ok(decoded !== null, `expected stub participant payload, got ${JSON.stringify(raw)}`);
|
|
55
|
+
assert.strictEqual(decoded.id, expected.id, 'stub participant id mismatch');
|
|
56
|
+
if (expected.phoneNumber !== undefined) {
|
|
57
|
+
assert.strictEqual(decoded.phoneNumber, expected.phoneNumber, 'stub participant phoneNumber mismatch');
|
|
58
|
+
}
|
|
59
|
+
}
|
|
23
60
|
export function expect(actual) {
|
|
24
61
|
const throwsFn = actual;
|
|
25
62
|
const maybePromise = actual;
|
|
@@ -31,11 +68,14 @@ export function expect(actual) {
|
|
|
31
68
|
toBeTruthy: () => assert.ok(actual),
|
|
32
69
|
toBeFalsy: () => assert.ok(!actual),
|
|
33
70
|
toBeInstanceOf: c => assert.ok(actual instanceof c),
|
|
34
|
-
toBeGreaterThan: n => assert.ok(actual > n),
|
|
35
|
-
toBeGreaterThanOrEqual: n => assert.ok(actual >= n),
|
|
71
|
+
toBeGreaterThan: n => assert.ok(actual > n, `expected ${String(actual)} > ${n}`),
|
|
72
|
+
toBeGreaterThanOrEqual: n => assert.ok(actual >= n, `expected ${String(actual)} >= ${n}`),
|
|
73
|
+
toBeLessThan: n => assert.ok(actual < n, `expected ${String(actual)} < ${n}`),
|
|
74
|
+
toBeLessThanOrEqual: n => assert.ok(actual <= n, `expected ${String(actual)} <= ${n}`),
|
|
36
75
|
toContain: item => toContainImpl(actual, item),
|
|
37
76
|
toHaveLength: n => assert.strictEqual(actual.length, n),
|
|
38
77
|
toHaveProperty: p => toHavePropertyImpl(actual, p),
|
|
78
|
+
toMatchObject: e => toMatchObjectImpl(actual, e),
|
|
39
79
|
toThrow: m => assert.throws(throwsFn, m),
|
|
40
80
|
not: {
|
|
41
81
|
toBe: e => assert.notStrictEqual(actual, e),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expect.js","sourceRoot":"","sources":["../../src/__tests__/expect.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"expect.js","sourceRoot":"","sources":["../../src/__tests__/expect.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oxidezap/baileyrs",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.20",
|
|
5
5
|
"description": "A Rust-powered WhatsApp Web library for JavaScript, with a Baileys-compatible API",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"whatsapp",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
63
|
"pino": "^9.6",
|
|
64
|
-
"whatsapp-rust-bridge": "
|
|
64
|
+
"whatsapp-rust-bridge": "0.6.0-alpha.25"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
67
|
"@types/node": "^22",
|