Compare commits

..

10 Commits

Author SHA1 Message Date
tuyuribr
89af3bb375 Update README.md 2022-10-10 18:59:26 -03:00
tuyuribr
45972fb47e Create pull_request_template (#1632)
Any Ideas on how to improve this template?


https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository

Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
Co-authored-by: Aliyss Snow <33941859+Aliyss@users.noreply.github.com>
2022-10-10 22:45:48 +02:00
stefanfuchs
55f75b8f69 fix: typescript compilation (#1693)
Co-authored-by: Rajeh Taher <rajeh@reforward.dev>
2022-10-04 14:24:03 +02:00
blox
b1e0fce504 Allow the deletion of others' messages (#1688) 2022-09-18 16:33:43 -03:00
༺ LᴇG̸ᴇɴD ༻
62623347e8 [Update] - adding catch block on promise for windows error (#1659) 2022-08-18 20:26:46 +03:00
Shir Serlui
705d4d31fd Use getCommonGroups not contact (#1623) 2022-08-18 13:20:30 -03:00
WWebJS Bot
bd4df4cf75 1.18.0-alpha.1 2022-08-15 07:54:39 +00:00
Pedro S. Lopez
7fe3574730 fix(release): try setting PAT to push to main 2022-08-15 03:53:57 -04:00
Pedro Lopez
09a81d0e1e v1.18.0-alpha.0 2022-08-15 03:47:51 -04:00
Pedro S. Lopez
c09a22c533 fix(publish): exit if pushing to github failed 2022-08-15 03:42:06 -04:00
9 changed files with 64 additions and 14 deletions

41
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,41 @@
# PR Details
<!--- Provide a general summary of your changes in the Title above -->
## Description
<!--- Describe your changes in detail -->
## Related Issue
<!--- Optional --->
<!--- If there is an issue link it here: -->
## Motivation and Context
<!--- Optional --->
<!--- Why is this change required? What problem does it solve? -->
## How Has This Been Tested
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Dependency change
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
## Checklist
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
- [ ] My code follows the code style of this project.
- [ ] I have updated the documentation accordingly (index.d.ts).

View File

@@ -14,6 +14,8 @@ jobs:
if: ${{ github.repository == 'pedroslopez/whatsapp-web.js' }}
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.RELEASE_GITHUB_TOKEN }}
- run: git config --global user.email "hello@wwebjs.dev"
- run: git config --global user.name "WWebJS Bot"
- name: Bump version and publish to NPM

View File

@@ -7,6 +7,7 @@ It uses Puppeteer to run a real instance of Whatsapp Web to avoid getting blocke
**NOTE:** I can't guarantee you will not be blocked by using this method, although it has worked for me. WhatsApp does not allow bots or unofficial clients on their platform, so this shouldn't be considered totally safe.
## Quick Links
* [Guide / Getting Started](https://wwebjs.dev/guide) _(work in progress)_

10
index.d.ts vendored
View File

@@ -1,7 +1,7 @@
import { EventEmitter } from 'events'
import { RequestInit } from 'node-fetch'
import puppeteer from 'puppeteer'
import * as puppeteer from 'puppeteer'
declare namespace WAWebJS {
@@ -399,10 +399,10 @@ declare namespace WAWebJS {
* Remote store interface
*/
export interface Store {
sessionExists: ({session: string}) => Promise<boolean> | boolean,
delete: ({session: string}) => Promise<any> | any,
save: ({session: string}) => Promise<any> | any,
extract: ({session: string, path: string}) => Promise<any> | any,
sessionExists: (options: { session: string }) => Promise<boolean> | boolean,
delete: (options: { session: string }) => Promise<any> | any,
save: (options: { session: string }) => Promise<any> | any,
extract: (options: { session: string, path: string }) => Promise<any> | any,
}
/**

View File

@@ -1,6 +1,6 @@
{
"name": "whatsapp-web.js",
"version": "1.17.1",
"version": "1.18.0-alpha.1",
"description": "Library for interacting with the WhatsApp Web API ",
"main": "./index.js",
"typings": "./index.d.ts",

View File

@@ -989,7 +989,13 @@ class Client extends EventEmitter {
*/
async getCommonGroups(contactId) {
const commonGroups = await this.pupPage.evaluate(async (contactId) => {
const contact = window.Store.Contact.get(contactId);
let contact = window.Store.Contact.get(contactId);
if (!contact) {
const wid = window.Store.WidFactory.createUserWid(contactId);
const chatConstructor = window.Store.Contact.getModelsArray().find(c=>!c.isGroup).constructor;
contact = new chatConstructor({id: wid});
}
if (contact.commonGroups) {
return contact.commonGroups.serialize();
}

View File

@@ -178,9 +178,9 @@ class RemoteAuth extends BaseAuthStrategy {
await fs.promises.rm(dirElement, {
recursive: true,
force: true
});
}).catch(() => {});
} else {
await fs.promises.unlink(dirElement);
await fs.promises.unlink(dirElement).catch(() => {});
}
}
}

View File

@@ -430,14 +430,14 @@ class Message extends Base {
/**
* Deletes a message from the chat
* @param {?boolean} everyone If true and the message is sent by the current user, will delete it for everyone in the chat.
* @param {?boolean} everyone If true and the message is sent by the current user or the user is an admin, will delete it for everyone in the chat.
*/
async delete(everyone) {
await this.client.pupPage.evaluate((msgId, everyone) => {
let msg = window.Store.Msg.get(msgId);
if (everyone && msg.id.fromMe && msg._canRevoke()) {
return window.Store.Cmd.sendRevokeMsgs(msg.chat, [msg], {type: 'Sender'});
if (everyone && msg._canRevoke()) {
return window.Store.Cmd.sendRevokeMsgs(msg.chat, [msg], { type: msg.id.fromMe ? 'Sender' : 'Admin' });
}
return window.Store.Cmd.sendDeleteMsgs(msg.chat, [msg], true);

View File

@@ -57,7 +57,7 @@ echo "-----> BUMP VERSION"
echo ""
npm version $VERSION_ARGS || exit 1
git push && git push --tags
git push && git push --tags || exit 1
NEW_VERSION=`cat package.json | jq -r .version`
echo "New Version: $NEW_VERSION"
@@ -77,4 +77,4 @@ echo ""
echo "::set-output name=NEW_VERSION::$NEW_VERSION"
echo "::set-output name=PRERELEASE::$PRERELEASE"
exit 0
exit 0