@badzz88/baileys 8.5.2 → 8.5.4

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 (110) hide show
  1. package/README.md +1 -1
  2. package/WAProto/WAProto.proto +1256 -75
  3. package/WAProto/index.d.ts +36042 -19649
  4. package/WAProto/index.js +181990 -135645
  5. package/engine-requirements.js +7 -15
  6. package/lib/Defaults/index.js +22 -17
  7. package/lib/Signal/Group/group_cipher.js +5 -5
  8. package/lib/Signal/Group/keyhelper.js +4 -4
  9. package/lib/Signal/Group/sender-chain-key.js +2 -2
  10. package/lib/Signal/Group/sender-key-distribution-message.js +1 -1
  11. package/lib/Signal/Group/sender-key-message.js +3 -3
  12. package/lib/Signal/Group/sender-key-record.js +1 -1
  13. package/lib/Signal/Group/sender-message-key.js +5 -5
  14. package/lib/Signal/libsignal.js +39 -59
  15. package/lib/Signal/lid-mapping.js +28 -10
  16. package/lib/Socket/aigroups.js +5 -5
  17. package/lib/Socket/business.js +3 -11
  18. package/lib/Socket/chats.js +668 -319
  19. package/lib/Socket/communities.js +85 -89
  20. package/lib/Socket/graphql.js +435 -228
  21. package/lib/Socket/groups.js +132 -211
  22. package/lib/Socket/index.js +9 -7
  23. package/lib/Socket/interactive-handler.js +117 -60
  24. package/lib/Socket/interop.js +56 -175
  25. package/lib/Socket/managed-account.js +79 -48
  26. package/lib/Socket/messages-recv.js +898 -340
  27. package/lib/Socket/messages-send.js +462 -160
  28. package/lib/Socket/mex.js +40 -53
  29. package/lib/Socket/newsletter.js +291 -291
  30. package/lib/Socket/privacy.js +77 -265
  31. package/lib/Socket/registration.js +164 -157
  32. package/lib/Socket/socket.js +181 -199
  33. package/lib/Socket/username.js +144 -227
  34. package/lib/Store/make-cache-manager-store.js +2 -2
  35. package/lib/Store/make-in-memory-store.js +25 -141
  36. package/lib/Types/Auth.js +3 -3
  37. package/lib/Types/Label.js +1 -1
  38. package/lib/Types/LabelAssociation.js +1 -1
  39. package/lib/Types/Newsletter.js +96 -65
  40. package/lib/Types/State.js +4 -4
  41. package/lib/Types/index.js +1 -1
  42. package/lib/Utils/auth-utils.js +52 -57
  43. package/lib/Utils/browser-utils.js +1 -1
  44. package/lib/Utils/business.js +2 -6
  45. package/lib/Utils/chat-utils.js +102 -38
  46. package/lib/Utils/crypto.js +54 -84
  47. package/lib/Utils/decode-wa-message.js +316 -83
  48. package/lib/Utils/event-buffer.js +37 -61
  49. package/lib/Utils/generics.js +157 -103
  50. package/lib/Utils/group-history.js +3 -12
  51. package/lib/Utils/history.js +15 -15
  52. package/lib/Utils/index.js +1 -5
  53. package/lib/Utils/link-preview.js +3 -8
  54. package/lib/Utils/lt-hash.js +2 -35
  55. package/lib/Utils/make-mutex.js +1 -1
  56. package/lib/Utils/message-inspect.js +393 -0
  57. package/lib/Utils/message-retry-manager.js +27 -92
  58. package/lib/Utils/messages-media.js +159 -130
  59. package/lib/Utils/messages.js +144 -566
  60. package/lib/Utils/meta-ai-msmsg.js +62 -202
  61. package/lib/Utils/noise-handler.js +19 -21
  62. package/lib/Utils/offline-node-processor.js +3 -8
  63. package/lib/Utils/pre-key-manager.js +13 -23
  64. package/lib/Utils/process-message.js +197 -106
  65. package/lib/Utils/reporting-utils.js +2 -2
  66. package/lib/Utils/signal.js +28 -63
  67. package/lib/Utils/stanza-ack.js +39 -12
  68. package/lib/Utils/sync-action-utils.js +4 -7
  69. package/lib/Utils/tc-token-utils.js +20 -25
  70. package/lib/Utils/use-multi-file-auth-state.js +30 -14
  71. package/lib/Utils/validate-connection.js +59 -19
  72. package/lib/WABinary/decode.js +50 -16
  73. package/lib/WABinary/encode.js +54 -224
  74. package/lib/WABinary/generic-utils.js +7 -97
  75. package/lib/WABinary/jid-utils.js +27 -14
  76. package/lib/WAM/encode.js +7 -7
  77. package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +58 -1
  78. package/lib/WAUSync/Protocols/USyncContactProtocol.js +7 -1
  79. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +13 -5
  80. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +1 -4
  81. package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +20 -7
  82. package/lib/WAUSync/Protocols/USyncNewsletterProtocol.js +865 -0
  83. package/lib/WAUSync/Protocols/USyncPictureProtocol.js +1 -1
  84. package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +2 -2
  85. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +7 -2
  86. package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +1 -1
  87. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +2 -1
  88. package/lib/WAUSync/Protocols/index.js +1 -0
  89. package/lib/WAUSync/USyncBackoff.js +26 -0
  90. package/lib/WAUSync/USyncQuery.js +77 -6
  91. package/lib/WAUSync/USyncUser.js +16 -8
  92. package/lib/WAUSync/index.js +1 -0
  93. package/lib/antiban.js +608 -854
  94. package/lib/index.js +3 -3
  95. package/package.json +16 -19
  96. package/lib/Socket/luxu.js +0 -387
  97. package/lib/Socket/text-router.js +0 -83
  98. package/lib/Store/keyed-db.js +0 -108
  99. package/lib/Types/Mex.js +0 -112
  100. package/lib/Utils/command-loader.d.ts +0 -31
  101. package/lib/Utils/command-loader.js +0 -100
  102. package/lib/Utils/companion-reg-client-utils.js +0 -42
  103. package/lib/Utils/curve25519-js.js +0 -275
  104. package/lib/Utils/native-bridge.js +0 -82
  105. package/lib/Utils/session-pool.d.ts +0 -16
  106. package/lib/Utils/session-pool.js +0 -94
  107. package/lib/Utils/sticker.d.ts +0 -17
  108. package/lib/Utils/sticker.js +0 -145
  109. package/lib/Utils/view-once-cache.d.ts +0 -9
  110. package/lib/Utils/view-once-cache.js +0 -79
@@ -1,32 +1,30 @@
1
1
  'use strict'
2
2
  Object.defineProperty(exports, '__esModule', { value: true })
3
- exports.makeGraphQLSocket = exports.executeWWWGraphQL = exports.executeWamoGraphQL = exports.executeFacebookGraphQL = void 0
3
+ exports.makeGraphQLSocket =
4
+ exports.executeWWWGraphQL =
5
+ exports.executeWamoGraphQL =
6
+ exports.executeFacebookGraphQL =
7
+ void 0
4
8
 
5
9
  const boom_1 = require('@hapi/boom')
6
10
 
7
- // Endpoints confirmed from APX.java and WamoGraphQLExecutor.java
11
+
8
12
  const ENDPOINTS = {
9
13
  WWW: 'https://graph.whatsapp.com/graphql',
10
14
  ACS: 'https://acs.whatsapp.com/graphql',
11
- // Wamo host is fetched dynamically at runtime from a config service.
12
- // The path /api/wamo/graphql/ is appended to this base host.
13
- // Callers must provide the full wamo URL or use a configured host.
15
+
16
+
17
+
14
18
  WAMO_PATH: '/api/wamo/graphql/'
15
19
  }
16
20
 
17
- // Default fallback token — only valid as a no-op / anonymous placeholder.
18
- // Real sessions must supply a token obtained via wwwGetNonce + wwwExchangeNonce.
19
- // Confirmed from APX.java: "WA|1015890928915437|3201f239340c1c8ec6262a6dad04200e"
21
+
22
+
23
+
20
24
  const WAMO_APP_ID = '1015890928915437'
21
25
  const WWW_DEFAULT_TOKEN = `WA|${WAMO_APP_ID}|3201f239340c1c8ec6262a6dad04200e`
22
26
 
23
- /**
24
- * Parse a GraphQL JSON response and extract the data at the given path.
25
- * Throws a Boom error if errors are present or the path is missing.
26
- *
27
- * @param {object} json - Parsed JSON response body
28
- * @param {string|null} dataPath - Key in data to extract (null = full data)
29
- */
27
+
30
28
  const parseGraphQLResponse = (json, dataPath) => {
31
29
  if (json.errors?.length) {
32
30
  const msgs = json.errors.map(e => e.message || 'Unknown error').join(', ')
@@ -34,28 +32,21 @@ const parseGraphQLResponse = (json, dataPath) => {
34
32
  throw new boom_1.Boom(`GraphQL error: ${msgs}`, { statusCode: code, data: json.errors[0] })
35
33
  }
36
34
  const response = dataPath ? json?.data?.[dataPath] : json?.data
37
- if (typeof response === 'undefined') {
35
+ if (response === undefined) {
38
36
  throw new boom_1.Boom('Unexpected GraphQL response structure', { statusCode: 400, data: json })
39
37
  }
40
38
  return response
41
39
  }
42
40
 
43
- /**
44
- * Execute a www-schema GraphQL query over HTTPS.
45
- *
46
- * Transport confirmed from APX.java:
47
- * POST https://graph.whatsapp.com/graphql
48
- * Content-Type: application/json
49
- * Body: { access_token, doc_id, variables, lang }
50
- *
51
- * @param {string|number} docId - Numeric doc_id from whatsapp-android-www asset file
52
- * @param {object} variables - Query variables
53
- * @param {string} [accessToken] - ACS access token (obtain via wwwGetNonce + wwwExchangeNonce)
54
- * @param {string|null} [dataPath] - JSON data key to extract from response
55
- * @param {string} [lang='en'] - Language for response
56
- * @param {string} [endpoint] - Override endpoint URL (default: graph.whatsapp.com/graphql)
57
- */
58
- const executeWWWGraphQL = async (docId, variables, accessToken, dataPath = null, lang = 'en', endpoint = ENDPOINTS.WWW) => {
41
+
42
+ const executeWWWGraphQL = async (
43
+ docId,
44
+ variables,
45
+ accessToken,
46
+ dataPath = null,
47
+ lang = 'en',
48
+ endpoint = ENDPOINTS.WWW
49
+ ) => {
59
50
  const token = accessToken || WWW_DEFAULT_TOKEN
60
51
  const body = JSON.stringify({ access_token: token, doc_id: String(docId), variables, lang })
61
52
  const res = await fetch(endpoint, {
@@ -72,39 +63,13 @@ const executeWWWGraphQL = async (docId, variables, accessToken, dataPath = null,
72
63
 
73
64
  exports.executeWWWGraphQL = executeWWWGraphQL
74
65
 
75
- /**
76
- * Execute a facebook-schema GraphQL query over HTTPS.
77
- *
78
- * Transport confirmed from WaFaConfigFetcher.java:
79
- * POST https://acs.whatsapp.com/graphql
80
- * Content-Type: application/json
81
- * Body: { access_token, doc_id, variables, lang }
82
- *
83
- * @param {string|number} docId - Numeric doc_id from whatsapp-android-facebook-schema asset file
84
- * @param {object} variables - Query variables
85
- * @param {string} [accessToken] - ACS access token
86
- * @param {string|null} [dataPath] - JSON data key to extract
87
- * @param {string} [lang='en']
88
- */
66
+
89
67
  const executeFacebookGraphQL = (docId, variables, accessToken, dataPath = null, lang = 'en') =>
90
68
  executeWWWGraphQL(docId, variables, accessToken, dataPath, lang, ENDPOINTS.ACS)
91
69
 
92
70
  exports.executeFacebookGraphQL = executeFacebookGraphQL
93
71
 
94
- /**
95
- * Execute a wamo-schema GraphQL query over HTTPS.
96
- *
97
- * Transport confirmed from WamoGraphQLExecutor.java:
98
- * POST https://<wamoHost>/api/wamo/graphql/
99
- * Content-Type: application/x-www-form-urlencoded
100
- * Body: access_token=<token>&credential=<cred>&user_id=<uid>&app_id=1015890928915437&doc_id=<id>&variables=<json>
101
- *
102
- * @param {string|number} docId - Numeric doc_id from whatsapp-android-wamo asset file
103
- * @param {object} variables - Query variables
104
- * @param {object} wamoAuth - { accessToken, credential, userId }
105
- * @param {string|null} [dataPath] - JSON data key to extract
106
- * @param {string} [wamoHost='wamo.whatsapp.net'] - Wamo API host (fetched from config at runtime)
107
- */
72
+
108
73
  const executeWamoGraphQL = async (docId, variables, wamoAuth = {}, dataPath = null, wamoHost = 'wamo.whatsapp.net') => {
109
74
  const { accessToken = WWW_DEFAULT_TOKEN, credential = '', userId = '' } = wamoAuth
110
75
  const params = new URLSearchParams({
@@ -130,42 +95,42 @@ const executeWamoGraphQL = async (docId, variables, wamoAuth = {}, dataPath = nu
130
95
 
131
96
  exports.executeWamoGraphQL = executeWamoGraphQL
132
97
 
133
- // ── Wamo schema IDs (whatsapp-android-wamo_client_persist_ids.json) ──────────
98
+
134
99
  const WAMO_GQL_IDS = {
135
- BLOKS_GET_LAYOUT: '35761428053502960', // WamoBloksGetLayoutQuery
136
- CREATE_USER: '26643102025382056', // WamoCreateUserMutation
137
- DELETE_USER: '26847597944871230', // WamoDeleteUserMutation
138
- DYI_JOB_CREATE: '35432158949761170', // WamoDYIJobCreateMutation
139
- DYI_JOB_DELETE: '35418212507825480', // WamoDYIJobDeleteMutation
140
- DYI_JOB_STATUS: '26233222629644330', // WamoDYIJobStatusQuery
141
- HEARTBEAT: '26147852544878404', // WamoHeartbeatMutation
142
- HIDE_PAGE: '26762670266664464', // WamoHidePageMutation
143
- HIDE_PROMO: '26672924455626300', // WamoHidePromoMutation
144
- LINK_USER: '26986545907702584', // WamoLinkUserMutation
145
- REPORT_PROMO: '26170110515981668', // WamoReportPromoMutation
146
- START_VIEWER_SESSION: '25895257976843090', // WamoStartViewerSessionQuery
147
- UNHIDE_PAGE: '26357347627241176', // WamoUnhidePageMutation
148
- UNHIDE_PAGE_V2: '26343585518664600', // WamoUnhidePageV2Mutation
149
- USER_BASIC: '26217108451265492' // WamoUserBasicQuery
100
+ BLOKS_GET_LAYOUT: '35761428053502960',
101
+ CREATE_USER: '26643102025382056',
102
+ DELETE_USER: '26847597944871230',
103
+ DYI_JOB_CREATE: '35432158949761170',
104
+ DYI_JOB_DELETE: '35418212507825480',
105
+ DYI_JOB_STATUS: '26233222629644330',
106
+ HEARTBEAT: '26147852544878404',
107
+ HIDE_PAGE: '26762670266664464',
108
+ HIDE_PROMO: '26672924455626300',
109
+ LINK_USER: '26986545907702584',
110
+ REPORT_PROMO: '26170110515981668',
111
+ START_VIEWER_SESSION: '25895257976843090',
112
+ UNHIDE_PAGE: '26357347627241176',
113
+ UNHIDE_PAGE_V2: '26343585518664600',
114
+ USER_BASIC: '26217108451265492'
150
115
  }
151
116
 
152
- // ── Facebook schema IDs (whatsapp-android-facebook-schema_client_persist_ids.json) ──
117
+
153
118
  const FACEBOOK_GQL_IDS = {
154
- ACDC_CREATE_COMMERCE_NONCE: '24264828513176160', // AcDcCreateDigitalCommerceNonse
155
- BIZ_ALERTS_NOTIFICATION_LIST: '25131061249916280', // BizAlertsNotificationList
156
- BIZ_ALERTS_UPDATE: '31887288120915504', // BizAlertsUpdateMutation
157
- CTWA_ADS_CONTEXT_BIZ: '26795336300063576', // CtwaAdsContextBizQuery
158
- DIGITAL_CONTENT_IAP_PURCHASE_QUOTE: '24407486212227380', // DigitalContentIAPPurchaseQuoteMutation
159
- GET_COMPLIANCE: '25758882000383880', // GetCompliance
160
- GET_CUSTOM_URLS: '24381430531538260', // GetCustomUrlsQuery
161
- GET_DCP_PRODUCTS: '24562080436794784', // GetDcpProductsQuery
162
- SET_COMPLIANCE: '25904531552477560', // SetCompliance
163
- USERNAME_RECOMMENDATIONS: '24622018447392760' // UsernameRecommendationsQuery
119
+ ACDC_CREATE_COMMERCE_NONCE: '24264828513176160',
120
+ BIZ_ALERTS_NOTIFICATION_LIST: '25131061249916280',
121
+ BIZ_ALERTS_UPDATE: '31887288120915504',
122
+ CTWA_ADS_CONTEXT_BIZ: '26795336300063576',
123
+ DIGITAL_CONTENT_IAP_PURCHASE_QUOTE: '24407486212227380',
124
+ GET_COMPLIANCE: '25758882000383880',
125
+ GET_CUSTOM_URLS: '24381430531538260',
126
+ GET_DCP_PRODUCTS: '24562080436794784',
127
+ SET_COMPLIANCE: '25904531552477560',
128
+ USERNAME_RECOMMENDATIONS: '24622018447392760'
164
129
  }
165
130
 
166
- // ── WWW schema IDs (whatsapp-android-www_client_persist_ids.json) ─────────────
131
+
167
132
  const WWW_GQL_IDS = {
168
- // Meta AI
133
+
169
134
  AI_IMAGINE_EDIT_VIDEO_STYLES: '27077837108487436',
170
135
  AI_STUDIO_MEMORY_DELETE_ALL: '30717961127818650',
171
136
  AI_STUDIO_MEMORY_DELETE: '9705428856224794',
@@ -192,7 +157,7 @@ const WWW_GQL_IDS = {
192
157
  META_AI_COMMAND_GET: '26391941983796720',
193
158
  META_CONFIG_FETCH: '26061411083512356',
194
159
  META_POI_TYPE_AHEAD: '24998731673114764',
195
- // Imagine / GenAI
160
+
196
161
  IMAGINE_CANVAS_CONTENT: '25210964258554530',
197
162
  IMAGINE_EDIT: '26387089294279400',
198
163
  IMAGINE_EDIT_VIDEO: '34646600944984156',
@@ -209,12 +174,12 @@ const WWW_GQL_IDS = {
209
174
  IMMERSIVE_CREATION_COMPLETE: '25751460157775136',
210
175
  IMMERSIVE_CREATION_CONFIG: '32047877418194044',
211
176
  GEN_AI_IMAGINE_3P_FOR_INTENTS: '26873302172253410',
212
- // Avatar
177
+
213
178
  AVATAR_USER_RECOVERY: '24876192928715390',
214
179
  LOAD_AVATAR_POSES: '25262916630008930',
215
180
  SAVE_AVATAR_POSE: '24194307116878704',
216
181
  SELECTED_OR_DEFAULT_POSE: '24956844700642720',
217
- // Events
182
+
218
183
  ADD_EVENT_INVITATIONS: '26095825686706664',
219
184
  CREATE_EVENT: '27259582783645464',
220
185
  DELETE_EVENT: '24671535952543812',
@@ -228,7 +193,7 @@ const WWW_GQL_IDS = {
228
193
  ROTATE_EVENT_INVITE_LINK: '27134834146102810',
229
194
  UPDATE_EVENT: '35415093074772810',
230
195
  UPDATE_EVENT_RSVP: '25954023907630800',
231
- // Payments (Brazil PIX)
196
+
232
197
  BR_AUTHORIZE_BIOMETRIC_PAYMENT: '26860182267017040',
233
198
  BR_COMPLETE_ENROLLMENT_REGISTRATION: '34346544594993864',
234
199
  BR_GET_AUTH_OPTIONS: '26954282557514064',
@@ -256,7 +221,7 @@ const WWW_GQL_IDS = {
256
221
  PAY_WITH_PIX_PRECHECK: '25489011890740690',
257
222
  SAVE_REMITTANCE_PAYMENT_MESSAGE_ID: '26662893096684910',
258
223
  SAVE_SENDER_PAYMENT_MESSAGE_PREFERENCE: '35084492951197548',
259
- // Payments (UPI India)
224
+
260
225
  GET_UPI_ACCOUNTS: '25691302307224710',
261
226
  GET_UPI_LITE_DETAILS: '25808397275476136',
262
227
  GET_UPI_PURPOSE_LIMITING_KEY: '25956012240759790',
@@ -269,10 +234,10 @@ const WWW_GQL_IDS = {
269
234
  UPI_RESUME_MANDATE: '26691956223780310',
270
235
  UPI_REVOKE_MANDATE: '25917438317930590',
271
236
  ENROLL_AND_GET_INCENTIVE_REFERRAL_ID: '26794756530116496',
272
- // Payments (PMTA)
237
+
273
238
  PMTA_GET_AI_CONTROLS: '35629699809954692',
274
239
  PMTA_SET_AI_CONTROLS: '35241761128770990',
275
- // Wamo (commerce, via www schema)
240
+
276
241
  WAMO_AFS_SUBSCRIPTION_INFO: '26173991525527520',
277
242
  WAMO_PROMO_ID_DELETE: '35985621974354824',
278
243
  WAMO_PROMO_ID_QUERY: '35176707691976468',
@@ -280,7 +245,7 @@ const WWW_GQL_IDS = {
280
245
  WAMO_SUB_CANCEL_SUBSCRIPTION: '24229142763394572',
281
246
  WAMO_SUB_OVERRIDE_STATUS: '24524888373876350',
282
247
  WAMO_SUB_QUERY_STATUS: '25015488928115160',
283
- // Business / Catalog
248
+
284
249
  BRAND_IDS_GET_PHONE_NUMBERS: '33159498536982770',
285
250
  BUSINESS_INTERACTION_PILLS: '26641674408836110',
286
251
  GET_BUSINESS_PROFILE_WEBSITE_SHIM_URL: '32216187747994820',
@@ -289,7 +254,7 @@ const WWW_GQL_IDS = {
289
254
  WA_WEB_BIZ_QUERY_ORDER_JOB: '26400495852915744',
290
255
  WHATSAPP_CATALOG_REPORT_PRODUCT: '31943750621890740',
291
256
  EXTERNAL_CTX_AUTHORISE_WA_CHAT: '31162432756736010',
292
- // User / account
257
+
293
258
  FACEBOOK_ACCOUNT_NAME: '25250471057951830',
294
259
  INSTAGRAM_ACCOUNT_NAME: '25214758521544980',
295
260
  GET_SIGNUP_METADATA: '26051411631187570',
@@ -302,7 +267,7 @@ const WWW_GQL_IDS = {
302
267
  CANONICAL_ENT_TEARDOWN_FEATURE: '30858669277110520',
303
268
  WWW_CANONICAL_USER_VALID: '25129145013440740',
304
269
  WAFFLE_USER_AGE_CHECK: '26764575806469450',
305
- // Support / misc
270
+
306
271
  BOT_PROACTIVE_MSG_CONTROL_STATUS: '24651002484600324',
307
272
  BOT_PROACTIVE_MSG_CONTROL_UPDATE: '24122315620764244',
308
273
  BOT_PROFILES_SYNC: '25828046330205656',
@@ -330,7 +295,7 @@ const WWW_GQL_IDS = {
330
295
  FETCH_META_AI_MODES: '26061411083512356'
331
296
  }
332
297
 
333
- // ── client-persist IDs (whatsapp-android_client-persist.json) ─────────────────
298
+
334
299
  const CLIENT_PERSIST_GQL_IDS = {
335
300
  ADD_MEMU_PROFILE_PHOTOS: '24668200096214476',
336
301
  CREATE_MEMU_PROFILE: '26069800429275530',
@@ -398,13 +363,7 @@ const makeGraphQLSocket = sock => {
398
363
  if (host) _wamoHost = host
399
364
  }
400
365
 
401
- /**
402
- * Ensure a valid ACS access token is available.
403
- * On first call (or after invalidation), runs the MEX nonce flow:
404
- * wwwGetNonce() → wwwExchangeNonce(nonce) → caches the resulting token.
405
- * Subsequent calls return the cached token immediately.
406
- * Concurrent callers share a single in-flight request.
407
- */
366
+
408
367
  const acquireAccessToken = () => {
409
368
  if (_accessToken) return Promise.resolve(_accessToken)
410
369
  if (_tokenPromise) return _tokenPromise
@@ -436,198 +395,339 @@ const makeGraphQLSocket = sock => {
436
395
  return {
437
396
  ...sock,
438
397
 
439
- // ── Token management ──────────────────────────────────────────────────
398
+
440
399
  setAccessToken,
441
400
  setWamoAuth,
442
401
  acquireAccessToken,
443
402
 
444
- // ── Raw GraphQL executors ─────────────────────────────────────────────
403
+
445
404
  executeWWWGraphQL,
446
405
  executeFacebookGraphQL,
447
406
  executeWamoGraphQL,
448
407
 
449
- // ── Meta AI ───────────────────────────────────────────────────────────
408
+
450
409
  aiStudioMemoryQuery: () => www(WWW_GQL_IDS.AI_STUDIO_MEMORY_QUERY, {}, 'xwa2_ai_studio_wa_memory_query'),
451
410
  aiStudioMemoryDelete: id => www(WWW_GQL_IDS.AI_STUDIO_MEMORY_DELETE, { id }, 'xwa2_ai_studio_wa_memory_delete'),
452
- aiStudioMemoryDeleteAll: () => www(WWW_GQL_IDS.AI_STUDIO_MEMORY_DELETE_ALL, {}, 'xwa2_ai_studio_wa_memory_delete_all'),
411
+ aiStudioMemoryDeleteAll: () =>
412
+ www(WWW_GQL_IDS.AI_STUDIO_MEMORY_DELETE_ALL, {}, 'xwa2_ai_studio_wa_memory_delete_all'),
453
413
  metaAiMemoryQuery: () => www(WWW_GQL_IDS.META_AI_MEMORY_QUERY, {}, 'xwa2_meta_ai_memory'),
454
414
  metaAiUnifiedMemoryQuery: () => www(WWW_GQL_IDS.META_AI_UNIFIED_MEMORY_QUERY, {}, 'xwa2_meta_ai_unified_memory'),
455
415
  metaAiMemoryDelete: id => www(WWW_GQL_IDS.META_AI_MEMORY_DELETE, { id }, 'xwa2_meta_ai_memory_delete'),
456
416
  metaAiMemoryDeleteAll: () => www(WWW_GQL_IDS.META_AI_MEMORY_DELETE_ALL, {}, 'xwa2_meta_ai_memory_delete_all'),
457
- metaAiMemoryOptOutStatus: () => www(WWW_GQL_IDS.META_AI_MEMORY_OPT_OUT_STATUS, {}, 'xwa2_meta_ai_wa_memory_opt_out_status'),
458
- metaAiMemoryOptOutUpdate: optOut => www(WWW_GQL_IDS.META_AI_MEMORY_OPT_OUT_UPDATE, { opt_out: optOut }, 'xwa2_meta_ai_wa_memory_opt_out_update'),
459
- metaAiCommandGet: (chatJid, command) => www(WWW_GQL_IDS.META_AI_COMMAND_GET, { chat_jid: chatJid, command }, 'xwa2_meta_ai_command_get'),
460
- metaAiVoiceOptionsFetch: () => www(WWW_GQL_IDS.META_AI_VOICE_OPTIONS_FETCH, {}, 'xwa2_meta_ai_voice_wa_options_fetch'),
461
- metaAiVoiceOptionsWithDefaultFetch: () => www(WWW_GQL_IDS.META_AI_VOICE_OPTIONS_WITH_DEFAULT_FETCH, {}, 'xwa2_meta_ai_voice_wa_options_with_default_fetch'),
417
+ metaAiMemoryOptOutStatus: () =>
418
+ www(WWW_GQL_IDS.META_AI_MEMORY_OPT_OUT_STATUS, {}, 'xwa2_meta_ai_wa_memory_opt_out_status'),
419
+ metaAiMemoryOptOutUpdate: optOut =>
420
+ www(WWW_GQL_IDS.META_AI_MEMORY_OPT_OUT_UPDATE, { opt_out: optOut }, 'xwa2_meta_ai_wa_memory_opt_out_update'),
421
+ metaAiCommandGet: (chatJid, command) =>
422
+ www(WWW_GQL_IDS.META_AI_COMMAND_GET, { chat_jid: chatJid, command }, 'xwa2_meta_ai_command_get'),
423
+ metaAiVoiceOptionsFetch: () =>
424
+ www(WWW_GQL_IDS.META_AI_VOICE_OPTIONS_FETCH, {}, 'xwa2_meta_ai_voice_wa_options_fetch'),
425
+ metaAiVoiceOptionsWithDefaultFetch: () =>
426
+ www(WWW_GQL_IDS.META_AI_VOICE_OPTIONS_WITH_DEFAULT_FETCH, {}, 'xwa2_meta_ai_voice_wa_options_with_default_fetch'),
462
427
  aiSubscriptionState: () => www(WWW_GQL_IDS.AI_SUBSCRIPTION_STATE, {}, 'xwa2_ai_subscription_state'),
463
428
  aiSubscriptionUsageData: () => www(WWW_GQL_IDS.AI_SUBSCRIPTION_USAGE_DATA, {}, 'xwa2_ai_subscription_usage_data'),
464
429
 
465
- // ── Imagine / GenAI (www) ─────────────────────────────────────────────
430
+
466
431
  imagineEdit: (imageId, prompt) => www(WWW_GQL_IDS.IMAGINE_EDIT, { image_id: imageId, prompt }, 'xwa2_imagine_edit'),
467
- imagineEditVideo: (videoId, styleId) => www(WWW_GQL_IDS.IMAGINE_EDIT_VIDEO, { video_id: videoId, style_id: styleId }, 'xwa2_imagine_edit_video'),
468
- imagineExpand: (imageId, direction) => www(WWW_GQL_IDS.IMAGINE_EXPAND, { image_id: imageId, direction }, 'xwa2_imagine_expand'),
469
- imagineGenerateAnimate: (imageId, options = {}) => www(WWW_GQL_IDS.IMAGINE_GENERATE_ANIMATE, { image_id: imageId, ...options }, 'xwa2_imagine_generate_animate'),
432
+ imagineEditVideo: (videoId, styleId) =>
433
+ www(WWW_GQL_IDS.IMAGINE_EDIT_VIDEO, { video_id: videoId, style_id: styleId }, 'xwa2_imagine_edit_video'),
434
+ imagineExpand: (imageId, direction) =>
435
+ www(WWW_GQL_IDS.IMAGINE_EXPAND, { image_id: imageId, direction }, 'xwa2_imagine_expand'),
436
+ imagineGenerateAnimate: (imageId, options = {}) =>
437
+ www(WWW_GQL_IDS.IMAGINE_GENERATE_ANIMATE, { image_id: imageId, ...options }, 'xwa2_imagine_generate_animate'),
470
438
  imagineIntents: prompt => www(WWW_GQL_IDS.IMAGINE_INTENTS, { prompt }, 'xwa2_imagine_intents'),
471
- imagineCanvasContent: canvasId => www(WWW_GQL_IDS.IMAGINE_CANVAS_CONTENT, { canvas_id: canvasId }, 'xwa2_imagine_canvas_content'),
472
- imagineSpotlight: (prompt, options = {}) => www(WWW_GQL_IDS.IMAGINE_SPOTLIGHT, { prompt, ...options }, 'xwa2_imagine_spotlight'),
439
+ imagineCanvasContent: canvasId =>
440
+ www(WWW_GQL_IDS.IMAGINE_CANVAS_CONTENT, { canvas_id: canvasId }, 'xwa2_imagine_canvas_content'),
441
+ imagineSpotlight: (prompt, options = {}) =>
442
+ www(WWW_GQL_IDS.IMAGINE_SPOTLIGHT, { prompt, ...options }, 'xwa2_imagine_spotlight'),
473
443
  imagineVideoStatus: jobId => www(WWW_GQL_IDS.IMAGINE_VIDEO_STATUS, { job_id: jobId }, 'xwa2_imagine_video_status'),
474
- imagineReport: (imageId, reason) => www(WWW_GQL_IDS.IMAGINE_REPORT, { image_id: imageId, reason }, 'xwa2_imagine_report'),
444
+ imagineReport: (imageId, reason) =>
445
+ www(WWW_GQL_IDS.IMAGINE_REPORT, { image_id: imageId, reason }, 'xwa2_imagine_report'),
475
446
  imagineMeIsOnboarded: () => www(WWW_GQL_IDS.IMAGINE_ME_IS_ONBOARDED, {}, 'xwa2_imagine_me_is_onboarded'),
476
447
  imagineMeOnboarding: input => www(WWW_GQL_IDS.IMAGINE_ME_ONBOARDING, { input }, 'xwa2_imagine_me_onboarding'),
477
- imagineMeOnboardingWithValidation: input => www(WWW_GQL_IDS.IMAGINE_ME_ONBOARDING_WITH_VALIDATION, { input }, 'xwa2_imagine_me_onboarding_with_validation'),
478
- imagineMeDeleteOnboarding: () => www(WWW_GQL_IDS.IMAGINE_ME_DELETE_ONBOARDING, {}, 'xwa2_imagine_me_delete_onboarding'),
479
- imagineEditVideoStyles: () => www(WWW_GQL_IDS.AI_IMAGINE_EDIT_VIDEO_STYLES, {}, 'xwa2_ai_imagine_edit_video_styles'),
480
-
481
- // ── AI Creation (bot personas) ─────────────────────────────────────────
482
- aiCreationFetchCreatedBot: botId => www(WWW_GQL_IDS.AI_CREATION_FETCH_CREATED_BOT, { bot_id: botId }, 'xwa2_ai_creation_fetch_created_bot'),
483
- aiCreationUpdatePersona: (botId, updates) => www(WWW_GQL_IDS.AI_CREATION_UPDATE_PERSONA, { bot_id: botId, ...updates }, 'xwa2_ai_creation_update_persona'),
484
- aiCreationDeletePersona: botId => www(WWW_GQL_IDS.AI_CREATION_DELETE_PERSONA, { bot_id: botId }, 'xwa2_ai_creation_delete_persona'),
485
- aiCreationUploadImage: imageData => www(WWW_GQL_IDS.AI_CREATION_UPLOAD_IMAGE, { image_data: imageData }, 'xwa2_ai_creation_upload_image'),
486
- aiCreationCheckCreatedByMe: botId => www(WWW_GQL_IDS.AI_CREATION_CHECK_CREATED_BY_ME, { bot_id: botId }, 'xwa2_ai_creation_check_created_by_me'),
487
- aiCreationFetchVoiceSample: voiceId => www(WWW_GQL_IDS.AI_CREATION_FETCH_VOICE_SAMPLE, { voice_id: voiceId }, 'xwa2_ai_creation_fetch_voice_sample'),
488
- aiHomeFetchUserCreatedPersonas: () => www(WWW_GQL_IDS.AI_HOME_FETCH_USER_CREATED_PERSONAS, {}, 'xwa2_ai_home_fetch_user_created_personas'),
448
+ imagineMeOnboardingWithValidation: input =>
449
+ www(WWW_GQL_IDS.IMAGINE_ME_ONBOARDING_WITH_VALIDATION, { input }, 'xwa2_imagine_me_onboarding_with_validation'),
450
+ imagineMeDeleteOnboarding: () =>
451
+ www(WWW_GQL_IDS.IMAGINE_ME_DELETE_ONBOARDING, {}, 'xwa2_imagine_me_delete_onboarding'),
452
+ imagineEditVideoStyles: () =>
453
+ www(WWW_GQL_IDS.AI_IMAGINE_EDIT_VIDEO_STYLES, {}, 'xwa2_ai_imagine_edit_video_styles'),
454
+
455
+
456
+ aiCreationFetchCreatedBot: botId =>
457
+ www(WWW_GQL_IDS.AI_CREATION_FETCH_CREATED_BOT, { bot_id: botId }, 'xwa2_ai_creation_fetch_created_bot'),
458
+ aiCreationUpdatePersona: (botId, updates) =>
459
+ www(WWW_GQL_IDS.AI_CREATION_UPDATE_PERSONA, { bot_id: botId, ...updates }, 'xwa2_ai_creation_update_persona'),
460
+ aiCreationDeletePersona: botId =>
461
+ www(WWW_GQL_IDS.AI_CREATION_DELETE_PERSONA, { bot_id: botId }, 'xwa2_ai_creation_delete_persona'),
462
+ aiCreationUploadImage: imageData =>
463
+ www(WWW_GQL_IDS.AI_CREATION_UPLOAD_IMAGE, { image_data: imageData }, 'xwa2_ai_creation_upload_image'),
464
+ aiCreationCheckCreatedByMe: botId =>
465
+ www(WWW_GQL_IDS.AI_CREATION_CHECK_CREATED_BY_ME, { bot_id: botId }, 'xwa2_ai_creation_check_created_by_me'),
466
+ aiCreationFetchVoiceSample: voiceId =>
467
+ www(WWW_GQL_IDS.AI_CREATION_FETCH_VOICE_SAMPLE, { voice_id: voiceId }, 'xwa2_ai_creation_fetch_voice_sample'),
468
+ aiHomeFetchUserCreatedPersonas: () =>
469
+ www(WWW_GQL_IDS.AI_HOME_FETCH_USER_CREATED_PERSONAS, {}, 'xwa2_ai_home_fetch_user_created_personas'),
489
470
  aiHomeSearch: query => www(WWW_GQL_IDS.AI_HOME_SEARCH, { query }, 'xwa2_ai_home_search'),
490
- aiCharacterUpdateHideStatus: (botId, hidden) => www(WWW_GQL_IDS.AI_CHARACTER_UPDATE_HIDE_STATUS, { bot_id: botId, hidden }, 'xwa2_ai_character_update_hide_status'),
491
- botProactiveMessageControlStatus: botId => www(WWW_GQL_IDS.BOT_PROACTIVE_MSG_CONTROL_STATUS, { bot_id: botId }, 'xwa2_bot_proactive_message_control_status'),
492
- botProactiveMessageControlUpdate: (botId, enabled) => www(WWW_GQL_IDS.BOT_PROACTIVE_MSG_CONTROL_UPDATE, { bot_id: botId, enabled }, 'xwa2_bot_proactive_message_control_update'),
471
+ aiCharacterUpdateHideStatus: (botId, hidden) =>
472
+ www(
473
+ WWW_GQL_IDS.AI_CHARACTER_UPDATE_HIDE_STATUS,
474
+ { bot_id: botId, hidden },
475
+ 'xwa2_ai_character_update_hide_status'
476
+ ),
477
+ botProactiveMessageControlStatus: botId =>
478
+ www(WWW_GQL_IDS.BOT_PROACTIVE_MSG_CONTROL_STATUS, { bot_id: botId }, 'xwa2_bot_proactive_message_control_status'),
479
+ botProactiveMessageControlUpdate: (botId, enabled) =>
480
+ www(
481
+ WWW_GQL_IDS.BOT_PROACTIVE_MSG_CONTROL_UPDATE,
482
+ { bot_id: botId, enabled },
483
+ 'xwa2_bot_proactive_message_control_update'
484
+ ),
493
485
  botProfilesSync: () => www(WWW_GQL_IDS.BOT_PROFILES_SYNC, {}, 'xwa2_bot_profiles_sync'),
494
486
 
495
- // ── Avatar ────────────────────────────────────────────────────────────
487
+
496
488
  avatarUserRecovery: () => www(WWW_GQL_IDS.AVATAR_USER_RECOVERY, {}, 'xwa2_avatar_user_recovery'),
497
489
  loadAvatarPoses: () => www(WWW_GQL_IDS.LOAD_AVATAR_POSES, {}, 'xwa2_load_avatar_poses'),
498
- saveAvatarPose: (poseId, options = {}) => www(WWW_GQL_IDS.SAVE_AVATAR_POSE, { pose_id: poseId, ...options }, 'xwa2_save_avatar_pose'),
490
+ saveAvatarPose: (poseId, options = {}) =>
491
+ www(WWW_GQL_IDS.SAVE_AVATAR_POSE, { pose_id: poseId, ...options }, 'xwa2_save_avatar_pose'),
499
492
  selectedOrDefaultPose: () => www(WWW_GQL_IDS.SELECTED_OR_DEFAULT_POSE, {}, 'xwa2_selected_or_default_pose'),
500
493
 
501
- // ── Events ────────────────────────────────────────────────────────────
494
+
502
495
  createEvent: input => www(WWW_GQL_IDS.CREATE_EVENT, { input }, 'xwa2_create_event'),
503
496
  getEvent: eventId => www(WWW_GQL_IDS.GET_EVENT, { event_id: eventId }, 'xwa2_get_event'),
504
- updateEvent: (eventId, updates) => www(WWW_GQL_IDS.UPDATE_EVENT, { event_id: eventId, ...updates }, 'xwa2_update_event'),
497
+ updateEvent: (eventId, updates) =>
498
+ www(WWW_GQL_IDS.UPDATE_EVENT, { event_id: eventId, ...updates }, 'xwa2_update_event'),
505
499
  deleteEvent: eventId => www(WWW_GQL_IDS.DELETE_EVENT, { event_id: eventId }, 'xwa2_delete_event'),
506
500
  listEvents: (options = {}) => www(WWW_GQL_IDS.LIST_EVENTS, options, 'xwa2_list_events'),
507
- updateEventRsvp: (eventId, rsvp) => www(WWW_GQL_IDS.UPDATE_EVENT_RSVP, { event_id: eventId, rsvp }, 'xwa2_update_event_rsvp'),
508
- addEventInvitations: (eventId, jids) => www(WWW_GQL_IDS.ADD_EVENT_INVITATIONS, { event_id: eventId, jids }, 'xwa2_add_event_invitations'),
509
- removeEventInvitations: (eventId, jids) => www(WWW_GQL_IDS.REMOVE_EVENT_INVITATIONS, { event_id: eventId, jids }, 'xwa2_remove_event_invitations'),
510
- removeSelfEventInvitation: eventId => www(WWW_GQL_IDS.REMOVE_SELF_EVENT_INVITATION, { event_id: eventId }, 'xwa2_remove_self_event_invitation'),
511
- getOrCreateEventInviteLink: eventId => www(WWW_GQL_IDS.GET_OR_CREATE_EVENT_INVITE_LINK, { event_id: eventId }, 'xwa2_get_or_create_event_invite_link'),
512
- rotateEventInviteLink: eventId => www(WWW_GQL_IDS.ROTATE_EVENT_INVITE_LINK, { event_id: eventId }, 'xwa2_rotate_event_invite_link'),
501
+ updateEventRsvp: (eventId, rsvp) =>
502
+ www(WWW_GQL_IDS.UPDATE_EVENT_RSVP, { event_id: eventId, rsvp }, 'xwa2_update_event_rsvp'),
503
+ addEventInvitations: (eventId, jids) =>
504
+ www(WWW_GQL_IDS.ADD_EVENT_INVITATIONS, { event_id: eventId, jids }, 'xwa2_add_event_invitations'),
505
+ removeEventInvitations: (eventId, jids) =>
506
+ www(WWW_GQL_IDS.REMOVE_EVENT_INVITATIONS, { event_id: eventId, jids }, 'xwa2_remove_event_invitations'),
507
+ removeSelfEventInvitation: eventId =>
508
+ www(WWW_GQL_IDS.REMOVE_SELF_EVENT_INVITATION, { event_id: eventId }, 'xwa2_remove_self_event_invitation'),
509
+ getOrCreateEventInviteLink: eventId =>
510
+ www(WWW_GQL_IDS.GET_OR_CREATE_EVENT_INVITE_LINK, { event_id: eventId }, 'xwa2_get_or_create_event_invite_link'),
511
+ rotateEventInviteLink: eventId =>
512
+ www(WWW_GQL_IDS.ROTATE_EVENT_INVITE_LINK, { event_id: eventId }, 'xwa2_rotate_event_invite_link'),
513
513
  getEventLinkPreview: url => www(WWW_GQL_IDS.GET_EVENT_LINK_PREVIEW, { url }, 'xwa2_get_event_link_preview'),
514
514
  listPresetCoverImages: () => www(WWW_GQL_IDS.LIST_PRESET_COVER_IMAGES, {}, 'xwa2_list_preset_cover_images'),
515
515
 
516
- // ── Business / Catalog ────────────────────────────────────────────────
517
- getBusinessProfileWebsiteShimUrl: bizJid => www(WWW_GQL_IDS.GET_BUSINESS_PROFILE_WEBSITE_SHIM_URL, { biz_jid: bizJid }, 'xwa2_get_business_profile_website_shim_url'),
518
- waWebBizCreateOrderJob: input => www(WWW_GQL_IDS.WA_WEB_BIZ_CREATE_ORDER_JOB, { input }, 'xwa2_wa_web_biz_create_order_job'),
519
- waWebBizGraphqlRefreshCart: cartId => www(WWW_GQL_IDS.WA_WEB_BIZ_GRAPHQL_REFRESH_CART, { cart_id: cartId }, 'xwa2_wa_web_biz_graphql_refresh_cart'),
520
- waWebBizQueryOrderJob: jobId => www(WWW_GQL_IDS.WA_WEB_BIZ_QUERY_ORDER_JOB, { job_id: jobId }, 'xwa2_wa_web_biz_query_order_job'),
521
- whatsappCatalogReportProduct: (productId, reason) => www(WWW_GQL_IDS.WHATSAPP_CATALOG_REPORT_PRODUCT, { product_id: productId, reason }, 'xwa2_whatsapp_catalog_report_product'),
522
- brandIdsGetPhoneNumbers: brandId => www(WWW_GQL_IDS.BRAND_IDS_GET_PHONE_NUMBERS, { brand_id: brandId }, 'xwa2_brand_ids_get_phone_numbers'),
523
- businessInteractionPills: bizJid => www(WWW_GQL_IDS.BUSINESS_INTERACTION_PILLS, { biz_jid: bizJid }, 'xwa2_business_interaction_pills'),
524
- externalCtxAuthoriseWAChat: input => www(WWW_GQL_IDS.EXTERNAL_CTX_AUTHORISE_WA_CHAT, { input }, 'xwa2_external_ctx_authorise_wa_chat'),
525
-
526
- // ── Payments (Brazil PIX) ─────────────────────────────────────────────
516
+
517
+ getBusinessProfileWebsiteShimUrl: bizJid =>
518
+ www(
519
+ WWW_GQL_IDS.GET_BUSINESS_PROFILE_WEBSITE_SHIM_URL,
520
+ { biz_jid: bizJid },
521
+ 'xwa2_get_business_profile_website_shim_url'
522
+ ),
523
+ waWebBizCreateOrderJob: input =>
524
+ www(WWW_GQL_IDS.WA_WEB_BIZ_CREATE_ORDER_JOB, { input }, 'xwa2_wa_web_biz_create_order_job'),
525
+ waWebBizGraphqlRefreshCart: cartId =>
526
+ www(WWW_GQL_IDS.WA_WEB_BIZ_GRAPHQL_REFRESH_CART, { cart_id: cartId }, 'xwa2_wa_web_biz_graphql_refresh_cart'),
527
+ waWebBizQueryOrderJob: jobId =>
528
+ www(WWW_GQL_IDS.WA_WEB_BIZ_QUERY_ORDER_JOB, { job_id: jobId }, 'xwa2_wa_web_biz_query_order_job'),
529
+ whatsappCatalogReportProduct: (productId, reason) =>
530
+ www(
531
+ WWW_GQL_IDS.WHATSAPP_CATALOG_REPORT_PRODUCT,
532
+ { product_id: productId, reason },
533
+ 'xwa2_whatsapp_catalog_report_product'
534
+ ),
535
+ brandIdsGetPhoneNumbers: brandId =>
536
+ www(WWW_GQL_IDS.BRAND_IDS_GET_PHONE_NUMBERS, { brand_id: brandId }, 'xwa2_brand_ids_get_phone_numbers'),
537
+ businessInteractionPills: bizJid =>
538
+ www(WWW_GQL_IDS.BUSINESS_INTERACTION_PILLS, { biz_jid: bizJid }, 'xwa2_business_interaction_pills'),
539
+ externalCtxAuthoriseWAChat: input =>
540
+ www(WWW_GQL_IDS.EXTERNAL_CTX_AUTHORISE_WA_CHAT, { input }, 'xwa2_external_ctx_authorise_wa_chat'),
541
+
542
+
527
543
  brGetAuthOptions: () => www(WWW_GQL_IDS.BR_GET_AUTH_OPTIONS, {}, 'xwa2_br_get_auth_options'),
528
544
  brSaveCpf: cpf => www(WWW_GQL_IDS.BR_SAVE_CPF, { cpf }, 'xwa2_br_save_cpf'),
529
545
  brCreateEnrollment: options => www(WWW_GQL_IDS.CREATE_ENROLLMENT, options, 'xwa2_create_enrollment'),
530
- brCompleteEnrollmentRegistration: input => www(WWW_GQL_IDS.BR_COMPLETE_ENROLLMENT_REGISTRATION, { input }, 'xwa2_br_complete_enrollment_registration'),
531
- brGetEnrollmentOptions: () => www(WWW_GQL_IDS.GET_ENROLLMENT_REGISTRATION_OPTIONS, {}, 'xwa2_get_enrollment_registration_options'),
532
- brAuthorizePayment: input => www(WWW_GQL_IDS.BR_AUTHORIZE_BIOMETRIC_PAYMENT, { input }, 'xwa2_br_authorize_biometric_payment'),
546
+ brCompleteEnrollmentRegistration: input =>
547
+ www(WWW_GQL_IDS.BR_COMPLETE_ENROLLMENT_REGISTRATION, { input }, 'xwa2_br_complete_enrollment_registration'),
548
+ brGetEnrollmentOptions: () =>
549
+ www(WWW_GQL_IDS.GET_ENROLLMENT_REGISTRATION_OPTIONS, {}, 'xwa2_get_enrollment_registration_options'),
550
+ brAuthorizePayment: input =>
551
+ www(WWW_GQL_IDS.BR_AUTHORIZE_BIOMETRIC_PAYMENT, { input }, 'xwa2_br_authorize_biometric_payment'),
533
552
  getPixBankList: () => www(WWW_GQL_IDS.GET_PIX_BANK_LIST, {}, 'xwa2_get_pix_bank_list'),
534
- getMerchantPixInfo: merchantId => www(WWW_GQL_IDS.GET_MERCHANT_PIX_INFO, { merchant_id: merchantId }, 'xwa2_get_merchant_pix_info'),
535
- completePixTransaction: input => www(WWW_GQL_IDS.COMPLETE_PIX_TRANSACTION, { input }, 'xwa2_complete_pix_transaction'),
553
+ getMerchantPixInfo: merchantId =>
554
+ www(WWW_GQL_IDS.GET_MERCHANT_PIX_INFO, { merchant_id: merchantId }, 'xwa2_get_merchant_pix_info'),
555
+ completePixTransaction: input =>
556
+ www(WWW_GQL_IDS.COMPLETE_PIX_TRANSACTION, { input }, 'xwa2_complete_pix_transaction'),
536
557
  payWithPixPrecheck: input => www(WWW_GQL_IDS.PAY_WITH_PIX_PRECHECK, { input }, 'xwa2_pay_with_pix_precheck'),
537
558
  paymentHealthChecks: () => www(WWW_GQL_IDS.PAYMENT_HEALTH_CHECKS, {}, 'xwa2_payment_health_checks'),
538
559
  getPaymentKey: () => www(WWW_GQL_IDS.GET_PAYMENT_KEY, {}, 'xwa2_get_payment_key'),
539
560
  genCreatePaymentKey: input => www(WWW_GQL_IDS.GEN_CREATE_PAYMENT_KEY, { input }, 'xwa2_gen_create_payment_key'),
540
561
  genUpdatePaymentKey: input => www(WWW_GQL_IDS.GEN_UPDATE_PAYMENT_KEY, { input }, 'xwa2_gen_update_payment_key'),
541
- genDeletePaymentKey: keyId => www(WWW_GQL_IDS.GEN_DELETE_PAYMENT_KEY, { key_id: keyId }, 'xwa2_gen_delete_payment_key'),
562
+ genDeletePaymentKey: keyId =>
563
+ www(WWW_GQL_IDS.GEN_DELETE_PAYMENT_KEY, { key_id: keyId }, 'xwa2_gen_delete_payment_key'),
542
564
  getBillerPlans: billerId => www(WWW_GQL_IDS.GET_BILLER_PLANS, { biller_id: billerId }, 'xwa2_get_biller_plans'),
543
565
  getBillReceipt: billId => www(WWW_GQL_IDS.GET_BILL_RECEIPT, { bill_id: billId }, 'xwa2_get_bill_receipt'),
544
- getBillComplaintUrl: billId => www(WWW_GQL_IDS.GET_BILL_COMPLAINT_URL, { bill_id: billId }, 'xwa2_get_bill_complaint_url'),
566
+ getBillComplaintUrl: billId =>
567
+ www(WWW_GQL_IDS.GET_BILL_COMPLAINT_URL, { bill_id: billId }, 'xwa2_get_bill_complaint_url'),
545
568
  paymentReminderCreate: input => www(WWW_GQL_IDS.PAYMENT_REMINDER_CREATE, { input }, 'xwa2_payment_reminder_create'),
546
- paymentReminderGet: reminderId => www(WWW_GQL_IDS.PAYMENT_REMINDER_GET, { reminder_id: reminderId }, 'xwa2_payment_reminder_get'),
547
- paymentReminderCancel: reminderId => www(WWW_GQL_IDS.PAYMENT_REMINDER_CANCEL, { reminder_id: reminderId }, 'xwa2_payment_reminder_cancel'),
548
- paymentReminderStop: reminderId => www(WWW_GQL_IDS.PAYMENT_REMINDER_STOP, { reminder_id: reminderId }, 'xwa2_payment_reminder_stop'),
549
- genShareRemittanceIntent: input => www(WWW_GQL_IDS.GEN_SHARE_REMITTANCE_TRANSACTION_INTENT, { input }, 'xwa2_gen_share_remittance_transaction_intent'),
550
- getRemittanceTransactionDetails: txId => www(WWW_GQL_IDS.GET_REMITTANCE_TRANSACTION_DETAILS, { transaction_id: txId }, 'xwa2_get_remittance_transaction_details'),
551
- saveRemittancePaymentMessageId: input => www(WWW_GQL_IDS.SAVE_REMITTANCE_PAYMENT_MESSAGE_ID, { input }, 'xwa2_save_remittance_payment_message_id'),
552
- saveSenderPaymentMessagePreference: preference => www(WWW_GQL_IDS.SAVE_SENDER_PAYMENT_MESSAGE_PREFERENCE, { preference }, 'xwa2_save_sender_payment_message_preference'),
553
- getEligibility: (feature = null) => www(WWW_GQL_IDS.GET_ELIGIBILITY, feature ? { feature } : {}, 'xwa2_get_eligibility'),
554
- enrollAndGetIncentiveReferralId: input => www(WWW_GQL_IDS.ENROLL_AND_GET_INCENTIVE_REFERRAL_ID, { input }, 'xwa2_enroll_and_get_incentive_referral_id'),
555
- getSubscriptionsAndFeatureFlags: () => www(WWW_GQL_IDS.GET_SUBSCRIPTIONS_AND_FEATURE_FLAGS, {}, 'xwa2_get_subscriptions_and_feature_flags'),
556
-
557
- // ── Payments (UPI India) ──────────────────────────────────────────────
569
+ paymentReminderGet: reminderId =>
570
+ www(WWW_GQL_IDS.PAYMENT_REMINDER_GET, { reminder_id: reminderId }, 'xwa2_payment_reminder_get'),
571
+ paymentReminderCancel: reminderId =>
572
+ www(WWW_GQL_IDS.PAYMENT_REMINDER_CANCEL, { reminder_id: reminderId }, 'xwa2_payment_reminder_cancel'),
573
+ paymentReminderStop: reminderId =>
574
+ www(WWW_GQL_IDS.PAYMENT_REMINDER_STOP, { reminder_id: reminderId }, 'xwa2_payment_reminder_stop'),
575
+ genShareRemittanceIntent: input =>
576
+ www(
577
+ WWW_GQL_IDS.GEN_SHARE_REMITTANCE_TRANSACTION_INTENT,
578
+ { input },
579
+ 'xwa2_gen_share_remittance_transaction_intent'
580
+ ),
581
+ getRemittanceTransactionDetails: txId =>
582
+ www(
583
+ WWW_GQL_IDS.GET_REMITTANCE_TRANSACTION_DETAILS,
584
+ { transaction_id: txId },
585
+ 'xwa2_get_remittance_transaction_details'
586
+ ),
587
+ saveRemittancePaymentMessageId: input =>
588
+ www(WWW_GQL_IDS.SAVE_REMITTANCE_PAYMENT_MESSAGE_ID, { input }, 'xwa2_save_remittance_payment_message_id'),
589
+ saveSenderPaymentMessagePreference: preference =>
590
+ www(
591
+ WWW_GQL_IDS.SAVE_SENDER_PAYMENT_MESSAGE_PREFERENCE,
592
+ { preference },
593
+ 'xwa2_save_sender_payment_message_preference'
594
+ ),
595
+ getEligibility: (feature = null) =>
596
+ www(WWW_GQL_IDS.GET_ELIGIBILITY, feature ? { feature } : {}, 'xwa2_get_eligibility'),
597
+ enrollAndGetIncentiveReferralId: input =>
598
+ www(WWW_GQL_IDS.ENROLL_AND_GET_INCENTIVE_REFERRAL_ID, { input }, 'xwa2_enroll_and_get_incentive_referral_id'),
599
+ getSubscriptionsAndFeatureFlags: () =>
600
+ www(WWW_GQL_IDS.GET_SUBSCRIPTIONS_AND_FEATURE_FLAGS, {}, 'xwa2_get_subscriptions_and_feature_flags'),
601
+
602
+
558
603
  getUpiAccounts: () => www(WWW_GQL_IDS.GET_UPI_ACCOUNTS, {}, 'xwa2_get_upi_accounts'),
559
604
  getUpiLiteDetails: () => www(WWW_GQL_IDS.GET_UPI_LITE_DETAILS, {}, 'xwa2_get_upi_lite_details'),
560
605
  getUpiToken: upiAccountId => www(WWW_GQL_IDS.GET_UPI_TOKEN, { upi_account_id: upiAccountId }, 'xwa2_get_upi_token'),
561
- getUpiPurposeLimitingKey: () => www(WWW_GQL_IDS.GET_UPI_PURPOSE_LIMITING_KEY, {}, 'xwa2_get_upi_purpose_limiting_key'),
606
+ getUpiPurposeLimitingKey: () =>
607
+ www(WWW_GQL_IDS.GET_UPI_PURPOSE_LIMITING_KEY, {}, 'xwa2_get_upi_purpose_limiting_key'),
562
608
  upiCreateMandate: input => www(WWW_GQL_IDS.UPI_CREATE_MANDATE, { input }, 'xwa2_upi_create_mandate'),
563
- upiAcceptMandate: mandateId => www(WWW_GQL_IDS.UPI_ACCEPT_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_accept_mandate'),
564
- upiRejectMandate: mandateId => www(WWW_GQL_IDS.UPI_REJECT_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_reject_mandate'),
565
- upiExecuteMandate: mandateId => www(WWW_GQL_IDS.UPI_EXECUTE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_execute_mandate'),
566
- upiPauseMandate: mandateId => www(WWW_GQL_IDS.UPI_PAUSE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_pause_mandate'),
567
- upiResumeMandate: mandateId => www(WWW_GQL_IDS.UPI_RESUME_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_resume_mandate'),
568
- upiRevokeMandate: mandateId => www(WWW_GQL_IDS.UPI_REVOKE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_revoke_mandate'),
609
+ upiAcceptMandate: mandateId =>
610
+ www(WWW_GQL_IDS.UPI_ACCEPT_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_accept_mandate'),
611
+ upiRejectMandate: mandateId =>
612
+ www(WWW_GQL_IDS.UPI_REJECT_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_reject_mandate'),
613
+ upiExecuteMandate: mandateId =>
614
+ www(WWW_GQL_IDS.UPI_EXECUTE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_execute_mandate'),
615
+ upiPauseMandate: mandateId =>
616
+ www(WWW_GQL_IDS.UPI_PAUSE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_pause_mandate'),
617
+ upiResumeMandate: mandateId =>
618
+ www(WWW_GQL_IDS.UPI_RESUME_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_resume_mandate'),
619
+ upiRevokeMandate: mandateId =>
620
+ www(WWW_GQL_IDS.UPI_REVOKE_MANDATE, { mandate_id: mandateId }, 'xwa2_upi_revoke_mandate'),
569
621
  pmtaGetAiControls: () => www(WWW_GQL_IDS.PMTA_GET_AI_CONTROLS, {}, 'xwa2_pmta_get_ai_controls'),
570
622
  pmtaSetAiControls: controls => www(WWW_GQL_IDS.PMTA_SET_AI_CONTROLS, { controls }, 'xwa2_pmta_set_ai_controls'),
571
623
 
572
- // ── Wamo commerce (via www schema) ────────────────────────────────────
573
- wamoSubQueryStatus: newsletterJid => www(WWW_GQL_IDS.WAMO_SUB_QUERY_STATUS, { newsletter_jid: newsletterJid }, 'xwa2_wamo_sub_query_status'),
574
- wamoSubCancelSubscription: (newsletterJid, subscriptionId) => www(WWW_GQL_IDS.WAMO_SUB_CANCEL_SUBSCRIPTION, { newsletter_jid: newsletterJid, subscription_id: subscriptionId }, 'xwa2_wamo_sub_cancel_subscription'),
575
- wamoSubOverrideStatus: (newsletterJid, status) => www(WWW_GQL_IDS.WAMO_SUB_OVERRIDE_STATUS, { newsletter_jid: newsletterJid, status }, 'xwa2_wamo_sub_override_status'),
576
- wamoAfsSubscriptionInfo: newsletterJid => www(WWW_GQL_IDS.WAMO_AFS_SUBSCRIPTION_INFO, { newsletter_jid: newsletterJid }, 'xwa2_wamo_afs_subscription_info'),
577
- wamoPromoIdQuery: newsletterJid => www(WWW_GQL_IDS.WAMO_PROMO_ID_QUERY, { newsletter_jid: newsletterJid }, 'xwa2_wamo_promo_id_query'),
578
- wamoPromoIdSet: (newsletterJid, promoId) => www(WWW_GQL_IDS.WAMO_PROMO_ID_SET, { newsletter_jid: newsletterJid, promo_id: promoId }, 'xwa2_wamo_promo_id_set'),
579
- wamoPromoIdDelete: newsletterJid => www(WWW_GQL_IDS.WAMO_PROMO_ID_DELETE, { newsletter_jid: newsletterJid }, 'xwa2_wamo_promo_id_delete'),
580
-
581
- // ── User / account ────────────────────────────────────────────────────
624
+
625
+ wamoSubQueryStatus: newsletterJid =>
626
+ www(WWW_GQL_IDS.WAMO_SUB_QUERY_STATUS, { newsletter_jid: newsletterJid }, 'xwa2_wamo_sub_query_status'),
627
+ wamoSubCancelSubscription: (newsletterJid, subscriptionId) =>
628
+ www(
629
+ WWW_GQL_IDS.WAMO_SUB_CANCEL_SUBSCRIPTION,
630
+ { newsletter_jid: newsletterJid, subscription_id: subscriptionId },
631
+ 'xwa2_wamo_sub_cancel_subscription'
632
+ ),
633
+ wamoSubOverrideStatus: (newsletterJid, status) =>
634
+ www(
635
+ WWW_GQL_IDS.WAMO_SUB_OVERRIDE_STATUS,
636
+ { newsletter_jid: newsletterJid, status },
637
+ 'xwa2_wamo_sub_override_status'
638
+ ),
639
+ wamoAfsSubscriptionInfo: newsletterJid =>
640
+ www(WWW_GQL_IDS.WAMO_AFS_SUBSCRIPTION_INFO, { newsletter_jid: newsletterJid }, 'xwa2_wamo_afs_subscription_info'),
641
+ wamoPromoIdQuery: newsletterJid =>
642
+ www(WWW_GQL_IDS.WAMO_PROMO_ID_QUERY, { newsletter_jid: newsletterJid }, 'xwa2_wamo_promo_id_query'),
643
+ wamoPromoIdSet: (newsletterJid, promoId) =>
644
+ www(
645
+ WWW_GQL_IDS.WAMO_PROMO_ID_SET,
646
+ { newsletter_jid: newsletterJid, promo_id: promoId },
647
+ 'xwa2_wamo_promo_id_set'
648
+ ),
649
+ wamoPromoIdDelete: newsletterJid =>
650
+ www(WWW_GQL_IDS.WAMO_PROMO_ID_DELETE, { newsletter_jid: newsletterJid }, 'xwa2_wamo_promo_id_delete'),
651
+
652
+
582
653
  facebookAccountName: () => www(WWW_GQL_IDS.FACEBOOK_ACCOUNT_NAME, {}, 'xwa2_facebook_account_name'),
583
654
  instagramAccountName: () => www(WWW_GQL_IDS.INSTAGRAM_ACCOUNT_NAME, {}, 'xwa2_instagram_account_name'),
584
655
  getSignupMetadata: () => www(WWW_GQL_IDS.GET_SIGNUP_METADATA, {}, 'xwa2_get_signup_metadata'),
585
656
  registerInit: input => www(WWW_GQL_IDS.REGISTER_INIT, { input }, 'xwa2_register_init'),
586
657
  registerAllAccounts: () => www(WWW_GQL_IDS.REGISTER_ALL_ACCOUNTS, {}, 'xwa2_register_all_accounts'),
587
- checkDeviceRegistration: deviceId => www(WWW_GQL_IDS.CHECK_DEVICE_REGISTRATION, { device_id: deviceId }, 'xwa2_check_device_registration'),
588
- canonicalEntQueryFeature: feature => www(WWW_GQL_IDS.CANONICAL_ENT_QUERY_FEATURE, { feature }, 'xwa2_canonical_ent_query_feature'),
589
- canonicalEntSetupFeature: (feature, options = {}) => www(WWW_GQL_IDS.CANONICAL_ENT_SETUP_FEATURE, { feature, ...options }, 'xwa2_canonical_ent_setup_feature'),
590
- canonicalEntTeardownFeature: feature => www(WWW_GQL_IDS.CANONICAL_ENT_TEARDOWN_FEATURE, { feature }, 'xwa2_canonical_ent_teardown_feature'),
591
- wwwCanonicalUserValid: token => www(WWW_GQL_IDS.WWW_CANONICAL_USER_VALID, { token }, 'xwa2_www_canonical_user_valid'),
658
+ checkDeviceRegistration: deviceId =>
659
+ www(WWW_GQL_IDS.CHECK_DEVICE_REGISTRATION, { device_id: deviceId }, 'xwa2_check_device_registration'),
660
+ canonicalEntQueryFeature: feature =>
661
+ www(WWW_GQL_IDS.CANONICAL_ENT_QUERY_FEATURE, { feature }, 'xwa2_canonical_ent_query_feature'),
662
+ canonicalEntSetupFeature: (feature, options = {}) =>
663
+ www(WWW_GQL_IDS.CANONICAL_ENT_SETUP_FEATURE, { feature, ...options }, 'xwa2_canonical_ent_setup_feature'),
664
+ canonicalEntTeardownFeature: feature =>
665
+ www(WWW_GQL_IDS.CANONICAL_ENT_TEARDOWN_FEATURE, { feature }, 'xwa2_canonical_ent_teardown_feature'),
666
+ wwwCanonicalUserValid: token =>
667
+ www(WWW_GQL_IDS.WWW_CANONICAL_USER_VALID, { token }, 'xwa2_www_canonical_user_valid'),
592
668
  waffleUserAgeCheck: () => www(WWW_GQL_IDS.WAFFLE_USER_AGE_CHECK, {}, 'xwa2_waffle_user_age_check'),
593
669
  getAiPredictedAge: () => www(WWW_GQL_IDS.GET_AI_PREDICTED_AGE, {}, 'xwa2_get_ai_predicted_age'),
594
670
 
595
- // ── Support / misc ────────────────────────────────────────────────────
671
+
596
672
  submitBugReport: input => www(WWW_GQL_IDS.SUBMIT_BUG_REPORT, { input }, 'xwa2_submit_bug_report'),
597
673
  supportContactForm: input => www(WWW_GQL_IDS.SUPPORT_CONTACT_FORM, { input }, 'xwa2_support_contact_form'),
598
- createGroupSuspensionAppeal: (groupJid, reason) => www(WWW_GQL_IDS.CREATE_GROUP_SUSPENSION_APPEAL, { group_jid: groupJid, reason }, 'xwa2_create_group_suspension_appeal'),
674
+ createGroupSuspensionAppeal: (groupJid, reason) =>
675
+ www(
676
+ WWW_GQL_IDS.CREATE_GROUP_SUSPENSION_APPEAL,
677
+ { group_jid: groupJid, reason },
678
+ 'xwa2_create_group_suspension_appeal'
679
+ ),
599
680
  createDogfoodingTask: input => www(WWW_GQL_IDS.CREATE_DOGFOODING_TASK, { input }, 'xwa2_create_dogfooding_task'),
600
681
  hatchChannelLink: input => www(WWW_GQL_IDS.HATCH_CHANNEL_LINK, { input }, 'xwa2_hatch_channel_link'),
601
- hatchChannelMetadata: channelId => www(WWW_GQL_IDS.HATCH_CHANNEL_METADATA, { channel_id: channelId }, 'xwa2_hatch_channel_metadata'),
602
- oxygenChannelOptIn: channelId => www(WWW_GQL_IDS.OXYGEN_CHANNEL_OPT_IN, { channel_id: channelId }, 'xwa2_oxygen_channel_opt_in'),
603
- oxygenChannelOptOut: channelId => www(WWW_GQL_IDS.OXYGEN_CHANNEL_OPT_OUT, { channel_id: channelId }, 'xwa2_oxygen_channel_opt_out'),
604
- oxygenChannelStatus: channelId => www(WWW_GQL_IDS.OXYGEN_CHANNEL_STATUS, { channel_id: channelId }, 'xwa2_oxygen_channel_status'),
682
+ hatchChannelMetadata: channelId =>
683
+ www(WWW_GQL_IDS.HATCH_CHANNEL_METADATA, { channel_id: channelId }, 'xwa2_hatch_channel_metadata'),
684
+ oxygenChannelOptIn: channelId =>
685
+ www(WWW_GQL_IDS.OXYGEN_CHANNEL_OPT_IN, { channel_id: channelId }, 'xwa2_oxygen_channel_opt_in'),
686
+ oxygenChannelOptOut: channelId =>
687
+ www(WWW_GQL_IDS.OXYGEN_CHANNEL_OPT_OUT, { channel_id: channelId }, 'xwa2_oxygen_channel_opt_out'),
688
+ oxygenChannelStatus: channelId =>
689
+ www(WWW_GQL_IDS.OXYGEN_CHANNEL_STATUS, { channel_id: channelId }, 'xwa2_oxygen_channel_status'),
605
690
  paslGetLoggerConfig: () => www(WWW_GQL_IDS.PASL_GET_LOGGER_CONFIG, {}, 'xwa2_pasl_get_logger_config'),
606
- quickPromotionBatchFetch: input => www(WWW_GQL_IDS.QUICK_PROMOTION_BATCH_FETCH, { input }, 'xwa2_quick_promotion_batch_fetch'),
691
+ quickPromotionBatchFetch: input =>
692
+ www(WWW_GQL_IDS.QUICK_PROMOTION_BATCH_FETCH, { input }, 'xwa2_quick_promotion_batch_fetch'),
607
693
  waQuickPromotionLog: events => www(WWW_GQL_IDS.WA_QUICK_PROMOTION_LOG, { events }, 'xwa2_wa_quick_promotion_log'),
608
- waSupportMessageFeedback: input => www(WWW_GQL_IDS.WA_SUPPORT_MESSAGE_FEEDBACK, { input }, 'xwa2_wa_support_message_feedback'),
609
- waGizmoPostMetadata: postId => www(WWW_GQL_IDS.WA_GIZMO_POST_METADATA, { post_id: postId }, 'xwa2_wa_gizmo_post_metadata'),
610
- unifiedConversationStarters: chatJid => www(WWW_GQL_IDS.UNIFIED_CONVERSATION_STARTERS, { chat_jid: chatJid }, 'xwa2_unified_conversation_starters'),
611
- getSubscribedTasksForThread: threadId => www(WWW_GQL_IDS.GET_SUBSCRIBED_TASKS_FOR_THREAD, { thread_id: threadId }, 'xwa2_get_subscribed_tasks_for_thread'),
612
- editGenAiTask: (taskId, updates) => www(WWW_GQL_IDS.EDIT_GEN_AI_TASK, { task_id: taskId, ...updates }, 'xwa2_edit_gen_ai_task'),
613
- deleteGenAiTasks: taskIds => www(WWW_GQL_IDS.DELETE_GEN_AI_TASKS, { task_ids: taskIds }, 'xwa2_delete_gen_ai_tasks'),
694
+ waSupportMessageFeedback: input =>
695
+ www(WWW_GQL_IDS.WA_SUPPORT_MESSAGE_FEEDBACK, { input }, 'xwa2_wa_support_message_feedback'),
696
+ waGizmoPostMetadata: postId =>
697
+ www(WWW_GQL_IDS.WA_GIZMO_POST_METADATA, { post_id: postId }, 'xwa2_wa_gizmo_post_metadata'),
698
+ unifiedConversationStarters: chatJid =>
699
+ www(WWW_GQL_IDS.UNIFIED_CONVERSATION_STARTERS, { chat_jid: chatJid }, 'xwa2_unified_conversation_starters'),
700
+ getSubscribedTasksForThread: threadId =>
701
+ www(WWW_GQL_IDS.GET_SUBSCRIBED_TASKS_FOR_THREAD, { thread_id: threadId }, 'xwa2_get_subscribed_tasks_for_thread'),
702
+ editGenAiTask: (taskId, updates) =>
703
+ www(WWW_GQL_IDS.EDIT_GEN_AI_TASK, { task_id: taskId, ...updates }, 'xwa2_edit_gen_ai_task'),
704
+ deleteGenAiTasks: taskIds =>
705
+ www(WWW_GQL_IDS.DELETE_GEN_AI_TASKS, { task_ids: taskIds }, 'xwa2_delete_gen_ai_tasks'),
614
706
  deleteUserBillAccount: () => www(WWW_GQL_IDS.DELETE_USER_BILL_ACCOUNT, {}, 'xwa2_delete_user_bill_account'),
615
707
  metaPoiTypeAhead: query => www(WWW_GQL_IDS.META_POI_TYPE_AHEAD, { query }, 'xwa2_meta_poi_type_ahead'),
616
708
  metaConfigFetch: () => www(WWW_GQL_IDS.META_CONFIG_FETCH, {}, 'xwa2_meta_config_fetch'),
617
709
 
618
- // ── Facebook schema ───────────────────────────────────────────────────
619
- bizAlertsNotificationList: () => fb(FACEBOOK_GQL_IDS.BIZ_ALERTS_NOTIFICATION_LIST, {}, 'xwa2_biz_alerts_notification_list'),
620
- bizAlertsUpdate: (alertId, read) => fb(FACEBOOK_GQL_IDS.BIZ_ALERTS_UPDATE, { alert_id: alertId, read }, 'xwa2_biz_alerts_update'),
621
- ctwaAdsContextBiz: bizJid => fb(FACEBOOK_GQL_IDS.CTWA_ADS_CONTEXT_BIZ, { biz_jid: bizJid }, 'xwa2_ctwa_ads_context_biz'),
622
- digitalContentIapPurchaseQuote: input => fb(FACEBOOK_GQL_IDS.DIGITAL_CONTENT_IAP_PURCHASE_QUOTE, { input }, 'xwa2_digital_content_iap_purchase_quote'),
710
+
711
+ bizAlertsNotificationList: () =>
712
+ fb(FACEBOOK_GQL_IDS.BIZ_ALERTS_NOTIFICATION_LIST, {}, 'xwa2_biz_alerts_notification_list'),
713
+ bizAlertsUpdate: (alertId, read) =>
714
+ fb(FACEBOOK_GQL_IDS.BIZ_ALERTS_UPDATE, { alert_id: alertId, read }, 'xwa2_biz_alerts_update'),
715
+ ctwaAdsContextBiz: bizJid =>
716
+ fb(FACEBOOK_GQL_IDS.CTWA_ADS_CONTEXT_BIZ, { biz_jid: bizJid }, 'xwa2_ctwa_ads_context_biz'),
717
+ digitalContentIapPurchaseQuote: input =>
718
+ fb(FACEBOOK_GQL_IDS.DIGITAL_CONTENT_IAP_PURCHASE_QUOTE, { input }, 'xwa2_digital_content_iap_purchase_quote'),
623
719
  getCompliance: () => fb(FACEBOOK_GQL_IDS.GET_COMPLIANCE, {}, 'xwa2_get_compliance'),
624
- setCompliance: (complianceType, accepted) => fb(FACEBOOK_GQL_IDS.SET_COMPLIANCE, { compliance_type: complianceType, accepted }, 'xwa2_set_compliance'),
720
+ setCompliance: (complianceType, accepted) =>
721
+ fb(FACEBOOK_GQL_IDS.SET_COMPLIANCE, { compliance_type: complianceType, accepted }, 'xwa2_set_compliance'),
625
722
  getCustomUrls: () => fb(FACEBOOK_GQL_IDS.GET_CUSTOM_URLS, {}, 'xwa2_get_custom_urls'),
626
- getDcpProducts: (categoryId = null) => fb(FACEBOOK_GQL_IDS.GET_DCP_PRODUCTS, categoryId ? { category_id: categoryId } : {}, 'xwa2_get_dcp_products'),
627
- acDcCreateCommerceNonce: input => fb(FACEBOOK_GQL_IDS.ACDC_CREATE_COMMERCE_NONCE, { input }, 'xwa2_acdc_create_commerce_nonce'),
628
- fbUsernameRecommendations: (source = null) => fb(FACEBOOK_GQL_IDS.USERNAME_RECOMMENDATIONS, source ? { source } : {}, 'xwa2_username_recommendations'),
629
-
630
- // ── Wamo platform schema (form-encoded, separate endpoint) ────────────
723
+ getDcpProducts: (categoryId = null) =>
724
+ fb(FACEBOOK_GQL_IDS.GET_DCP_PRODUCTS, categoryId ? { category_id: categoryId } : {}, 'xwa2_get_dcp_products'),
725
+ acDcCreateCommerceNonce: input =>
726
+ fb(FACEBOOK_GQL_IDS.ACDC_CREATE_COMMERCE_NONCE, { input }, 'xwa2_acdc_create_commerce_nonce'),
727
+ fbUsernameRecommendations: (source = null) =>
728
+ fb(FACEBOOK_GQL_IDS.USERNAME_RECOMMENDATIONS, source ? { source } : {}, 'xwa2_username_recommendations'),
729
+
730
+
631
731
  wamoUserBasic: () => wamo(WAMO_GQL_IDS.USER_BASIC, {}, 'xwa2_wamo_user_basic'),
632
732
  wamoCreateUser: input => wamo(WAMO_GQL_IDS.CREATE_USER, { input }, 'xwa2_wamo_create_user'),
633
733
  wamoDeleteUser: () => wamo(WAMO_GQL_IDS.DELETE_USER, {}, 'xwa2_wamo_delete_user'),
@@ -637,14 +737,121 @@ const makeGraphQLSocket = sock => {
637
737
  wamoUnhidePage: pageId => wamo(WAMO_GQL_IDS.UNHIDE_PAGE, { page_id: pageId }, 'xwa2_wamo_unhide_page'),
638
738
  wamoUnhidePageV2: pageId => wamo(WAMO_GQL_IDS.UNHIDE_PAGE_V2, { page_id: pageId }, 'xwa2_wamo_unhide_page_v2'),
639
739
  wamoHidePromo: promoId => wamo(WAMO_GQL_IDS.HIDE_PROMO, { promo_id: promoId }, 'xwa2_wamo_hide_promo'),
640
- wamoReportPromo: (promoId, reason) => wamo(WAMO_GQL_IDS.REPORT_PROMO, { promo_id: promoId, reason }, 'xwa2_wamo_report_promo'),
641
- wamoStartViewerSession: pageId => wamo(WAMO_GQL_IDS.START_VIEWER_SESSION, { page_id: pageId }, 'xwa2_wamo_start_viewer_session'),
642
- wamoBloksGetLayout: (layoutId, context = {}) => wamo(WAMO_GQL_IDS.BLOKS_GET_LAYOUT, { layout_id: layoutId, ...context }, 'xwa2_wamo_bloks_get_layout'),
740
+ wamoReportPromo: (promoId, reason) =>
741
+ wamo(WAMO_GQL_IDS.REPORT_PROMO, { promo_id: promoId, reason }, 'xwa2_wamo_report_promo'),
742
+ wamoStartViewerSession: pageId =>
743
+ wamo(WAMO_GQL_IDS.START_VIEWER_SESSION, { page_id: pageId }, 'xwa2_wamo_start_viewer_session'),
744
+ wamoBloksGetLayout: (layoutId, context = {}) =>
745
+ wamo(WAMO_GQL_IDS.BLOKS_GET_LAYOUT, { layout_id: layoutId, ...context }, 'xwa2_wamo_bloks_get_layout'),
643
746
  wamoDyiJobCreate: input => wamo(WAMO_GQL_IDS.DYI_JOB_CREATE, { input }, 'xwa2_wamo_dyi_job_create'),
644
747
  wamoDyiJobDelete: jobId => wamo(WAMO_GQL_IDS.DYI_JOB_DELETE, { job_id: jobId }, 'xwa2_wamo_dyi_job_delete'),
645
748
  wamoDyiJobStatus: jobId => wamo(WAMO_GQL_IDS.DYI_JOB_STATUS, { job_id: jobId }, 'xwa2_wamo_dyi_job_status'),
646
749
 
647
- // ── ID dictionaries (for raw access) ─────────────────────────────────
750
+
751
+ metaAiFeedback: (messageId, rating, input = {}) =>
752
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_FEEDBACK, { message_id: messageId, rating, ...input }, null),
753
+ metaAiStopGeneration: requestId =>
754
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_STOP_GENERATION, { request_id: requestId }, null),
755
+ metaAiModesQuery: () => www(CLIENT_PERSIST_GQL_IDS.META_AI_MODES_QUERY, {}, null),
756
+ fetchMetaAiModes: () => www(CLIENT_PERSIST_GQL_IDS.FETCH_META_AI_MODES, {}, null),
757
+ metaAiRichPlaceDetails: placeId =>
758
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_RICH_PLACE_DETAILS, { place_id: placeId }, null),
759
+ metaAiSideBySideSurveyResponse: input =>
760
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_SIDE_BY_SIDE_SURVEY_RESPONSE, { input }, null),
761
+ metaAiBizAgentVoiceAttachments: (agentId, attachments) =>
762
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_BIZ_AGENT_VOICE_ATTACHMENTS, { agent_id: agentId, attachments }, null),
763
+ metaAiCustomizationGenAiSetMode: (chatJid, mode) =>
764
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_CUSTOMIZATION_GEN_AI_SET_MODE, { chat_jid: chatJid, mode }, null),
765
+ metaAiIntentCardNuxEligibilityReset: () =>
766
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_INTENT_CARD_NUX_ELIGIBILITY_RESET, {}, null),
767
+ metaAiIntentCardNuxImpression: input =>
768
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_INTENT_CARD_NUX_IMPRESSION, { input }, null),
769
+ metaAiIntentCardNuxImpressionQuery: () =>
770
+ www(CLIENT_PERSIST_GQL_IDS.META_AI_INTENT_CARD_NUX_IMPRESSION_QUERY, {}, null),
771
+
772
+
773
+ maiUnifiedUser: () => www(CLIENT_PERSIST_GQL_IDS.MAI_UNIFIED_USER, {}, null),
774
+ maiUnifiedUserQuery: () => www(CLIENT_PERSIST_GQL_IDS.MAI_UNIFIED_USER_QUERY, {}, null),
775
+ maiUnifiedUserReset: () => www(CLIENT_PERSIST_GQL_IDS.MAI_UNIFIED_USER_RESET, {}, null),
776
+
777
+
778
+ memuProfileQuery: () => www(CLIENT_PERSIST_GQL_IDS.MEMU_PROFILE_QUERY, {}, null),
779
+ memuUpdateProfile: input => www(CLIENT_PERSIST_GQL_IDS.MEMU_UPDATE_PROFILE, { input }, null),
780
+ memuPreviewPhoto: input => www(CLIENT_PERSIST_GQL_IDS.MEMU_PREVIEW_PHOTO, { input }, null),
781
+ updateMemuSelfie: input => www(CLIENT_PERSIST_GQL_IDS.UPDATE_MEMU_SELFIE, { input }, null),
782
+ addMemuProfilePhotos: photos => www(CLIENT_PERSIST_GQL_IDS.ADD_MEMU_PROFILE_PHOTOS, { photos }, null),
783
+ createMemuProfile: input => www(CLIENT_PERSIST_GQL_IDS.CREATE_MEMU_PROFILE, { input }, null),
784
+ fbMemuPermissionQuery: () => www(CLIENT_PERSIST_GQL_IDS.FB_MEMU_PERMISSION_QUERY, {}, null),
785
+ getMemuStickerById: stickerId =>
786
+ www(CLIENT_PERSIST_GQL_IDS.GET_MEMU_STICKER_BY_ID, { sticker_id: stickerId }, null),
787
+ genAiVerifyMemuPhotos: photos => www(CLIENT_PERSIST_GQL_IDS.GEN_AI_VERIFY_MEMU_PHOTOS, { photos }, null),
788
+ genAiMeMenuUpdateVoice: (voiceId, options = {}) =>
789
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_MEMU_UPDATE_VOICE, { voice_id: voiceId, ...options }, null),
790
+ genAiSocialEntityDetails: entityId =>
791
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_SOCIAL_ENTITY_DETAILS, { entity_id: entityId }, null),
792
+
793
+
794
+ genAiImagineGenerate: (prompt, options = {}) =>
795
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_GENERATE, { prompt, ...options }, null),
796
+ genAiImagineGenerateFlash: (prompt, options = {}) =>
797
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_GENERATE_FLASH, { prompt, ...options }, null),
798
+ genAiImagineGenerateStreaming: (prompt, options = {}) =>
799
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_GENERATE_STREAMING, { prompt, ...options }, null),
800
+ genAiImagineGenerateFromImage: (imageId, prompt, options = {}) =>
801
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_GENERATE_FROM_IMAGE, { image_id: imageId, prompt, ...options }, null),
802
+ genAiImagineRegenerate: (imageId, options = {}) =>
803
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_REGENERATE, { image_id: imageId, ...options }, null),
804
+ genAiImagineEdit: (imageId, prompt, options = {}) =>
805
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_EDIT, { image_id: imageId, prompt, ...options }, null),
806
+ genAiImagineCanvasApi: (canvasId, input = {}) =>
807
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_CANVAS_API, { canvas_id: canvasId, ...input }, null),
808
+ genAiImagineInspirationCanvasApi: input =>
809
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_INSPIRATION_CANVAS_API, { input }, null),
810
+ genAiImagineSuggestions: context => www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_SUGGESTIONS, { context }, null),
811
+ genAiImagineDownloadMedia: mediaId =>
812
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_DOWNLOAD_MEDIA, { media_id: mediaId }, null),
813
+ genAiImagineSendMediaToChat: (chatJid, mediaId) =>
814
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_SEND_MEDIA_TO_CHAT, { chat_jid: chatJid, media_id: mediaId }, null),
815
+ genAiImagineBulkSendMediaToChat: (chatJids, mediaId) =>
816
+ www(
817
+ CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_BULK_SEND_MEDIA_TO_CHAT,
818
+ { chat_jids: chatJids, media_id: mediaId },
819
+ null
820
+ ),
821
+ genAiImagineHasMemuProfile: () => www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_HAS_MEMU_PROFILE, {}, null),
822
+ genAiImagineUpdateMemuProfilePermission: permission =>
823
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_UPDATE_MEMU_PROFILE_PERMISSION, { permission }, null),
824
+ genAiImaginePromptSummarization: prompt =>
825
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_PROMPT_SUMMARIZATION, { prompt }, null),
826
+ genAiImagineRestyleSections: (imageId, sections) =>
827
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_IMAGINE_RESTYLE_SECTIONS, { image_id: imageId, sections }, null),
828
+ genAiImagineBulkFor3pIntents: input => www(WWW_GQL_IDS.GEN_AI_IMAGINE_3P_FOR_INTENTS, { input }, null),
829
+ dropInImagineGenerate: (prompt, options = {}) =>
830
+ www(CLIENT_PERSIST_GQL_IDS.DROP_IN_IMAGINE_GENERATE, { prompt, ...options }, null),
831
+
832
+
833
+ genAiEditAnimate: (imageId, options = {}) =>
834
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_EDIT_ANIMATE, { image_id: imageId, ...options }, null),
835
+ genAiEditBackdropSuggestions: imageId =>
836
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_EDIT_BACKDROP_SUGGESTIONS, { image_id: imageId }, null),
837
+ genAiEditImageBackdrop: (imageId, backdropId, options = {}) =>
838
+ www(
839
+ CLIENT_PERSIST_GQL_IDS.GEN_AI_EDIT_IMAGE_BACKDROP,
840
+ { image_id: imageId, backdrop_id: backdropId, ...options },
841
+ null
842
+ ),
843
+ genAiEditSuggestions: imageId => www(CLIENT_PERSIST_GQL_IDS.GEN_AI_EDIT_SUGGESTIONS, { image_id: imageId }, null),
844
+ genAiEditUploadAuthenticImage: imageData =>
845
+ www(CLIENT_PERSIST_GQL_IDS.GEN_AI_EDIT_UPLOAD_AUTHENTIC_IMAGE, { image_data: imageData }, null),
846
+
847
+
848
+ immersiveCreationComplete: input => www(WWW_GQL_IDS.IMMERSIVE_CREATION_COMPLETE, { input }, null),
849
+ immersiveCreationConfig: () => www(WWW_GQL_IDS.IMMERSIVE_CREATION_CONFIG, {}, null),
850
+
851
+
852
+ simpleEcho: input => www(CLIENT_PERSIST_GQL_IDS.SIMPLE_ECHO, { input }, null),
853
+
854
+
648
855
  WWW_GQL_IDS,
649
856
  FACEBOOK_GQL_IDS,
650
857
  WAMO_GQL_IDS,