@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.
Files changed (96) hide show
  1. package/lib/Bridge/__tests__/adapt.test.js +41 -9
  2. package/lib/Bridge/__tests__/adapt.test.js.map +1 -1
  3. package/lib/Bridge/adapt.d.ts +10 -16
  4. package/lib/Bridge/adapt.d.ts.map +1 -1
  5. package/lib/Bridge/adapt.js +12 -514
  6. package/lib/Bridge/adapt.js.map +1 -1
  7. package/lib/Bridge/schema.d.ts +36 -0
  8. package/lib/Bridge/schema.d.ts.map +1 -0
  9. package/lib/Bridge/schema.js +773 -0
  10. package/lib/Bridge/schema.js.map +1 -0
  11. package/lib/Bridge/types.d.ts +259 -3
  12. package/lib/Bridge/types.d.ts.map +1 -1
  13. package/lib/Socket/events.d.ts +18 -9
  14. package/lib/Socket/events.d.ts.map +1 -1
  15. package/lib/Socket/events.js +522 -204
  16. package/lib/Socket/events.js.map +1 -1
  17. package/lib/Socket/group-notifications.d.ts +6 -0
  18. package/lib/Socket/group-notifications.d.ts.map +1 -1
  19. package/lib/Socket/group-notifications.js +123 -16
  20. package/lib/Socket/group-notifications.js.map +1 -1
  21. package/lib/Socket/groups.d.ts +10 -2
  22. package/lib/Socket/groups.d.ts.map +1 -1
  23. package/lib/Socket/groups.js +24 -30
  24. package/lib/Socket/groups.js.map +1 -1
  25. package/lib/Socket/index.d.ts +31 -8
  26. package/lib/Socket/index.d.ts.map +1 -1
  27. package/lib/Socket/index.js +188 -14
  28. package/lib/Socket/index.js.map +1 -1
  29. package/lib/Socket/messages.d.ts +13 -2
  30. package/lib/Socket/messages.d.ts.map +1 -1
  31. package/lib/Socket/messages.js +27 -6
  32. package/lib/Socket/messages.js.map +1 -1
  33. package/lib/Socket/transport.js +3 -3
  34. package/lib/Socket/transport.js.map +1 -1
  35. package/lib/Types/Call.d.ts +20 -0
  36. package/lib/Types/Call.d.ts.map +1 -1
  37. package/lib/Types/Contact.d.ts +3 -1
  38. package/lib/Types/Contact.d.ts.map +1 -1
  39. package/lib/Types/Events.d.ts +2 -0
  40. package/lib/Types/Events.d.ts.map +1 -1
  41. package/lib/Types/index.d.ts +1 -0
  42. package/lib/Types/index.d.ts.map +1 -1
  43. package/lib/Types/index.js.map +1 -1
  44. package/lib/Utils/bridge-call.d.ts +22 -0
  45. package/lib/Utils/bridge-call.d.ts.map +1 -0
  46. package/lib/Utils/bridge-call.js +105 -0
  47. package/lib/Utils/bridge-call.js.map +1 -0
  48. package/lib/Utils/browser-utils.d.ts.map +1 -1
  49. package/lib/Utils/browser-utils.js +1 -0
  50. package/lib/Utils/browser-utils.js.map +1 -1
  51. package/lib/Utils/generics.d.ts +17 -0
  52. package/lib/Utils/generics.d.ts.map +1 -1
  53. package/lib/Utils/generics.js +31 -0
  54. package/lib/Utils/generics.js.map +1 -1
  55. package/lib/Utils/group-stub-params.d.ts +29 -0
  56. package/lib/Utils/group-stub-params.d.ts.map +1 -0
  57. package/lib/Utils/group-stub-params.js +45 -0
  58. package/lib/Utils/group-stub-params.js.map +1 -0
  59. package/lib/Utils/messages-media.d.ts +1 -1
  60. package/lib/Utils/messages-media.d.ts.map +1 -1
  61. package/lib/Utils/messages-media.js +1 -1
  62. package/lib/Utils/messages-media.js.map +1 -1
  63. package/lib/Utils/messages.d.ts.map +1 -1
  64. package/lib/Utils/messages.js +4 -6
  65. package/lib/Utils/messages.js.map +1 -1
  66. package/lib/Utils/process-history-message.d.ts +30 -0
  67. package/lib/Utils/process-history-message.d.ts.map +1 -0
  68. package/lib/Utils/process-history-message.js +148 -0
  69. package/lib/Utils/process-history-message.js.map +1 -0
  70. package/lib/Utils/use-bridge-store.d.ts.map +1 -1
  71. package/lib/Utils/use-bridge-store.js +50 -6
  72. package/lib/Utils/use-bridge-store.js.map +1 -1
  73. package/lib/Utils/use-multi-file-auth-state.d.ts +7 -0
  74. package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -1
  75. package/lib/Utils/use-multi-file-auth-state.js +11 -1
  76. package/lib/Utils/use-multi-file-auth-state.js.map +1 -1
  77. package/lib/Utils/wrap-legacy-store.d.ts.map +1 -1
  78. package/lib/Utils/wrap-legacy-store.js +110 -90
  79. package/lib/Utils/wrap-legacy-store.js.map +1 -1
  80. package/lib/WABinary/generic-utils.d.ts +17 -0
  81. package/lib/WABinary/generic-utils.d.ts.map +1 -0
  82. package/lib/WABinary/generic-utils.js +44 -0
  83. package/lib/WABinary/generic-utils.js.map +1 -0
  84. package/lib/WABinary/index.d.ts +1 -0
  85. package/lib/WABinary/index.d.ts.map +1 -1
  86. package/lib/WABinary/index.js +1 -0
  87. package/lib/WABinary/index.js.map +1 -1
  88. package/lib/WABinary/jid-utils.d.ts +4 -0
  89. package/lib/WABinary/jid-utils.d.ts.map +1 -1
  90. package/lib/WABinary/jid-utils.js +4 -0
  91. package/lib/WABinary/jid-utils.js.map +1 -1
  92. package/lib/__tests__/expect.d.ts +14 -0
  93. package/lib/__tests__/expect.d.ts.map +1 -1
  94. package/lib/__tests__/expect.js +42 -2
  95. package/lib/__tests__/expect.js.map +1 -1
  96. package/package.json +2 -2
@@ -15,6 +15,8 @@ import { createHmac } from 'node:crypto';
15
15
  import { mkdir, readFile, stat, unlink, writeFile } from 'node:fs/promises';
16
16
  import { join } from 'node:path';
17
17
  import { proto } from 'whatsapp-rust-bridge/proto-types';
18
+ import { jidDecode } from "../WABinary/jid-utils.js";
19
+ import { BufferJSON } from "./generics.js";
18
20
  const protoLookup = proto;
19
21
  const ADVSignedDeviceIdentity = protoLookup.ADVSignedDeviceIdentity ?? protoLookup.AdvSignedDeviceIdentity;
20
22
  function warn(msg, err) {
@@ -47,36 +49,32 @@ const STORE_MAP = {
47
49
  mutation_mac: 'bridge-mutation-mac',
48
50
  meta: 'bridge-meta'
49
51
  };
50
- // Stores where bridge data is passthrough binary (no conversion).
51
- // All Signal-protocol records (`identity`, `session`, `sender_key`) now
52
- // route through converters because every one of them either:
53
- // has a different key shape between bridge and upstream, OR
54
- // • has a different value-byte encoding (proto / JSON / 32-vs-33-byte
55
- // prefix), OR
56
- // • both.
57
- // Keeping the empty set as an extension point — future bridge stores that
58
- // are byte-compatible with upstream can land here without a converter.
52
+ // Stores that are byte-compatible between bridge and upstream and so can
53
+ // be persisted unchanged. Currently empty every Signal record needs
54
+ // either a key rewrite or a value-byte conversion, both handled by
55
+ // `converters` below.
59
56
  const BINARY_STORES = new Set();
60
- // Bridge-only stores — raw binary persisted through keys interface.
61
- // `lid_mapping` is intentionally excluded it has a converter so the
62
- // `pn:`/`lid:` prefixed bridge keys translate to upstream's bare-userpart
63
- // `{pnUser}` + `{lidUser}_reverse` shape, letting both libraries share
64
- // the same on-disk LID↔PN mapping table.
65
- const BRIDGE_ONLY_STORES = new Set([
66
- 'signed_prekey',
67
- 'sender_key_devices',
68
- 'base_key',
69
- 'sent_message',
70
- 'mutation_mac',
71
- 'meta'
72
- ]);
57
+ // Bridge-only stores — raw binary persisted through the keys interface.
58
+ // Derived from STORE_MAP: anything mapped to a `bridge-*` upstream type
59
+ // has no peer in upstream Baileys' SignalDataTypeMap and must round-trip
60
+ // as raw bytes. `lid_mapping` is mapped to upstream's `lid-mapping` type
61
+ // instead (its converter rewrites the key prefixes), so it's not
62
+ // bridge-only and is naturally excluded by the prefix filter.
63
+ const BRIDGE_ONLY_STORES = new Set(Object.entries(STORE_MAP)
64
+ .filter(([, upstreamType]) => upstreamType.startsWith('bridge-'))
65
+ .map(([bridgeName]) => bridgeName));
73
66
  /** Reconstruct a JID string from the bridge's serialized Jid object.
74
- * Format: "user:device@server" (device omitted when 0). */
67
+ * Format: `user[_<agent>][:<device>]@<server>`. The agent suffix is
68
+ * required to round-trip hosted Business accounts (`5511_2@hosted`) —
69
+ * `credsToDeviceJson` stores it, so the load path must also emit it.
70
+ * Without this, `creds.me.id` would lose the `_<agent>` half on every
71
+ * reload and the next `credsToDeviceJson` save would zero `agent`. */
75
72
  function bridgeJidToString(j) {
76
73
  if (!j?.user || !j?.server)
77
74
  return null;
75
+ const agent = j.agent ?? 0;
78
76
  const device = j.device ?? 0;
79
- return `${j.user}${device > 0 ? ':' + device : ''}@${j.server}`;
77
+ return `${j.user}${agent > 0 ? '_' + agent : ''}${device > 0 ? ':' + device : ''}@${j.server}`;
80
78
  }
81
79
  // ---- Helpers ----
82
80
  const toJson = (v) => new TextEncoder().encode(JSON.stringify(v));
@@ -85,6 +83,24 @@ const toBuf = (v) => v instanceof Uint8Array ? v : Buffer.isBuffer(v) ? new Uint
85
83
  /** Convert Buffer/Uint8Array to a plain number[] for JSON serialization.
86
84
  * Matches Rust's serde_json Vec<u8> format: [byte, byte, ...] */
87
85
  const bufToNumArray = (v) => Array.from(Buffer.from(v));
86
+ /**
87
+ * `true` when the key bytes are absent or all zeros. Used at the device-read
88
+ * boundary to detect a partially-hydrated creds object (e.g. migration
89
+ * remnants where only `me.id` survived) and tell the bridge to bootstrap
90
+ * fresh material instead of blowing up the noise handshake with `precondition-required`.
91
+ */
92
+ const isZeroKey = (b) => {
93
+ if (!b)
94
+ return true;
95
+ // Buffer is a Uint8Array subclass at runtime, so this view is always safe.
96
+ const view = b;
97
+ if (view.length === 0)
98
+ return true;
99
+ for (let i = 0; i < view.length; i++)
100
+ if (view[i] !== 0)
101
+ return false;
102
+ return true;
103
+ };
88
104
  /** Bridge uses hex-encoded key IDs for sync_key; upstream uses base64. Convert hex→base64. */
89
105
  const hexToBase64 = (hex) => Buffer.from(hex, 'hex').toString('base64');
90
106
  const converters = {
@@ -336,21 +352,6 @@ const converters = {
336
352
  }
337
353
  }
338
354
  };
339
- // BufferJSON-compatible replacer/reviver matching upstream `Utils/generics`.
340
- const bufferJsonReplacer = (_k, v) => {
341
- if (Buffer.isBuffer(v) || v instanceof Uint8Array || v?.type === 'Buffer') {
342
- const data = v?.data ?? v;
343
- return { type: 'Buffer', data: Buffer.from(data).toString('base64') };
344
- }
345
- return v;
346
- };
347
- const bufferJsonReviver = (_k, v) => {
348
- const obj = v;
349
- if (obj && typeof obj === 'object' && obj.type === 'Buffer' && typeof obj.data === 'string') {
350
- return Buffer.from(obj.data, 'base64');
351
- }
352
- return v;
353
- };
354
355
  const sk_toBytes = (v) => v ? new Uint8Array(Buffer.from(v)) : new Uint8Array();
355
356
  const sk_toBuffer = (v) => Buffer.from(v ?? new Uint8Array());
356
357
  function bridgeSenderKeyProtoToJson(protoBytes) {
@@ -367,10 +368,10 @@ function bridgeSenderKeyProtoToJson(protoBytes) {
367
368
  seed: sk_toBuffer(mk.seed)
368
369
  }))
369
370
  }));
370
- return Buffer.from(JSON.stringify(states, bufferJsonReplacer), 'utf-8');
371
+ return Buffer.from(JSON.stringify(states, BufferJSON.replacer), 'utf-8');
371
372
  }
372
373
  function upstreamSenderKeyJsonToProto(jsonBuf) {
373
- const states = JSON.parse(Buffer.from(jsonBuf).toString('utf-8'), bufferJsonReviver);
374
+ const states = JSON.parse(Buffer.from(jsonBuf).toString('utf-8'), BufferJSON.reviver);
374
375
  const senderKeyStates = states.map(s => ({
375
376
  senderKeyId: s.senderKeyId ?? 0,
376
377
  senderChainKey: { iteration: s.senderChainKey?.iteration ?? 0, seed: sk_toBytes(s.senderChainKey?.seed) },
@@ -607,20 +608,27 @@ function upstreamSessionRecordToProto(record) {
607
608
  // session/identity key translation: bridge `{user}[:dev]@{server}.{sig}`
608
609
  // → upstream `{signalUser}.{deviceId}` via `bridgeAddrToBaileysAddr`.
609
610
  // ---- Device/Creds ----
610
- /** Parse a JID string into { user, device, server } */
611
- function parseJid(jid) {
612
- if (!jid)
613
- return null;
614
- const atIdx = jid.indexOf('@');
611
+ /**
612
+ * Extract the literal `_<n>` agent suffix from a raw JID. `jidDecode`
613
+ * folds it into `domainType` only for plain `s.whatsapp.net`; for special
614
+ * servers (`hosted`, `hosted.lid`) it is parsed-then-discarded because
615
+ * `domainType` is taken from the server. The bridge's `Jid.agent`
616
+ * field needs the literal number, so recover it here.
617
+ */
618
+ function jidAgent(rawJid) {
619
+ if (!rawJid)
620
+ return 0;
621
+ const atIdx = rawJid.indexOf('@');
615
622
  if (atIdx < 0)
616
- return null;
617
- const server = jid.slice(atIdx + 1);
618
- const userPart = jid.slice(0, atIdx);
619
- const colonIdx = userPart.indexOf(':');
620
- if (colonIdx >= 0) {
621
- return { user: userPart.slice(0, colonIdx), device: parseInt(userPart.slice(colonIdx + 1)) || 0, server };
622
- }
623
- return { user: userPart, device: 0, server };
623
+ return 0;
624
+ const userPart = rawJid.slice(0, atIdx).split(':', 1)[0];
625
+ if (!userPart)
626
+ return 0;
627
+ const sepIdx = userPart.indexOf('_');
628
+ if (sepIdx < 0)
629
+ return 0;
630
+ const n = parseInt(userPart.slice(sepIdx + 1), 10);
631
+ return Number.isFinite(n) ? n : 0;
624
632
  }
625
633
  function credsToDeviceJson(creds) {
626
634
  /** Serialize a key pair as [private(32) + public(32)] matching Rust key_pair_serde */
@@ -629,15 +637,19 @@ function credsToDeviceJson(creds) {
629
637
  return Array(64).fill(0);
630
638
  return bufToNumArray(Buffer.from(pair.private)).concat(bufToNumArray(Buffer.from(pair.public)));
631
639
  };
632
- // Extract device number from me.id (e.g. "559984726662:7@s.whatsapp.net")
633
- // or fall back to me.lid (e.g. "236395184570386:10@lid") for the device index
634
- const pnJid = parseJid(creds.me?.id);
635
- const lidJid = parseJid(creds.me?.lid);
636
- // If me.id has no device suffix, use the LID's device number
637
- const deviceNum = pnJid && pnJid.device > 0 ? pnJid.device : (lidJid?.device ?? 0);
640
+ const pnJid = jidDecode(creds.me?.id);
641
+ const lidJid = jidDecode(creds.me?.lid);
642
+ const deviceNum = pnJid?.device ?? lidJid?.device ?? 0;
643
+ const pnAgent = jidAgent(creds.me?.id);
644
+ const lidAgent = jidAgent(creds.me?.lid);
645
+ // Preserve `server` and recover the literal `_<n>` agent suffix so
646
+ // hosted / hosted.lid accounts (e.g. `5511_2@hosted`) survive a
647
+ // drop-in migration from upstream Baileys.
638
648
  return toJson({
639
- pn: pnJid ? { user: pnJid.user, server: 's.whatsapp.net', device: deviceNum, agent: 0, integrator: 0 } : null,
640
- lid: lidJid ? { user: lidJid.user, server: 'lid', device: lidJid.device, agent: 0, integrator: 0 } : null,
649
+ pn: pnJid ? { user: pnJid.user, server: pnJid.server, device: deviceNum, agent: pnAgent, integrator: 0 } : null,
650
+ lid: lidJid
651
+ ? { user: lidJid.user, server: lidJid.server, device: lidJid.device ?? 0, agent: lidAgent, integrator: 0 }
652
+ : null,
641
653
  registration_id: creds.registrationId ?? 0,
642
654
  noise_key: kp(creds.noiseKey),
643
655
  identity_key: kp(creds.signedIdentityKey),
@@ -879,7 +891,7 @@ export async function wrapLegacyStore(state, saveCreds, logger) {
879
891
  clearTimeout(credsTimer);
880
892
  credsTimer = setTimeout(() => {
881
893
  credsTimer = null;
882
- saveCreds().catch(() => { });
894
+ saveCreds().catch(err => warn('saveCreds failed', err));
883
895
  }, 100);
884
896
  };
885
897
  /** Route a store to its handler */
@@ -980,6 +992,16 @@ export async function wrapLegacyStore(state, saveCreds, logger) {
980
992
  // through `set('device', 'device', …)` on pair-success.
981
993
  if (!creds.noiseKey && !creds.me?.id)
982
994
  return null;
995
+ // Even when `noiseKey` is present as an object, the bytes
996
+ // can still be all-zero — happens after a partial migration
997
+ // from a legacy creds.json that only persisted `me.id`.
998
+ // `credsToDeviceJson` would happily emit zero-filled key
999
+ // slots, which the server rejects with the same 428. Treat
1000
+ // any zero-byte critical key as a bootstrap signal.
1001
+ if (isZeroKey(creds.noiseKey?.private) || isZeroKey(creds.signedIdentityKey?.private)) {
1002
+ warn('device read: noiseKey/signedIdentityKey is zero-valued; signaling bootstrap to bridge');
1003
+ return null;
1004
+ }
983
1005
  return credsToDeviceJson(creds);
984
1006
  }
985
1007
  if (key === 'account') {
@@ -989,14 +1011,10 @@ export async function wrapLegacyStore(state, saveCreds, logger) {
989
1011
  }
990
1012
  return readBinary(type, key);
991
1013
  }
992
- if (route === 'signal') {
993
- // `BINARY_STORES` is empty as of the move-to-converter
994
- // migration keeping the branch for future passthrough
995
- // stores. No identity fallback needed: identity now goes
996
- // through the converter, which handles both the address
997
- // rewrite and the 32↔33-byte prefix.
1014
+ // `signal` route is currently unreachable (BINARY_STORES is empty);
1015
+ // kept for future byte-compatible stores.
1016
+ if (route === 'signal')
998
1017
  return readBinary(type, key);
999
- }
1000
1018
  if (route === 'bridge-only')
1001
1019
  return readBinary(type, key);
1002
1020
  if (route === 'converter') {
@@ -1064,36 +1082,38 @@ export async function wrapLegacyStore(state, saveCreds, logger) {
1064
1082
  }
1065
1083
  },
1066
1084
  async flush() {
1067
- if (credsTimer) {
1085
+ // Drain in a loop because `set('device', ...)` calls landing
1086
+ // during `await saveCreds()` queue a fresh `credsTimer`. A
1087
+ // single-pass flush would leave the latest creds on the timer
1088
+ // — `dispose()` then fires saveCreds() but the orchestrator
1089
+ // has already moved on (`free()`), so the write is racing
1090
+ // against process exit. Looping until the timer is null after
1091
+ // a save closes the window deterministically. Bounded by a
1092
+ // small max-iterations guard so a saveCreds() that re-emits
1093
+ // credentials in a tight loop can't lock us forever.
1094
+ for (let i = 0; i < 32 && credsTimer; i++) {
1068
1095
  clearTimeout(credsTimer);
1069
1096
  credsTimer = null;
1070
1097
  await saveCreds();
1071
1098
  }
1099
+ if (credsTimer) {
1100
+ warn('flush hit max-iterations cap; pending credsTimer dropped — saveCreds may be re-emitting in a loop');
1101
+ clearTimeout(credsTimer);
1102
+ credsTimer = null;
1103
+ }
1072
1104
  },
1073
1105
  dispose() {
1074
1106
  if (credsTimer) {
1075
1107
  clearTimeout(credsTimer);
1076
- saveCreds().catch(() => { });
1108
+ saveCreds().catch(err => warn('saveCreds failed during dispose', err));
1077
1109
  }
1078
1110
  }
1079
1111
  };
1080
1112
  }
1081
- const bufferReviver = (_, value) => {
1082
- if (value !== null &&
1083
- value !== undefined &&
1084
- typeof value === 'object' &&
1085
- (value.type === 'Buffer' || value.buffer === true)) {
1086
- const data = value.data ?? value.value;
1087
- return typeof data === 'string'
1088
- ? Buffer.from(data, 'base64')
1089
- : Buffer.from((Array.isArray(data) ? data : []));
1090
- }
1091
- return value;
1092
- };
1093
- /** JSON replacer that serializes Buffer/Uint8Array → `{ type: "Buffer", data: "base64" }` */
1094
- const bufferReplacer = (_, value) => value instanceof Uint8Array || Buffer.isBuffer(value)
1095
- ? { type: 'Buffer', data: Buffer.from(value).toString('base64') }
1096
- : value;
1113
+ // ---- Legacy multi-file auth state loader ----
1114
+ // Reads upstream Baileys' creds.json + per-key .json files via the
1115
+ // shared `BufferJSON` codec (same as @whiskeysockets/baileys
1116
+ // useMultiFileAuthState).
1097
1117
  const fixFileName = (file) => file?.replace(/\//g, '__')?.replace(/:/g, '-');
1098
1118
  /**
1099
1119
  * Loads an upstream Baileys session (creds.json + key .json files) and returns
@@ -1116,14 +1136,14 @@ export async function useLegacyMultiFileAuthState(folder) {
1116
1136
  const readData = async (file) => {
1117
1137
  try {
1118
1138
  const data = await readFile(join(folder, fixFileName(file)), 'utf-8');
1119
- return JSON.parse(data, bufferReviver);
1139
+ return JSON.parse(data, BufferJSON.reviver);
1120
1140
  }
1121
1141
  catch {
1122
1142
  return null;
1123
1143
  }
1124
1144
  };
1125
1145
  const writeData = async (data, file) => {
1126
- await writeFile(join(folder, fixFileName(file)), JSON.stringify(data, bufferReplacer));
1146
+ await writeFile(join(folder, fixFileName(file)), JSON.stringify(data, BufferJSON.replacer));
1127
1147
  };
1128
1148
  const removeData = async (file) => {
1129
1149
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"wrap-legacy-store.js","sourceRoot":"","sources":["../../src/Utils/wrap-legacy-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrap-legacy-store.js","sourceRoot":"","sources":["../../src/Utils/wrap-legacy-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Helpers for inspecting raw `BinaryNode` stanza trees, ported 1:1
3
+ * from upstream Baileys' `WABinary/generic-utils.ts`. baileyrs has the
4
+ * same `BinaryNode` shape (`{ tag, attrs, content }`), so the
5
+ * implementations are byte-identical.
6
+ */
7
+ import type { BinaryNode } from '../Types/index.js';
8
+ export declare const getBinaryNodeChildren: (node: BinaryNode | undefined, childTag: string) => BinaryNode[];
9
+ export declare const getBinaryNodeChild: (node: BinaryNode | undefined, childTag: string) => BinaryNode | undefined;
10
+ /**
11
+ * Throws a `Boom` when the response stanza carries an `<error>` child.
12
+ * Mirrors upstream `assertNodeErrorFree` — used in IQ response paths
13
+ * where the server signals failure via a sibling `<error>` instead of
14
+ * a top-level rejection.
15
+ */
16
+ export declare const assertNodeErrorFree: (node: BinaryNode) => void;
17
+ //# sourceMappingURL=generic-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generic-utils.d.ts","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAGnD,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,KAAG,UAAU,EAKhG,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,KAAG,UAAU,GAAG,SAKhG,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,UAAU,KAAG,IAiBtD,CAAA"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Helpers for inspecting raw `BinaryNode` stanza trees, ported 1:1
3
+ * from upstream Baileys' `WABinary/generic-utils.ts`. baileyrs has the
4
+ * same `BinaryNode` shape (`{ tag, attrs, content }`), so the
5
+ * implementations are byte-identical.
6
+ */
7
+ import { Boom } from "../Utils/boom.js";
8
+ export const getBinaryNodeChildren = (node, childTag) => {
9
+ if (Array.isArray(node?.content)) {
10
+ return node.content.filter(item => item.tag === childTag);
11
+ }
12
+ return [];
13
+ };
14
+ export const getBinaryNodeChild = (node, childTag) => {
15
+ if (Array.isArray(node?.content)) {
16
+ return node.content.find(item => item.tag === childTag);
17
+ }
18
+ return undefined;
19
+ };
20
+ /**
21
+ * Throws a `Boom` when the response stanza carries an `<error>` child.
22
+ * Mirrors upstream `assertNodeErrorFree` — used in IQ response paths
23
+ * where the server signals failure via a sibling `<error>` instead of
24
+ * a top-level rejection.
25
+ */
26
+ export const assertNodeErrorFree = (node) => {
27
+ const errNode = getBinaryNodeChild(node, 'error');
28
+ if (errNode) {
29
+ const code = errNode.attrs?.code;
30
+ // Single parse for both `statusCode` and `data` — the previous
31
+ // implementation parsed twice (parseInt + Number) which could
32
+ // disagree on edge cases (e.g. `Number('')` is 0 but
33
+ // `parseInt('', 10)` is NaN). When the server sent a non-numeric
34
+ // code, fall back to 500 for statusCode but preserve the original
35
+ // string in `data` so callers can still inspect the wire value.
36
+ const parsed = typeof code === 'string' ? Number.parseInt(code, 10) : undefined;
37
+ const statusCode = Number.isFinite(parsed) ? parsed : 500;
38
+ throw new Boom(errNode.attrs?.text || 'Unknown error', {
39
+ statusCode,
40
+ data: Number.isFinite(parsed) ? parsed : code
41
+ });
42
+ }
43
+ };
44
+ //# sourceMappingURL=generic-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generic-utils.js","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,IAA4B,EAAE,QAAgB,EAAgB,EAAE;IACrG,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAE,IAAmB,CAAC,GAAG,KAAK,QAAQ,CAAiB,CAAA;IAC1F,CAAC;IACD,OAAO,EAAE,CAAA;AACV,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAA4B,EAAE,QAAgB,EAA0B,EAAE;IAC5G,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAE,IAAmB,CAAC,GAAG,KAAK,QAAQ,CAA2B,CAAA;IAClG,CAAC;IACD,OAAO,SAAS,CAAA;AACjB,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAgB,EAAQ,EAAE;IAC7D,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACjD,IAAI,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAA;QAChC,+DAA+D;QAC/D,8DAA8D;QAC9D,qDAAqD;QACrD,iEAAiE;QACjE,kEAAkE;QAClE,gEAAgE;QAChE,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC/E,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAiB,CAAC,CAAC,CAAC,GAAG,CAAA;QACrE,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,IAAI,eAAe,EAAE;YACtD,UAAU;YACV,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;SAC7C,CAAC,CAAA;IACH,CAAC;AACF,CAAC,CAAA"}
@@ -1,2 +1,3 @@
1
+ export * from './generic-utils.js';
1
2
  export * from './jid-utils.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/WABinary/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/WABinary/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA"}
@@ -1,2 +1,3 @@
1
+ export * from "./generic-utils.js";
1
2
  export * from "./jid-utils.js";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/WABinary/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/WABinary/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA"}
@@ -16,5 +16,9 @@ export declare const jidDecode: (jid: string | undefined) => FullJid | undefined
16
16
  export declare const isJidGroup: (jid: string | undefined) => boolean | undefined;
17
17
  export declare const isJidStatusBroadcast: (jid: string) => jid is "status@broadcast";
18
18
  export declare const isJidNewsletter: (jid: string | undefined) => boolean | undefined;
19
+ export declare const isLidUser: (jid: string | undefined) => boolean | undefined;
20
+ export declare const isPnUser: (jid: string | undefined) => boolean | undefined;
21
+ export declare const isHostedLidUser: (jid: string | undefined) => boolean | undefined;
22
+ export declare const isHostedPnUser: (jid: string | undefined) => boolean | undefined;
19
23
  export declare const jidNormalizedUser: (jid: string | undefined) => string;
20
24
  //# sourceMappingURL=jid-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jid-utils.d.ts","sourceRoot":"","sources":["../../src/WABinary/jid-utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAClB,MAAM,GACN,MAAM,GACN,WAAW,GACX,gBAAgB,GAChB,MAAM,GACN,KAAK,GACL,YAAY,GACZ,KAAK,GACL,QAAQ,GACR,YAAY,CAAA;AAEf,oBAAY,YAAY;IACvB,QAAQ,IAAI;IACZ,GAAG,IAAI;IACP,MAAM,MAAM;IACZ,UAAU,MAAM;CAChB;AAED,MAAM,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,QAAQ,SAAS,EAAE,SAAS,MAAM,EAAE,QAAQ,MAAM,WAEzG,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,KAAG,OAAO,GAAG,SA6B7D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,GAAG,SAAS,wBAA2B,CAAA;AAC7E,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,8BAA+B,CAAA;AAC/E,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,SAAS,wBAAiC,CAAA;AAExF,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,GAAG,SAAS,WAQxD,CAAA"}
1
+ {"version":3,"file":"jid-utils.d.ts","sourceRoot":"","sources":["../../src/WABinary/jid-utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAClB,MAAM,GACN,MAAM,GACN,WAAW,GACX,gBAAgB,GAChB,MAAM,GACN,KAAK,GACL,YAAY,GACZ,KAAK,GACL,QAAQ,GACR,YAAY,CAAA;AAEf,oBAAY,YAAY;IACvB,QAAQ,IAAI;IACZ,GAAG,IAAI;IACP,MAAM,MAAM;IACZ,UAAU,MAAM;CAChB;AAED,MAAM,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,QAAQ,SAAS,EAAE,SAAS,MAAM,EAAE,QAAQ,MAAM,WAEzG,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,KAAG,OAAO,GAAG,SA6B7D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,GAAG,SAAS,wBAA2B,CAAA;AAC7E,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,8BAA+B,CAAA;AAC/E,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,SAAS,wBAAiC,CAAA;AACxF,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,wBAA0B,CAAA;AAC3E,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,GAAG,SAAS,wBAA+D,CAAA;AAC/G,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,GAAG,SAAS,wBAAiC,CAAA;AACxF,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,GAAG,SAAS,wBAA6B,CAAA;AAEnF,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,GAAG,SAAS,WAQxD,CAAA"}