* added event for group membership request
* small update to improve the performance of findImpl fix
* window.compareWwebVersions fixed
* added getGroupMembershipRequests method
* added approveGroupMembershipRequest method
* correct module for getGroupMembershipRequests
* membershipRequestAction separated to Injected.js
* docs clarification for approveGroupMembershipRequest
* added rejectGroupMembershipRequest method
* module fixed
* methods extension
* docs clarification
* force to update group membership requests
* docs fixed
* added usage example
* avoid sleep after the last iteration
* fix: added missing modules
* improve forcing to update group membership requests
* usage example clarification
* module refactored
* optional parameters
* usage example modified
* remove default values for membershipRequestAction
* added error description for memb req action
* usage example fixed
* return result even if ServerStatusCodeError
* default error message was missing
* removed line break
* added function to to modify module functions
* fix for locations to be sent
* changes for class Location
- description property was splited into name and address
- added url property
- added ability to pass name, address and url as options while creating an instance
* docs updated
* usage example updated
* added url checking
* fixed url
* updated location property in Message class
* fixed url when http prefix is provided
* injectToFunction updated to be more flexible
* docs clarification
* ESLint fix
* fix: injectToFunction fixed to work properly
* minor fix in injectToFunction
* refactor: added usage of url validator
* small change to improve performance for findImpl fix
* window.compareWwebVersions fixed
* feat: get message by id
Add the feature of getting messages by id.
It's loads messages that are not loaded in the Store.Msg, and add them into the Store.Msg.
I don't use the draft because this is already work
* Fix typo
* Fix for test
* Update index.d.ts
---------
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
Co-authored-by: Codeboss <131376628+codebossdev@users.noreply.github.com>
* feat: use specific whatsapp web version
* add constants to version updater
* configurable caches
* rename
* typings
* rm extraneous export
* missing from the rename
* rm version resolver
* match readme version
* use try-catch
* only persist if cache miss
* Initial commit
* Update index.d.ts
* The functions was returning a 'brief' chat data. With this, it will return full Chat model..
* Eslint suggested fixex
---------
Co-authored-by: tuyuribr <45042245+tuyuribr@users.noreply.github.com>
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
* index.js
* [authReady] - new BaseAuthStrategy function
* [RemoteAuth] - new Class RemoteAuth added
* Eslint Fixes
* Eslint Fixes
* Added types for RemoteAuth (mostly assumed types from PR message and src/authStrategies/RemoteAuth.js)
* [dependency updates] - added unzipper & archiver
* [Types] - Fixing typescript declarations
* Renaming Base Class Hook
* auth hook rename on client
* [Error Handling] - Delegate responsability to end users
* [Refactor] - deletemetadata code refactor
* [Refactor] - backupSyncIntervalMs renamed
* [Refactor] - Minor improvement on deleteMetadata
* [Refactor] - backupSyncIntervalMs rename on index.d.ts
* [Update] - Fix for Ubuntu crahsing on extractSession
* [Update] - Delegate responsability to stores of making sure the previous session is deleted strictly only after the new one is saved
* [Update] - Improve file paths handling & naming (reduce assumptions between RemoteAuth and stores)
* [Update] - Adding new event <REMOTE_SESSION_SAVED> on Constants.js
* [Update] - Adding new authHooks <destroy> & <disconnect>
* [Update] - Adding <destroy> & <disconnect> hooks on Client.js
* [Update] - Adding new features to index.d.ts
* [RemoteAuth] - New Features added to RemoteAuth Class
* [dependency updates] - added fs-extra
* [Cross Platform] - Windows is now compatible with RemoteAuth
* [optionalDependencies] - moved archiver, fs-extra & unzipper to optional dependencies on package.json
* [optionalDependencies] - adding validation for when optional dependencies are missing
* [Update] - Node Deprecation warining for rmdir changed for rm instead
Co-authored-by: h110m <nichtwitzig228@gmail.com>
* Fix models is undefined
* Feat models is undefined
* Feat models is undefined
* Fix loadEarlierMsgs
* use `getModelsArray()` to get models
* fix: correctly loadEarlierMsgs with ConversationMsgs module
Co-authored-by: Pedro Lopez <pedroslopez@me.com>
* Fix for issue#1356 - Cannot read properties of undefined reading getProfilePicFull
* use cross-compatible profilePicFind function
Co-authored-by: Joaquin Touris <joaquin@192.168.1.6>
Co-authored-by: Pedro Lopez <pedroslopez@me.com>
* Fix: Evaluation failed: Error: Comms::sendIq called before startComms
* [Requested Changes] - Only call Wap if we're not on MD & vice-versa
Co-authored-by: Joaquin Touris <joaquin@192.168.1.5>
* auth strategies
* default to no auth
* rename base auth strategy
* rename base strategy cont.
* refactor auth strategy methods and LocalAuth
* activate old session options even if is falsy value
* move restartOnAuthFail to LegacyAuthStrategy option
* add link to guide item
* update example/shell
* types
* fix: dont cause redirect loop due to session restore
* back to `state` in docs
* use referer to determine first injection
* bring bzck disconnect on nav
* revert some changes
* Fix the option to use special options
When we want to use some extra function we need to pass it into the options object, but because it inserted in the first line, the auto options reset some options (like 'type').
This is minor change that can help to add functionallity
* Update Injected.js
Put the special options in the end
* Update Injected.js
Fix , mistake
* only `extra` options can override everything else
Co-authored-by: Pedro Lopez <pedroslopez@me.com>
* add search and status tests
* reset to previous status in test
* move version to its own test
* add tests for Chat model
* keep hooks at the top
* run tests recursively in default script
Some of my devices were bugging out because the setUserAgent didn't had an await, after this everything was working fine (try loading the wwebjs in a broken microSd ahhaha).
We need some testing but on my limited testing everything is working
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
* max qr refresh before giving up
* Update src/Client.js
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>