lordceaser-baileys 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/WAProto/index.js +136901 -78899
- package/WASignalGroup/GroupProtocol.js +1697 -0
- package/WASignalGroup/ciphertext_message.js +16 -0
- package/WASignalGroup/group_cipher.js +120 -0
- package/WASignalGroup/group_session_builder.js +46 -0
- package/WASignalGroup/index.js +5 -0
- package/WASignalGroup/keyhelper.js +21 -0
- package/WASignalGroup/protobufs.js +3 -0
- package/WASignalGroup/queue_job.js +69 -0
- package/WASignalGroup/sender_chain_key.js +50 -0
- package/WASignalGroup/sender_key_distribution_message.js +78 -0
- package/WASignalGroup/sender_key_message.js +92 -0
- package/WASignalGroup/sender_key_name.js +70 -0
- package/WASignalGroup/sender_key_record.js +56 -0
- package/WASignalGroup/sender_key_state.js +129 -0
- package/{lib/Signal/Group/sender-message-key.js → WASignalGroup/sender_message_key.js} +16 -3
- package/index.js +17 -0
- package/lib/Defaults/baileys-version.json +3 -0
- package/lib/Defaults/index.d.ts +15 -37
- package/lib/Defaults/index.js +60 -81
- package/lib/Signal/libsignal.d.ts +3 -5
- package/lib/Signal/libsignal.js +80 -359
- package/lib/Socket/Client/{types.d.ts → abstract-socket-client.d.ts} +5 -4
- package/lib/Socket/Client/abstract-socket-client.js +13 -0
- package/lib/Socket/Client/index.d.ts +3 -3
- package/lib/Socket/Client/index.js +19 -3
- package/lib/Socket/Client/mobile-socket-client.d.ts +13 -0
- package/lib/Socket/Client/mobile-socket-client.js +65 -0
- package/lib/Socket/Client/{websocket.d.ts → web-socket-client.d.ts} +2 -3
- package/lib/Socket/Client/web-socket-client.js +62 -0
- package/lib/Socket/business.d.ts +100 -147
- package/lib/Socket/business.js +43 -162
- package/lib/Socket/chats.d.ts +41 -85
- package/lib/Socket/chats.js +321 -569
- package/lib/Socket/groups.d.ts +57 -103
- package/lib/Socket/groups.js +84 -116
- package/lib/Socket/index.d.ts +106 -194
- package/lib/Socket/index.js +9 -11
- package/lib/Socket/messages-recv.d.ts +89 -134
- package/lib/Socket/messages-recv.js +475 -1275
- package/lib/Socket/messages-send.d.ts +97 -141
- package/lib/Socket/messages-send.js +633 -691
- package/lib/Socket/newsletter.d.ts +74 -112
- package/lib/Socket/newsletter.js +202 -147
- package/lib/Socket/registration.d.ts +264 -0
- package/lib/Socket/registration.js +166 -0
- package/lib/Socket/socket.d.ts +19 -34
- package/lib/Socket/socket.js +219 -547
- package/lib/Socket/usync.d.ts +37 -0
- package/lib/Socket/usync.js +70 -0
- package/lib/Store/index.d.ts +3 -0
- package/lib/Store/index.js +10 -0
- package/lib/Store/make-cache-manager-store.d.ts +14 -0
- package/lib/Store/make-cache-manager-store.js +83 -0
- package/lib/Store/make-in-memory-store.d.ts +118 -0
- package/lib/Store/make-in-memory-store.js +431 -0
- package/lib/Store/make-ordered-dictionary.d.ts +13 -0
- package/lib/Store/make-ordered-dictionary.js +81 -0
- package/lib/Store/object-repository.d.ts +10 -0
- package/lib/Store/object-repository.js +27 -0
- package/lib/Types/Auth.d.ts +11 -19
- package/lib/Types/Auth.js +2 -2
- package/lib/Types/Call.d.ts +1 -3
- package/lib/Types/Call.js +2 -2
- package/lib/Types/Chat.d.ts +8 -25
- package/lib/Types/Chat.js +4 -8
- package/lib/Types/Contact.d.ts +1 -8
- package/lib/Types/Contact.js +2 -2
- package/lib/Types/Events.d.ts +17 -101
- package/lib/Types/Events.js +2 -2
- package/lib/Types/GroupMetadata.d.ts +3 -18
- package/lib/Types/GroupMetadata.js +2 -2
- package/lib/Types/Label.d.ts +0 -1
- package/lib/Types/Label.js +5 -3
- package/lib/Types/LabelAssociation.d.ts +0 -1
- package/lib/Types/LabelAssociation.js +5 -3
- package/lib/Types/Message.d.ts +204 -91
- package/lib/Types/Message.js +9 -11
- package/lib/Types/Newsletter.d.ts +92 -0
- package/lib/Types/Newsletter.js +32 -0
- package/lib/Types/Product.d.ts +1 -2
- package/lib/Types/Product.js +2 -2
- package/lib/Types/Signal.d.ts +2 -32
- package/lib/Types/Signal.js +2 -2
- package/lib/Types/Socket.d.ts +24 -44
- package/lib/Types/Socket.js +2 -3
- package/lib/Types/State.d.ts +2 -72
- package/lib/Types/State.js +2 -56
- package/lib/Types/USync.d.ts +2 -3
- package/lib/Types/USync.js +2 -2
- package/lib/Types/index.d.ts +16 -16
- package/lib/Types/index.js +31 -15
- package/lib/Utils/auth-utils.d.ts +6 -12
- package/lib/Utils/auth-utils.js +143 -239
- package/lib/Utils/baileys-event-stream.d.ts +16 -0
- package/lib/Utils/baileys-event-stream.js +63 -0
- package/lib/Utils/business.d.ts +3 -4
- package/lib/Utils/business.js +69 -66
- package/lib/Utils/c4-compat.js +0 -8
- package/lib/Utils/chat-utils.d.ts +17 -47
- package/lib/Utils/chat-utils.js +237 -364
- package/lib/Utils/crypto.d.ts +21 -18
- package/lib/Utils/crypto.js +125 -44
- package/lib/Utils/decode-wa-message.d.ts +8 -38
- package/lib/Utils/decode-wa-message.js +90 -173
- package/lib/Utils/event-buffer.d.ts +8 -9
- package/lib/Utils/event-buffer.js +71 -176
- package/lib/Utils/generics.d.ts +22 -26
- package/lib/Utils/generics.js +175 -166
- package/lib/Utils/history.d.ts +11 -16
- package/lib/Utils/history.js +53 -93
- package/lib/Utils/index.d.ts +17 -22
- package/lib/Utils/index.js +34 -22
- package/lib/Utils/link-preview.d.ts +5 -5
- package/lib/Utils/link-preview.js +24 -16
- package/lib/Utils/logger.d.ts +1 -11
- package/lib/Utils/logger.js +7 -3
- package/lib/Utils/lt-hash.d.ts +12 -8
- package/lib/Utils/lt-hash.js +46 -3
- package/lib/Utils/make-mutex.d.ts +0 -2
- package/lib/Utils/make-mutex.js +34 -24
- package/lib/Utils/messages-media.d.ts +45 -65
- package/lib/Utils/messages-media.js +358 -425
- package/lib/Utils/messages.d.ts +18 -32
- package/lib/Utils/messages.js +720 -392
- package/lib/Utils/noise-handler.d.ts +13 -13
- package/lib/Utils/noise-handler.js +108 -149
- package/lib/Utils/process-message.d.ts +11 -30
- package/lib/Utils/process-message.js +166 -423
- package/lib/Utils/signal.d.ts +6 -20
- package/lib/Utils/signal.js +65 -107
- package/lib/Utils/use-multi-file-auth-state.d.ts +1 -2
- package/lib/Utils/use-multi-file-auth-state.js +103 -57
- package/lib/Utils/use-single-file-auth-state.d.ts +12 -0
- package/lib/Utils/use-single-file-auth-state.js +76 -0
- package/lib/Utils/validate-connection.d.ts +6 -6
- package/lib/Utils/validate-connection.js +114 -119
- package/lib/WABinary/constants.d.ts +4 -5
- package/lib/WABinary/constants.js +20 -1281
- package/lib/WABinary/decode.d.ts +3 -4
- package/lib/WABinary/decode.js +53 -51
- package/lib/WABinary/encode.d.ts +1 -2
- package/lib/WABinary/encode.js +44 -12
- package/lib/WABinary/generic-utils.d.ts +6 -7
- package/lib/WABinary/generic-utils.js +43 -46
- package/lib/WABinary/index.d.ts +5 -6
- package/lib/WABinary/index.js +21 -6
- package/lib/WABinary/jid-utils.d.ts +7 -24
- package/lib/WABinary/jid-utils.js +40 -74
- package/lib/WABinary/types.d.ts +1 -2
- package/lib/WABinary/types.js +2 -2
- package/lib/WAM/BinaryInfo.d.ts +1 -2
- package/lib/WAM/BinaryInfo.js +5 -2
- package/lib/WAM/constants.d.ts +3 -5
- package/lib/WAM/constants.js +11958 -19461
- package/lib/WAM/encode.d.ts +2 -3
- package/lib/WAM/encode.js +22 -17
- package/lib/WAM/index.d.ts +3 -4
- package/lib/WAM/index.js +19 -4
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +3 -4
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +13 -33
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +2 -3
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +14 -11
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +2 -3
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +12 -9
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +2 -3
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +13 -9
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +3 -4
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +22 -20
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +3 -5
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +8 -13
- package/lib/WAUSync/Protocols/index.d.ts +4 -6
- package/lib/WAUSync/Protocols/index.js +20 -6
- package/lib/WAUSync/USyncQuery.d.ts +4 -6
- package/lib/WAUSync/USyncQuery.js +35 -44
- package/lib/WAUSync/USyncUser.d.ts +4 -11
- package/lib/WAUSync/USyncUser.js +5 -10
- package/lib/WAUSync/index.d.ts +3 -4
- package/lib/WAUSync/index.js +19 -4
- package/lib/index.js +31 -13
- package/package.json +19 -10
- package/WAProto/GenerateStatics.sh +0 -3
- package/WAProto/WAProto.proto +0 -5479
- package/WAProto/fix-imports.js +0 -85
- package/WAProto/index.d.ts +0 -14017
- package/lib/Defaults/index.d.ts.map +0 -1
- package/lib/Defaults/index.js.map +0 -1
- package/lib/Signal/Group/ciphertext-message.d.ts +0 -10
- package/lib/Signal/Group/ciphertext-message.d.ts.map +0 -1
- package/lib/Signal/Group/ciphertext-message.js +0 -12
- package/lib/Signal/Group/ciphertext-message.js.map +0 -1
- package/lib/Signal/Group/group-session-builder.d.ts +0 -15
- package/lib/Signal/Group/group-session-builder.d.ts.map +0 -1
- package/lib/Signal/Group/group-session-builder.js +0 -30
- package/lib/Signal/Group/group-session-builder.js.map +0 -1
- package/lib/Signal/Group/group_cipher.d.ts +0 -17
- package/lib/Signal/Group/group_cipher.d.ts.map +0 -1
- package/lib/Signal/Group/group_cipher.js +0 -82
- package/lib/Signal/Group/group_cipher.js.map +0 -1
- package/lib/Signal/Group/index.d.ts +0 -12
- package/lib/Signal/Group/index.d.ts.map +0 -1
- package/lib/Signal/Group/index.js +0 -12
- package/lib/Signal/Group/index.js.map +0 -1
- package/lib/Signal/Group/keyhelper.d.ts +0 -11
- package/lib/Signal/Group/keyhelper.d.ts.map +0 -1
- package/lib/Signal/Group/keyhelper.js +0 -18
- package/lib/Signal/Group/keyhelper.js.map +0 -1
- package/lib/Signal/Group/sender-chain-key.d.ts +0 -14
- package/lib/Signal/Group/sender-chain-key.d.ts.map +0 -1
- package/lib/Signal/Group/sender-chain-key.js +0 -26
- package/lib/Signal/Group/sender-chain-key.js.map +0 -1
- package/lib/Signal/Group/sender-key-distribution-message.d.ts +0 -17
- package/lib/Signal/Group/sender-key-distribution-message.d.ts.map +0 -1
- package/lib/Signal/Group/sender-key-distribution-message.js +0 -63
- package/lib/Signal/Group/sender-key-distribution-message.js.map +0 -1
- package/lib/Signal/Group/sender-key-message.d.ts +0 -19
- package/lib/Signal/Group/sender-key-message.d.ts.map +0 -1
- package/lib/Signal/Group/sender-key-message.js +0 -66
- package/lib/Signal/Group/sender-key-message.js.map +0 -1
- package/lib/Signal/Group/sender-key-name.d.ts +0 -18
- package/lib/Signal/Group/sender-key-name.d.ts.map +0 -1
- package/lib/Signal/Group/sender-key-name.js +0 -48
- package/lib/Signal/Group/sender-key-name.js.map +0 -1
- package/lib/Signal/Group/sender-key-record.d.ts +0 -31
- package/lib/Signal/Group/sender-key-record.d.ts.map +0 -1
- package/lib/Signal/Group/sender-key-record.js +0 -41
- package/lib/Signal/Group/sender-key-record.js.map +0 -1
- package/lib/Signal/Group/sender-key-state.d.ts +0 -39
- package/lib/Signal/Group/sender-key-state.d.ts.map +0 -1
- package/lib/Signal/Group/sender-key-state.js +0 -84
- package/lib/Signal/Group/sender-key-state.js.map +0 -1
- package/lib/Signal/Group/sender-message-key.d.ts +0 -12
- package/lib/Signal/Group/sender-message-key.d.ts.map +0 -1
- package/lib/Signal/Group/sender-message-key.js.map +0 -1
- package/lib/Signal/libsignal.d.ts.map +0 -1
- package/lib/Signal/libsignal.js.map +0 -1
- package/lib/Signal/lid-mapping.d.ts +0 -23
- package/lib/Signal/lid-mapping.d.ts.map +0 -1
- package/lib/Signal/lid-mapping.js +0 -277
- package/lib/Signal/lid-mapping.js.map +0 -1
- package/lib/Socket/Client/index.d.ts.map +0 -1
- package/lib/Socket/Client/index.js.map +0 -1
- package/lib/Socket/Client/types.d.ts.map +0 -1
- package/lib/Socket/Client/types.js +0 -11
- package/lib/Socket/Client/types.js.map +0 -1
- package/lib/Socket/Client/websocket.d.ts.map +0 -1
- package/lib/Socket/Client/websocket.js +0 -54
- package/lib/Socket/Client/websocket.js.map +0 -1
- package/lib/Socket/business.d.ts.map +0 -1
- package/lib/Socket/business.js.map +0 -1
- package/lib/Socket/chats.d.ts.map +0 -1
- package/lib/Socket/chats.js.map +0 -1
- package/lib/Socket/communities.d.ts +0 -273
- package/lib/Socket/communities.d.ts.map +0 -1
- package/lib/Socket/communities.js +0 -431
- package/lib/Socket/communities.js.map +0 -1
- package/lib/Socket/groups.d.ts.map +0 -1
- package/lib/Socket/groups.js.map +0 -1
- package/lib/Socket/index.d.ts.map +0 -1
- package/lib/Socket/index.js.map +0 -1
- package/lib/Socket/messages-recv.d.ts.map +0 -1
- package/lib/Socket/messages-recv.js.map +0 -1
- package/lib/Socket/messages-send.d.ts.map +0 -1
- package/lib/Socket/messages-send.js.map +0 -1
- package/lib/Socket/mex.d.ts +0 -3
- package/lib/Socket/mex.d.ts.map +0 -1
- package/lib/Socket/mex.js +0 -42
- package/lib/Socket/mex.js.map +0 -1
- package/lib/Socket/newsletter.d.ts.map +0 -1
- package/lib/Socket/newsletter.js.map +0 -1
- package/lib/Socket/socket.d.ts.map +0 -1
- package/lib/Socket/socket.js.map +0 -1
- package/lib/Types/Auth.d.ts.map +0 -1
- package/lib/Types/Auth.js.map +0 -1
- package/lib/Types/Bussines.d.ts +0 -25
- package/lib/Types/Bussines.d.ts.map +0 -1
- package/lib/Types/Bussines.js +0 -2
- package/lib/Types/Bussines.js.map +0 -1
- package/lib/Types/Call.d.ts.map +0 -1
- package/lib/Types/Call.js.map +0 -1
- package/lib/Types/Chat.d.ts.map +0 -1
- package/lib/Types/Chat.js.map +0 -1
- package/lib/Types/Contact.d.ts.map +0 -1
- package/lib/Types/Contact.js.map +0 -1
- package/lib/Types/Events.d.ts.map +0 -1
- package/lib/Types/Events.js.map +0 -1
- package/lib/Types/GroupMetadata.d.ts.map +0 -1
- package/lib/Types/GroupMetadata.js.map +0 -1
- package/lib/Types/Label.d.ts.map +0 -1
- package/lib/Types/Label.js.map +0 -1
- package/lib/Types/LabelAssociation.d.ts.map +0 -1
- package/lib/Types/LabelAssociation.js.map +0 -1
- package/lib/Types/Message.d.ts.map +0 -1
- package/lib/Types/Message.js.map +0 -1
- package/lib/Types/Mex.d.ts +0 -141
- package/lib/Types/Mex.d.ts.map +0 -1
- package/lib/Types/Mex.js +0 -37
- package/lib/Types/Mex.js.map +0 -1
- package/lib/Types/Product.d.ts.map +0 -1
- package/lib/Types/Product.js.map +0 -1
- package/lib/Types/Signal.d.ts.map +0 -1
- package/lib/Types/Signal.js.map +0 -1
- package/lib/Types/Socket.d.ts.map +0 -1
- package/lib/Types/Socket.js.map +0 -1
- package/lib/Types/State.d.ts.map +0 -1
- package/lib/Types/State.js.map +0 -1
- package/lib/Types/USync.d.ts.map +0 -1
- package/lib/Types/USync.js.map +0 -1
- package/lib/Types/index.d.ts.map +0 -1
- package/lib/Types/index.js.map +0 -1
- package/lib/Utils/auth-utils.d.ts.map +0 -1
- package/lib/Utils/auth-utils.js.map +0 -1
- package/lib/Utils/browser-utils.d.ts +0 -4
- package/lib/Utils/browser-utils.d.ts.map +0 -1
- package/lib/Utils/browser-utils.js +0 -29
- package/lib/Utils/browser-utils.js.map +0 -1
- package/lib/Utils/business.d.ts.map +0 -1
- package/lib/Utils/business.js.map +0 -1
- package/lib/Utils/chat-utils.d.ts.map +0 -1
- package/lib/Utils/chat-utils.js.map +0 -1
- package/lib/Utils/companion-reg-client-utils.d.ts +0 -17
- package/lib/Utils/companion-reg-client-utils.d.ts.map +0 -1
- package/lib/Utils/companion-reg-client-utils.js +0 -35
- package/lib/Utils/companion-reg-client-utils.js.map +0 -1
- package/lib/Utils/crypto.d.ts.map +0 -1
- package/lib/Utils/crypto.js.map +0 -1
- package/lib/Utils/decode-wa-message.d.ts.map +0 -1
- package/lib/Utils/decode-wa-message.js.map +0 -1
- package/lib/Utils/event-buffer.d.ts.map +0 -1
- package/lib/Utils/event-buffer.js.map +0 -1
- package/lib/Utils/generics.d.ts.map +0 -1
- package/lib/Utils/generics.js.map +0 -1
- package/lib/Utils/history.d.ts.map +0 -1
- package/lib/Utils/history.js.map +0 -1
- package/lib/Utils/identity-change-handler.d.ts +0 -44
- package/lib/Utils/identity-change-handler.d.ts.map +0 -1
- package/lib/Utils/identity-change-handler.js +0 -50
- package/lib/Utils/identity-change-handler.js.map +0 -1
- package/lib/Utils/index.d.ts.map +0 -1
- package/lib/Utils/index.js.map +0 -1
- package/lib/Utils/link-preview.d.ts.map +0 -1
- package/lib/Utils/link-preview.js.map +0 -1
- package/lib/Utils/logger.d.ts.map +0 -1
- package/lib/Utils/logger.js.map +0 -1
- package/lib/Utils/lt-hash.d.ts.map +0 -1
- package/lib/Utils/lt-hash.js.map +0 -1
- package/lib/Utils/make-mutex.d.ts.map +0 -1
- package/lib/Utils/make-mutex.js.map +0 -1
- package/lib/Utils/message-retry-manager.d.ts +0 -115
- package/lib/Utils/message-retry-manager.d.ts.map +0 -1
- package/lib/Utils/message-retry-manager.js +0 -265
- package/lib/Utils/message-retry-manager.js.map +0 -1
- package/lib/Utils/messages-media.d.ts.map +0 -1
- package/lib/Utils/messages-media.js.map +0 -1
- package/lib/Utils/messages.d.ts.map +0 -1
- package/lib/Utils/messages.js.map +0 -1
- package/lib/Utils/noise-handler.d.ts.map +0 -1
- package/lib/Utils/noise-handler.js.map +0 -1
- package/lib/Utils/offline-node-processor.d.ts +0 -17
- package/lib/Utils/offline-node-processor.d.ts.map +0 -1
- package/lib/Utils/offline-node-processor.js +0 -40
- package/lib/Utils/offline-node-processor.js.map +0 -1
- package/lib/Utils/pre-key-manager.d.ts +0 -28
- package/lib/Utils/pre-key-manager.d.ts.map +0 -1
- package/lib/Utils/pre-key-manager.js +0 -106
- package/lib/Utils/pre-key-manager.js.map +0 -1
- package/lib/Utils/process-message.d.ts.map +0 -1
- package/lib/Utils/process-message.js.map +0 -1
- package/lib/Utils/reporting-utils.d.ts +0 -11
- package/lib/Utils/reporting-utils.d.ts.map +0 -1
- package/lib/Utils/reporting-utils.js +0 -258
- package/lib/Utils/reporting-utils.js.map +0 -1
- package/lib/Utils/signal.d.ts.map +0 -1
- package/lib/Utils/signal.js.map +0 -1
- package/lib/Utils/stanza-ack.d.ts +0 -11
- package/lib/Utils/stanza-ack.d.ts.map +0 -1
- package/lib/Utils/stanza-ack.js +0 -38
- package/lib/Utils/stanza-ack.js.map +0 -1
- package/lib/Utils/sync-action-utils.d.ts +0 -19
- package/lib/Utils/sync-action-utils.d.ts.map +0 -1
- package/lib/Utils/sync-action-utils.js +0 -49
- package/lib/Utils/sync-action-utils.js.map +0 -1
- package/lib/Utils/tc-token-utils.d.ts +0 -37
- package/lib/Utils/tc-token-utils.d.ts.map +0 -1
- package/lib/Utils/tc-token-utils.js +0 -164
- package/lib/Utils/tc-token-utils.js.map +0 -1
- package/lib/Utils/use-multi-file-auth-state.d.ts.map +0 -1
- package/lib/Utils/use-multi-file-auth-state.js.map +0 -1
- package/lib/Utils/validate-connection.d.ts.map +0 -1
- package/lib/Utils/validate-connection.js.map +0 -1
- package/lib/WABinary/constants.d.ts.map +0 -1
- package/lib/WABinary/constants.js.map +0 -1
- package/lib/WABinary/decode.d.ts.map +0 -1
- package/lib/WABinary/decode.js.map +0 -1
- package/lib/WABinary/encode.d.ts.map +0 -1
- package/lib/WABinary/encode.js.map +0 -1
- package/lib/WABinary/generic-utils.d.ts.map +0 -1
- package/lib/WABinary/generic-utils.js.map +0 -1
- package/lib/WABinary/index.d.ts.map +0 -1
- package/lib/WABinary/index.js.map +0 -1
- package/lib/WABinary/jid-utils.d.ts.map +0 -1
- package/lib/WABinary/jid-utils.js.map +0 -1
- package/lib/WABinary/types.d.ts.map +0 -1
- package/lib/WABinary/types.js.map +0 -1
- package/lib/WAM/BinaryInfo.d.ts.map +0 -1
- package/lib/WAM/BinaryInfo.js.map +0 -1
- package/lib/WAM/constants.d.ts.map +0 -1
- package/lib/WAM/constants.js.map +0 -1
- package/lib/WAM/encode.d.ts.map +0 -1
- package/lib/WAM/encode.js.map +0 -1
- package/lib/WAM/index.d.ts.map +0 -1
- package/lib/WAM/index.js.map +0 -1
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts +0 -10
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +0 -25
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js.map +0 -1
- package/lib/WAUSync/Protocols/index.d.ts.map +0 -1
- package/lib/WAUSync/Protocols/index.js.map +0 -1
- package/lib/WAUSync/USyncQuery.d.ts.map +0 -1
- package/lib/WAUSync/USyncQuery.js.map +0 -1
- package/lib/WAUSync/USyncUser.d.ts.map +0 -1
- package/lib/WAUSync/USyncUser.js.map +0 -1
- package/lib/WAUSync/index.d.ts.map +0 -1
- package/lib/WAUSync/index.js.map +0 -1
- package/lib/index.d.ts +0 -12
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
package/lib/Utils/generics.js
CHANGED
|
@@ -1,45 +1,79 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isWABusinessPlatform = exports.getCodeFromWSError = exports.getCallStatusFromNode = exports.getErrorCodeFromStreamError = exports.getStatusFromReceiptType = exports.generateMdTagPrefix = exports.fetchLatestWaWebVersion = exports.fetchLatestBaileysVersion = exports.printQRIfNecessaryListener = exports.bindWaitForConnectionUpdate = exports.generateMessageID = exports.generateMessageIDV2 = exports.delayCancellable = exports.delay = exports.debouncedTimeout = exports.unixTimestampSeconds = exports.toNumber = exports.encodeBigEndian = exports.generateRegistrationId = exports.encodeWAMessage = exports.unpadRandomMax16 = exports.writeRandomPadMax16 = exports.getKeyAuthor = exports.BufferJSON = exports.getPlatformId = exports.Browsers = void 0;
|
|
7
|
+
exports.promiseTimeout = promiseTimeout;
|
|
8
|
+
exports.bindWaitForEvent = bindWaitForEvent;
|
|
9
|
+
exports.trimUndefined = trimUndefined;
|
|
10
|
+
exports.bytesToCrockford = bytesToCrockford;
|
|
11
|
+
const boom_1 = require("@hapi/boom");
|
|
12
|
+
const axios_1 = __importDefault(require("axios"));
|
|
13
|
+
const crypto_1 = require("crypto");
|
|
14
|
+
const os_1 = require("os");
|
|
15
|
+
const WAProto_1 = require("../../WAProto");
|
|
16
|
+
const baileys_version_json_1 = require("../Defaults/baileys-version.json");
|
|
17
|
+
const Types_1 = require("../Types");
|
|
18
|
+
const WABinary_1 = require("../WABinary");
|
|
19
|
+
const COMPANION_PLATFORM_MAP = {
|
|
20
|
+
'Chrome': '49',
|
|
21
|
+
'Edge': '50',
|
|
22
|
+
'Firefox': '51',
|
|
23
|
+
'Opera': '53',
|
|
24
|
+
'Safari': '54'
|
|
25
|
+
};
|
|
26
|
+
const PLATFORM_MAP = {
|
|
27
|
+
'aix': 'AIX',
|
|
28
|
+
'darwin': 'Mac OS',
|
|
29
|
+
'win32': 'Windows',
|
|
30
|
+
'android': 'Android',
|
|
31
|
+
'freebsd': 'FreeBSD',
|
|
32
|
+
'openbsd': 'OpenBSD',
|
|
33
|
+
'sunos': 'Solaris'
|
|
34
|
+
};
|
|
35
|
+
exports.Browsers = {
|
|
36
|
+
ubuntu: (browser) => ['Ubuntu', browser, '22.04.4'],
|
|
37
|
+
macOS: (browser) => ['Mac OS', browser, '14.4.1'],
|
|
38
|
+
baileys: (browser) => ['Baileys', browser, '6.5.0'],
|
|
39
|
+
windows: (browser) => ['Windows', browser, '10.0.22631'],
|
|
40
|
+
iOS: (browser) => ['iOS', browser, '18.2'],
|
|
41
|
+
linux: (browser) => ['Linux', browser, '6.12.6'],
|
|
42
|
+
/** The appropriate browser based on your OS & release */
|
|
43
|
+
appropriate: (browser) => [PLATFORM_MAP[(0, os_1.platform)()] || 'Ubuntu', browser, (0, os_1.release)()]
|
|
44
|
+
};
|
|
45
|
+
const getPlatformId = (browser) => {
|
|
46
|
+
const platformType = WAProto_1.proto.DeviceProps.PlatformType[browser.toUpperCase()];
|
|
47
|
+
return platformType ? platformType.toString() : '49'; //chrome
|
|
48
|
+
};
|
|
49
|
+
exports.getPlatformId = getPlatformId;
|
|
50
|
+
exports.BufferJSON = {
|
|
10
51
|
replacer: (k, value) => {
|
|
11
|
-
if (Buffer.isBuffer(value) || value instanceof Uint8Array || value
|
|
12
|
-
return { type: 'Buffer', data: Buffer.from(value
|
|
52
|
+
if (Buffer.isBuffer(value) || value instanceof Uint8Array || (value === null || value === void 0 ? void 0 : value.type) === 'Buffer') {
|
|
53
|
+
return { type: 'Buffer', data: Buffer.from((value === null || value === void 0 ? void 0 : value.data) || value).toString('base64') };
|
|
13
54
|
}
|
|
14
55
|
return value;
|
|
15
56
|
},
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17
57
|
reviver: (_, value) => {
|
|
18
|
-
if (typeof value === 'object' && value
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
22
|
-
const keys = Object.keys(value);
|
|
23
|
-
if (keys.length > 0 && keys.every(k => !isNaN(parseInt(k, 10)))) {
|
|
24
|
-
const values = Object.values(value);
|
|
25
|
-
if (values.every(v => typeof v === 'number')) {
|
|
26
|
-
return Buffer.from(values);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
58
|
+
if (typeof value === 'object' && !!value && (value.buffer === true || value.type === 'Buffer')) {
|
|
59
|
+
const val = value.data || value.value;
|
|
60
|
+
return typeof val === 'string' ? Buffer.from(val, 'base64') : Buffer.from(val || []);
|
|
29
61
|
}
|
|
30
62
|
return value;
|
|
31
63
|
}
|
|
32
64
|
};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
65
|
+
const getKeyAuthor = (key, meId = 'me') => (((key === null || key === void 0 ? void 0 : key.fromMe) ? meId : (key === null || key === void 0 ? void 0 : key.participant) || (key === null || key === void 0 ? void 0 : key.remoteJid)) || '');
|
|
66
|
+
exports.getKeyAuthor = getKeyAuthor;
|
|
67
|
+
const writeRandomPadMax16 = (msg) => {
|
|
68
|
+
const pad = (0, crypto_1.randomBytes)(1);
|
|
69
|
+
pad[0] &= 0xf;
|
|
70
|
+
if (!pad[0]) {
|
|
71
|
+
pad[0] = 0xf;
|
|
72
|
+
}
|
|
73
|
+
return Buffer.concat([msg, Buffer.alloc(pad[0], pad[0])]);
|
|
41
74
|
};
|
|
42
|
-
|
|
75
|
+
exports.writeRandomPadMax16 = writeRandomPadMax16;
|
|
76
|
+
const unpadRandomMax16 = (e) => {
|
|
43
77
|
const t = new Uint8Array(e);
|
|
44
78
|
if (0 === t.length) {
|
|
45
79
|
throw new Error('unpadPkcs7 given empty bytes');
|
|
@@ -50,17 +84,14 @@ export const unpadRandomMax16 = (e) => {
|
|
|
50
84
|
}
|
|
51
85
|
return new Uint8Array(t.buffer, t.byteOffset, t.length - r);
|
|
52
86
|
};
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return
|
|
58
|
-
};
|
|
59
|
-
export const encodeWAMessage = (message) => writeRandomPadMax16(proto.Message.encode(message).finish());
|
|
60
|
-
export const generateRegistrationId = () => {
|
|
61
|
-
return Uint16Array.from(randomBytes(2))[0] & 16383;
|
|
87
|
+
exports.unpadRandomMax16 = unpadRandomMax16;
|
|
88
|
+
const encodeWAMessage = (message) => ((0, exports.writeRandomPadMax16)(WAProto_1.proto.Message.encode(message).finish()));
|
|
89
|
+
exports.encodeWAMessage = encodeWAMessage;
|
|
90
|
+
const generateRegistrationId = () => {
|
|
91
|
+
return Uint16Array.from((0, crypto_1.randomBytes)(2))[0] & 16383;
|
|
62
92
|
};
|
|
63
|
-
|
|
93
|
+
exports.generateRegistrationId = generateRegistrationId;
|
|
94
|
+
const encodeBigEndian = (e, t = 4) => {
|
|
64
95
|
let r = e;
|
|
65
96
|
const a = new Uint8Array(t);
|
|
66
97
|
for (let i = t - 1; i >= 0; i--) {
|
|
@@ -69,28 +100,33 @@ export const encodeBigEndian = (e, t = 4) => {
|
|
|
69
100
|
}
|
|
70
101
|
return a;
|
|
71
102
|
};
|
|
72
|
-
|
|
103
|
+
exports.encodeBigEndian = encodeBigEndian;
|
|
104
|
+
const toNumber = (t) => ((typeof t === 'object' && t) ? ('toNumber' in t ? t.toNumber() : t.low) : t || 0);
|
|
105
|
+
exports.toNumber = toNumber;
|
|
73
106
|
/** unix timestamp of a date in seconds */
|
|
74
|
-
|
|
75
|
-
|
|
107
|
+
const unixTimestampSeconds = (date = new Date()) => Math.floor(date.getTime() / 1000);
|
|
108
|
+
exports.unixTimestampSeconds = unixTimestampSeconds;
|
|
109
|
+
const debouncedTimeout = (intervalMs = 1000, task) => {
|
|
76
110
|
let timeout;
|
|
77
111
|
return {
|
|
78
112
|
start: (newIntervalMs, newTask) => {
|
|
79
113
|
task = newTask || task;
|
|
80
114
|
intervalMs = newIntervalMs || intervalMs;
|
|
81
115
|
timeout && clearTimeout(timeout);
|
|
82
|
-
timeout = setTimeout(() => task
|
|
116
|
+
timeout = setTimeout(() => task === null || task === void 0 ? void 0 : task(), intervalMs);
|
|
83
117
|
},
|
|
84
118
|
cancel: () => {
|
|
85
119
|
timeout && clearTimeout(timeout);
|
|
86
120
|
timeout = undefined;
|
|
87
121
|
},
|
|
88
|
-
setTask: (newTask) =>
|
|
89
|
-
setInterval: (newInterval) =>
|
|
122
|
+
setTask: (newTask) => task = newTask,
|
|
123
|
+
setInterval: (newInterval) => intervalMs = newInterval
|
|
90
124
|
};
|
|
91
125
|
};
|
|
92
|
-
|
|
93
|
-
|
|
126
|
+
exports.debouncedTimeout = debouncedTimeout;
|
|
127
|
+
const delay = (ms) => (0, exports.delayCancellable)(ms).delay;
|
|
128
|
+
exports.delay = delay;
|
|
129
|
+
const delayCancellable = (ms) => {
|
|
94
130
|
const stack = new Error().stack;
|
|
95
131
|
let timeout;
|
|
96
132
|
let reject;
|
|
@@ -100,7 +136,7 @@ export const delayCancellable = (ms) => {
|
|
|
100
136
|
});
|
|
101
137
|
const cancel = () => {
|
|
102
138
|
clearTimeout(timeout);
|
|
103
|
-
reject(new Boom('Cancelled', {
|
|
139
|
+
reject(new boom_1.Boom('Cancelled', {
|
|
104
140
|
statusCode: 500,
|
|
105
141
|
data: {
|
|
106
142
|
stack
|
|
@@ -109,188 +145,173 @@ export const delayCancellable = (ms) => {
|
|
|
109
145
|
};
|
|
110
146
|
return { delay, cancel };
|
|
111
147
|
};
|
|
112
|
-
|
|
148
|
+
exports.delayCancellable = delayCancellable;
|
|
149
|
+
async function promiseTimeout(ms, promise) {
|
|
113
150
|
if (!ms) {
|
|
114
151
|
return new Promise(promise);
|
|
115
152
|
}
|
|
116
153
|
const stack = new Error().stack;
|
|
117
154
|
// Create a promise that rejects in <ms> milliseconds
|
|
118
|
-
const { delay, cancel } = delayCancellable(ms);
|
|
155
|
+
const { delay, cancel } = (0, exports.delayCancellable)(ms);
|
|
119
156
|
const p = new Promise((resolve, reject) => {
|
|
120
157
|
delay
|
|
121
|
-
.then(() => reject(new Boom('Timed Out', {
|
|
122
|
-
statusCode: DisconnectReason.timedOut,
|
|
158
|
+
.then(() => reject(new boom_1.Boom('Timed Out', {
|
|
159
|
+
statusCode: Types_1.DisconnectReason.timedOut,
|
|
123
160
|
data: {
|
|
124
161
|
stack
|
|
125
162
|
}
|
|
126
163
|
})))
|
|
127
164
|
.catch(err => reject(err));
|
|
128
165
|
promise(resolve, reject);
|
|
129
|
-
})
|
|
166
|
+
})
|
|
167
|
+
.finally(cancel);
|
|
130
168
|
return p;
|
|
131
169
|
}
|
|
132
|
-
|
|
133
|
-
// https://github.com/tulir/whatsmeow/blob/64bc969fbe78d31ae0dd443b8d4c80a5d026d07a/send.go#L42
|
|
134
|
-
export const generateMessageIDV2 = (userId) => {
|
|
170
|
+
const generateMessageIDV2 = (userId) => {
|
|
135
171
|
const data = Buffer.alloc(8 + 20 + 16);
|
|
136
172
|
data.writeBigUInt64BE(BigInt(Math.floor(Date.now() / 1000)));
|
|
137
173
|
if (userId) {
|
|
138
|
-
const id = jidDecode(userId);
|
|
139
|
-
if (id
|
|
174
|
+
const id = (0, WABinary_1.jidDecode)(userId);
|
|
175
|
+
if (id === null || id === void 0 ? void 0 : id.user) {
|
|
140
176
|
data.write(id.user, 8);
|
|
141
177
|
data.write('@c.us', 8 + id.user.length);
|
|
142
178
|
}
|
|
143
179
|
}
|
|
144
|
-
const random = randomBytes(16);
|
|
180
|
+
const random = (0, crypto_1.randomBytes)(16);
|
|
145
181
|
random.copy(data, 28);
|
|
146
|
-
const hash = createHash('sha256').update(data).digest();
|
|
147
|
-
return
|
|
182
|
+
const hash = (0, crypto_1.createHash)('sha256').update(data).digest();
|
|
183
|
+
return hash.toString('hex').toUpperCase().substring(0, 32);
|
|
148
184
|
};
|
|
185
|
+
exports.generateMessageIDV2 = generateMessageIDV2;
|
|
149
186
|
// generate a random ID to attach to a message
|
|
150
|
-
|
|
151
|
-
|
|
187
|
+
const generateMessageID = () => (0, crypto_1.randomBytes)(16).toString('hex').toUpperCase();
|
|
188
|
+
exports.generateMessageID = generateMessageID;
|
|
189
|
+
function bindWaitForEvent(ev, event) {
|
|
152
190
|
return async (check, timeoutMs) => {
|
|
153
191
|
let listener;
|
|
154
192
|
let closeListener;
|
|
155
|
-
await promiseTimeout(timeoutMs, (resolve, reject) => {
|
|
193
|
+
await (promiseTimeout(timeoutMs, (resolve, reject) => {
|
|
156
194
|
closeListener = ({ connection, lastDisconnect }) => {
|
|
157
195
|
if (connection === 'close') {
|
|
158
|
-
reject(lastDisconnect
|
|
196
|
+
reject((lastDisconnect === null || lastDisconnect === void 0 ? void 0 : lastDisconnect.error)
|
|
197
|
+
|| new boom_1.Boom('Connection Closed', { statusCode: Types_1.DisconnectReason.connectionClosed }));
|
|
159
198
|
}
|
|
160
199
|
};
|
|
161
200
|
ev.on('connection.update', closeListener);
|
|
162
|
-
listener =
|
|
163
|
-
if (
|
|
201
|
+
listener = (update) => {
|
|
202
|
+
if (check(update)) {
|
|
164
203
|
resolve();
|
|
165
204
|
}
|
|
166
205
|
};
|
|
167
206
|
ev.on(event, listener);
|
|
168
|
-
})
|
|
207
|
+
})
|
|
208
|
+
.finally(() => {
|
|
169
209
|
ev.off(event, listener);
|
|
170
210
|
ev.off('connection.update', closeListener);
|
|
171
|
-
});
|
|
211
|
+
}));
|
|
172
212
|
};
|
|
173
213
|
}
|
|
174
|
-
|
|
214
|
+
const bindWaitForConnectionUpdate = (ev) => bindWaitForEvent(ev, 'connection.update');
|
|
215
|
+
exports.bindWaitForConnectionUpdate = bindWaitForConnectionUpdate;
|
|
216
|
+
const printQRIfNecessaryListener = (ev, logger) => {
|
|
217
|
+
ev.on('connection.update', async ({ qr }) => {
|
|
218
|
+
if (qr) {
|
|
219
|
+
const QR = await import('qrcode-terminal')
|
|
220
|
+
.then(m => m.default || m)
|
|
221
|
+
.catch(() => {
|
|
222
|
+
logger.error('QR code terminal not added as dependency');
|
|
223
|
+
});
|
|
224
|
+
QR === null || QR === void 0 ? void 0 : QR.generate(qr, { small: true });
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
};
|
|
228
|
+
exports.printQRIfNecessaryListener = printQRIfNecessaryListener;
|
|
175
229
|
/**
|
|
176
230
|
* utility that fetches latest baileys version from the master branch.
|
|
177
231
|
* Use to ensure your WA connection is always on the latest version
|
|
178
232
|
*/
|
|
179
|
-
|
|
180
|
-
const URL = 'https://raw.githubusercontent.com/WhiskeySockets/Baileys/master/src/Defaults/
|
|
233
|
+
const fetchLatestBaileysVersion = async (options = {}) => {
|
|
234
|
+
const URL = 'https://raw.githubusercontent.com/WhiskeySockets/Baileys/master/src/Defaults/baileys-version.json';
|
|
181
235
|
try {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
headers: options.headers
|
|
236
|
+
const result = await axios_1.default.get(URL, {
|
|
237
|
+
...options,
|
|
238
|
+
responseType: 'json'
|
|
186
239
|
});
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
// Extract version from line 7 (const version = [...])
|
|
192
|
-
const lines = text.split('\n');
|
|
193
|
-
const versionLine = lines[6]; // Line 7 (0-indexed)
|
|
194
|
-
const versionMatch = versionLine.match(/const version = \[(\d+),\s*(\d+),\s*(\d+)\]/);
|
|
195
|
-
if (versionMatch) {
|
|
196
|
-
const version = [parseInt(versionMatch[1]), parseInt(versionMatch[2]), parseInt(versionMatch[3])];
|
|
197
|
-
return {
|
|
198
|
-
version,
|
|
199
|
-
isLatest: true
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
else {
|
|
203
|
-
throw new Error('Could not parse version from Defaults/index.ts');
|
|
204
|
-
}
|
|
240
|
+
return {
|
|
241
|
+
version: result.data.version,
|
|
242
|
+
isLatest: true
|
|
243
|
+
};
|
|
205
244
|
}
|
|
206
245
|
catch (error) {
|
|
207
246
|
return {
|
|
208
|
-
version:
|
|
247
|
+
version: baileys_version_json_1.version,
|
|
209
248
|
isLatest: false,
|
|
210
249
|
error
|
|
211
250
|
};
|
|
212
251
|
}
|
|
213
252
|
};
|
|
253
|
+
exports.fetchLatestBaileysVersion = fetchLatestBaileysVersion;
|
|
214
254
|
/**
|
|
215
255
|
* A utility that fetches the latest web version of whatsapp.
|
|
216
256
|
* Use to ensure your WA connection is always on the latest version
|
|
217
257
|
*/
|
|
218
|
-
|
|
258
|
+
const fetchLatestWaWebVersion = async (options) => {
|
|
219
259
|
try {
|
|
220
|
-
|
|
221
|
-
const defaultHeaders = {
|
|
222
|
-
'sec-fetch-site': 'none',
|
|
223
|
-
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36'
|
|
224
|
-
};
|
|
225
|
-
const headers = { ...defaultHeaders, ...options.headers };
|
|
226
|
-
const response = await fetch('https://web.whatsapp.com/sw.js', {
|
|
260
|
+
const result = await axios_1.default.get('https://web.whatsapp.com/check-update?version=1&platform=web', {
|
|
227
261
|
...options,
|
|
228
|
-
|
|
229
|
-
headers
|
|
262
|
+
responseType: 'json'
|
|
230
263
|
});
|
|
231
|
-
|
|
232
|
-
throw new Boom(`Failed to fetch sw.js: ${response.statusText}`, { statusCode: response.status });
|
|
233
|
-
}
|
|
234
|
-
const data = await response.text();
|
|
235
|
-
const regex = /\\?"client_revision\\?":\s*(\d+)/;
|
|
236
|
-
const match = data.match(regex);
|
|
237
|
-
if (!match?.[1]) {
|
|
238
|
-
return {
|
|
239
|
-
version: baileysVersion,
|
|
240
|
-
isLatest: false,
|
|
241
|
-
error: {
|
|
242
|
-
message: 'Could not find client revision in the fetched content'
|
|
243
|
-
}
|
|
244
|
-
};
|
|
245
|
-
}
|
|
246
|
-
const clientRevision = match[1];
|
|
264
|
+
const version = result.data.currentVersion.split('.');
|
|
247
265
|
return {
|
|
248
|
-
version: [
|
|
266
|
+
version: [+version[0], +version[1], +version[2]],
|
|
249
267
|
isLatest: true
|
|
250
268
|
};
|
|
251
269
|
}
|
|
252
270
|
catch (error) {
|
|
253
271
|
return {
|
|
254
|
-
version:
|
|
272
|
+
version: baileys_version_json_1.version,
|
|
255
273
|
isLatest: false,
|
|
256
274
|
error
|
|
257
275
|
};
|
|
258
276
|
}
|
|
259
277
|
};
|
|
278
|
+
exports.fetchLatestWaWebVersion = fetchLatestWaWebVersion;
|
|
260
279
|
/** unique message tag prefix for MD clients */
|
|
261
|
-
|
|
262
|
-
const bytes = randomBytes(4);
|
|
280
|
+
const generateMdTagPrefix = () => {
|
|
281
|
+
const bytes = (0, crypto_1.randomBytes)(4);
|
|
263
282
|
return `${bytes.readUInt16BE()}.${bytes.readUInt16BE(2)}-`;
|
|
264
283
|
};
|
|
284
|
+
exports.generateMdTagPrefix = generateMdTagPrefix;
|
|
265
285
|
const STATUS_MAP = {
|
|
266
|
-
sender: proto.WebMessageInfo.Status.SERVER_ACK,
|
|
267
|
-
played: proto.WebMessageInfo.Status.PLAYED,
|
|
268
|
-
read: proto.WebMessageInfo.Status.READ,
|
|
269
|
-
'read-self': proto.WebMessageInfo.Status.READ
|
|
286
|
+
'sender': WAProto_1.proto.WebMessageInfo.Status.SERVER_ACK,
|
|
287
|
+
'played': WAProto_1.proto.WebMessageInfo.Status.PLAYED,
|
|
288
|
+
'read': WAProto_1.proto.WebMessageInfo.Status.READ,
|
|
289
|
+
'read-self': WAProto_1.proto.WebMessageInfo.Status.READ
|
|
270
290
|
};
|
|
271
291
|
/**
|
|
272
292
|
* Given a type of receipt, returns what the new status of the message should be
|
|
273
293
|
* @param type type from receipt
|
|
274
294
|
*/
|
|
275
|
-
|
|
295
|
+
const getStatusFromReceiptType = (type) => {
|
|
276
296
|
const status = STATUS_MAP[type];
|
|
277
297
|
if (typeof type === 'undefined') {
|
|
278
|
-
return proto.WebMessageInfo.Status.DELIVERY_ACK;
|
|
298
|
+
return WAProto_1.proto.WebMessageInfo.Status.DELIVERY_ACK;
|
|
279
299
|
}
|
|
280
300
|
return status;
|
|
281
301
|
};
|
|
302
|
+
exports.getStatusFromReceiptType = getStatusFromReceiptType;
|
|
282
303
|
const CODE_MAP = {
|
|
283
|
-
conflict: DisconnectReason.connectionReplaced
|
|
304
|
+
conflict: Types_1.DisconnectReason.connectionReplaced
|
|
284
305
|
};
|
|
285
306
|
/**
|
|
286
307
|
* Stream errors generally provide a reason, map that to a baileys DisconnectReason
|
|
287
308
|
* @param reason the string reason given, eg. "conflict"
|
|
288
309
|
*/
|
|
289
|
-
|
|
290
|
-
const [reasonNode] = getAllBinaryNodeChildren(node);
|
|
291
|
-
let reason = reasonNode
|
|
292
|
-
const statusCode = +(node.attrs.code || CODE_MAP[reason] || DisconnectReason.badSession);
|
|
293
|
-
if (statusCode === DisconnectReason.restartRequired) {
|
|
310
|
+
const getErrorCodeFromStreamError = (node) => {
|
|
311
|
+
const [reasonNode] = (0, WABinary_1.getAllBinaryNodeChildren)(node);
|
|
312
|
+
let reason = (reasonNode === null || reasonNode === void 0 ? void 0 : reasonNode.tag) || 'unknown';
|
|
313
|
+
const statusCode = +(node.attrs.code || CODE_MAP[reason] || Types_1.DisconnectReason.badSession);
|
|
314
|
+
if (statusCode === Types_1.DisconnectReason.restartRequired) {
|
|
294
315
|
reason = 'restart required';
|
|
295
316
|
}
|
|
296
317
|
return {
|
|
@@ -298,7 +319,8 @@ export const getErrorCodeFromStreamError = (node) => {
|
|
|
298
319
|
statusCode
|
|
299
320
|
};
|
|
300
321
|
};
|
|
301
|
-
|
|
322
|
+
exports.getErrorCodeFromStreamError = getErrorCodeFromStreamError;
|
|
323
|
+
const getCallStatusFromNode = ({ tag, attrs }) => {
|
|
302
324
|
let status;
|
|
303
325
|
switch (tag) {
|
|
304
326
|
case 'offer':
|
|
@@ -314,15 +336,6 @@ export const getCallStatusFromNode = ({ tag, attrs }) => {
|
|
|
314
336
|
status = 'terminate';
|
|
315
337
|
}
|
|
316
338
|
break;
|
|
317
|
-
case 'preaccept':
|
|
318
|
-
status = 'preaccept';
|
|
319
|
-
break;
|
|
320
|
-
case 'transport':
|
|
321
|
-
status = 'transport';
|
|
322
|
-
break;
|
|
323
|
-
case 'relaylatency':
|
|
324
|
-
status = 'relaylatency';
|
|
325
|
-
break;
|
|
326
339
|
case 'reject':
|
|
327
340
|
status = 'reject';
|
|
328
341
|
break;
|
|
@@ -335,33 +348,33 @@ export const getCallStatusFromNode = ({ tag, attrs }) => {
|
|
|
335
348
|
}
|
|
336
349
|
return status;
|
|
337
350
|
};
|
|
351
|
+
exports.getCallStatusFromNode = getCallStatusFromNode;
|
|
338
352
|
const UNEXPECTED_SERVER_CODE_TEXT = 'Unexpected server response: ';
|
|
339
|
-
|
|
353
|
+
const getCodeFromWSError = (error) => {
|
|
354
|
+
var _a, _b, _c;
|
|
340
355
|
let statusCode = 500;
|
|
341
|
-
if (error
|
|
342
|
-
const code = +error
|
|
356
|
+
if ((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes(UNEXPECTED_SERVER_CODE_TEXT)) {
|
|
357
|
+
const code = +(error === null || error === void 0 ? void 0 : error.message.slice(UNEXPECTED_SERVER_CODE_TEXT.length));
|
|
343
358
|
if (!Number.isNaN(code) && code >= 400) {
|
|
344
359
|
statusCode = code;
|
|
345
360
|
}
|
|
346
361
|
}
|
|
347
|
-
else if (
|
|
348
|
-
|
|
349
|
-
error?.code?.startsWith('E') ||
|
|
350
|
-
error?.message?.includes('timed out')) {
|
|
351
|
-
// handle ETIMEOUT, ENOTFOUND etc
|
|
362
|
+
else if (((_b = error === null || error === void 0 ? void 0 : error.code) === null || _b === void 0 ? void 0 : _b.startsWith('E'))
|
|
363
|
+
|| ((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.includes('timed out'))) { // handle ETIMEOUT, ENOTFOUND etc
|
|
352
364
|
statusCode = 408;
|
|
353
365
|
}
|
|
354
366
|
return statusCode;
|
|
355
367
|
};
|
|
368
|
+
exports.getCodeFromWSError = getCodeFromWSError;
|
|
356
369
|
/**
|
|
357
370
|
* Is the given platform WA business
|
|
358
371
|
* @param platform AuthenticationCreds.platform
|
|
359
372
|
*/
|
|
360
|
-
|
|
373
|
+
const isWABusinessPlatform = (platform) => {
|
|
361
374
|
return platform === 'smbi' || platform === 'smba';
|
|
362
375
|
};
|
|
363
|
-
|
|
364
|
-
|
|
376
|
+
exports.isWABusinessPlatform = isWABusinessPlatform;
|
|
377
|
+
function trimUndefined(obj) {
|
|
365
378
|
for (const key in obj) {
|
|
366
379
|
if (typeof obj[key] === 'undefined') {
|
|
367
380
|
delete obj[key];
|
|
@@ -370,7 +383,7 @@ export function trimUndefined(obj) {
|
|
|
370
383
|
return obj;
|
|
371
384
|
}
|
|
372
385
|
const CROCKFORD_CHARACTERS = '123456789ABCDEFGHJKLMNPQRSTVWXYZ';
|
|
373
|
-
|
|
386
|
+
function bytesToCrockford(buffer) {
|
|
374
387
|
let value = 0;
|
|
375
388
|
let bitCount = 0;
|
|
376
389
|
const crockford = [];
|
|
@@ -387,7 +400,3 @@ export function bytesToCrockford(buffer) {
|
|
|
387
400
|
}
|
|
388
401
|
return crockford.join('');
|
|
389
402
|
}
|
|
390
|
-
export function encodeNewsletterMessage(message) {
|
|
391
|
-
return proto.Message.encode(message).finish();
|
|
392
|
-
}
|
|
393
|
-
//# sourceMappingURL=generics.js.map
|
package/lib/Utils/history.d.ts
CHANGED
|
@@ -1,24 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
export declare const downloadHistory: (msg: proto.Message.IHistorySyncNotification, options:
|
|
5
|
-
export declare const processHistoryMessage: (item: proto.IHistorySync
|
|
1
|
+
import { AxiosRequestConfig } from 'axios';
|
|
2
|
+
import { proto } from '../../WAProto';
|
|
3
|
+
import { Chat, Contact } from '../Types';
|
|
4
|
+
export declare const downloadHistory: (msg: proto.Message.IHistorySyncNotification, options: AxiosRequestConfig<{}>) => Promise<proto.HistorySync>;
|
|
5
|
+
export declare const processHistoryMessage: (item: proto.IHistorySync) => {
|
|
6
6
|
chats: Chat[];
|
|
7
7
|
contacts: Contact[];
|
|
8
|
-
messages:
|
|
9
|
-
|
|
10
|
-
pastParticipants: proto.IPastParticipants[] | null | undefined;
|
|
11
|
-
syncType: proto.HistorySync.HistorySyncType | null | undefined;
|
|
8
|
+
messages: proto.IWebMessageInfo[];
|
|
9
|
+
syncType: proto.HistorySync.HistorySyncType;
|
|
12
10
|
progress: number | null | undefined;
|
|
13
11
|
};
|
|
14
|
-
export declare const downloadAndProcessHistorySyncNotification: (msg: proto.Message.IHistorySyncNotification, options:
|
|
12
|
+
export declare const downloadAndProcessHistorySyncNotification: (msg: proto.Message.IHistorySyncNotification, options: AxiosRequestConfig<{}>) => Promise<{
|
|
15
13
|
chats: Chat[];
|
|
16
14
|
contacts: Contact[];
|
|
17
|
-
messages:
|
|
18
|
-
|
|
19
|
-
pastParticipants: proto.IPastParticipants[] | null | undefined;
|
|
20
|
-
syncType: proto.HistorySync.HistorySyncType | null | undefined;
|
|
15
|
+
messages: proto.IWebMessageInfo[];
|
|
16
|
+
syncType: proto.HistorySync.HistorySyncType;
|
|
21
17
|
progress: number | null | undefined;
|
|
22
18
|
}>;
|
|
23
|
-
export declare const getHistoryMsg: (message: proto.IMessage) => proto.Message.IHistorySyncNotification;
|
|
24
|
-
//# sourceMappingURL=history.d.ts.map
|
|
19
|
+
export declare const getHistoryMsg: (message: proto.IMessage) => proto.Message.IHistorySyncNotification | null | undefined;
|