@wirecat/whatsapp-cli 0.1.0 → 0.2.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.
Files changed (102) hide show
  1. package/README.md +213 -94
  2. package/dist/adapter/adapter.d.ts +8 -4
  3. package/dist/adapter/adapter.d.ts.map +1 -1
  4. package/dist/adapter/adapter.js +313 -85
  5. package/dist/adapter/adapter.js.map +1 -1
  6. package/dist/adapter/channels.d.ts +43 -0
  7. package/dist/adapter/channels.d.ts.map +1 -0
  8. package/dist/adapter/channels.js +100 -0
  9. package/dist/adapter/channels.js.map +1 -0
  10. package/dist/adapter/checks.d.ts +2 -3
  11. package/dist/adapter/checks.d.ts.map +1 -1
  12. package/dist/adapter/checks.js +1 -2
  13. package/dist/adapter/checks.js.map +1 -1
  14. package/dist/adapter/errors.d.ts +0 -5
  15. package/dist/adapter/errors.d.ts.map +1 -1
  16. package/dist/adapter/errors.js +7 -9
  17. package/dist/adapter/errors.js.map +1 -1
  18. package/dist/adapter/groups.d.ts +5 -1
  19. package/dist/adapter/groups.d.ts.map +1 -1
  20. package/dist/adapter/groups.js +51 -9
  21. package/dist/adapter/groups.js.map +1 -1
  22. package/dist/adapter/map.d.ts +16 -2
  23. package/dist/adapter/map.d.ts.map +1 -1
  24. package/dist/adapter/map.js +56 -7
  25. package/dist/adapter/map.js.map +1 -1
  26. package/dist/adapter/pins.d.ts +11 -0
  27. package/dist/adapter/pins.d.ts.map +1 -0
  28. package/dist/adapter/pins.js +10 -0
  29. package/dist/adapter/pins.js.map +1 -0
  30. package/dist/adapter/polls.d.ts +1 -1
  31. package/dist/adapter/polls.d.ts.map +1 -1
  32. package/dist/adapter/polls.js +2 -2
  33. package/dist/adapter/polls.js.map +1 -1
  34. package/dist/adapter/privacy.d.ts +18 -0
  35. package/dist/adapter/privacy.d.ts.map +1 -0
  36. package/dist/adapter/privacy.js +94 -0
  37. package/dist/adapter/privacy.js.map +1 -0
  38. package/dist/adapter/settings.d.ts +21 -0
  39. package/dist/adapter/settings.d.ts.map +1 -0
  40. package/dist/adapter/settings.js +76 -0
  41. package/dist/adapter/settings.js.map +1 -0
  42. package/dist/bin/wa.js +0 -13
  43. package/dist/bin/wa.js.map +1 -1
  44. package/dist/commands/session.d.ts +18 -7
  45. package/dist/commands/session.d.ts.map +1 -1
  46. package/dist/commands/session.js +92 -93
  47. package/dist/commands/session.js.map +1 -1
  48. package/dist/commands/setup.d.ts.map +1 -1
  49. package/dist/commands/setup.js +77 -129
  50. package/dist/commands/setup.js.map +1 -1
  51. package/dist/commands/update.d.ts.map +1 -1
  52. package/dist/commands/update.js +3 -22
  53. package/dist/commands/update.js.map +1 -1
  54. package/dist/engine/channels.d.ts +100 -0
  55. package/dist/engine/channels.d.ts.map +1 -0
  56. package/dist/engine/channels.js +29 -0
  57. package/dist/engine/channels.js.map +1 -0
  58. package/dist/engine/contract.d.ts +475 -43
  59. package/dist/engine/contract.d.ts.map +1 -1
  60. package/dist/engine/contract.js +178 -11
  61. package/dist/engine/contract.js.map +1 -1
  62. package/dist/engine/go-engine.d.ts.map +1 -1
  63. package/dist/engine/go-engine.js +23 -34
  64. package/dist/engine/go-engine.js.map +1 -1
  65. package/dist/engine/groups.d.ts +26 -14
  66. package/dist/engine/groups.d.ts.map +1 -1
  67. package/dist/engine/groups.js +2 -0
  68. package/dist/engine/groups.js.map +1 -1
  69. package/dist/engine/privacy.d.ts +33 -0
  70. package/dist/engine/privacy.d.ts.map +1 -0
  71. package/dist/engine/privacy.js +23 -0
  72. package/dist/engine/privacy.js.map +1 -0
  73. package/dist/engine/settings.d.ts +45 -0
  74. package/dist/engine/settings.d.ts.map +1 -0
  75. package/dist/engine/settings.js +34 -0
  76. package/dist/engine/settings.js.map +1 -0
  77. package/dist/install/postinstall.d.ts.map +1 -1
  78. package/dist/install/postinstall.js +4 -3
  79. package/dist/install/postinstall.js.map +1 -1
  80. package/dist/messenger.d.ts +3 -4
  81. package/dist/messenger.d.ts.map +1 -1
  82. package/dist/messenger.js +29 -14
  83. package/dist/messenger.js.map +1 -1
  84. package/dist/program.d.ts +5 -1
  85. package/dist/program.d.ts.map +1 -1
  86. package/dist/program.js +10 -38
  87. package/dist/program.js.map +1 -1
  88. package/dist/reasons.d.ts.map +1 -1
  89. package/dist/reasons.js +8 -0
  90. package/dist/reasons.js.map +1 -1
  91. package/dist/update.d.ts +0 -1
  92. package/dist/update.d.ts.map +1 -1
  93. package/dist/update.js +0 -7
  94. package/dist/update.js.map +1 -1
  95. package/dist/version.d.ts +1 -1
  96. package/dist/version.js +1 -1
  97. package/package.json +10 -10
  98. package/skills/whatsapp-cli/SKILL.md +59 -24
  99. package/dist/commands/answer.d.ts +0 -7
  100. package/dist/commands/answer.d.ts.map +0 -1
  101. package/dist/commands/answer.js +0 -11
  102. package/dist/commands/answer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/engine/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/engine/contract.ts"],"names":[],"mappings":"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"}
@@ -9,18 +9,99 @@ import * as v from "valibot";
9
9
  * emits a chat (cli-private plans/2026-10-16-whatsapp-foundation.md, decision 3). Names are what the address book or the
10
10
  * person set; a phone number is never a name.
11
11
  */
12
- export const PROTOCOL = 10;
12
+ export const PROTOCOL = 41;
13
+ /**
14
+ * Every request the engine answers. A write changes something on WhatsApp or sends something: cut by a dropped
15
+ * connection or the engine's end, it may have gone through, so it answers `outcome_unknown`, never a retryable error
16
+ * (WC-LIFE-9). The engine's `writes` (engine/cmd/wa-engine/errors.go) must name the same writes; its tests check
17
+ * that and that it dispatches exactly these ops.
18
+ */
19
+ export const ENGINE_OPS = {
20
+ send: "write",
21
+ sendMedia: "write",
22
+ sendAlbum: "write",
23
+ forward: "write",
24
+ edit: "write",
25
+ revoke: "write",
26
+ react: "write",
27
+ read: "write",
28
+ createPoll: "write",
29
+ vote: "write",
30
+ pin: "write",
31
+ unpin: "write",
32
+ createGroup: "write",
33
+ join: "write",
34
+ leave: "write",
35
+ updateGroup: "write",
36
+ setGroupPhoto: "write",
37
+ resetLink: "write",
38
+ participants: "write",
39
+ answerRequest: "write",
40
+ block: "write",
41
+ setPrivacy: "write",
42
+ mute: "write",
43
+ updateProfile: "write",
44
+ deleteChat: "write",
45
+ clearChat: "write",
46
+ deleteForMe: "write",
47
+ star: "write",
48
+ archiveChat: "write",
49
+ unarchiveChat: "write",
50
+ pinChat: "write",
51
+ unpinChat: "write",
52
+ markChatRead: "write",
53
+ markChatUnread: "write",
54
+ followChannel: "write",
55
+ unfollowChannel: "write",
56
+ logout: "write",
57
+ connect: "read",
58
+ close: "read",
59
+ // A cut pairing is abandoned: a retry asks WhatsApp for a new code, and nobody else sees either.
60
+ link: "read",
61
+ me: "read",
62
+ directory: "read",
63
+ chat: "read",
64
+ download: "read",
65
+ // Asks the owner's own phone for older messages; asking twice only sends the same history again.
66
+ older: "read",
67
+ group: "read",
68
+ requests: "read",
69
+ profile: "read",
70
+ lookup: "read",
71
+ contacts: "read",
72
+ privacy: "read",
73
+ channel: "read",
74
+ channelMessages: "read",
75
+ // Records the store's phone-form chats in the engine's own table; nothing reaches WhatsApp.
76
+ storedChats: "read",
77
+ // Reads whatsmeow's LID map for a typed phone-form chat; nothing reaches WhatsApp.
78
+ canonicalChat: "read",
79
+ };
80
+ export const isWrite = (op) => ENGINE_OPS[op] === "write";
13
81
  const jid = v.pipe(v.string(), v.includes("@"));
14
82
  const time = v.pipe(v.string(), v.isoTimestamp());
15
83
  export const waChat = v.strictObject({
16
84
  jid,
17
- name: v.nullable(v.string()),
85
+ /**
86
+ * `unread` and `lastMessageAt` are absent when the source does not say. Only a notice, such as a group leaving its
87
+ * community, leaves out `name` and `participants`: a pushed chat keeps the stored value of whatever is absent.
88
+ */
89
+ name: v.optional(v.nullable(v.string())),
18
90
  kind: v.picklist(["dm", "self", "group", "newsletter", "broadcast"]),
19
- unread: v.nullable(v.number()),
20
- lastMessageAt: v.nullable(time),
21
- participants: v.nullable(v.number()),
91
+ unread: v.optional(v.nullable(v.number())),
92
+ lastMessageAt: v.optional(v.nullable(time)),
93
+ participants: v.optional(v.nullable(v.number())),
22
94
  archived: v.optional(v.boolean()),
23
95
  muted: v.optional(v.boolean()),
96
+ /** The community a group is linked to; `null` when a live read says it is in none, absent when nothing said. */
97
+ parent: v.optional(v.nullable(jid)),
98
+ /** A community itself: a group that holds other groups. */
99
+ community: v.optional(v.literal(true)),
100
+ /**
101
+ * `left` when WhatsApp said the owner left the group or was removed, `member` when it said the owner was added back;
102
+ * never `null`, which clears `archived` too.
103
+ */
104
+ membershipState: v.optional(v.picklist(["left", "member"])),
24
105
  });
25
106
  export const waContact = v.strictObject({ jid, name: v.nullable(v.string()) });
26
107
  /**
@@ -33,10 +114,38 @@ export const waMediaRef = v.strictObject({
33
114
  mediaKey: v.optional(v.string()),
34
115
  fileSha256: v.optional(v.string()),
35
116
  fileEncSha256: v.optional(v.string()),
117
+ /** The upload's URL: a phone does not show a photo or a video whose message lacks it. */
118
+ url: v.optional(v.string()),
119
+ mediaKeyTimestamp: v.optional(v.number()),
36
120
  });
121
+ /**
122
+ * A download's answer: the new path when the phone had to upload the file again, `null` when WhatsApp still kept it.
123
+ * The key stays that of the stored ref; the checksums come too when the phone encrypted the file again.
124
+ */
125
+ export const waDownloaded = v.nullable(v.strictObject({
126
+ directPath: v.pipe(v.string(), v.nonEmpty()),
127
+ fileSha256: v.optional(v.string()),
128
+ fileEncSha256: v.optional(v.string()),
129
+ }));
130
+ /** A place as its message carried it, kept so a forward sends it again; `geo:` in `url` rounds the coordinates. */
131
+ export const waPlaceRef = v.strictObject({
132
+ place: v.strictObject({
133
+ latitude: v.number(),
134
+ longitude: v.number(),
135
+ name: v.optional(v.string()),
136
+ address: v.optional(v.string()),
137
+ url: v.optional(v.string()),
138
+ }),
139
+ });
140
+ /**
141
+ * A contact card as its message carried it, kept so a forward sends it again. The vCard holds a phone number: it
142
+ * stays in the opaque `providerRef`, which cli-core never prints, and never reaches a log or an error.
143
+ */
144
+ export const waCardRef = v.strictObject({ card: v.strictObject({ name: v.string(), vcard: v.string() }) });
37
145
  /**
38
146
  * cli-core's Attachment in WhatsApp's terms: `photo`, `video`, `voice`, `audio`, `document`, `sticker`, `location`
39
- * (`url` is a `geo:` link), `contact` (its name only — the card holds a phone number). `ref` only for a file.
147
+ * (`url` is a `geo:` link), `contact` (its name; the card itself only in `ref`). `ref` is a file's keys, or what a
148
+ * place or a contact card needs to be sent again; a live location has none.
40
149
  */
41
150
  export const waAttachment = v.strictObject({
42
151
  kind: v.picklist(["photo", "video", "voice", "audio", "document", "sticker", "location", "contact"]),
@@ -48,7 +157,7 @@ export const waAttachment = v.strictObject({
48
157
  size: v.optional(v.number()),
49
158
  mime: v.optional(v.string()),
50
159
  duration: v.optional(v.number()),
51
- ref: v.optional(waMediaRef),
160
+ ref: v.optional(v.union([waMediaRef, waPlaceRef, waCardRef])),
52
161
  });
53
162
  /**
54
163
  * A poll as its message carries it. An answer's `id` is the start of the SHA-256 of its text, which is what a vote
@@ -72,6 +181,10 @@ export const waMessage = v.strictObject({
72
181
  replyTo: v.nullable(v.string()),
73
182
  attachments: v.optional(v.array(waAttachment)),
74
183
  poll: v.optional(waPoll),
184
+ /** Only ever `true`, on a pushed message the owner starred: a push may be older than a star taken off since. */
185
+ starred: v.optional(v.literal(true)),
186
+ /** A channel post's number on WhatsApp's servers: a channel's history is read back from it. */
187
+ serverId: v.optional(v.number()),
75
188
  });
76
189
  /**
77
190
  * One person's newest choice in a poll: `selected` is the full SHA-256 of each chosen answer's text, and none takes
@@ -88,9 +201,32 @@ export const waVote = v.strictObject({
88
201
  votedAt: time,
89
202
  poll: v.optional(waPoll),
90
203
  });
204
+ /**
205
+ * A one-to-one chat the engine emitted before in phone form (`from`), now named by its person's LID (`to`). The store
206
+ * moves the old chat to the new id before anything under the new id lands. The engine repeats a re-key for a while,
207
+ * since the CLI may not have been listening; a repeat changes nothing.
208
+ */
209
+ export const waRekey = v.strictObject({ from: jid, to: jid });
210
+ /**
211
+ * Who joined, left, was added, removed, promoted or demoted in a group, or its new title, live or from the group's
212
+ * service message in a history push. WhatsApp gives a live change no id, so `id` is derived from the chat, the time in
213
+ * seconds, the action and the sorted people: both paths give one change the same id, and the store keeps it once.
214
+ * `by` and `people` are in LID form like a sender; `by` is `null` where WhatsApp did not say who.
215
+ */
216
+ export const waChatEvent = v.strictObject({
217
+ chat: jid,
218
+ id: v.pipe(v.string(), v.nonEmpty()),
219
+ timestamp: time,
220
+ event: v.picklist(["join", "leave", "add", "remove", "promote", "demote", "title"]),
221
+ by: v.nullable(jid),
222
+ byName: v.nullable(v.string()),
223
+ people: v.array(waContact),
224
+ title: v.optional(v.string()),
225
+ });
91
226
  /**
92
227
  * One push from the phone. `kind` follows whatsmeow's sync types; the adapter treats them all alike. `votes` are the
93
- * votes in the pushed polls, which the store saves with the push, not as `vote` events.
228
+ * votes in the pushed polls, which the store saves with the push, not as `vote` events. `events` are the groups'
229
+ * service messages in the push, which come as no message. `rekeys` apply first.
94
230
  */
95
231
  export const waHistory = v.strictObject({
96
232
  kind: v.picklist(["bootstrap", "recent", "full", "on_demand", "push_name", "other"]),
@@ -98,6 +234,8 @@ export const waHistory = v.strictObject({
98
234
  contacts: v.array(waContact),
99
235
  messages: v.array(waMessage),
100
236
  votes: v.array(waVote),
237
+ rekeys: v.optional(v.array(waRekey)),
238
+ events: v.optional(v.array(waChatEvent)),
101
239
  });
102
240
  /**
103
241
  * The phone's answer to `older`: the chat's messages sent before the anchor, as many as were asked or fewer. No
@@ -121,7 +259,13 @@ export const engineEvent = v.variant("event", [
121
259
  v.strictObject({ event: v.literal("edit"), message: waMessage }),
122
260
  v.strictObject({ event: v.literal("delete"), chat: jid, id: v.string() }),
123
261
  v.strictObject({ event: v.literal("vote"), vote: waVote }),
124
- v.strictObject({ event: v.literal("connection"), state: connectionState }),
262
+ v.strictObject({ event: v.literal("chat_event"), change: waChatEvent }),
263
+ /** The owner starred a message or took the star off on another device. */
264
+ v.strictObject({ event: v.literal("star"), chat: jid, id: v.pipe(v.string(), v.nonEmpty()), starred: v.boolean() }),
265
+ /** A re-key outside a history push, sent before the first message under the new id. */
266
+ v.strictObject({ event: v.literal("rekey"), ...waRekey.entries }),
267
+ /** `until`: when a temporary ban ends, if WhatsApp said. */
268
+ v.strictObject({ event: v.literal("connection"), state: connectionState, until: v.optional(time) }),
125
269
  ]);
126
270
  export const engineErrorCode = v.picklist([
127
271
  "validation_error",
@@ -139,7 +283,9 @@ export const engineErrorCode = v.picklist([
139
283
  * Why, for the refusals an agent recovers from differently than their code says: another process holds the device
140
284
  * (`device.in-use`), WhatsApp handed the login to another connection (`device.replaced`), logged the device out, refuses
141
285
  * this version (`client.outdated`), banned the account, or asked it to slow down (`account.rate-limited`, never the
142
- * engine's own lookup pace). The CLI registers each one (`src/reasons.ts`).
286
+ * engine's own lookup pace), or has not yet sent the keys a settings change is sealed with (`settings.keys-missing`).
287
+ * A download WhatsApp no longer keeps the file for says how asking the phone to upload it again ended (`media.*`), or
288
+ * that the engine stopped while it waited (`engine.stopped`). The CLI registers each one (`src/reasons.ts`).
143
289
  */
144
290
  export const engineReason = v.picklist([
145
291
  "device.in-use",
@@ -148,11 +294,21 @@ export const engineReason = v.picklist([
148
294
  "client.outdated",
149
295
  "account.banned",
150
296
  "account.rate-limited",
297
+ "settings.keys-missing",
298
+ "media.not-on-phone",
299
+ "media.phone-cannot-decrypt",
300
+ "media.phone-answer-unreadable",
301
+ "media.phone-failed",
302
+ "media.phone-timeout",
303
+ "media.retry-failed",
304
+ "engine.stopped",
151
305
  ]);
152
306
  export const engineError = v.strictObject({
153
307
  code: engineErrorCode,
154
308
  message: v.string(),
155
309
  reason: v.optional(engineReason),
310
+ /** When a temporary ban ends, if WhatsApp said. */
311
+ until: v.optional(time),
156
312
  });
157
313
  /** The engine's first line: its protocol and the linked account (`self()`), or `null` before a login. */
158
314
  export const hello = v.strictObject({
@@ -168,6 +324,13 @@ export const waChatCard = v.strictObject({ chat: waChat, members: v.nullable(v.a
168
324
  * phone. Either one links the account for as long as it is valid, so it is shown and never stored or logged.
169
325
  */
170
326
  export const loginCode = v.strictObject({ login: v.picklist(["qr", "pair"]), code: v.pipe(v.string(), v.nonEmpty()) });
327
+ /** A message key as the engine reads it from a request. */
328
+ export const keyFields = ({ chat, id, fromMe, sender }) => ({
329
+ chat,
330
+ message: id,
331
+ fromMe,
332
+ ...(sender === null ? {} : { sender }),
333
+ });
171
334
  /** The most messages one `older` request asks the phone for, as WhatsApp's own clients ask. */
172
335
  export const OLDER_MAX = 50;
173
336
  /**
@@ -177,10 +340,14 @@ export const OLDER_MAX = 50;
177
340
  export class EngineError extends Error {
178
341
  code;
179
342
  reason;
180
- constructor(code, message, reason) {
343
+ until;
344
+ constructor(code, message, reason,
345
+ /** When a temporary ban ends, if WhatsApp said. */
346
+ until) {
181
347
  super(message);
182
348
  this.code = code;
183
349
  this.reason = reason;
350
+ this.until = until;
184
351
  }
185
352
  }
186
353
  //# sourceMappingURL=contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/engine/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/engine/contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"go-engine.d.ts","sourceRoot":"","sources":["../../src/engine/go-engine.ts"],"names":[],"mappings":"AAIA,OAAO,EAWL,KAAK,cAAc,EAMpB,MAAM,eAAe,CAAA;AAItB,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,8FAA8F;IAC9F,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,wDAAwD;IACxD,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,oFAAoF;IACpF,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAC3C;AAkDD;;;GAGG;AACH,eAAO,MAAM,aAAa,YAAmB,eAAe,KAAG,OAAO,CAAC,cAAc,CAgLpF,CAAA"}
1
+ {"version":3,"file":"go-engine.d.ts","sourceRoot":"","sources":["../../src/engine/go-engine.ts"],"names":[],"mappings":"AAKA,OAAO,EAaL,KAAK,cAAc,EAOpB,MAAM,eAAe,CAAA;AAMtB,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,8FAA8F;IAC9F,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,wDAAwD;IACxD,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,oFAAoF;IACpF,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAC3C;AA4BD;;;GAGG;AACH,eAAO,MAAM,aAAa,YAAmB,eAAe,KAAG,OAAO,CAAC,cAAc,CAkMpF,CAAA"}
@@ -2,33 +2,15 @@ import { spawn } from "node:child_process";
2
2
  import { createInterface } from "node:readline";
3
3
  import * as v from "valibot";
4
4
  import { engineBinary, enginePackage } from "../engine-binary.js";
5
- import { EngineError, engineError, engineEvent, hello, loginCode, PROTOCOL, waAccount, waChat, waChatCard, waMessage, waOlder, } from "./contract.js";
5
+ import { goChannels } from "./channels.js";
6
+ import { EngineError, engineError, engineEvent, hello, isWrite, keyFields, loginCode, PROTOCOL, waAccount, waChat, waChatCard, waDownloaded, waMessage, waOlder, } from "./contract.js";
6
7
  import { eventHub } from "./events.js";
7
8
  import { goGroups } from "./groups.js";
9
+ import { goPrivacy } from "./privacy.js";
10
+ import { goSettings } from "./settings.js";
8
11
  const HELLO_WAIT_MS = 15_000;
9
12
  const CLOSE_WAIT_MS = 5_000;
10
13
  const STOPPED = () => new EngineError("provider_unavailable", "the WhatsApp engine stopped unexpectedly", "engine.stopped");
11
- /** Requests that change something on WhatsApp: cut by the engine's end, they may have gone out. */
12
- const WRITES = new Set([
13
- "send",
14
- "sendMedia",
15
- "forward",
16
- "edit",
17
- "revoke",
18
- "react",
19
- "read",
20
- "createPoll",
21
- "vote",
22
- "createGroup",
23
- "join",
24
- "leave",
25
- "updateGroup",
26
- "resetLink",
27
- "participants",
28
- "answerRequest",
29
- "block",
30
- "logout",
31
- ]);
32
14
  const CUT = () => new EngineError("outcome_unknown", "the WhatsApp engine stopped before WhatsApp confirmed the change; it may have gone through — check first", "engine.stopped-mid-write");
33
15
  const missing = () => new EngineError("provider_unavailable", `the WhatsApp engine is not installed — ${enginePackage()} is missing: reinstall @wirecat/whatsapp-cli ` +
34
16
  "without --omit=optional, or set WA_ENGINE to the engine's path");
@@ -64,7 +46,7 @@ export const startGoEngine = async (options) => {
64
46
  const failAll = (error) => {
65
47
  greet?.reject(error());
66
48
  for (const waiting of pending.values())
67
- waiting.reject(WRITES.has(waiting.op) ? CUT() : error());
49
+ waiting.reject(isWrite(waiting.op) ? CUT() : error());
68
50
  pending.clear();
69
51
  };
70
52
  child.once("error", (error) => {
@@ -99,7 +81,7 @@ export const startGoEngine = async (options) => {
99
81
  }
100
82
  else if ("refused" in value) {
101
83
  const refused = v.parse(engineError, value.refused);
102
- greet?.reject(new EngineError(refused.code, refused.message, refused.reason));
84
+ greet?.reject(new EngineError(refused.code, refused.message, refused.reason, refused.until));
103
85
  }
104
86
  else if ("login" in value) {
105
87
  onCode?.(v.parse(loginCode, value));
@@ -118,7 +100,7 @@ export const startGoEngine = async (options) => {
118
100
  return;
119
101
  if ("error" in value) {
120
102
  const refused = v.parse(engineError, value.error);
121
- waiting.reject(new EngineError(refused.code, refused.message, refused.reason));
103
+ waiting.reject(new EngineError(refused.code, refused.message, refused.reason, refused.until));
122
104
  }
123
105
  else
124
106
  waiting.resolve(value.ok);
@@ -161,6 +143,7 @@ export const startGoEngine = async (options) => {
161
143
  }
162
144
  let connecting;
163
145
  const nothing = v.nullable(v.unknown());
146
+ const jidAnswer = v.pipe(v.string(), v.includes("@"));
164
147
  return {
165
148
  self: () => self,
166
149
  ready: async (signal) => {
@@ -182,15 +165,20 @@ export const startGoEngine = async (options) => {
182
165
  await request("read", keyFields(key), nothing);
183
166
  },
184
167
  sendMedia: ({ chat, text, id, replyTo, quoted, file }) => request("sendMedia", { chat, text, sendId: id, file, ...replyFields(replyTo, quoted) }, waMessage),
185
- download: async (attachment, path) => {
186
- await request("download", { attachment, path }, nothing);
187
- },
168
+ sendAlbum: ({ chat, text, id, replyTo, quoted, files }) => request("sendAlbum", { chat, text, sendId: id, files, ...replyFields(replyTo, quoted) }, waMessage),
169
+ download: (attachment, path, key) => request("download", { attachment, path, ...keyFields(key) }, waDownloaded),
188
170
  forward: ({ chat, id, text, attachment }) => request("forward", { chat, sendId: id, text, ...(attachment ? { attachment } : {}) }, waMessage),
189
171
  older: (anchor, count) => request("older", { ...keyFields(anchor), timestamp: anchor.timestamp, count }, waOlder),
190
172
  createPoll: ({ chat, id, question, answers, multiple }) => request("createPoll", { chat, sendId: id, question, answers, ...(multiple ? { multiple } : {}) }, waMessage),
191
173
  vote: async (key, answers) => {
192
174
  await request("vote", { ...keyFields(key), answers }, nothing);
193
175
  },
176
+ pin: async (key, duration) => {
177
+ await request("pin", { ...keyFields(key), ...(duration === undefined ? {} : { duration }) }, nothing);
178
+ },
179
+ unpin: async (key) => {
180
+ await request("unpin", keyFields(key), nothing);
181
+ },
194
182
  link: async (linking, show) => {
195
183
  onCode = show;
196
184
  try {
@@ -206,9 +194,16 @@ export const startGoEngine = async (options) => {
206
194
  await request("logout", {}, nothing);
207
195
  self = null;
208
196
  },
197
+ storedChats: async (chats, recipients) => {
198
+ await request("storedChats", { chats, ...(recipients?.length ? { recipients } : {}) }, nothing);
199
+ },
200
+ canonicalChat: (jid) => request("canonicalChat", { jid }, jidAnswer),
209
201
  listen: (kinds, onEvent) => hub.listen(kinds, onEvent),
210
202
  close,
211
203
  ...goGroups(request),
204
+ ...goPrivacy(request),
205
+ ...goSettings(request),
206
+ ...goChannels(request),
212
207
  };
213
208
  };
214
209
  const replyFields = (replyTo, quoted) => ({
@@ -223,12 +218,6 @@ const replyFields = (replyTo, quoted) => ({
223
218
  },
224
219
  }),
225
220
  });
226
- const keyFields = ({ chat, id, fromMe, sender }) => ({
227
- chat,
228
- message: id,
229
- fromMe,
230
- ...(sender === null ? {} : { sender }),
231
- });
232
221
  const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms).unref());
233
222
  const aborted = (signal) => new Promise((resolve) => {
234
223
  if (signal.aborted)
@@ -1 +1 @@
1
- {"version":3,"file":"go-engine.js","sourceRoot":"","sources":["../../src/engine/go-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"go-engine.js","sourceRoot":"","sources":["../../src/engine/go-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EACL,WAAW,EAEX,WAAW,EACX,WAAW,EACX,KAAK,EACL,OAAO,EACP,SAAS,EAET,SAAS,EACT,QAAQ,EAIR,SAAS,EACT,MAAM,EACN,UAAU,EACV,YAAY,EACZ,SAAS,EACT,OAAO,GACR,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAgB1C,MAAM,aAAa,GAAG,MAAM,CAAA;AAC5B,MAAM,aAAa,GAAG,KAAK,CAAA;AAE3B,MAAM,OAAO,GAAG,GAAG,EAAE,CACnB,IAAI,WAAW,CAAC,sBAAsB,EAAE,0CAA0C,EAAE,gBAAgB,CAAC,CAAA;AAEvG,MAAM,GAAG,GAAG,GAAG,EAAE,CACf,IAAI,WAAW,CACb,iBAAiB,EACjB,0GAA0G,EAC1G,0BAA0B,CAC3B,CAAA;AAEH,MAAM,OAAO,GAAG,GAAG,EAAE,CACnB,IAAI,WAAW,CACb,sBAAsB,EACtB,0CAA0C,aAAa,EAAE,+CAA+C;IACtG,gEAAgE,CACnE,CAAA;AAQH;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,OAAwB,EAA2B,EAAE;IACvF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IACtC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IACxE,MAAM,IAAI,GAAG;QACX,GAAG,OAAO,CAAC,IAAI;QACf,SAAS;QACT,OAAO,CAAC,SAAS;QACjB,UAAU;QACV,OAAO,CAAC,MAAM;QACd,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAA;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;IACpG,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAA;IACtB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAA;IAC1C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,IAAI,IAAI,GAAkB,IAAI,CAAA;IAC9B,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAI,MAA+C,CAAA;IACnD,IAAI,KAA0E,CAAA;IAC9E,2DAA2D;IAC3D,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACzC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;QACpC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,CAAC,KAAkB,EAAE,EAAE;QACrC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QACtB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;YAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QAC7F,OAAO,CAAC,KAAK,EAAE,CAAA;IACjB,CAAC,CAAA;IAED,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;QACnD,MAAM,GAAG,IAAI,CAAA;QACb,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;IACF,uGAAuG;IACvG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QACvB,MAAM,GAAG,IAAI,CAAA;QACb,OAAO,CAAC,OAAO,CAAC,CAAA;QAChB,IAAI,CAAC,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;IACF,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAClC,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAA+B,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAE5G,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;QAC9B,IAAI,KAA8B,CAAA;QAClC,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAM;QACR,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACxC,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC/B,KAAK,EAAE,MAAM,CACX,IAAI,WAAW,CACb,sBAAsB,EACtB,uCAAuC,IAAI,CAAC,QAAQ,mBAAmB,QAAQ,iBAAiB,CACjG,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YAChB,KAAK,EAAE,OAAO,EAAE,CAAA;QAClB,CAAC;aAAM,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YACnD,KAAK,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9F,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YAC5B,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAA;QACrC,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;YAC7C,IAAI,KAAK,CAAC,OAAO;gBAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;;gBACpC,OAAO,CAAC,IAAI,EAAE,CAAC,uEAAuE,CAAC,CAAA;QAC9F,CAAC;aAAM,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACxB,IAAI,CAAC,OAAO;gBAAE,OAAM;YACpB,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;gBACjD,OAAO,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/F,CAAC;;gBAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAClC,CAAC;IACH,CAAC,CAAA;IACD,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAA+B,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEpF,MAAM,OAAO,GAAG,CACd,EAAY,EACZ,MAA+B,EAC/B,MAAmC,EACvB,EAAE;QACd,IAAI,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QAC5C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;QACnB,MAAM,MAAM,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;QAClG,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;QAChE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IACvD,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;QACvB,IAAI,OAAO;YAAE,OAAO,IAAI,CAAA;QACxB,OAAO,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAC/D,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAA;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;YAClE,IAAI,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACpC,CAAC;QACD,MAAM,IAAI,CAAA;IACZ,CAAC,CAAA;IAED,IAAI,CAAC;QACH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,KAAK,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;YAC3B,UAAU,CACR,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC,EACrF,aAAa,CACd,CAAC,KAAK,EAAE,CAAA;QACX,CAAC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,EAAE,CAAA;QACb,MAAM,KAAK,CAAA;IACb,CAAC;YAAS,CAAC;QACT,KAAK,GAAG,SAAS,CAAA;IACnB,CAAC;IAED,IAAI,UAAwC,CAAA;IAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAErD,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACtB,UAAU,KAAK,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;YAC9C,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;QACD,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC;QACtC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,UAAU,CAAC;QACnD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAC5C,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC;QACzF,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;QAC5E,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QAClD,CAAC;QACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;YAC1B,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAA;QAC/D,CAAC;QACD,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACtB,MAAM,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QAChD,CAAC;QACD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CACvD,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC;QACpG,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CACxD,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC;QACrG,QAAQ,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC;QAC/G,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAC1C,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC;QAClG,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC;QACjH,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CACxD,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC;QAC9G,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;YAC3B,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAA;QAChE,CAAC;QACD,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;YAC3B,MAAM,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QACvG,CAAC;QACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACnB,MAAM,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QACjD,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAsB,EAAE;YAChD,MAAM,GAAG,IAAI,CAAA;YACb,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;gBAChE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAA;gBAClB,OAAO,OAAO,CAAA;YAChB,CAAC;oBAAS,CAAC;gBACT,MAAM,GAAG,SAAS,CAAA;YACpB,CAAC;QACH,CAAC;QACD,MAAM,EAAE,KAAK,IAAI,EAAE;YACjB,MAAM,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;YACpC,IAAI,GAAG,IAAI,CAAA;QACb,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;YACvC,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QACjG,CAAC;QACD,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,EAAE,SAAS,CAAC;QACpE,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;QACtD,KAAK;QACL,GAAG,QAAQ,CAAC,OAAO,CAAC;QACpB,GAAG,SAAS,CAAC,OAAO,CAAC;QACrB,GAAG,UAAU,CAAC,OAAO,CAAC;QACtB,GAAG,UAAU,CAAC,OAAO,CAAC;KACvB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,OAA2B,EAAE,MAA2B,EAAE,EAAE,CAAC,CAAC;IACjF,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7C,GAAG,CAAC,MAAM,KAAK,SAAS;QACtB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;YACE,KAAK,EAAE;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;aAC7D;SACF,CAAC;CACP,CAAC,CAAA;AAEF,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;AAE7F,MAAM,OAAO,GAAG,CAAC,MAAmB,EAAE,EAAE,CACtC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;IAC5B,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,EAAE,CAAA;IAC7B,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AACnE,CAAC,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import * as v from "valibot";
2
- import { type WaContact } from "./contract.js";
2
+ import { type EngineOp, type WaContact } from "./contract.js";
3
3
  export declare const waMember: v.StrictObjectSchema<{
4
4
  readonly jid: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>;
5
5
  readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -13,13 +13,16 @@ export declare const waMember: v.StrictObjectSchema<{
13
13
  export declare const waGroup: v.StrictObjectSchema<{
14
14
  readonly chat: v.StrictObjectSchema<{
15
15
  readonly jid: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>;
16
- readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
16
+ readonly name: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
17
17
  readonly kind: v.PicklistSchema<["dm", "self", "group", "newsletter", "broadcast"], undefined>;
18
- readonly unread: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
19
- readonly lastMessageAt: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>;
20
- readonly participants: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
18
+ readonly unread: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
19
+ readonly lastMessageAt: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>, undefined>;
20
+ readonly participants: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
21
21
  readonly archived: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
22
22
  readonly muted: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
23
+ readonly parent: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>, undefined>, undefined>;
24
+ readonly community: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
25
+ readonly membershipState: v.OptionalSchema<v.PicklistSchema<["left", "member"], undefined>, undefined>;
23
26
  }, undefined>;
24
27
  readonly description: v.NullableSchema<v.StringSchema<undefined>, undefined>;
25
28
  readonly link: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -39,13 +42,16 @@ export declare const waCreated: v.StrictObjectSchema<{
39
42
  readonly group: v.StrictObjectSchema<{
40
43
  readonly chat: v.StrictObjectSchema<{
41
44
  readonly jid: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>;
42
- readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
45
+ readonly name: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
43
46
  readonly kind: v.PicklistSchema<["dm", "self", "group", "newsletter", "broadcast"], undefined>;
44
- readonly unread: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
45
- readonly lastMessageAt: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>;
46
- readonly participants: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
47
+ readonly unread: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
48
+ readonly lastMessageAt: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>, undefined>;
49
+ readonly participants: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
47
50
  readonly archived: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
48
51
  readonly muted: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
52
+ readonly parent: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>, undefined>, undefined>;
53
+ readonly community: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
54
+ readonly membershipState: v.OptionalSchema<v.PicklistSchema<["left", "member"], undefined>, undefined>;
49
55
  }, undefined>;
50
56
  readonly description: v.NullableSchema<v.StringSchema<undefined>, undefined>;
51
57
  readonly link: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -66,13 +72,16 @@ export declare const waJoined: v.StrictObjectSchema<{
66
72
  readonly group: v.NullableSchema<v.StrictObjectSchema<{
67
73
  readonly chat: v.StrictObjectSchema<{
68
74
  readonly jid: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>;
69
- readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
75
+ readonly name: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
70
76
  readonly kind: v.PicklistSchema<["dm", "self", "group", "newsletter", "broadcast"], undefined>;
71
- readonly unread: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
72
- readonly lastMessageAt: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>;
73
- readonly participants: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
77
+ readonly unread: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
78
+ readonly lastMessageAt: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, undefined>]>, undefined>, undefined>;
79
+ readonly participants: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
74
80
  readonly archived: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
75
81
  readonly muted: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
82
+ readonly parent: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IncludesAction<string, "@", undefined>]>, undefined>, undefined>;
83
+ readonly community: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
84
+ readonly membershipState: v.OptionalSchema<v.PicklistSchema<["left", "member"], undefined>, undefined>;
76
85
  }, undefined>;
77
86
  readonly description: v.NullableSchema<v.StringSchema<undefined>, undefined>;
78
87
  readonly link: v.NullableSchema<v.StringSchema<undefined>, undefined>;
@@ -137,6 +146,9 @@ export interface GroupEngine {
137
146
  join(link: string): Promise<WaJoined>;
138
147
  leave(jid: string): Promise<void>;
139
148
  updateGroup(jid: string, change: WaGroupChange): Promise<WaGroup>;
149
+ /** The group's photo from a JPEG at `path`, an absolute path; the engine refuses one WhatsApp would not take. */
150
+ setGroupPhoto(jid: string, path: string): Promise<WaGroup>;
151
+ removeGroupPhoto(jid: string): Promise<WaGroup>;
140
152
  /** A new invite link; the old one stops working. */
141
153
  resetInviteLink(jid: string): Promise<WaGroup>;
142
154
  /** Adds, removes, promotes to admin or demotes; only `add` may leave some out. */
@@ -153,7 +165,7 @@ export interface GroupEngine {
153
165
  /** The phone's address book, as the engine's store holds it. */
154
166
  contacts(): Promise<WaContact[]>;
155
167
  }
156
- export type EngineRequest = <T>(op: string, fields: Record<string, unknown>, schema: v.GenericSchema<unknown, T>) => Promise<T>;
168
+ export type EngineRequest = <T>(op: EngineOp, fields: Record<string, unknown>, schema: v.GenericSchema<unknown, T>) => Promise<T>;
157
169
  /** The group and people requests over the Go engine's JSON lines. */
158
170
  export declare const goGroups: (request: EngineRequest) => GroupEngine;
159
171
  //# sourceMappingURL=groups.d.ts.map