浏览代码

avoid clicking invisible buttons

Mike L 3 年之前
父节点
当前提交
c8e1bcfbeb
共有 2 个文件被更改,包括 2 次插入2 次删除
  1. 1 1
      dist/webshot.js
  2. 1 1
      src/webshot.ts

+ 1 - 1
dist/webshot.js

@@ -102,7 +102,7 @@ class Webshot extends CallableInstance {
                         const count = sensitiveToggles.length;
                         if (count)
                             logger.info(`found ${count} sensitive ${count === 1 ? 'tweet' : 'tweets'} on page, uncollapsing...`);
-                        return Promise.all(sensitiveToggles.map(toggle => toggle.click()));
+                        return utils_1.chainPromises(sensitiveToggles.filter(toggle => toggle.isVisible()).map(toggle => () => toggle.click()));
                     })
                         .then(() => handle))
                         .catch((err) => {

+ 1 - 1
src/webshot.ts

@@ -130,7 +130,7 @@ class Webshot extends CallableInstance<[Tweets, (...args) => void, number], Prom
               .then(sensitiveToggles => {
                 const count = sensitiveToggles.length;
                 if (count) logger.info(`found ${count} sensitive ${count === 1 ? 'tweet' : 'tweets'} on page, uncollapsing...`);
-                return Promise.all(sensitiveToggles.map(toggle => toggle.click()));
+                return chainPromises(sensitiveToggles.filter(toggle => toggle.isVisible()).map(toggle => () => toggle.click()));
               })
               .then(() => handle)
             )