sauruspro-bail 0.0.0-stage โ†’ 5.0.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 (134) hide show
  1. package/README.md +129 -2
  2. package/WAProto/GenerateStatics.sh +3 -0
  3. package/WAProto/WAProto.proto +6754 -0
  4. package/WAProto/fix-imports.js +85 -0
  5. package/WAProto/index.d.ts +79257 -0
  6. package/WAProto/index.js +242946 -0
  7. package/docs/CHANGELOG.md +22 -0
  8. package/docs/NEWSLETTER-STATUS.md +120 -0
  9. package/docs/SPR.md +51 -0
  10. package/engine-requirements.js +10 -0
  11. package/lib/Defaults/index.js +131 -0
  12. package/lib/Signal/Group/ciphertext-message.js +12 -0
  13. package/lib/Signal/Group/group-session-builder.js +30 -0
  14. package/lib/Signal/Group/group_cipher.js +82 -0
  15. package/lib/Signal/Group/index.js +12 -0
  16. package/lib/Signal/Group/keyhelper.js +18 -0
  17. package/lib/Signal/Group/sender-chain-key.js +26 -0
  18. package/lib/Signal/Group/sender-key-distribution-message.js +63 -0
  19. package/lib/Signal/Group/sender-key-message.js +66 -0
  20. package/lib/Signal/Group/sender-key-name.js +48 -0
  21. package/lib/Signal/Group/sender-key-record.js +41 -0
  22. package/lib/Signal/Group/sender-key-state.js +84 -0
  23. package/lib/Signal/Group/sender-message-key.js +26 -0
  24. package/lib/Signal/libsignal.js +431 -0
  25. package/lib/Signal/lid-mapping.js +277 -0
  26. package/lib/Socket/Client/index.js +3 -0
  27. package/lib/Socket/Client/types.js +11 -0
  28. package/lib/Socket/Client/websocket.js +54 -0
  29. package/lib/Socket/MessageBuilder.js +3729 -0
  30. package/lib/Socket/business.js +379 -0
  31. package/lib/Socket/chats.js +1198 -0
  32. package/lib/Socket/communities.js +431 -0
  33. package/lib/Socket/graphql.js +716 -0
  34. package/lib/Socket/groups.js +374 -0
  35. package/lib/Socket/index.js +92 -0
  36. package/lib/Socket/interop.js +463 -0
  37. package/lib/Socket/luxu.js +387 -0
  38. package/lib/Socket/message-builder.js +556 -0
  39. package/lib/Socket/messages-recv.js +1916 -0
  40. package/lib/Socket/messages-send.js +1516 -0
  41. package/lib/Socket/mex.js +54 -0
  42. package/lib/Socket/newsletter.js +641 -0
  43. package/lib/Socket/privacy.js +318 -0
  44. package/lib/Socket/socket.js +1115 -0
  45. package/lib/Socket/username.js +236 -0
  46. package/lib/Store/index.js +10 -0
  47. package/lib/Store/keyed-db.js +108 -0
  48. package/lib/Store/make-cache-manager-store.js +85 -0
  49. package/lib/Store/make-in-memory-store.js +244 -0
  50. package/lib/Store/make-ordered-dictionary.js +75 -0
  51. package/lib/Store/object-repository.js +32 -0
  52. package/lib/Types/Auth.js +2 -0
  53. package/lib/Types/Bussines.js +2 -0
  54. package/lib/Types/Call.js +2 -0
  55. package/lib/Types/Chat.js +8 -0
  56. package/lib/Types/Contact.js +2 -0
  57. package/lib/Types/Events.js +2 -0
  58. package/lib/Types/GroupMetadata.js +2 -0
  59. package/lib/Types/Label.js +25 -0
  60. package/lib/Types/LabelAssociation.js +7 -0
  61. package/lib/Types/Message.js +11 -0
  62. package/lib/Types/Mex.js +111 -0
  63. package/lib/Types/Product.js +2 -0
  64. package/lib/Types/Signal.js +2 -0
  65. package/lib/Types/Socket.js +3 -0
  66. package/lib/Types/State.js +56 -0
  67. package/lib/Types/USync.js +2 -0
  68. package/lib/Types/index.js +26 -0
  69. package/lib/Utils/auth-utils.js +302 -0
  70. package/lib/Utils/browser-utils.js +48 -0
  71. package/lib/Utils/business.js +231 -0
  72. package/lib/Utils/chat-utils.js +872 -0
  73. package/lib/Utils/companion-reg-client-utils.js +35 -0
  74. package/lib/Utils/crypto.js +118 -0
  75. package/lib/Utils/decode-wa-message.js +350 -0
  76. package/lib/Utils/dinolith-spr.d.ts +26 -0
  77. package/lib/Utils/dinolith-spr.js +521 -0
  78. package/lib/Utils/event-buffer.js +622 -0
  79. package/lib/Utils/generics.js +403 -0
  80. package/lib/Utils/history.js +134 -0
  81. package/lib/Utils/identity-change-handler.js +50 -0
  82. package/lib/Utils/index.js +26 -0
  83. package/lib/Utils/link-preview.js +85 -0
  84. package/lib/Utils/logger.js +3 -0
  85. package/lib/Utils/lt-hash.js +8 -0
  86. package/lib/Utils/make-mutex.js +33 -0
  87. package/lib/Utils/message-composer.js +273 -0
  88. package/lib/Utils/message-retry-manager.js +265 -0
  89. package/lib/Utils/messages-media.js +870 -0
  90. package/lib/Utils/messages.js +1394 -0
  91. package/lib/Utils/newsletter-status.d.ts +163 -0
  92. package/lib/Utils/newsletter-status.js +738 -0
  93. package/lib/Utils/noise-handler.js +201 -0
  94. package/lib/Utils/offline-node-processor.js +40 -0
  95. package/lib/Utils/pre-key-manager.js +106 -0
  96. package/lib/Utils/process-message.js +630 -0
  97. package/lib/Utils/reporting-utils.js +258 -0
  98. package/lib/Utils/signal.js +201 -0
  99. package/lib/Utils/stanza-ack.js +38 -0
  100. package/lib/Utils/sticker.js +133 -0
  101. package/lib/Utils/sync-action-utils.js +49 -0
  102. package/lib/Utils/tc-token-utils.js +163 -0
  103. package/lib/Utils/use-multi-file-auth-state.js +121 -0
  104. package/lib/Utils/use-sqlite-auth-state.js +162 -0
  105. package/lib/Utils/validate-connection.js +203 -0
  106. package/lib/WABinary/constants.js +1301 -0
  107. package/lib/WABinary/decode.js +262 -0
  108. package/lib/WABinary/encode.js +220 -0
  109. package/lib/WABinary/generic-utils.js +204 -0
  110. package/lib/WABinary/index.js +6 -0
  111. package/lib/WABinary/jid-utils.js +98 -0
  112. package/lib/WABinary/types.js +2 -0
  113. package/lib/WAM/BinaryInfo.js +10 -0
  114. package/lib/WAM/constants.js +22853 -0
  115. package/lib/WAM/encode.js +150 -0
  116. package/lib/WAM/index.js +4 -0
  117. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +53 -0
  118. package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
  119. package/lib/WAUSync/Protocols/USyncContactProtocol.js +54 -0
  120. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
  121. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
  122. package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +58 -0
  123. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +30 -0
  124. package/lib/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
  125. package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +28 -0
  126. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +39 -0
  127. package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
  128. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +27 -0
  129. package/lib/WAUSync/Protocols/index.js +12 -0
  130. package/lib/WAUSync/USyncQuery.js +151 -0
  131. package/lib/WAUSync/USyncUser.js +56 -0
  132. package/lib/WAUSync/index.js +3 -0
  133. package/lib/index.js +67 -0
  134. package/package.json +147 -5
package/README.md CHANGED
@@ -1,3 +1,130 @@
1
- # Temporary Holding Version
1
+ <div align="center">
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ # ๐Ÿฆ– SAURUSPRO BAILEYS
4
+
5
+ **Custom WhatsApp Web API Library โ€” SPR, Newsletter Status, Rich Messages & more**
6
+
7
+ <img src="https://cdn.saurus.qzz.io/image/EGYoX.png" width="140" alt="Sauruspro">
8
+
9
+ ![npm](https://img.shields.io/npm/v/sauruspro-bail?style=for-the-badge&color=8b5cf6)
10
+ ![downloads](https://img.shields.io/npm/dt/sauruspro-bail?style=for-the-badge&color=c084fc)
11
+ ![node](https://img.shields.io/badge/Node.js-20%2B-22c55e?style=for-the-badge)
12
+ ![license](https://img.shields.io/badge/License-MIT-3b82f6?style=for-the-badge)
13
+
14
+ **Owner: Saurus / Dinolith** ยท **Version: 5.0.0**
15
+
16
+ </div>
17
+
18
+ ---
19
+
20
+ ## ๐Ÿ“ฆ Package Info
21
+
22
+ | | |
23
+ |---|---|
24
+ | Package | `sauruspro-bail` |
25
+ | Version | `5.0.0` |
26
+ | Owner | Saurus / Dinolith |
27
+ | Module type | ESM (`"type": "module"`) |
28
+ | Runtime | Node.js >= 20 |
29
+ | Telegram | [@lordsaurus](https://t.me/lordsaurus) ยท [@sauruspro_real](https://t.me/sauruspro_real) |
30
+ | Channel | [@infobaileys](https://t.me/infobaileys) |
31
+
32
+ ## โœจ Features
33
+
34
+ | Feature | Description |
35
+ |---|---|
36
+ | ๐Ÿ” Pairing Code & QR | Login via pairing code or QR |
37
+ | ๐Ÿ’ฌ Rich Messages | MessageBuilder: `AIRich`, `Carousel`, `Button`, `ButtonV2`, `Toolkit` |
38
+ | ๐ŸŽฏ **SPR** | Selective Relay: kirim pesan hanya ke device/JID tertentu |
39
+ | ๐Ÿ“ข **Newsletter Status** | Kirim, react, revoke & ambil status Channel (newsletter) |
40
+ | ๐Ÿ”— LID & PN | Kompatibel LID dan nomor telepon |
41
+ | ๐Ÿ‘ค Username | Fetch username |
42
+ | ๐Ÿ‘ฅ Groups & Communities | Manajemen grup dan komunitas |
43
+ | ๐Ÿ—‚๏ธ Auth | Multi-file & SQLite auth state |
44
+
45
+ ## ๐Ÿš€ Install
46
+
47
+ ```bash
48
+ npm install sauruspro-bail
49
+ ```
50
+
51
+ > Paket ini **ESM**. Gunakan `import`, atau `await import()` dari CommonJS.
52
+
53
+ ## โšก Quick Start
54
+
55
+ ```js
56
+ import makeWASocket, { useMultiFileAuthState } from 'sauruspro-bail'
57
+
58
+ const { state, saveCreds } = await useMultiFileAuthState('session')
59
+ const sock = makeWASocket({ auth: state })
60
+
61
+ sock.ev.on('creds.update', saveCreds)
62
+
63
+ // Pairing code
64
+ if (!sock.authState.creds.registered) {
65
+ const code = await sock.requestPairingCode('628xxxxxxxxxx')
66
+ console.log('Pairing code:', code)
67
+ }
68
+ ```
69
+
70
+ ## ๐Ÿ“ข Newsletter Status
71
+
72
+ Kirim status ke Channel (newsletter) yang kamu admin-i.
73
+
74
+ ```js
75
+ const jid = '120363xxxxxxxxxxxxx@newsletter'
76
+
77
+ // Teks
78
+ const sent = await sock.newsletter.sendStatus(jid, { text: 'Halo Channel!' })
79
+ console.log(sent.newsletterStatusServerId)
80
+
81
+ // Gambar
82
+ await sock.sendNewsletterStatus(jid, {
83
+ image: { url: './foto.jpg' },
84
+ caption: 'Update terbaru'
85
+ })
86
+
87
+ // React ke status (butuh serverId dari status)
88
+ await sock.newsletter.reactToStatus(jid, serverId, '๐Ÿ”ฅ')
89
+
90
+ // Hapus status
91
+ await sock.newsletter.revokeStatus(jid, statusId)
92
+
93
+ // Ambil daftar status
94
+ const list = await sock.newsletter.fetchStatuses(jid, { count: 20 })
95
+ ```
96
+
97
+ Dokumentasi lengkap: **[docs/NEWSLETTER-STATUS.md](docs/NEWSLETTER-STATUS.md)**
98
+
99
+ ## ๐ŸŽฏ SPR (Selective Relay)
100
+
101
+ ```js
102
+ await sock.sPR(jid, { conversation: 'Halo!' })
103
+ // alias: sock.relayMessageSelective(jid, message, options)
104
+ ```
105
+
106
+ Dokumentasi lengkap: **[docs/SPR.md](docs/SPR.md)** ยท SPR dibuat oleh **Nixel** (watermark di `dinolith-spr.js` tidak boleh dihapus).
107
+
108
+ ## ๐Ÿ“š Dokumentasi
109
+
110
+ | File | Isi |
111
+ |---|---|
112
+ | [docs/NEWSLETTER-STATUS.md](docs/NEWSLETTER-STATUS.md) | API newsletter status, opsi, error |
113
+ | [docs/SPR.md](docs/SPR.md) | Selective Relay |
114
+ | [docs/CHANGELOG.md](docs/CHANGELOG.md) | Riwayat versi |
115
+
116
+ ## โš ๏ธ Disclaimer
117
+
118
+ Library ini tidak berafiliasi dengan WhatsApp/Meta. Gunakan dengan bijak dan patuhi Terms of Service WhatsApp. Pengguna bertanggung jawab atas penggunaannya.
119
+
120
+ ## ๐Ÿ’ป Developer
121
+
122
+ <div align="center">
123
+
124
+ **Saurus / Dinolith**
125
+
126
+ Telegram [@lordsaurus](https://t.me/lordsaurus) ยท Channel [@infobaileys](https://t.me/infobaileys)
127
+
128
+ Made with โค๏ธ by Saurus / Dinolith
129
+
130
+ </div>
@@ -0,0 +1,3 @@
1
+ yarn pbjs -t static-module --no-beautify -w es6 --no-bundle --no-delimited --no-verify --no-comments -o ./index.js ./WAProto.proto;
2
+ yarn pbjs -t static-module --no-beautify -w es6 --no-bundle --no-delimited --no-verify ./WAProto.proto | yarn pbts --no-comments -o ./index.d.ts -;
3
+ node ./fix-imports.js