From ae3bccdf2a69c0ce57ca19c246d4ee44831e7a83 Mon Sep 17 00:00:00 2001 From: Tony Date: Wed, 15 Feb 2023 18:05:01 +0100 Subject: [PATCH 1/4] feat(route): 500px (#11876) * feat(route): 500px * fix: tribe image --- docs/picture.md | 10 +++ lib/v2/500px/maintainer.js | 4 + lib/v2/500px/radar.js | 19 +++++ lib/v2/500px/router.js | 4 + lib/v2/500px/templates/tribeSet.art | 6 ++ lib/v2/500px/templates/user.art | 3 + lib/v2/500px/tribeSet.js | 29 +++++++ lib/v2/500px/user.js | 32 ++++++++ lib/v2/500px/utils.js | 122 ++++++++++++++++++++++++++++ 9 files changed, 229 insertions(+) create mode 100644 lib/v2/500px/maintainer.js create mode 100644 lib/v2/500px/radar.js create mode 100644 lib/v2/500px/router.js create mode 100644 lib/v2/500px/templates/tribeSet.art create mode 100644 lib/v2/500px/templates/user.art create mode 100644 lib/v2/500px/tribeSet.js create mode 100644 lib/v2/500px/user.js create mode 100644 lib/v2/500px/utils.js diff --git a/docs/picture.md b/docs/picture.md index 49b289ed53cd67..a5879aa72ff0e5 100644 --- a/docs/picture.md +++ b/docs/picture.md @@ -64,6 +64,16 @@ pageClass: routes +## 500px 摄影社区 + +### 部落影集 + + + +### 摄影师作品 + + + ## 8KCosplay ### 最新 diff --git a/lib/v2/500px/maintainer.js b/lib/v2/500px/maintainer.js new file mode 100644 index 00000000000000..e2aa1857b1203b --- /dev/null +++ b/lib/v2/500px/maintainer.js @@ -0,0 +1,4 @@ +module.exports = { + '/tribe/set/:id': ['TonyRL'], + '/user/works/:id': ['TonyRL'], +}; diff --git a/lib/v2/500px/radar.js b/lib/v2/500px/radar.js new file mode 100644 index 00000000000000..1f2202b76c48c8 --- /dev/null +++ b/lib/v2/500px/radar.js @@ -0,0 +1,19 @@ +module.exports = { + '500px.com.cn': { + _name: '500px 摄影社区', + '.': [ + { + title: '部落影集', + docs: 'https://docs.rsshub.app/picture.html#_500px-she-ying-she-qu', + source: ['/page/tribe/detail'], + target: (_, url) => `/500px/tribe/set/${url.searchParams.get('tribeId')}`, + }, + { + title: '摄影师作品', + docs: 'https://docs.rsshub.app/picture.html#_500px-she-ying-she-qu', + source: ['/:id', '/community/user-details/:id', '/community/user-details/:id/*'], + target: '/500px/user/works/:id', + }, + ], + }, +}; diff --git a/lib/v2/500px/router.js b/lib/v2/500px/router.js new file mode 100644 index 00000000000000..bb34cfef1a5edd --- /dev/null +++ b/lib/v2/500px/router.js @@ -0,0 +1,4 @@ +module.exports = (router) => { + router.get('/tribe/set/:id', require('./tribeSet')); + router.get('/user/works/:id', require('./user')); +}; diff --git a/lib/v2/500px/templates/tribeSet.art b/lib/v2/500px/templates/tribeSet.art new file mode 100644 index 00000000000000..c9d7688fb1c9e0 --- /dev/null +++ b/lib/v2/500px/templates/tribeSet.art @@ -0,0 +1,6 @@ +{{ if item.description }}

{{ item.description }}

{{ /if }} +{{ if item.photos }} + {{ each item.photos p }} + + {{ /each }} +{{ /if }} diff --git a/lib/v2/500px/templates/user.art b/lib/v2/500px/templates/user.art new file mode 100644 index 00000000000000..0499ef506de16e --- /dev/null +++ b/lib/v2/500px/templates/user.art @@ -0,0 +1,3 @@ +{{ if item.url }} + +{{ /if }} diff --git a/lib/v2/500px/tribeSet.js b/lib/v2/500px/tribeSet.js new file mode 100644 index 00000000000000..aba1ace539182e --- /dev/null +++ b/lib/v2/500px/tribeSet.js @@ -0,0 +1,29 @@ +const { parseDate } = require('@/utils/parse-date'); +const { art } = require('@/utils/render'); +const path = require('path'); + +const { baseUrl, getTribeDetail, getTribeSets } = require('./utils'); + +module.exports = async (ctx) => { + const { id } = ctx.params; + const limit = parseInt(ctx.query.limit) || 100; + + const { tribe } = await getTribeDetail(id, ctx.cache.tryGet); + const tribeSets = await getTribeSets(id, limit, ctx.cache.tryGet); + + const items = tribeSets.map((item) => ({ + title: item.title, + description: art(path.join(__dirname, 'templates/tribeSet.art'), { item }), + author: item.uploaderInfo.nickName, + pubDate: parseDate(item.createdTime, 'x'), + link: `${baseUrl}/community/set/${item.id}/details`, + })); + + ctx.state.data = { + title: tribe.name, + description: `${tribe.watchword} - ${tribe.introduce}`, + link: `${baseUrl}/page/tribe/detail?tribeId=${id}&pagev=set`, + image: tribe.avatar.a1, + item: items, + }; +}; diff --git a/lib/v2/500px/user.js b/lib/v2/500px/user.js new file mode 100644 index 00000000000000..c20c0f705a8895 --- /dev/null +++ b/lib/v2/500px/user.js @@ -0,0 +1,32 @@ +const { art } = require('@/utils/render'); +const { parseDate } = require('@/utils/parse-date'); +const path = require('path'); +const { baseUrl, getUserInfoFromUsername, getUserInfoFromId, getUserWorks } = require('./utils'); + +module.exports = async (ctx) => { + let { id } = ctx.params; + const limit = parseInt(ctx.query.limit) || 100; + + if (id.length !== 33) { + id = (await getUserInfoFromUsername(id, ctx.cache.tryGet)).id; + } + + const userInfo = await getUserInfoFromId(id, ctx.cache.tryGet); + const userWorks = await getUserWorks(id, limit, ctx.cache.tryGet); + + const items = userWorks.map((item) => ({ + title: item.title || '无题', + description: art(path.join(__dirname, 'templates/user.art'), { item }), + author: item.uploaderInfo.nickName, + pubDate: parseDate(item.createdTime, 'x'), + link: `${baseUrl}/community/photo-details/${item.id}`, + })); + + ctx.state.data = { + title: userInfo.nickName, + description: userInfo.about, + image: userInfo.avatar.a1, + link: `${baseUrl}/${id}`, + item: items, + }; +}; diff --git a/lib/v2/500px/utils.js b/lib/v2/500px/utils.js new file mode 100644 index 00000000000000..91bb641f65e9b3 --- /dev/null +++ b/lib/v2/500px/utils.js @@ -0,0 +1,122 @@ +const got = require('@/utils/got'); +const cheerio = require('cheerio'); +const config = require('@/config').value; + +const baseUrl = 'https://500px.com.cn'; + +/* +ty_rum.server = { + id: 'Fm3hXcTiLT8', + ignore_err: true, + beacon: 'beacon.tingyun.com', + beacon_err: 'beacon-err.tingyun.com', + key: 'M1laN7-zRM0', + trace_threshold: 7000, + custom_urls: [], + sr: 1.0, +}; +v && v.id && this._ty_rum && y(this._ty_rum.url) && (this._ty_rum.r = (new Date).getTime() % 1e8, +this.setRequestHeader && this.setRequestHeader("X-Tingyun-Id", v.id + ";r=" + this._ty_rum.r)) +*/ +const headers = { + // {"anonymousId":"","latitude":null,"longitude":null,"manufacturer":"","province":"","area":"","city":""} + 'x-500px-client-info': 'eyJhbm9ueW1vdXNJZCI6IiIsImxhdGl0dWRlIjpudWxsLCJsb25naXR1ZGUiOm51bGwsIm1hbnVmYWN0dXJlciI6IiIsInByb3ZpbmNlIjoiIiwiYXJlYSI6IiIsImNpdHkiOiIifQ==', + 'X-Tingyun-Id': `Fm3hXcTiLT8;r=${new Date().getTime() % 1e8}`, +}; + +const getUserInfoFromUsername = (username, tryGet) => + tryGet(`500px:user:${username}`, async () => { + const { data } = await got(`${baseUrl}/${username}`); + const $ = cheerio.load(data); + return JSON.parse( + $('script[type="text/javascript"]') + .text() + .match(/var cur_user = new Object\((.*?)\);/)[1] + ); + }); + +const getUserInfoFromId = (id, tryGet) => + tryGet(`500px:user:indexInfo:${id}`, async () => { + const { data } = await got(`${baseUrl}/community/v2/user/indexInfo`, { + headers: { + ...headers, + }, + searchParams: { + queriedUserId: id, + }, + }); + return data.data; + }); + +const getUserWorks = (id, limit, tryGet) => + tryGet( + `500px:user:profile:${id}`, + async () => { + const { data } = await got(`${baseUrl}/community/v2/user/profile`, { + headers: { + ...headers, + }, + searchParams: { + resourceType: '0,2,4', + imgsize: 'p1,p2,p3,p4', + queriedUserId: id, + startTime: '', + page: 1, + size: limit, + type: 'json', + }, + }); + return data.data; + }, + config.cache.routeExpire, + false + ); + +const getTribeDetail = (id, tryGet) => + tryGet( + `500px:tribeDetail:${id}`, + async () => { + const { data } = await got(`${baseUrl}/community/tribe/tribeDetail`, { + headers: { + ...headers, + }, + searchParams: { + tribeId: id, + }, + }); + return data.data; + }, + config.cache.routeExpire, + false + ); + +const getTribeSets = (id, limit, tryGet) => + tryGet( + `500px:tribeSets:${id}`, + async () => { + const { data } = await got(`${baseUrl}/community/tribe/getTribeSetsV2`, { + headers: { + ...headers, + }, + searchParams: { + tribeId: id, + privacy: 1, + page: 1, + size: limit, + type: 'json', + }, + }); + return data.data; + }, + config.cache.routeExpire, + false + ); + +module.exports = { + baseUrl, + getUserInfoFromUsername, + getUserInfoFromId, + getUserWorks, + getTribeDetail, + getTribeSets, +}; From 589ddb3a43563e79577e1a1e49831c9d02b8739b Mon Sep 17 00:00:00 2001 From: Tony Date: Wed, 15 Feb 2023 21:30:05 +0100 Subject: [PATCH 2/4] refactor(eslint): add back no-return-await (#11877) * chore: add back no-return-await * chore: fix action warning * chore: fix all no-return-await --- .eslintrc.json | 3 +- .github/workflows/pr-lint.yml | 3 + lib/routes/fanxinzhui/latest.js | 25 ++++--- lib/routes/fashionnetwork/headline.js | 23 +++---- lib/routes/fashionnetwork/news.js | 23 +++---- lib/routes/ncm/djradio.js | 4 +- lib/routes/questmobile/report.js | 27 ++++---- lib/routes/rss3/blog.js | 23 +++---- lib/utils/wechat-mp.js | 4 +- lib/v2/52hrtt/index.js | 25 ++++--- lib/v2/52hrtt/symposium.js | 25 ++++--- lib/v2/abmedia/category.js | 2 +- lib/v2/ally/rail.js | 83 +++++++++++------------ lib/v2/bilibili/video-all.js | 2 +- lib/v2/bioone/journal.js | 43 ++++++------ lib/v2/bjfu/it/utils.js | 6 +- lib/v2/bloomberg/utils.js | 18 ++--- lib/v2/caareviews/utils.js | 4 +- lib/v2/cctv/lm.js | 45 ++++++------ lib/v2/chinacef/experts.js | 2 +- lib/v2/chinacef/hot.js | 2 +- lib/v2/chinacef/index.js | 2 +- lib/v2/chinafactcheck/index.js | 2 +- lib/v2/chinathinktanks/viewpoint.js | 25 ++++--- lib/v2/ciidbnu/index.js | 29 ++++---- lib/v2/dcard/section.js | 2 +- lib/v2/disinformationindex/blog.js | 25 ++++--- lib/v2/dtcj/datainsight.js | 27 ++++---- lib/v2/eastday/24.js | 29 ++++---- lib/v2/economist/full.js | 4 +- lib/v2/flyert/utils.js | 6 +- lib/v2/gocn/topics.js | 2 +- lib/v2/google/sitesRecentChanges.js | 25 ++++--- lib/v2/gov/ccdi/utils.js | 2 +- lib/v2/gov/pbc/utils.js | 4 +- lib/v2/gov/sichuan/deyang/govpulicinfo.js | 6 +- lib/v2/gov/stats/utils.js | 4 +- lib/v2/gzh360/universal.js | 6 +- lib/v2/gzh360/utils.js | 4 +- lib/v2/hk01/utils.js | 4 +- lib/v2/njnu/ceai/utils.js | 6 +- lib/v2/njnu/jwc/utils.js | 6 +- lib/v2/nua/utils.js | 4 +- lib/v2/odaily/activity.js | 27 ++++---- lib/v2/odaily/user.js | 29 ++++---- lib/v2/oilchem/index.js | 41 ++++++----- lib/v2/sdu/extractor/index.js | 10 +-- lib/v2/sdu/extractor/sdrj.js | 4 +- lib/v2/sdu/extractor/view.js | 4 +- lib/v2/sdu/extractor/wh/jwc.js | 4 +- lib/v2/sdu/extractor/wh/news.js | 4 +- lib/v2/sdu/wh/jwc.js | 2 +- lib/v2/sdu/wh/news.js | 2 +- lib/v2/shmeea/self-study.js | 8 +-- lib/v2/sicau/dky.js | 25 ++++--- lib/v2/sicau/yan.js | 27 ++++---- lib/v2/thepaper/utils.js | 4 +- lib/v2/twitter/web-api/twitter-api.js | 10 +-- lib/v2/uber/blog.js | 41 ++++++----- lib/v2/wechat/ce.js | 4 +- lib/v2/wechat/data258.js | 2 +- lib/v2/wechat/ershcimi.js | 2 +- lib/v2/wechat/feeddd.js | 2 +- lib/v2/wechat/feeds.js | 2 +- lib/v2/wechat/mp.js | 4 +- lib/v2/wechat/msgalbum.js | 4 +- lib/v2/wfu/news.js | 2 +- lib/v2/who/news-room.js | 35 +++++----- lib/v2/who/news.js | 23 +++---- lib/v2/wp-china/news.js | 25 ++++--- lib/v2/wyzxwk/article.js | 41 ++++++----- lib/v2/yicai/utils.js | 2 +- test/middleware/anti-hotlink.js | 14 ++-- 73 files changed, 499 insertions(+), 521 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index f7f4dd8966ef50..007cb5c5569fd1 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -2,7 +2,7 @@ "extends": ["eslint:recommended", "plugin:prettier/recommended", "plugin:yml/recommended"], "plugins": ["prettier"], "parserOptions": { - "ecmaVersion": 2020, + "ecmaVersion": "latest", "sourceType": "module" }, "env": { @@ -65,6 +65,7 @@ "no-prototype-builtins": 0, "no-new-func": 2, "require-await": 2, + "no-return-await": 2, "prefer-arrow-callback": 2, "object-shorthand": 2, "yml/quotes": [ diff --git a/.github/workflows/pr-lint.yml b/.github/workflows/pr-lint.yml index 7ef28c4eafcd97..d0493daaafd901 100644 --- a/.github/workflows/pr-lint.yml +++ b/.github/workflows/pr-lint.yml @@ -23,6 +23,9 @@ jobs: if: ${{ github.event_name == 'push' || github.event_name == 'pull_request' }} runs-on: ubuntu-latest timeout-minutes: 5 + permissions: + contents: read + security-events: write steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 diff --git a/lib/routes/fanxinzhui/latest.js b/lib/routes/fanxinzhui/latest.js index 37de7b2e608b82..28af5948beca9b 100644 --- a/lib/routes/fanxinzhui/latest.js +++ b/lib/routes/fanxinzhui/latest.js @@ -29,19 +29,18 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.middle_box').html(); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.middle_box').html(); + + return item; + }) ) ); diff --git a/lib/routes/fashionnetwork/headline.js b/lib/routes/fashionnetwork/headline.js index e0e38bf33dfbec..4872f00f239745 100644 --- a/lib/routes/fashionnetwork/headline.js +++ b/lib/routes/fashionnetwork/headline.js @@ -31,21 +31,20 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - content('.newsTitle, .ads').remove(); + content('.newsTitle, .ads').remove(); - item.description = content('div[itemprop="text"]').html(); + item.description = content('div[itemprop="text"]').html(); - return item; - }) + return item; + }) ) ); diff --git a/lib/routes/fashionnetwork/news.js b/lib/routes/fashionnetwork/news.js index 105334e7b6ddfe..211ef03a1b0503 100644 --- a/lib/routes/fashionnetwork/news.js +++ b/lib/routes/fashionnetwork/news.js @@ -43,21 +43,20 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - content('.newsTitle, .ads').remove(); + content('.newsTitle, .ads').remove(); - item.description = content('div[itemprop="text"]').html(); + item.description = content('div[itemprop="text"]').html(); - return item; - }) + return item; + }) ) ); diff --git a/lib/routes/ncm/djradio.js b/lib/routes/ncm/djradio.js index 50512b006389bc..a6ca1d3b2ddad9 100644 --- a/lib/routes/ncm/djradio.js +++ b/lib/routes/ncm/djradio.js @@ -6,8 +6,8 @@ const path = require('path'); module.exports = async (ctx) => { const id = ctx.params.id; - const ProcessFeed = async (limit, offset) => - await got({ + const ProcessFeed = (limit, offset) => + got({ method: 'post', url: 'https://music.163.com/api/dj/program/byradio', headers: { diff --git a/lib/routes/questmobile/report.js b/lib/routes/questmobile/report.js index e72835bd856958..214e10262c1120 100644 --- a/lib/routes/questmobile/report.js +++ b/lib/routes/questmobile/report.js @@ -94,23 +94,22 @@ module.exports = async (ctx) => { })); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - content('img[_ngcontent-c11]').each(function () { - content(this).attr('alt', ''); - }); + content('img[_ngcontent-c11]').each(function () { + content(this).attr('alt', ''); + }); - item.description = content('.text').html(); + item.description = content('.text').html(); - return item; - }) + return item; + }) ) ); diff --git a/lib/routes/rss3/blog.js b/lib/routes/rss3/blog.js index efc789a9785d1f..b2f1c99c505dd5 100644 --- a/lib/routes/rss3/blog.js +++ b/lib/routes/rss3/blog.js @@ -22,20 +22,19 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - item.description = content('.post-content').html(); - item.pubDate = Date.parse(content('small time').attr('datetime')); + item.description = content('.post-content').html(); + item.pubDate = Date.parse(content('small time').attr('datetime')); - return item; - }) + return item; + }) ) ); diff --git a/lib/utils/wechat-mp.js b/lib/utils/wechat-mp.js index b2c743a24f2050..c431cdf3747c3c 100644 --- a/lib/utils/wechat-mp.js +++ b/lib/utils/wechat-mp.js @@ -187,9 +187,9 @@ const normalizeUrl = (url, bypassHostCheck = false) => { * @param {boolean} bypassHostCheck - Whether to bypass host check. * @return {Promise} - An object containing the article and its metadata. */ -const fetchArticle = async (ctx, url, bypassHostCheck = false) => { +const fetchArticle = (ctx, url, bypassHostCheck = false) => { url = normalizeUrl(url, bypassHostCheck); - return await ctx.cache.tryGet(url, async () => { + return ctx.cache.tryGet(url, async () => { const response = await got(url); const $ = cheerio.load(response.data); diff --git a/lib/v2/52hrtt/index.js b/lib/v2/52hrtt/index.js index 7eac5e48212400..9bb7fc98c0f25f 100644 --- a/lib/v2/52hrtt/index.js +++ b/lib/v2/52hrtt/index.js @@ -33,19 +33,18 @@ module.exports = async (ctx) => { })); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.info-content').html(); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.info-content').html(); + + return item; + }) ) ); diff --git a/lib/v2/52hrtt/symposium.js b/lib/v2/52hrtt/symposium.js index 1330490f67e1cf..8122c1d442a454 100644 --- a/lib/v2/52hrtt/symposium.js +++ b/lib/v2/52hrtt/symposium.js @@ -33,19 +33,18 @@ module.exports = async (ctx) => { })); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.info-content').html(); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.info-content').html(); + + return item; + }) ) ); diff --git a/lib/v2/abmedia/category.js b/lib/v2/abmedia/category.js index 4eb435f250002f..06a3a4e3ca4478 100644 --- a/lib/v2/abmedia/category.js +++ b/lib/v2/abmedia/category.js @@ -5,7 +5,7 @@ const rootUrl = 'https://www.abmedia.io'; const cateAPIUrl = `${rootUrl}/wp-json/wp/v2/categories`; const postsAPIUrl = `${rootUrl}/wp-json/wp/v2/posts`; -const getCategoryId = async (category) => await got.get(`${cateAPIUrl}?slug=${category}`).then((res) => res.data[0].id); +const getCategoryId = (category) => got.get(`${cateAPIUrl}?slug=${category}`).then((res) => res.data[0].id); module.exports = async (ctx) => { const category = ctx.params.category ?? 'technology-development'; diff --git a/lib/v2/ally/rail.js b/lib/v2/ally/rail.js index a0ddae442f00e4..a0a8149e814a17 100644 --- a/lib/v2/ally/rail.js +++ b/lib/v2/ally/rail.js @@ -54,49 +54,48 @@ module.exports = async (ctx) => { .slice(0, ctx.query.limit || 20); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const response = await got(item.link); - const $ = cheerio.load(response.data); - // fix weird format - let description = ''; - const content = $('div.content_all'); - if (content.length) { - content - .eq(content.length - 1) // some pages have "summary" - .contents() - .each((_, child) => { - const $child = $(child); - let innerHtml; - if (child.name === 'div') { - innerHtml = $child.html(); - innerHtml = innerHtml && innerHtml.trim(); - description += !innerHtml || innerHtml === ' ' ? (description ? '
' : '') : innerHtml; - } else { - // bare text node or something else - description += $child.toString().trim(); - } - }); - } else { - // http://rail.ally.net.cn/html/2022/InviteTen_0407/4686.html - description = $('div.content div').first().html(); - } + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const response = await got(item.link); + const $ = cheerio.load(response.data); + // fix weird format + let description = ''; + const content = $('div.content_all'); + if (content.length) { + content + .eq(content.length - 1) // some pages have "summary" + .contents() + .each((_, child) => { + const $child = $(child); + let innerHtml; + if (child.name === 'div') { + innerHtml = $child.html(); + innerHtml = innerHtml && innerHtml.trim(); + description += !innerHtml || innerHtml === ' ' ? (description ? '
' : '') : innerHtml; + } else { + // bare text node or something else + description += $child.toString().trim(); + } + }); + } else { + // http://rail.ally.net.cn/html/2022/InviteTen_0407/4686.html + description = $('div.content div').first().html(); + } - description = description.replace(/\s*
\s*$/, ''); // trim
at the end - const info = $('.content > em span'); - return { - title: $('.content > h2').text() || item.title, - description, - // pubDate: timezone(parseDate(info.eq(0).text()), 8), - pubDate: item.pubDate, - author: info - .eq(1) - .text() - .replace(/^来源:/, ''), - link: item.link, - }; - }) + description = description.replace(/\s*
\s*$/, ''); // trim
at the end + const info = $('.content > em span'); + return { + title: $('.content > h2').text() || item.title, + description, + // pubDate: timezone(parseDate(info.eq(0).text()), 8), + pubDate: item.pubDate, + author: info + .eq(1) + .text() + .replace(/^来源:/, ''), + link: item.link, + }; + }) ) ); diff --git a/lib/v2/bilibili/video-all.js b/lib/v2/bilibili/video-all.js index edf58b3faa3458..0e4b396dc65ab9 100644 --- a/lib/v2/bilibili/video-all.js +++ b/lib/v2/bilibili/video-all.js @@ -35,7 +35,7 @@ module.exports = async (ctx) => { }, }); const params = utils.addVerifyInfo(`mid=${uid}&ps=30&tid=0&pn=${pageId}&keyword=&order=pubdate&order_avoided=true`, verifyString); - return await got(`https://api.bilibili.com/x/space/wbi/arc/search?${params}`, { + return got(`https://api.bilibili.com/x/space/wbi/arc/search?${params}`, { headers: { Referer: `https://space.bilibili.com/${uid}/video?tid=0&page=${pageId}&keyword=&order=pubdate`, Cookie: cookie, diff --git a/lib/v2/bioone/journal.js b/lib/v2/bioone/journal.js index 6e2a5cad1b8bf6..0619e7675b1dc0 100644 --- a/lib/v2/bioone/journal.js +++ b/lib/v2/bioone/journal.js @@ -27,28 +27,27 @@ module.exports = async (ctx) => { }); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got(item.link, { - https: { - rejectUnauthorized: false, - }, - }); - - const content = cheerio.load(detailResponse.data); - - content('.ProceedingsArticleOpenAccessPanel').remove(); - content('#divNotSignedSection, #rightRail').remove(); - - item.description = content('.panel-body').html(); - item.title = content('meta[name="dc.Title"]').attr('content'); - item.author = content('meta[name="dc.Creator"]').attr('content'); - item.doi = content('meta[name="dc.Identifier"]').attr('content'); - item.pubDate = parseDate(content('meta[name="dc.Date"]').attr('content')); - - return item; - }) + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got(item.link, { + https: { + rejectUnauthorized: false, + }, + }); + + const content = cheerio.load(detailResponse.data); + + content('.ProceedingsArticleOpenAccessPanel').remove(); + content('#divNotSignedSection, #rightRail').remove(); + + item.description = content('.panel-body').html(); + item.title = content('meta[name="dc.Title"]').attr('content'); + item.author = content('meta[name="dc.Creator"]').attr('content'); + item.doi = content('meta[name="dc.Identifier"]').attr('content'); + item.pubDate = parseDate(content('meta[name="dc.Date"]').attr('content')); + + return item; + }) ) ); diff --git a/lib/v2/bjfu/it/utils.js b/lib/v2/bjfu/it/utils.js index 45938bc0cd7138..ded31bf02a3835 100644 --- a/lib/v2/bjfu/it/utils.js +++ b/lib/v2/bjfu/it/utils.js @@ -32,9 +32,9 @@ async function load(link) { return { description, pubDate }; } -const ProcessFeed = async (base, list, caches) => +const ProcessFeed = (base, list, caches) => // 使用 Promise.all() 进行 async 并发 - await Promise.all( + Promise.all( // 遍历每一篇文章 list.map(async (item) => { const $ = cheerio.load(item); @@ -53,7 +53,7 @@ const ProcessFeed = async (base, list, caches) => // 使用tryGet方法从缓存获取内容。 // 当缓存中无法获取到链接内容的时候,则使用load方法加载文章内容。 - const other = await caches.tryGet(itemUrl, async () => await load(itemUrl)); + const other = await caches.tryGet(itemUrl, () => load(itemUrl)); // 合并解析后的结果集作为该篇文章最终的输出结果 return { ...single, ...other }; diff --git a/lib/v2/bloomberg/utils.js b/lib/v2/bloomberg/utils.js index 40f2874bb30059..48f592c8e05723 100644 --- a/lib/v2/bloomberg/utils.js +++ b/lib/v2/bloomberg/utils.js @@ -73,8 +73,8 @@ const parseNewsList = async (url, ctx) => { }); }; -const parseArticle = async (item, ctx) => - await ctx.cache.tryGet(item.link, async () => { +const parseArticle = (item, ctx) => + ctx.cache.tryGet(item.link, async () => { const group = regex .map((r) => r.exec(item.link)) .filter((e) => e && e.groups) @@ -116,15 +116,15 @@ const parseArticle = async (item, ctx) => switch (page) { case 'audio': - return await parseAudioPage(res, api, item); + return parseAudioPage(res, api, item); case 'videos': - return await parseVideoPage(res, api, item); + return parseVideoPage(res, api, item); case 'photo-essays': - return await parsePhotoEssaysPage(res, api, item); + return parsePhotoEssaysPage(res, api, item); case 'features/': // single features page - return await parseFeaturePage(res, api, item); + return parseFeaturePage(res, api, item); default: - return await parseOtherPage(res, api, item); + return parseOtherPage(res, api, item); } } } @@ -199,7 +199,7 @@ const parseFeaturePage = async (res, api, item) => { const article_json = JSON.parse(JSON.parse(json)); const meta = article_json.meta; - const desc = article_json.blocks.map(async (b) => { + const desc = article_json.blocks.map((b) => { if (b.type === 'Paragraph') { return b.props.text.html; } @@ -208,7 +208,7 @@ const parseFeaturePage = async (res, api, item) => { return art(path.join(__dirname, 'templates/image_figure.art'), image); } if (b.type === 'Lede') { - return await processLedeMedia(b); + return processLedeMedia(b); } return ''; }); diff --git a/lib/v2/caareviews/utils.js b/lib/v2/caareviews/utils.js index 2fd12d524df56b..23b544f5857231 100644 --- a/lib/v2/caareviews/utils.js +++ b/lib/v2/caareviews/utils.js @@ -20,8 +20,8 @@ const getList = async (url) => { return list; }; -const getItems = async (ctx, list) => - await Promise.all( +const getItems = (ctx, list) => + Promise.all( list.map((item) => ctx.cache.tryGet(item.link, async () => { const detailResponse = await got(item.link); diff --git a/lib/v2/cctv/lm.js b/lib/v2/cctv/lm.js index 94172546d9ea02..b0d42273387dc1 100644 --- a/lib/v2/cctv/lm.js +++ b/lib/v2/cctv/lm.js @@ -38,34 +38,33 @@ module.exports = async (ctx) => { })); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const data = detailResponse.data; - - item.description += `
`; - - for (const c of data.video.chapters) { + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const data = detailResponse.data; + + item.description += `
`; + + for (const c of data.video.chapters) { + item.description += `
`; + } + + for (let i = 2; data.video[`chapters${i}`]; i++) { + for (const c of data.video[`chapters${i}`]) { item.description += `
`; } + } - for (let i = 2; data.video[`chapters${i}`]; i++) { - for (const c of data.video[`chapters${i}`]) { - item.description += `
`; - } - } - - item.link = item.url; + item.link = item.url; - delete item.url; - delete item.image; + delete item.url; + delete item.image; - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/chinacef/experts.js b/lib/v2/chinacef/experts.js index eb48ecdbb98d3c..a578b3c6457044 100644 --- a/lib/v2/chinacef/experts.js +++ b/lib/v2/chinacef/experts.js @@ -18,7 +18,7 @@ module.exports = async (ctx) => { .map(async (index, item) => { item = $(item); const itemLink = utils.siteLink + item.find('h2 > a').attr('href'); - const detail = await ctx.cache.tryGet(itemLink, async () => await utils.getArticleDetail(itemLink)); + const detail = await ctx.cache.tryGet(itemLink, () => utils.getArticleDetail(itemLink)); return { title: detail.title, diff --git a/lib/v2/chinacef/hot.js b/lib/v2/chinacef/hot.js index 1637b949701fd8..24717b2c470398 100644 --- a/lib/v2/chinacef/hot.js +++ b/lib/v2/chinacef/hot.js @@ -17,7 +17,7 @@ module.exports = async (ctx) => { .map(async (index, item) => { item = $(item); const itemLink = utils.siteLink + item.find('li a').attr('href'); - const detail = await ctx.cache.tryGet(itemLink, async () => await utils.getArticleDetail(itemLink)); + const detail = await ctx.cache.tryGet(itemLink, () => utils.getArticleDetail(itemLink)); return { title: detail.title, diff --git a/lib/v2/chinacef/index.js b/lib/v2/chinacef/index.js index 18725a549a6920..93ecc13430a816 100644 --- a/lib/v2/chinacef/index.js +++ b/lib/v2/chinacef/index.js @@ -18,7 +18,7 @@ module.exports = async (ctx) => { articlesLinkList.map(async (item) => { const articlesLink = utils.siteLink + item; - const detail = await ctx.cache.tryGet(articlesLink, async () => await utils.getArticleDetail(articlesLink)); + const detail = await ctx.cache.tryGet(articlesLink, () => utils.getArticleDetail(articlesLink)); const element = { title: detail.title, diff --git a/lib/v2/chinafactcheck/index.js b/lib/v2/chinafactcheck/index.js index 86ccfa2627a128..e7998d5c41a177 100644 --- a/lib/v2/chinafactcheck/index.js +++ b/lib/v2/chinafactcheck/index.js @@ -17,7 +17,7 @@ module.exports = async (ctx) => { articlesLinkList.map(async (item) => { const articlesLink = item; - const detail = await ctx.cache.tryGet(articlesLink, async () => await utils.getArticleDetail(articlesLink)); + const detail = await ctx.cache.tryGet(articlesLink, () => utils.getArticleDetail(articlesLink)); const element = { title: detail.title, diff --git a/lib/v2/chinathinktanks/viewpoint.js b/lib/v2/chinathinktanks/viewpoint.js index 089fb7358136dd..b9ff1674efacef 100644 --- a/lib/v2/chinathinktanks/viewpoint.js +++ b/lib/v2/chinathinktanks/viewpoint.js @@ -28,20 +28,19 @@ module.exports = async (ctx) => { }); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const response = await got({ - url: item.link, - cookieJar, - }); - const $ = cheerio.load(response.data); - const content = $('#art'); - item.description = content.html(); - item.pubDate = item.pubDate.includes('-') ? timezone(parseDate(item.pubDate, 'YYYY-MM-DD'), +8) : parseRelativeDate(item.pubDate); + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const response = await got({ + url: item.link, + cookieJar, + }); + const $ = cheerio.load(response.data); + const content = $('#art'); + item.description = content.html(); + item.pubDate = item.pubDate.includes('-') ? timezone(parseDate(item.pubDate, 'YYYY-MM-DD'), +8) : parseRelativeDate(item.pubDate); - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/ciidbnu/index.js b/lib/v2/ciidbnu/index.js index e1481c295ce8d7..87f26071dc68e7 100644 --- a/lib/v2/ciidbnu/index.js +++ b/lib/v2/ciidbnu/index.js @@ -28,25 +28,24 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - responseType: 'buffer', - }); - const content = cheerio.load(iconv.decode(detailResponse.data, 'gbk')); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + responseType: 'buffer', + }); + const content = cheerio.load(iconv.decode(detailResponse.data, 'gbk')); - item.description = content('#text').html(); - item.pubDate = timezone(parseDate(content('.t8').eq(0).text(), 'YYYY/M/D H:mm:ss'), +8); + item.description = content('#text').html(); + item.pubDate = timezone(parseDate(content('.t8').eq(0).text(), 'YYYY/M/D H:mm:ss'), +8); - content('.t14').remove(); + content('.t14').remove(); - item.author = content('#author').text(); + item.author = content('#author').text(); - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/dcard/section.js b/lib/v2/dcard/section.js index 8fa483fd1b746c..c5d5ef8c6f0810 100644 --- a/lib/v2/dcard/section.js +++ b/lib/v2/dcard/section.js @@ -38,7 +38,7 @@ module.exports = async (ctx) => { await page.goto(`${api}&limit=100`); await page.waitForSelector('body > pre'); const response = await page.evaluate(() => document.querySelector('body > pre').innerText); - const cookies = await ctx.cache.tryGet('dcard:cookies', async () => await page.cookies(), 3600, false); + const cookies = await ctx.cache.tryGet('dcard:cookies', () => page.cookies(), 3600, false); await page.close(); const data = JSON.parse(response); diff --git a/lib/v2/disinformationindex/blog.js b/lib/v2/disinformationindex/blog.js index e62568efbeabb4..69cc7ae8e75db0 100644 --- a/lib/v2/disinformationindex/blog.js +++ b/lib/v2/disinformationindex/blog.js @@ -23,21 +23,20 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - item.author = content('.meta-author').text(); - item.description = content('.entry-content').html(); - item.pubDate = parseDate(content('.meta-date').text(), 'MMMM D, YYYY'); + item.author = content('.meta-author').text(); + item.description = content('.entry-content').html(); + item.pubDate = parseDate(content('.meta-date').text(), 'MMMM D, YYYY'); - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/dtcj/datainsight.js b/lib/v2/dtcj/datainsight.js index 5824508589b31d..926f3490f3f8d3 100644 --- a/lib/v2/dtcj/datainsight.js +++ b/lib/v2/dtcj/datainsight.js @@ -28,20 +28,19 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.content-3mNFyi').html(); - item.pubDate = parseDate(detailResponse.data.match(/"date":"(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}\+\d{2}:\d{2})","thumbnail_url":/)[1]); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.content-3mNFyi').html(); + item.pubDate = parseDate(detailResponse.data.match(/"date":"(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}\+\d{2}:\d{2})","thumbnail_url":/)[1]); + + return item; + }) ) ); diff --git a/lib/v2/eastday/24.js b/lib/v2/eastday/24.js index f13412b5c61e81..509d8d30fa2540 100644 --- a/lib/v2/eastday/24.js +++ b/lib/v2/eastday/24.js @@ -59,21 +59,20 @@ module.exports = async (ctx) => { links.push(item.link.replace(/\.html/, `-${i}.html`)); } - links.forEach( - async (link) => - await ctx.cache.tryGet(link, async () => { - const pageResponse = await got({ - method: 'get', - url: link, - }); - const subContent = cheerio.load(pageResponse.data); - - subContent('img').each(function () { - subContent(this).attr('src', subContent(this).attr('data-url')); - }); - - item.description += subContent('#J-contain_detail_cnt').html(); - }) + links.forEach((link) => + ctx.cache.tryGet(link, async () => { + const pageResponse = await got({ + method: 'get', + url: link, + }); + const subContent = cheerio.load(pageResponse.data); + + subContent('img').each(function () { + subContent(this).attr('src', subContent(this).attr('data-url')); + }); + + item.description += subContent('#J-contain_detail_cnt').html(); + }) ); } diff --git a/lib/v2/economist/full.js b/lib/v2/economist/full.js index fb08c4d3f7700e..4ad4262a88655e 100644 --- a/lib/v2/economist/full.js +++ b/lib/v2/economist/full.js @@ -2,8 +2,8 @@ const parser = require('@/utils/rss-parser'); const got = require('@/utils/got'); const cheerio = require('cheerio'); -const getArticleDetail = async (link, ctx) => - await ctx.cache.tryGet(link, async () => { +const getArticleDetail = (link, ctx) => + ctx.cache.tryGet(link, async () => { const response = await got(link); const $ = cheerio.load(response.data); $('div.article-audio-player__center-tooltip').remove(); diff --git a/lib/v2/flyert/utils.js b/lib/v2/flyert/utils.js index d5ba8506161d8e..109febfef974ec 100644 --- a/lib/v2/flyert/utils.js +++ b/lib/v2/flyert/utils.js @@ -33,10 +33,10 @@ async function load(link) { return { description }; } -const ProcessFeed = async (list, caches) => { +const ProcessFeed = (list, caches) => { const host = 'https://www.flyert.com'; - return await Promise.all( + return Promise.all( list.map(async (item) => { const $ = cheerio.load(item); @@ -54,7 +54,7 @@ const ProcessFeed = async (list, caches) => { // 使用tryGet方法从缓存获取内容。 // 当缓存中无法获取到链接内容的时候,则使用load方法加载文章内容。 - const other = await caches.tryGet(itemUrl, async () => await load(itemUrl)); + const other = await caches.tryGet(itemUrl, () => load(itemUrl)); // 合并解析后的结果集作为该篇文章最终的输出结果 return Promise.resolve(Object.assign({}, single, other)); diff --git a/lib/v2/gocn/topics.js b/lib/v2/gocn/topics.js index b880bcbf1e796f..713e7b2d28e12b 100644 --- a/lib/v2/gocn/topics.js +++ b/lib/v2/gocn/topics.js @@ -18,6 +18,6 @@ module.exports = async (ctx) => { title: `GoCN社区-文章`, link: base_url, description: `获取GoCN站点最新文章`, - item: await Promise.all(list.map(async (item) => await ctx.cache.tryGet(`${base_url}/${item.guid}`, () => util.getFeedItem(item)))), + item: await Promise.all(list.map((item) => ctx.cache.tryGet(`${base_url}/${item.guid}`, () => util.getFeedItem(item)))), }; }; diff --git a/lib/v2/google/sitesRecentChanges.js b/lib/v2/google/sitesRecentChanges.js index 53db7cfb16ef34..de5d308d631cbb 100644 --- a/lib/v2/google/sitesRecentChanges.js +++ b/lib/v2/google/sitesRecentChanges.js @@ -28,19 +28,18 @@ module.exports = async (ctx) => { }); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('#sites-canvas').html(); - - return item; - }) + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('#sites-canvas').html(); + + return item; + }) ) ); diff --git a/lib/v2/gov/ccdi/utils.js b/lib/v2/gov/ccdi/utils.js index d48af9deac3c33..03944e7174e9e3 100644 --- a/lib/v2/gov/ccdi/utils.js +++ b/lib/v2/gov/ccdi/utils.js @@ -64,7 +64,7 @@ const changeTrCookie = async () => { const parseArticle = async (item, ctx) => { await changeTrCookie(); - return await ctx.cache.tryGet(item.link, async () => { + return ctx.cache.tryGet(item.link, async () => { const response = await got(item.link, { cookieJar }); const data = response.data; await parseCookie(data); diff --git a/lib/v2/gov/pbc/utils.js b/lib/v2/gov/pbc/utils.js index 8478f39121748d..bd06f37780e98e 100644 --- a/lib/v2/gov/pbc/utils.js +++ b/lib/v2/gov/pbc/utils.js @@ -1,8 +1,8 @@ const got = require('@/utils/got'); const cheerio = require('cheerio'); -const processItems = async (list, ctx) => - await Promise.all( +const processItems = (list, ctx) => + Promise.all( list.map((item) => ctx.cache.tryGet(item.link, async () => { const detailResponse = await got.post(item.link); diff --git a/lib/v2/gov/sichuan/deyang/govpulicinfo.js b/lib/v2/gov/sichuan/deyang/govpulicinfo.js index 09a52b6dc44c63..ae0126e0a96ed8 100644 --- a/lib/v2/gov/sichuan/deyang/govpulicinfo.js +++ b/lib/v2/gov/sichuan/deyang/govpulicinfo.js @@ -45,8 +45,8 @@ const getInfoUrlList = async (countyName) => { }; // 获取信息正文内容 -const getInfoContent = async (ctx, url, countyName) => - await ctx.cache.tryGet(url, async () => { +const getInfoContent = (ctx, url, countyName) => + ctx.cache.tryGet(url, async () => { let response; try { response = await got(url); @@ -80,7 +80,7 @@ const getInfoContent = async (ctx, url, countyName) => module.exports = async (ctx) => { const countyName = ctx.params.countyName; const infoUrlList = await getInfoUrlList(countyName); - const items = await Promise.all(infoUrlList.map(async (item) => await getInfoContent(ctx, item, countyName))); + const items = await Promise.all(infoUrlList.map((item) => getInfoContent(ctx, item, countyName))); ctx.state.data = { title: `政府公开信息 - ${countyName}`, diff --git a/lib/v2/gov/stats/utils.js b/lib/v2/gov/stats/utils.js index ce2a459d4a75c9..ef47ac62160e48 100644 --- a/lib/v2/gov/stats/utils.js +++ b/lib/v2/gov/stats/utils.js @@ -26,8 +26,8 @@ const parseContList = async (url, selector, ctx) => { return { list, title }; }; -const parseXilan = async (item, ctx) => - await ctx.cache.tryGet(item.link, async () => { +const parseXilan = (item, ctx) => + ctx.cache.tryGet(item.link, async () => { const response = await got(item.link); const $ = cheerio.load(response.data); const title = $('.xilan_titf').text(); diff --git a/lib/v2/gzh360/universal.js b/lib/v2/gzh360/universal.js index c8bd7998b63ab1..c24f51f3dc87cd 100644 --- a/lib/v2/gzh360/universal.js +++ b/lib/v2/gzh360/universal.js @@ -4,8 +4,8 @@ const { parseDate } = require('@/utils/parse-date'); const { finishArticleItem } = require('./utils'); const config = require('@/config').value; -const getInitEntry = async (url) => - await got(url) +const getInitEntry = (url) => + got(url) .then((_r) => _r.data) .catch((err) => { if (err.response.statusCode === 404) { @@ -18,7 +18,7 @@ module.exports = async (ctx, path, id, titleHeader = '', custom_title = null, sk const rootUrl = 'http://web.gzh360.com'; const currentUrl = `${rootUrl}/${id ? `${path}?id=${id}` : ''}`; - const respData = cacheInitEntry ? await ctx.cache.tryGet(currentUrl, async () => await getInitEntry(currentUrl), config.cache.routeExpire, false) : await getInitEntry(currentUrl); + const respData = cacheInitEntry ? await ctx.cache.tryGet(currentUrl, () => getInitEntry(currentUrl), config.cache.routeExpire, false) : await getInitEntry(currentUrl); const $ = cheerio.load(respData); const title = id ? $('head > title').text().split(' - ', 1)[0] : '首页'; diff --git a/lib/v2/gzh360/utils.js b/lib/v2/gzh360/utils.js index f4e35c5d30f5bd..a188d860da8a9c 100644 --- a/lib/v2/gzh360/utils.js +++ b/lib/v2/gzh360/utils.js @@ -36,8 +36,8 @@ const finishArticleItem = async (ctx, item, skipAuthor = false) => { // we can't cache the item instead of the webpage because we need to retry when the last request failed const article = await ctx.cache.tryGet( item.link, - async () => - await got(item.link) + () => + got(item.link) .then((_r) => _r.data) .catch(() => null) // it is safe do that in tryGet because a false value always lead to a cache miss ); diff --git a/lib/v2/hk01/utils.js b/lib/v2/hk01/utils.js index 5023369fb11a8e..12043de1de11c0 100644 --- a/lib/v2/hk01/utils.js +++ b/lib/v2/hk01/utils.js @@ -9,8 +9,8 @@ const apiRootUrl = 'https://web-data.api.hk01.com'; module.exports = { rootUrl, apiRootUrl, - ProcessItems: async (items, limit, tryGet) => - await Promise.all( + ProcessItems: (items, limit, tryGet) => + Promise.all( items .filter((item) => item.type !== 2) .slice(0, limit ? parseInt(limit) : 50) diff --git a/lib/v2/njnu/ceai/utils.js b/lib/v2/njnu/ceai/utils.js index dfae9702574823..1a9f2dd735fee0 100644 --- a/lib/v2/njnu/ceai/utils.js +++ b/lib/v2/njnu/ceai/utils.js @@ -23,8 +23,8 @@ async function load(link) { return { description, pubDate }; } -const ProcessFeed = async (list, caches) => - await Promise.all( +const ProcessFeed = (list, caches) => + Promise.all( // 遍历每一篇文章 list.map(async (item) => { const $ = cheerio.load(item); @@ -43,7 +43,7 @@ const ProcessFeed = async (list, caches) => // 使用tryGet方法从缓存获取内容。 // 当缓存中无法获取到链接内容的时候,则使用load方法加载文章内容。 - const other = await caches.tryGet(itemUrl, async () => await load(itemUrl)); + const other = await caches.tryGet(itemUrl, () => load(itemUrl)); // 合并解析后的结果集作为该篇文章最终的输出结果 return { ...single, ...other }; diff --git a/lib/v2/njnu/jwc/utils.js b/lib/v2/njnu/jwc/utils.js index cf6713678f0c4f..a29366436f3257 100644 --- a/lib/v2/njnu/jwc/utils.js +++ b/lib/v2/njnu/jwc/utils.js @@ -23,11 +23,11 @@ async function load(link) { return { description, pubDate }; } -const ProcessFeed = async (list, caches) => { +const ProcessFeed = (list, caches) => { const host = 'http://jwc.njnu.edu.cn/'; // 使用 Promise.all() 进行 async 并发 - return await Promise.all( + return Promise.all( // 遍历每一篇文章 list.map(async (item) => { const $ = cheerio.load(item); @@ -46,7 +46,7 @@ const ProcessFeed = async (list, caches) => { // 使用tryGet方法从缓存获取内容。 // 当缓存中无法获取到链接内容的时候,则使用load方法加载文章内容。 - const other = await caches.tryGet(itemUrl, async () => await load(itemUrl)); + const other = await caches.tryGet(itemUrl, () => load(itemUrl)); // 合并解析后的结果集作为该篇文章最终的输出结果 return { ...single, ...other }; diff --git a/lib/v2/nua/utils.js b/lib/v2/nua/utils.js index 47ccfe8fd879db..ea2cb6706cde15 100644 --- a/lib/v2/nua/utils.js +++ b/lib/v2/nua/utils.js @@ -45,8 +45,8 @@ async function ProcessList(newsUrl, baseUrl, listName, listDate, webPageName) { return [items, pageName]; } -const ProcessFeed = async (items, artiContent, ctx) => - await Promise.all( +const ProcessFeed = (items, artiContent, ctx) => + Promise.all( items.map((item) => ctx.cache.tryGet(item.link, async () => { switch (item.type) { diff --git a/lib/v2/odaily/activity.js b/lib/v2/odaily/activity.js index c7128381bfa011..e8e7a3b8c4a1e9 100644 --- a/lib/v2/odaily/activity.js +++ b/lib/v2/odaily/activity.js @@ -19,24 +19,23 @@ module.exports = async (ctx) => { })); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); - const content = cheerio.load(detailResponse.data.match(/"content":"(.*)"}},"secondaryList":/)[1]); + const content = cheerio.load(detailResponse.data.match(/"content":"(.*)"}},"secondaryList":/)[1]); - content('img').each(function () { - content(this).attr('src', content(this).attr('src').replace(/\\"/g, '')); - }); + content('img').each(function () { + content(this).attr('src', content(this).attr('src').replace(/\\"/g, '')); + }); - item.description = content.html(); + item.description = content.html(); - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/odaily/user.js b/lib/v2/odaily/user.js index 04117cced8da18..f7a89012776b77 100644 --- a/lib/v2/odaily/user.js +++ b/lib/v2/odaily/user.js @@ -24,25 +24,24 @@ module.exports = async (ctx) => { })); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); - const content = cheerio.load(detailResponse.data.match(/"content":"(.*)","extraction_tags":/)[1]); + const content = cheerio.load(detailResponse.data.match(/"content":"(.*)","extraction_tags":/)[1]); - content('img').each(function () { - content(this).attr('src', content(this).attr('src').replace(/\\"/g, '')); - }); + content('img').each(function () { + content(this).attr('src', content(this).attr('src').replace(/\\"/g, '')); + }); - item.description = content.html(); - item.author = author = detailResponse.data.match(/"name":"(.*)","role_id/)[1]; + item.description = content.html(); + item.author = author = detailResponse.data.match(/"name":"(.*)","role_id/)[1]; - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/oilchem/index.js b/lib/v2/oilchem/index.js index e884a0ea0c10cf..4de1945c1d7d80 100644 --- a/lib/v2/oilchem/index.js +++ b/lib/v2/oilchem/index.js @@ -33,29 +33,28 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - item.description = content('#content').html(); - item.pubDate = timezone( - parseDate( - content('.xq-head') - .find('span') - .text() - .match(/发布时间:\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}/)[0], - 'YYYY-MM-DD HH:mm' - ), - +8 - ); + item.description = content('#content').html(); + item.pubDate = timezone( + parseDate( + content('.xq-head') + .find('span') + .text() + .match(/发布时间:\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}/)[0], + 'YYYY-MM-DD HH:mm' + ), + +8 + ); - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/sdu/extractor/index.js b/lib/v2/sdu/extractor/index.js index 97cc111781ad24..13861ac1bcc455 100644 --- a/lib/v2/sdu/extractor/index.js +++ b/lib/v2/sdu/extractor/index.js @@ -1,15 +1,15 @@ -module.exports = async (link, ctx) => { +module.exports = (link, ctx) => { if (link.startsWith('https://xinwen.wh.sdu.edu.cn/')) { - return await require('./wh/news')(link, ctx); + return require('./wh/news')(link, ctx); } if (link.startsWith('https://www.view.sdu.edu.cn/')) { - return await require('./view')(link, ctx); + return require('./view')(link, ctx); } if (link.startsWith('https://www.sdrj.sdu.edu.cn/')) { - return await require('./sdrj')(link, ctx); + return require('./sdrj')(link, ctx); } if (link.startsWith('https://jwc.wh.sdu.edu.cn/')) { - return await require('./wh/jwc')(link, ctx); + return require('./wh/jwc')(link, ctx); } return {}; }; diff --git a/lib/v2/sdu/extractor/sdrj.js b/lib/v2/sdu/extractor/sdrj.js index 07348411316e31..49be530f8cb034 100644 --- a/lib/v2/sdu/extractor/sdrj.js +++ b/lib/v2/sdu/extractor/sdrj.js @@ -3,8 +3,8 @@ const cheerio = require('cheerio'); const { parseDate } = require('@/utils/parse-date'); const timezone = require('@/utils/timezone'); -module.exports = async (link, ctx) => - await ctx.cache.tryGet(link, async () => { +module.exports = (link, ctx) => + ctx.cache.tryGet(link, async () => { let content, author, exactDate; try { const result = await got(link); diff --git a/lib/v2/sdu/extractor/view.js b/lib/v2/sdu/extractor/view.js index 35647e247bf2bf..f28e94a50ad7c3 100644 --- a/lib/v2/sdu/extractor/view.js +++ b/lib/v2/sdu/extractor/view.js @@ -3,8 +3,8 @@ const cheerio = require('cheerio'); const { parseDate } = require('@/utils/parse-date'); const timezone = require('@/utils/timezone'); -module.exports = async (link, ctx) => - await ctx.cache.tryGet(link, async () => { +module.exports = (link, ctx) => + ctx.cache.tryGet(link, async () => { let content, author, exactDate; try { const result = await got(link); diff --git a/lib/v2/sdu/extractor/wh/jwc.js b/lib/v2/sdu/extractor/wh/jwc.js index 18e06ace2da859..fd9ad235b0cc28 100644 --- a/lib/v2/sdu/extractor/wh/jwc.js +++ b/lib/v2/sdu/extractor/wh/jwc.js @@ -3,8 +3,8 @@ const cheerio = require('cheerio'); const { parseDate } = require('@/utils/parse-date'); const timezone = require('@/utils/timezone'); -module.exports = async (link, ctx) => - await ctx.cache.tryGet(link, async () => { +module.exports = (link, ctx) => + ctx.cache.tryGet(link, async () => { let content, exactDate; try { const result = await got(link); diff --git a/lib/v2/sdu/extractor/wh/news.js b/lib/v2/sdu/extractor/wh/news.js index d7e60416887665..18ed5f9915fa45 100644 --- a/lib/v2/sdu/extractor/wh/news.js +++ b/lib/v2/sdu/extractor/wh/news.js @@ -3,8 +3,8 @@ const cheerio = require('cheerio'); const { parseDate } = require('@/utils/parse-date'); const timezone = require('@/utils/timezone'); -module.exports = async (link, ctx) => - await ctx.cache.tryGet(link, async () => { +module.exports = (link, ctx) => + ctx.cache.tryGet(link, async () => { let content, author, exactDate; try { const result = await got(link); diff --git a/lib/v2/sdu/wh/jwc.js b/lib/v2/sdu/wh/jwc.js index be17c0296011f0..a6047a4e8a4e60 100644 --- a/lib/v2/sdu/wh/jwc.js +++ b/lib/v2/sdu/wh/jwc.js @@ -21,7 +21,7 @@ module.exports = async (ctx) => { const href = anchor.attr('href'); const link = href.startsWith('http') ? href : baseUrl + href; const title = item.text(); - const { description, author: exactAuthor, exactDate } = await ctx.cache.tryGet(link, async () => await extractor(link, ctx)); + const { description, author: exactAuthor, exactDate } = await ctx.cache.tryGet(link, () => extractor(link, ctx)); const author = exactAuthor ?? '教务处'; const pubDate = exactDate ?? timezone(parseDate(dateText.slice(1, dateText.length - 1), 'YYYY-MM-DD'), +8); return { diff --git a/lib/v2/sdu/wh/news.js b/lib/v2/sdu/wh/news.js index b1511f51651c0e..1abd2559458507 100644 --- a/lib/v2/sdu/wh/news.js +++ b/lib/v2/sdu/wh/news.js @@ -17,7 +17,7 @@ module.exports = async (ctx) => { const title = anchor.attr('title'); const href = anchor.attr('href'); const link = href.startsWith('http') ? href : baseUrl + href; - const { description, author, exactDate } = await ctx.cache.tryGet(link, async () => await extractor(link, ctx)); + const { description, author, exactDate } = await ctx.cache.tryGet(link, () => extractor(link, ctx)); const span = item.find('span'); const pubDate = exactDate ?? parseDate(span.text(), 'YYYY/MM/DD'); return { diff --git a/lib/v2/shmeea/self-study.js b/lib/v2/shmeea/self-study.js index ec1118b867684f..ffb76eaedfc881 100644 --- a/lib/v2/shmeea/self-study.js +++ b/lib/v2/shmeea/self-study.js @@ -3,9 +3,9 @@ const cheerio = require('cheerio'); const { parseDate } = require('@/utils/parse-date'); const timezone = require('@/utils/timezone'); -async function load_detail(list, cache) { - return await Promise.all( - list.map(async (item) => { +function load_detail(list, cache) { + return Promise.all( + list.map((item) => { const notice_item = cheerio.load(item); const href = notice_item('a').attr('href'); const url = 'http://www.shmeea.edu.cn' + href; @@ -16,7 +16,7 @@ async function load_detail(list, cache) { link: href, }; } - return await cache.tryGet(url, async () => { + return cache.tryGet(url, async () => { const detail_response = await got({ method: 'get', url, diff --git a/lib/v2/sicau/dky.js b/lib/v2/sicau/dky.js index 47881344ace654..23a4377f45621b 100644 --- a/lib/v2/sicau/dky.js +++ b/lib/v2/sicau/dky.js @@ -29,19 +29,18 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.v_news_content').html(); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.v_news_content').html(); + + return item; + }) ) ); diff --git a/lib/v2/sicau/yan.js b/lib/v2/sicau/yan.js index 11b81fb98c5645..13862690645d45 100644 --- a/lib/v2/sicau/yan.js +++ b/lib/v2/sicau/yan.js @@ -28,20 +28,19 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.v_news_content').html(); - item.pubDate = timezone(parseDate(detailResponse.data.match(/发布时间: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/)[1], 'YYYY-MM-DD HH:mm:ss'), +8); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.v_news_content').html(); + item.pubDate = timezone(parseDate(detailResponse.data.match(/发布时间: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/)[1], 'YYYY-MM-DD HH:mm:ss'), +8); + + return item; + }) ) ); diff --git a/lib/v2/thepaper/utils.js b/lib/v2/thepaper/utils.js index 71737e82d7acb7..654ed586f36deb 100644 --- a/lib/v2/thepaper/utils.js +++ b/lib/v2/thepaper/utils.js @@ -17,13 +17,13 @@ const defaultRssItem = (item) => ({ }); module.exports = { - ProcessItem: async (item, ctx) => { + ProcessItem: (item, ctx) => { if (item.link) { // external link return defaultRssItem(item); } const itemUrl = `https://m.thepaper.cn/detail/${item.contId}`; - return await ctx.cache.tryGet(itemUrl, async () => { + return ctx.cache.tryGet(itemUrl, async () => { const res = await got(itemUrl); const data = JSON.parse(cheerio.load(res.data)('#__NEXT_DATA__').html()); const detailData = data.props.pageProps.detailData; diff --git a/lib/v2/twitter/web-api/twitter-api.js b/lib/v2/twitter/web-api/twitter-api.js index 1409d4e35d0381..2ff909432a336f 100644 --- a/lib/v2/twitter/web-api/twitter-api.js +++ b/lib/v2/twitter/web-api/twitter-api.js @@ -199,13 +199,13 @@ const cacheTryGet = async (cache, screenName, params, func) => { const id = await getUserID(cache, screenName); const funcName = func.name; const paramsString = JSON.stringify(params); - return await cache.tryGet(`twitter:${id}:${funcName}:${paramsString}`, async () => await func(id, params), config.cache.routeExpire, false); + return cache.tryGet(`twitter:${id}:${funcName}:${paramsString}`, () => func(id, params), config.cache.routeExpire, false); }; -const getUserTweets = async (cache, screenName, params = {}) => await cacheTryGet(cache, screenName, params, getUserTweetsByID); -const getUserTweetsAndReplies = async (cache, screenName, params = {}) => await cacheTryGet(cache, screenName, params, getUserTweetsAndRepliesByID); -const getUserMedia = async (cache, screenName, params = {}) => await cacheTryGet(cache, screenName, params, getUserMediaByID); -const getUserLikes = async (cache, screenName, params = {}) => await cacheTryGet(cache, screenName, params, getUserLikesByID); +const getUserTweets = (cache, screenName, params = {}) => cacheTryGet(cache, screenName, params, getUserTweetsByID); +const getUserTweetsAndReplies = (cache, screenName, params = {}) => cacheTryGet(cache, screenName, params, getUserTweetsAndRepliesByID); +const getUserMedia = (cache, screenName, params = {}) => cacheTryGet(cache, screenName, params, getUserMediaByID); +const getUserLikes = (cache, screenName, params = {}) => cacheTryGet(cache, screenName, params, getUserLikesByID); const getSearch = async (keywords, params = {}) => gatherLegacyFromLegacyApiData(await timelineKeywords(keywords, params), 'sq-I-t-'); diff --git a/lib/v2/uber/blog.js b/lib/v2/uber/blog.js index af5c57dbd2d90f..cad51e87ccd45e 100644 --- a/lib/v2/uber/blog.js +++ b/lib/v2/uber/blog.js @@ -24,29 +24,28 @@ module.exports = async (ctx) => { pages = pages.map((page) => page.data); const result = await Promise.all( - pages.map( - async (page) => - await Promise.all( - page.posts.map((post) => - ctx.cache.tryGet(`${rootURL}${post.link}`, async () => { - let { data: article } = await got(`${apiURL}/wp-json/blog/v1/data`, { - searchParams: { - slug: post.link.replace(/\//g, '').replace('blog', ''), - }, - }); - article = article.article; + pages.map((page) => + Promise.all( + page.posts.map((post) => + ctx.cache.tryGet(`${rootURL}${post.link}`, async () => { + let { data: article } = await got(`${apiURL}/wp-json/blog/v1/data`, { + searchParams: { + slug: post.link.replace(/\//g, '').replace('blog', ''), + }, + }); + article = article.article; - return { - link: article.link, - title: article.title, - description: article.content, - pubDate: parseDate(article.created), - author: article.author, - category: article.categories.map((category) => category.category_name), - }; - }) - ) + return { + link: article.link, + title: article.title, + description: article.content, + pubDate: parseDate(article.created), + author: article.author, + category: article.categories.map((category) => category.category_name), + }; + }) ) + ) ) ); diff --git a/lib/v2/wechat/ce.js b/lib/v2/wechat/ce.js index f0f56583042fa0..6f5c41058c77d5 100644 --- a/lib/v2/wechat/ce.js +++ b/lib/v2/wechat/ce.js @@ -22,11 +22,11 @@ module.exports = async (ctx) => { ); const items = await Promise.all( - feed.items.splice(0, 10).map(async (item) => { + feed.items.splice(0, 10).map((item) => { // generally speaking, changing `item.link` of an existing route could potentially break `item.guid` // but since the route has been down for at least 8 months, it's probably safe item.link = item.link.replace(/^http:\/\//, 'https://'); - return await ctx.cache.tryGet(item.link, async () => { + return ctx.cache.tryGet(item.link, async () => { const response = await got.get(item.link, { headers: { 'User-Agent': UA, diff --git a/lib/v2/wechat/data258.js b/lib/v2/wechat/data258.js index 6e86ead6124133..3ed97f8c0314ee 100644 --- a/lib/v2/wechat/data258.js +++ b/lib/v2/wechat/data258.js @@ -123,7 +123,7 @@ module.exports = async (ctx) => { throw err; } - await Promise.all(items.map(async (item) => await finishArticleItem(ctx, item, !!categoryPage))); + await Promise.all(items.map((item) => finishArticleItem(ctx, item, !!categoryPage))); ctx.state.data = { title, diff --git a/lib/v2/wechat/ershcimi.js b/lib/v2/wechat/ershcimi.js index 2772c2e8dfda55..ceaeb39e876521 100644 --- a/lib/v2/wechat/ershcimi.js +++ b/lib/v2/wechat/ershcimi.js @@ -24,7 +24,7 @@ module.exports = async (ctx) => { }) .get(); - await Promise.all(items.map(async (item) => await finishArticleItem(ctx, item))); + await Promise.all(items.map((item) => finishArticleItem(ctx, item))); ctx.state.data = { title: `微信公众号 - ${$('span.name').text()}`, diff --git a/lib/v2/wechat/feeddd.js b/lib/v2/wechat/feeddd.js index ae687f92ad4741..009b8b43b08fe4 100644 --- a/lib/v2/wechat/feeddd.js +++ b/lib/v2/wechat/feeddd.js @@ -18,7 +18,7 @@ module.exports = async (ctx) => { guid: item.id, })); - items = await Promise.all(items.map(async (item) => await finishArticleItem(ctx, item))); + items = await Promise.all(items.map((item) => finishArticleItem(ctx, item))); ctx.state.data = { title: response.data.title, diff --git a/lib/v2/wechat/feeds.js b/lib/v2/wechat/feeds.js index 799ad0a16e943c..c28378f2f1ef81 100644 --- a/lib/v2/wechat/feeds.js +++ b/lib/v2/wechat/feeds.js @@ -12,7 +12,7 @@ module.exports = async (ctx) => { link: item.link, guid: item.link, })); - await Promise.all(items.map(async (item) => await finishArticleItem(ctx, item))); + await Promise.all(items.map((item) => finishArticleItem(ctx, item))); ctx.state.data = { title: feed.title, diff --git a/lib/v2/wechat/mp.js b/lib/v2/wechat/mp.js index 308fb2e121866d..31bd6332663eba 100755 --- a/lib/v2/wechat/mp.js +++ b/lib/v2/wechat/mp.js @@ -27,12 +27,12 @@ module.exports = async (ctx) => { // 标题,另外差一个菜单标题!求助 const mptitle = $('div.articles_header').find('a').text() + `|` + $('div.articles_header > h2.rich_media_title').text(); const articledata = await Promise.all( - list.map(async (item) => { + list.map((item) => { const single = { link: item.link, guid: item.link, }; - return await finishArticleItem(ctx, single); + return finishArticleItem(ctx, single); }) ); ctx.state.data = { diff --git a/lib/v2/wechat/msgalbum.js b/lib/v2/wechat/msgalbum.js index 0fcb358332dcfe..1a65f9c44a3172 100644 --- a/lib/v2/wechat/msgalbum.js +++ b/lib/v2/wechat/msgalbum.js @@ -15,7 +15,7 @@ module.exports = async (ctx) => { const list = $('li').get(); const mptitle = $('.album__author-name').text() + `|` + $('.album__label-title').text(); const articledata = await Promise.all( - list.map(async (item) => { + list.map((item) => { const link = $(item).attr('data-link').replace('http://', 'https://'); const title = $(item).attr('data-title'); const single = { @@ -23,7 +23,7 @@ module.exports = async (ctx) => { link, guid: link, }; - return await finishArticleItem(ctx, single); + return finishArticleItem(ctx, single); }) ); ctx.state.data = { diff --git a/lib/v2/wfu/news.js b/lib/v2/wfu/news.js index 66feb0be199f73..461dc66688791d 100644 --- a/lib/v2/wfu/news.js +++ b/lib/v2/wfu/news.js @@ -80,7 +80,7 @@ module.exports = async (ctx) => { // 对于列表的每一项, 单独获取 时间与详细内容 // eslint-disable-next-line no-return-await - const other = await ctx.cache.tryGet($item_url, async () => await load($item_url)); + const other = await ctx.cache.tryGet($item_url, () => load($item_url)); // 合并解析后的结果集作为该篇文章最终的输出结果 return { ...single, ...other }; }) diff --git a/lib/v2/who/news-room.js b/lib/v2/who/news-room.js index c37c5ef102c8ed..fb850fc7b6ce6a 100644 --- a/lib/v2/who/news-room.js +++ b/lib/v2/who/news-room.js @@ -43,28 +43,27 @@ module.exports = async (ctx) => { } const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); - const matches = detailResponse.data.match(/"headline":"(.*)","description":"(.*)","datePublished":"(.*)","image"/); + const matches = detailResponse.data.match(/"headline":"(.*)","description":"(.*)","datePublished":"(.*)","image"/); - if (matches) { - item.title = matches[1]; - item.description = matches[2]; - item.pubDate = parseDate(matches[3]); - } else { - const content = cheerio.load(detailResponse.data); + if (matches) { + item.title = matches[1]; + item.description = matches[2]; + item.pubDate = parseDate(matches[3]); + } else { + const content = cheerio.load(detailResponse.data); - item.description = content('.sf-content-block').html(); - } + item.description = content('.sf-content-block').html(); + } - return item; - }) + return item; + }) ) ); diff --git a/lib/v2/who/news.js b/lib/v2/who/news.js index 0d1781106f92ad..309a33cc98ad3b 100644 --- a/lib/v2/who/news.js +++ b/lib/v2/who/news.js @@ -20,18 +20,17 @@ module.exports = async (ctx) => { })); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - - item.description = detailResponse.data.match(/"description":"(.*)","datePublished"/)[1]; - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + + item.description = detailResponse.data.match(/"description":"(.*)","datePublished"/)[1]; + + return item; + }) ) ); diff --git a/lib/v2/wp-china/news.js b/lib/v2/wp-china/news.js index 8ad96177c07647..368b4b6deb5aa2 100644 --- a/lib/v2/wp-china/news.js +++ b/lib/v2/wp-china/news.js @@ -33,19 +33,18 @@ module.exports = async (ctx) => { .get(); const items = await Promise.all( - list.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); - - item.description = content('.wb100').html(); - - return item; - }) + list.map((item) => + ctx.cache.tryGet(item.link, async () => { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); + + item.description = content('.wb100').html(); + + return item; + }) ) ); diff --git a/lib/v2/wyzxwk/article.js b/lib/v2/wyzxwk/article.js index 82e42862b08c84..9cd9c593af3989 100644 --- a/lib/v2/wyzxwk/article.js +++ b/lib/v2/wyzxwk/article.js @@ -29,31 +29,30 @@ module.exports = async (ctx) => { }); items = await Promise.all( - items.map( - async (item) => - await ctx.cache.tryGet(item.link, async () => { - if (item.link.indexOf('wyzxwk.com') > 0) { - try { - const detailResponse = await got({ - method: 'get', - url: item.link, - }); - const content = cheerio.load(detailResponse.data); + items.map((item) => + ctx.cache.tryGet(item.link, async () => { + if (item.link.indexOf('wyzxwk.com') > 0) { + try { + const detailResponse = await got({ + method: 'get', + url: item.link, + }); + const content = cheerio.load(detailResponse.data); - content('.zs-modal-body').prev().nextAll().remove(); + content('.zs-modal-body').prev().nextAll().remove(); - const pubDate = detailResponse.data.match(/(\d{4}-\d{2}-\d{2})<\/span>/); - if (pubDate) { - item.pubDate = parseDate(pubDate[1], 'YYYY-MM-DD'); - } - - item.description = content('article').html(); - } catch (e) { - item.description = ''; + const pubDate = detailResponse.data.match(/(\d{4}-\d{2}-\d{2})<\/span>/); + if (pubDate) { + item.pubDate = parseDate(pubDate[1], 'YYYY-MM-DD'); } + + item.description = content('article').html(); + } catch (e) { + item.description = ''; } - return item; - }) + } + return item; + }) ) ); diff --git a/lib/v2/yicai/utils.js b/lib/v2/yicai/utils.js index 970e15bbab59ff..6414d8cfbd5624 100644 --- a/lib/v2/yicai/utils.js +++ b/lib/v2/yicai/utils.js @@ -28,7 +28,7 @@ module.exports = { }), })); - return await Promise.all( + return Promise.all( items.map((item) => tryGet(item.link, async () => { const detailResponse = await got({ diff --git a/test/middleware/anti-hotlink.js b/test/middleware/anti-hotlink.js index 3447c47d4562bc..ea6410f978cf0d 100644 --- a/test/middleware/anti-hotlink.js +++ b/test/middleware/anti-hotlink.js @@ -200,13 +200,13 @@ const testAntiHotlink = async (path, expectObj, query) => { return parsed; }; -const expectImgOrigin = async (query) => await testAntiHotlink('/test/complicated', expects.complicated.origin, query); -const expectImgProcessed = async (query) => await testAntiHotlink('/test/complicated', expects.complicated.processed, query); -const expectImgUrlencoded = async (query) => await testAntiHotlink('/test/complicated', expects.complicated.urlencoded, query); -const expectMultimediaOrigin = async (query) => await testAntiHotlink('/test/multimedia', expects.multimedia.origin, query); -const expectMultimediaRelayed = async (query) => await testAntiHotlink('/test/multimedia', expects.multimedia.relayed, query); -const expectMultimediaPartlyRelayed = async (query) => await testAntiHotlink('/test/multimedia', expects.multimedia.partlyRelayed, query); -const expectMultimediaWrappedInIframe = async (query) => await testAntiHotlink('/test/multimedia', expects.multimedia.wrappedInIframe, query); +const expectImgOrigin = (query) => testAntiHotlink('/test/complicated', expects.complicated.origin, query); +const expectImgProcessed = (query) => testAntiHotlink('/test/complicated', expects.complicated.processed, query); +const expectImgUrlencoded = (query) => testAntiHotlink('/test/complicated', expects.complicated.urlencoded, query); +const expectMultimediaOrigin = (query) => testAntiHotlink('/test/multimedia', expects.multimedia.origin, query); +const expectMultimediaRelayed = (query) => testAntiHotlink('/test/multimedia', expects.multimedia.relayed, query); +const expectMultimediaPartlyRelayed = (query) => testAntiHotlink('/test/multimedia', expects.multimedia.partlyRelayed, query); +const expectMultimediaWrappedInIframe = (query) => testAntiHotlink('/test/multimedia', expects.multimedia.wrappedInIframe, query); describe('anti-hotlink', () => { it('template-legacy', async () => { From 9fa845c16370e9778db94c726a2638dedad89224 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Feb 2023 22:03:35 +0000 Subject: [PATCH 3/4] chore(deps-dev): bump jest from 29.4.2 to 29.4.3 (#11878) Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) from 29.4.2 to 29.4.3. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/commits/v29.4.3/packages/jest) --- updated-dependencies: - dependency-name: jest dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 709 +++++++++++++++++++++++++-------------------------- 2 files changed, 355 insertions(+), 356 deletions(-) diff --git a/package.json b/package.json index 0fc0d843cb8849..f1e87d54ffbcc8 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,7 @@ "eslint-plugin-prettier": "4.2.1", "eslint-plugin-yml": "1.5.0", "fs-extra": "11.1.0", - "jest": "29.4.2", + "jest": "29.4.3", "jest-junit": "15.0.0", "meilisearch": "0.31.1", "mockdate": "3.0.5", diff --git a/yarn.lock b/yarn.lock index a7dc8ee12a3bb5..7cf0192279f19e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1081,109 +1081,109 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.4.2.tgz#f78374905c2454764152904a344a2d5226b0ef09" - integrity sha512-0I/rEJwMpV9iwi9cDEnT71a5nNGK9lj8Z4+1pRAU2x/thVXCDnaTGrvxyK+cAqZTFVFCiR+hfVrP4l2m+dCmQg== +"@jest/console@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.4.3.tgz#1f25a99f7f860e4c46423b5b1038262466fadde1" + integrity sha512-W/o/34+wQuXlgqlPYTansOSiBnuxrTv61dEVkA6HNmpcgHLUjfaUbdqt6oVvOzaawwo9IdW9QOtMgQ1ScSZC4A== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^29.4.2" - jest-util "^29.4.2" + jest-message-util "^29.4.3" + jest-util "^29.4.3" slash "^3.0.0" -"@jest/core@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.4.2.tgz#6e999b67bdc2df9d96ba9b142465bda71ee472c2" - integrity sha512-KGuoQah0P3vGNlaS/l9/wQENZGNKGoWb+OPxh3gz+YzG7/XExvYu34MzikRndQCdM2S0tzExN4+FL37i6gZmCQ== +"@jest/core@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.4.3.tgz#829dd65bffdb490de5b0f69e97de8e3b5eadd94b" + integrity sha512-56QvBq60fS4SPZCuM7T+7scNrkGIe7Mr6PVIXUpu48ouvRaWOFqRPV91eifvFM0ay2HmfswXiGf97NGUN5KofQ== dependencies: - "@jest/console" "^29.4.2" - "@jest/reporters" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/transform" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/console" "^29.4.3" + "@jest/reporters" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/transform" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" ci-info "^3.2.0" exit "^0.1.2" graceful-fs "^4.2.9" - jest-changed-files "^29.4.2" - jest-config "^29.4.2" - jest-haste-map "^29.4.2" - jest-message-util "^29.4.2" - jest-regex-util "^29.4.2" - jest-resolve "^29.4.2" - jest-resolve-dependencies "^29.4.2" - jest-runner "^29.4.2" - jest-runtime "^29.4.2" - jest-snapshot "^29.4.2" - jest-util "^29.4.2" - jest-validate "^29.4.2" - jest-watcher "^29.4.2" + jest-changed-files "^29.4.3" + jest-config "^29.4.3" + jest-haste-map "^29.4.3" + jest-message-util "^29.4.3" + jest-regex-util "^29.4.3" + jest-resolve "^29.4.3" + jest-resolve-dependencies "^29.4.3" + jest-runner "^29.4.3" + jest-runtime "^29.4.3" + jest-snapshot "^29.4.3" + jest-util "^29.4.3" + jest-validate "^29.4.3" + jest-watcher "^29.4.3" micromatch "^4.0.4" - pretty-format "^29.4.2" + pretty-format "^29.4.3" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.4.2.tgz#ee92c316ee2fbdf0bcd9d2db0ef42d64fea26b56" - integrity sha512-JKs3VUtse0vQfCaFGJRX1bir9yBdtasxziSyu+pIiEllAQOe4oQhdCYIf3+Lx+nGglFktSKToBnRJfD5QKp+NQ== +"@jest/environment@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.4.3.tgz#9fe2f3169c3b33815dc4bd3960a064a83eba6548" + integrity sha512-dq5S6408IxIa+lr54zeqce+QgI+CJT4nmmA+1yzFgtcsGK8c/EyiUb9XQOgz3BMKrRDfKseeOaxj2eO8LlD3lA== dependencies: - "@jest/fake-timers" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/fake-timers" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" - jest-mock "^29.4.2" + jest-mock "^29.4.3" -"@jest/expect-utils@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.4.2.tgz#cd0065dfdd8e8a182aa350cc121db97b5eed7b3f" - integrity sha512-Dd3ilDJpBnqa0GiPN7QrudVs0cczMMHtehSo2CSTjm3zdHx0RcpmhFNVEltuEFeqfLIyWKFI224FsMSQ/nsJQA== +"@jest/expect-utils@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.4.3.tgz#95ce4df62952f071bcd618225ac7c47eaa81431e" + integrity sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ== dependencies: - jest-get-type "^29.4.2" + jest-get-type "^29.4.3" -"@jest/expect@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.4.2.tgz#2d4a6a41b29380957c5094de19259f87f194578b" - integrity sha512-NUAeZVApzyaeLjfWIV/64zXjA2SS+NuUPHpAlO7IwVMGd5Vf9szTl9KEDlxY3B4liwLO31os88tYNHl6cpjtKQ== +"@jest/expect@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.4.3.tgz#d31a28492e45a6bcd0f204a81f783fe717045c6e" + integrity sha512-iktRU/YsxEtumI9zsPctYUk7ptpC+AVLLk1Ax3AsA4g1C+8OOnKDkIQBDHtD5hA/+VtgMd5AWI5gNlcAlt2vxQ== dependencies: - expect "^29.4.2" - jest-snapshot "^29.4.2" + expect "^29.4.3" + jest-snapshot "^29.4.3" -"@jest/fake-timers@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.4.2.tgz#af43ee1a5720b987d0348f80df98f2cb17d45cd0" - integrity sha512-Ny1u0Wg6kCsHFWq7A/rW/tMhIedq2siiyHyLpHCmIhP7WmcAmd2cx95P+0xtTZlj5ZbJxIRQi4OPydZZUoiSQQ== +"@jest/fake-timers@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.4.3.tgz#31e982638c60fa657d310d4b9d24e023064027b0" + integrity sha512-4Hote2MGcCTWSD2gwl0dwbCpBRHhE6olYEuTj8FMowdg3oQWNKr2YuxenPQYZ7+PfqPY1k98wKDU4Z+Hvd4Tiw== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^29.4.2" - jest-mock "^29.4.2" - jest-util "^29.4.2" + jest-message-util "^29.4.3" + jest-mock "^29.4.3" + jest-util "^29.4.3" -"@jest/globals@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.4.2.tgz#73f85f5db0e17642258b25fd0b9fc89ddedb50eb" - integrity sha512-zCk70YGPzKnz/I9BNFDPlK+EuJLk21ur/NozVh6JVM86/YYZtZHqxFFQ62O9MWq7uf3vIZnvNA0BzzrtxD9iyg== +"@jest/globals@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.4.3.tgz#63a2c4200d11bc6d46f12bbe25b07f771fce9279" + integrity sha512-8BQ/5EzfOLG7AaMcDh7yFCbfRLtsc+09E1RQmRBI4D6QQk4m6NSK/MXo+3bJrBN0yU8A2/VIcqhvsOLFmziioA== dependencies: - "@jest/environment" "^29.4.2" - "@jest/expect" "^29.4.2" - "@jest/types" "^29.4.2" - jest-mock "^29.4.2" + "@jest/environment" "^29.4.3" + "@jest/expect" "^29.4.3" + "@jest/types" "^29.4.3" + jest-mock "^29.4.3" -"@jest/reporters@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.4.2.tgz#6abfa923941daae0acc76a18830ee9e79a22042d" - integrity sha512-10yw6YQe75zCgYcXgEND9kw3UZZH5tJeLzWv4vTk/2mrS1aY50A37F+XT2hPO5OqQFFnUWizXD8k1BMiATNfUw== +"@jest/reporters@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.4.3.tgz#0a68a0c0f20554760cc2e5443177a0018969e353" + integrity sha512-sr2I7BmOjJhyqj9ANC6CTLsL4emMoka7HkQpcoMRlhCbQJjz2zsRzw0BDPiPyEFDXAbxKgGFYuQZiSJ1Y6YoTg== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/transform" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/console" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/transform" "^29.4.3" + "@jest/types" "^29.4.3" "@jridgewell/trace-mapping" "^0.3.15" "@types/node" "*" chalk "^4.0.0" @@ -1196,77 +1196,77 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.1.3" - jest-message-util "^29.4.2" - jest-util "^29.4.2" - jest-worker "^29.4.2" + jest-message-util "^29.4.3" + jest-util "^29.4.3" + jest-worker "^29.4.3" slash "^3.0.0" string-length "^4.0.1" strip-ansi "^6.0.0" v8-to-istanbul "^9.0.1" -"@jest/schemas@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.2.tgz#cf7cfe97c5649f518452b176c47ed07486270fc1" - integrity sha512-ZrGzGfh31NtdVH8tn0mgJw4khQuNHiKqdzJAFbCaERbyCP9tHlxWuL/mnMu8P7e/+k4puWjI1NOzi/sFsjce/g== +"@jest/schemas@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" + integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== dependencies: "@sinclair/typebox" "^0.25.16" -"@jest/source-map@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.2.tgz#f9815d59e25cd3d6828e41489cd239271018d153" - integrity sha512-tIoqV5ZNgYI9XCKXMqbYe5JbumcvyTgNN+V5QW4My033lanijvCD0D4PI9tBw4pRTqWOc00/7X3KVvUh+qnF4Q== +"@jest/source-map@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20" + integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w== dependencies: "@jridgewell/trace-mapping" "^0.3.15" callsites "^3.0.0" graceful-fs "^4.2.9" -"@jest/test-result@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.4.2.tgz#34b0ba069f2e3072261e4884c8fb6bd15ed6fb8d" - integrity sha512-HZsC3shhiHVvMtP+i55MGR5bPcc3obCFbA5bzIOb8pCjwBZf11cZliJncCgaVUbC5yoQNuGqCkC0Q3t6EItxZA== +"@jest/test-result@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.4.3.tgz#e13d973d16c8c7cc0c597082d5f3b9e7f796ccb8" + integrity sha512-Oi4u9NfBolMq9MASPwuWTlC5WvmNRwI4S8YrQg5R5Gi47DYlBe3sh7ILTqi/LGrK1XUE4XY9KZcQJTH1WJCLLA== dependencies: - "@jest/console" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/console" "^29.4.3" + "@jest/types" "^29.4.3" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.4.2.tgz#8b48e5bc4af80b42edacaf2a733d4f295edf28fb" - integrity sha512-9Z2cVsD6CcObIVrWigHp2McRJhvCxL27xHtrZFgNC1RwnoSpDx6fZo8QYjJmziFlW9/hr78/3sxF54S8B6v8rg== +"@jest/test-sequencer@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.4.3.tgz#0862e876a22993385a0f3e7ea1cc126f208a2898" + integrity sha512-yi/t2nES4GB4G0mjLc0RInCq/cNr9dNwJxcGg8sslajua5Kb4kmozAc+qPLzplhBgfw1vLItbjyHzUN92UXicw== dependencies: - "@jest/test-result" "^29.4.2" + "@jest/test-result" "^29.4.3" graceful-fs "^4.2.9" - jest-haste-map "^29.4.2" + jest-haste-map "^29.4.3" slash "^3.0.0" -"@jest/transform@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.4.2.tgz#b24b72dbab4c8675433a80e222d6a8ef4656fb81" - integrity sha512-kf1v5iTJHn7p9RbOsBuc/lcwyPtJaZJt5885C98omWz79NIeD3PfoiiaPSu7JyCyFzNOIzKhmMhQLUhlTL9BvQ== +"@jest/transform@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.4.3.tgz#f7d17eac9cb5bb2e1222ea199c7c7e0835e0c037" + integrity sha512-8u0+fBGWolDshsFgPQJESkDa72da/EVwvL+II0trN2DR66wMwiQ9/CihaGfHdlLGFzbBZwMykFtxuwFdZqlKwg== dependencies: "@babel/core" "^7.11.6" - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@jridgewell/trace-mapping" "^0.3.15" babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" convert-source-map "^2.0.0" fast-json-stable-stringify "^2.1.0" graceful-fs "^4.2.9" - jest-haste-map "^29.4.2" - jest-regex-util "^29.4.2" - jest-util "^29.4.2" + jest-haste-map "^29.4.3" + jest-regex-util "^29.4.3" + jest-util "^29.4.3" micromatch "^4.0.4" pirates "^4.0.4" slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^29.4.2": - version "29.4.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.4.2.tgz#8f724a414b1246b2bfd56ca5225d9e1f39540d82" - integrity sha512-CKlngyGP0fwlgC1BRUtPZSiWLBhyS9dKwKmyGxk8Z6M82LBEGB2aLQSg+U1MyLsU+M7UjnlLllBM2BLWKVm/Uw== +"@jest/types@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.4.3.tgz#9069145f4ef09adf10cec1b2901b2d390031431f" + integrity sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA== dependencies: - "@jest/schemas" "^29.4.2" + "@jest/schemas" "^29.4.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" @@ -3031,15 +3031,15 @@ babel-extract-comments@^1.0.0: dependencies: babylon "^6.18.0" -babel-jest@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.4.2.tgz#b17b9f64be288040877cbe2649f91ac3b63b2ba6" - integrity sha512-vcghSqhtowXPG84posYkkkzcZsdayFkubUgbE3/1tuGbX7AQtwCkkNA/wIbB0BMjuCPoqTkiDyKN7Ty7d3uwNQ== +babel-jest@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.4.3.tgz#478b84d430972b277ad67dd631be94abea676792" + integrity sha512-o45Wyn32svZE+LnMVWv/Z4x0SwtLbh4FyGcYtR20kIWd+rdrDZ9Fzq8Ml3MYLD+mZvEdzCjZsCnYZ2jpJyQ+Nw== dependencies: - "@jest/transform" "^29.4.2" + "@jest/transform" "^29.4.3" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.4.2" + babel-preset-jest "^29.4.3" chalk "^4.0.0" graceful-fs "^4.2.9" slash "^3.0.0" @@ -3072,10 +3072,10 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.4.2.tgz#22aa43e255230f02371ffef1cac7eedef58f60bc" - integrity sha512-5HZRCfMeWypFEonRbEkwWXtNS1sQK159LhRVyRuLzyfVBxDy/34Tr/rg4YVi0SScSJ4fqeaR/OIeceJ/LaQ0pQ== +babel-plugin-jest-hoist@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.4.3.tgz#ad1dfb5d31940957e00410ef7d9b2aa94b216101" + integrity sha512-mB6q2q3oahKphy5V7CpnNqZOCkxxZ9aokf1eh82Dy3jQmg4xvM1tGrh5y6BQUJh4a3Pj9+eLfwvAZ7VNKg7H8Q== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -3137,12 +3137,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.4.2.tgz#f0b20c6a79a9f155515e72a2d4f537fe002a4e38" - integrity sha512-ecWdaLY/8JyfUDr0oELBMpj3R5I1L6ZqG+kRJmwqfHtLWuPrJStR0LUkvUhfykJWTsXXMnohsayN/twltBbDrQ== +babel-preset-jest@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.4.3.tgz#bb926b66ae253b69c6e3ef87511b8bb5c53c5b52" + integrity sha512-gWx6COtSuma6n9bw+8/F+2PCXrIgxV/D1TJFnp6OyBK2cxPWg0K9p/sriNYeifKjpUkMViWQ09DSWtzJQRETsw== dependencies: - babel-plugin-jest-hoist "^29.4.2" + babel-plugin-jest-hoist "^29.4.3" babel-preset-current-node-syntax "^1.0.0" babel-runtime@^6.26.0: @@ -4967,10 +4967,10 @@ dezalgo@^1.0.4: asap "^2.0.0" wrappy "1" -diff-sequences@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.2.tgz#711fe6bd8a5869fe2539cee4a5152425ff671fda" - integrity sha512-R6P0Y6PrsH3n4hUXxL3nns0rbRk6Q33js3ygJBeEpbzLzgcNuJ61+u0RXasFpTKISw99TxUzFnumSnRLsjhLaw== +diff-sequences@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" + integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== diffie-hellman@^5.0.0: version "5.0.3" @@ -5936,16 +5936,16 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expect@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.4.2.tgz#2ae34eb88de797c64a1541ad0f1e2ea8a7a7b492" - integrity sha512-+JHYg9O3hd3RlICG90OPVjRkPBoiUH7PxvDVMnRiaq1g6JUgZStX514erMl0v2Dc5SkfVbm7ztqbd6qHHPn+mQ== +expect@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/expect/-/expect-29.4.3.tgz#5e47757316df744fe3b8926c3ae8a3ebdafff7fe" + integrity sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg== dependencies: - "@jest/expect-utils" "^29.4.2" - jest-get-type "^29.4.2" - jest-matcher-utils "^29.4.2" - jest-message-util "^29.4.2" - jest-util "^29.4.2" + "@jest/expect-utils" "^29.4.3" + jest-get-type "^29.4.3" + jest-matcher-utils "^29.4.3" + jest-message-util "^29.4.3" + jest-util "^29.4.3" express@^4.17.1: version "4.18.2" @@ -8210,144 +8210,144 @@ javascript-stringify@^2.0.1: resolved "https://registry.yarnpkg.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz#27c76539be14d8bd128219a2d731b09337904e79" integrity sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg== -jest-changed-files@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.4.2.tgz#bee1fafc8b620d6251423d1978a0080546bc4376" - integrity sha512-Qdd+AXdqD16PQa+VsWJpxR3kN0JyOCX1iugQfx5nUgAsI4gwsKviXkpclxOK9ZnwaY2IQVHz+771eAvqeOlfuw== +jest-changed-files@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.4.3.tgz#7961fe32536b9b6d5c28dfa0abcfab31abcf50a7" + integrity sha512-Vn5cLuWuwmi2GNNbokPOEcvrXGSGrqVnPEZV7rC6P7ck07Dyw9RFnvWglnupSh+hGys0ajGtw/bc2ZgweljQoQ== dependencies: execa "^5.0.0" p-limit "^3.1.0" -jest-circus@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.4.2.tgz#2d00c04baefd0ee2a277014cd494d4b5970663ed" - integrity sha512-wW3ztp6a2P5c1yOc1Cfrt5ozJ7neWmqeXm/4SYiqcSriyisgq63bwFj1NuRdSR5iqS0CMEYwSZd89ZA47W9zUg== +jest-circus@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.4.3.tgz#fff7be1cf5f06224dd36a857d52a9efeb005ba04" + integrity sha512-Vw/bVvcexmdJ7MLmgdT3ZjkJ3LKu8IlpefYokxiqoZy6OCQ2VAm6Vk3t/qHiAGUXbdbJKJWnc8gH3ypTbB/OBw== dependencies: - "@jest/environment" "^29.4.2" - "@jest/expect" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/environment" "^29.4.3" + "@jest/expect" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" is-generator-fn "^2.0.0" - jest-each "^29.4.2" - jest-matcher-utils "^29.4.2" - jest-message-util "^29.4.2" - jest-runtime "^29.4.2" - jest-snapshot "^29.4.2" - jest-util "^29.4.2" + jest-each "^29.4.3" + jest-matcher-utils "^29.4.3" + jest-message-util "^29.4.3" + jest-runtime "^29.4.3" + jest-snapshot "^29.4.3" + jest-util "^29.4.3" p-limit "^3.1.0" - pretty-format "^29.4.2" + pretty-format "^29.4.3" slash "^3.0.0" stack-utils "^2.0.3" -jest-cli@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.4.2.tgz#94a2f913a0a7a49d11bee98ad88bf48baae941f4" - integrity sha512-b+eGUtXq/K2v7SH3QcJvFvaUaCDS1/YAZBYz0m28Q/Ppyr+1qNaHmVYikOrbHVbZqYQs2IeI3p76uy6BWbXq8Q== +jest-cli@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.4.3.tgz#fe31fdd0c90c765f392b8b7c97e4845071cd2163" + integrity sha512-PiiAPuFNfWWolCE6t3ZrDXQc6OsAuM3/tVW0u27UWc1KE+n/HSn5dSE6B2juqN7WP+PP0jAcnKtGmI4u8GMYCg== dependencies: - "@jest/core" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/core" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/types" "^29.4.3" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^29.4.2" - jest-util "^29.4.2" - jest-validate "^29.4.2" + jest-config "^29.4.3" + jest-util "^29.4.3" + jest-validate "^29.4.3" prompts "^2.0.1" yargs "^17.3.1" -jest-config@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.4.2.tgz#15386dd9ed2f7059516915515f786b8836a98f07" - integrity sha512-919CtnXic52YM0zW4C1QxjG6aNueX1kBGthuMtvFtRTAxhKfJmiXC9qwHmi6o2josjbDz8QlWyY55F1SIVmCWA== +jest-config@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.4.3.tgz#fca9cdfe6298ae6d04beef1624064d455347c978" + integrity sha512-eCIpqhGnIjdUCXGtLhz4gdDoxKSWXKjzNcc5r+0S1GKOp2fwOipx5mRcwa9GB/ArsxJ1jlj2lmlD9bZAsBxaWQ== dependencies: "@babel/core" "^7.11.6" - "@jest/test-sequencer" "^29.4.2" - "@jest/types" "^29.4.2" - babel-jest "^29.4.2" + "@jest/test-sequencer" "^29.4.3" + "@jest/types" "^29.4.3" + babel-jest "^29.4.3" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.3" graceful-fs "^4.2.9" - jest-circus "^29.4.2" - jest-environment-node "^29.4.2" - jest-get-type "^29.4.2" - jest-regex-util "^29.4.2" - jest-resolve "^29.4.2" - jest-runner "^29.4.2" - jest-util "^29.4.2" - jest-validate "^29.4.2" + jest-circus "^29.4.3" + jest-environment-node "^29.4.3" + jest-get-type "^29.4.3" + jest-regex-util "^29.4.3" + jest-resolve "^29.4.3" + jest-runner "^29.4.3" + jest-util "^29.4.3" + jest-validate "^29.4.3" micromatch "^4.0.4" parse-json "^5.2.0" - pretty-format "^29.4.2" + pretty-format "^29.4.3" slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.4.2.tgz#b88502d5dc02d97f6512d73c37da8b36f49b4871" - integrity sha512-EK8DSajVtnjx9sa1BkjZq3mqChm2Cd8rIzdXkQMA8e0wuXq53ypz6s5o5V8HRZkoEt2ywJ3eeNWFKWeYr8HK4g== +jest-diff@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.4.3.tgz#42f4eb34d0bf8c0fb08b0501069b87e8e84df347" + integrity sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA== dependencies: chalk "^4.0.0" - diff-sequences "^29.4.2" - jest-get-type "^29.4.2" - pretty-format "^29.4.2" + diff-sequences "^29.4.3" + jest-get-type "^29.4.3" + pretty-format "^29.4.3" -jest-docblock@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.2.tgz#c78a95eedf9a24c0a6cc16cf2abdc4b8b0f2531b" - integrity sha512-dV2JdahgClL34Y5vLrAHde3nF3yo2jKRH+GIYJuCpfqwEJZcikzeafVTGAjbOfKPG17ez9iWXwUYp7yefeCRag== +jest-docblock@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" + integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== dependencies: detect-newline "^3.0.0" -jest-each@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.4.2.tgz#e1347aff1303f4c35470827a62c029d389c5d44a" - integrity sha512-trvKZb0JYiCndc55V1Yh0Luqi7AsAdDWpV+mKT/5vkpnnFQfuQACV72IoRV161aAr6kAVIBpmYzwhBzm34vQkA== +jest-each@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.4.3.tgz#a434c199a2f6151c5e3dc80b2d54586bdaa72819" + integrity sha512-1ElHNAnKcbJb/b+L+7j0/w7bDvljw4gTv1wL9fYOczeJrbTbkMGQ5iQPFJ3eFQH19VPTx1IyfePdqSpePKss7Q== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" chalk "^4.0.0" - jest-get-type "^29.4.2" - jest-util "^29.4.2" - pretty-format "^29.4.2" - -jest-environment-node@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.4.2.tgz#0eab835b41e25fd0c1a72f62665fc8db08762ad2" - integrity sha512-MLPrqUcOnNBc8zTOfqBbxtoa8/Ee8tZ7UFW7hRDQSUT+NGsvS96wlbHGTf+EFAT9KC3VNb7fWEM6oyvmxtE/9w== - dependencies: - "@jest/environment" "^29.4.2" - "@jest/fake-timers" "^29.4.2" - "@jest/types" "^29.4.2" + jest-get-type "^29.4.3" + jest-util "^29.4.3" + pretty-format "^29.4.3" + +jest-environment-node@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.4.3.tgz#579c4132af478befc1889ddc43c2413a9cdbe014" + integrity sha512-gAiEnSKF104fsGDXNkwk49jD/0N0Bqu2K9+aMQXA6avzsA9H3Fiv1PW2D+gzbOSR705bWd2wJZRFEFpV0tXISg== + dependencies: + "@jest/environment" "^29.4.3" + "@jest/fake-timers" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" - jest-mock "^29.4.2" - jest-util "^29.4.2" + jest-mock "^29.4.3" + jest-util "^29.4.3" -jest-get-type@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.2.tgz#7cb63f154bca8d8f57364d01614477d466fa43fe" - integrity sha512-vERN30V5i2N6lqlFu4ljdTqQAgrkTFMC9xaIIfOPYBw04pufjXRty5RuXBiB1d72tGbURa/UgoiHB90ruOSivg== +jest-get-type@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" + integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== -jest-haste-map@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.4.2.tgz#9112df3f5121e643f1b2dcbaa86ab11b0b90b49a" - integrity sha512-WkUgo26LN5UHPknkezrBzr7lUtV1OpGsp+NfXbBwHztsFruS3gz+AMTTBcEklvi8uPzpISzYjdKXYZQJXBnfvw== +jest-haste-map@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.4.3.tgz#085a44283269e7ace0645c63a57af0d2af6942e2" + integrity sha512-eZIgAS8tvm5IZMtKlR8Y+feEOMfo2pSQkmNbufdbMzMSn9nitgGxF1waM/+LbryO3OkMcKS98SUb+j/cQxp/vQ== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@types/graceful-fs" "^4.1.3" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.9" - jest-regex-util "^29.4.2" - jest-util "^29.4.2" - jest-worker "^29.4.2" + jest-regex-util "^29.4.3" + jest-util "^29.4.3" + jest-worker "^29.4.3" micromatch "^4.0.4" walker "^1.0.8" optionalDependencies: @@ -8363,141 +8363,140 @@ jest-junit@15.0.0: uuid "^8.3.2" xml "^1.0.1" -jest-leak-detector@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.4.2.tgz#8f05c6680e0cb46a1d577c0d3da9793bed3ea97b" - integrity sha512-Wa62HuRJmWXtX9F00nUpWlrbaH5axeYCdyRsOs/+Rb1Vb6+qWTlB5rKwCCRKtorM7owNwKsyJ8NRDUcZ8ghYUA== +jest-leak-detector@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.4.3.tgz#2b35191d6b35aa0256e63a9b79b0f949249cf23a" + integrity sha512-9yw4VC1v2NspMMeV3daQ1yXPNxMgCzwq9BocCwYrRgXe4uaEJPAN0ZK37nFBhcy3cUwEVstFecFLaTHpF7NiGA== dependencies: - jest-get-type "^29.4.2" - pretty-format "^29.4.2" + jest-get-type "^29.4.3" + pretty-format "^29.4.3" -jest-matcher-utils@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.4.2.tgz#08d0bf5abf242e3834bec92c7ef5071732839e85" - integrity sha512-EZaAQy2je6Uqkrm6frnxBIdaWtSYFoR8SVb2sNLAtldswlR/29JAgx+hy67llT3+hXBaLB0zAm5UfeqerioZyg== +jest-matcher-utils@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz#ea68ebc0568aebea4c4213b99f169ff786df96a0" + integrity sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg== dependencies: chalk "^4.0.0" - jest-diff "^29.4.2" - jest-get-type "^29.4.2" - pretty-format "^29.4.2" + jest-diff "^29.4.3" + jest-get-type "^29.4.3" + pretty-format "^29.4.3" -jest-message-util@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.4.2.tgz#309a2924eae6ca67cf7f25781a2af1902deee717" - integrity sha512-SElcuN4s6PNKpOEtTInjOAA8QvItu0iugkXqhYyguRvQoXapg5gN+9RQxLAkakChZA7Y26j6yUCsFWN+hlKD6g== +jest-message-util@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.4.3.tgz#65b5280c0fdc9419503b49d4f48d4999d481cb5b" + integrity sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^29.4.2" + pretty-format "^29.4.3" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.4.2.tgz#e1054be66fb3e975d26d4528fcde6979e4759de8" - integrity sha512-x1FSd4Gvx2yIahdaIKoBjwji6XpboDunSJ95RpntGrYulI1ByuYQCKN/P7hvk09JB74IonU3IPLdkutEWYt++g== +jest-mock@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.4.3.tgz#23d84a20a74cdfff0510fdbeefb841ed57b0fe7e" + integrity sha512-LjFgMg+xed9BdkPMyIJh+r3KeHt1klXPJYBULXVVAkbTaaKjPX1o1uVCAZADMEp/kOxGTwy/Ot8XbvgItOrHEg== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@types/node" "*" - jest-util "^29.4.2" + jest-util "^29.4.3" jest-pnp-resolver@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== -jest-regex-util@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.2.tgz#19187cca35d301f8126cf7a021dd4dcb7b58a1ca" - integrity sha512-XYZXOqUl1y31H6VLMrrUL1ZhXuiymLKPz0BO1kEeR5xER9Tv86RZrjTm74g5l9bPJQXA/hyLdaVPN/sdqfteig== +jest-regex-util@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" + integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== -jest-resolve-dependencies@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.4.2.tgz#6359db606f5967b68ca8bbe9dbc07a4306c12bf7" - integrity sha512-6pL4ptFw62rjdrPk7rRpzJYgcRqRZNsZTF1VxVTZMishbO6ObyWvX57yHOaNGgKoADtAHRFYdHQUEvYMJATbDg== +jest-resolve-dependencies@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.4.3.tgz#9ad7f23839a6d88cef91416bda9393a6e9fd1da5" + integrity sha512-uvKMZAQ3nmXLH7O8WAOhS5l0iWyT3WmnJBdmIHiV5tBbdaDZ1wqtNX04FONGoaFvSOSHBJxnwAVnSn1WHdGVaw== dependencies: - jest-regex-util "^29.4.2" - jest-snapshot "^29.4.2" + jest-regex-util "^29.4.3" + jest-snapshot "^29.4.3" -jest-resolve@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.4.2.tgz#8831f449671d08d161fe493003f61dc9b55b808e" - integrity sha512-RtKWW0mbR3I4UdkOrW7552IFGLYQ5AF9YrzD0FnIOkDu0rAMlA5/Y1+r7lhCAP4nXSBTaE7ueeqj6IOwZpgoqw== +jest-resolve@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.4.3.tgz#3c5b5c984fa8a763edf9b3639700e1c7900538e2" + integrity sha512-GPokE1tzguRyT7dkxBim4wSx6E45S3bOQ7ZdKEG+Qj0Oac9+6AwJPCk0TZh5Vu0xzeX4afpb+eDmgbmZFFwpOw== dependencies: chalk "^4.0.0" graceful-fs "^4.2.9" - jest-haste-map "^29.4.2" + jest-haste-map "^29.4.3" jest-pnp-resolver "^1.2.2" - jest-util "^29.4.2" - jest-validate "^29.4.2" + jest-util "^29.4.3" + jest-validate "^29.4.3" resolve "^1.20.0" resolve.exports "^2.0.0" slash "^3.0.0" -jest-runner@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.4.2.tgz#2bcecf72303369df4ef1e6e983c22a89870d5125" - integrity sha512-wqwt0drm7JGjwdH+x1XgAl+TFPH7poowMguPQINYxaukCqlczAcNLJiK+OLxUxQAEWMdy+e6nHZlFHO5s7EuRg== +jest-runner@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.4.3.tgz#68dc82c68645eda12bea42b5beece6527d7c1e5e" + integrity sha512-GWPTEiGmtHZv1KKeWlTX9SIFuK19uLXlRQU43ceOQ2hIfA5yPEJC7AMkvFKpdCHx6pNEdOD+2+8zbniEi3v3gA== dependencies: - "@jest/console" "^29.4.2" - "@jest/environment" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/transform" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/console" "^29.4.3" + "@jest/environment" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/transform" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" chalk "^4.0.0" emittery "^0.13.1" graceful-fs "^4.2.9" - jest-docblock "^29.4.2" - jest-environment-node "^29.4.2" - jest-haste-map "^29.4.2" - jest-leak-detector "^29.4.2" - jest-message-util "^29.4.2" - jest-resolve "^29.4.2" - jest-runtime "^29.4.2" - jest-util "^29.4.2" - jest-watcher "^29.4.2" - jest-worker "^29.4.2" + jest-docblock "^29.4.3" + jest-environment-node "^29.4.3" + jest-haste-map "^29.4.3" + jest-leak-detector "^29.4.3" + jest-message-util "^29.4.3" + jest-resolve "^29.4.3" + jest-runtime "^29.4.3" + jest-util "^29.4.3" + jest-watcher "^29.4.3" + jest-worker "^29.4.3" p-limit "^3.1.0" source-map-support "0.5.13" -jest-runtime@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.4.2.tgz#d86b764c5b95d76cb26ed1f32644e99de5d5c134" - integrity sha512-3fque9vtpLzGuxT9eZqhxi+9EylKK/ESfhClv4P7Y9sqJPs58LjVhTt8jaMp/pRO38agll1CkSu9z9ieTQeRrw== - dependencies: - "@jest/environment" "^29.4.2" - "@jest/fake-timers" "^29.4.2" - "@jest/globals" "^29.4.2" - "@jest/source-map" "^29.4.2" - "@jest/test-result" "^29.4.2" - "@jest/transform" "^29.4.2" - "@jest/types" "^29.4.2" +jest-runtime@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.4.3.tgz#f25db9874dcf35a3ab27fdaabca426666cc745bf" + integrity sha512-F5bHvxSH+LvLV24vVB3L8K467dt3y3dio6V3W89dUz9nzvTpqd/HcT9zfYKL2aZPvD63vQFgLvaUX/UpUhrP6Q== + dependencies: + "@jest/environment" "^29.4.3" + "@jest/fake-timers" "^29.4.3" + "@jest/globals" "^29.4.3" + "@jest/source-map" "^29.4.3" + "@jest/test-result" "^29.4.3" + "@jest/transform" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" glob "^7.1.3" graceful-fs "^4.2.9" - jest-haste-map "^29.4.2" - jest-message-util "^29.4.2" - jest-mock "^29.4.2" - jest-regex-util "^29.4.2" - jest-resolve "^29.4.2" - jest-snapshot "^29.4.2" - jest-util "^29.4.2" - semver "^7.3.5" + jest-haste-map "^29.4.3" + jest-message-util "^29.4.3" + jest-mock "^29.4.3" + jest-regex-util "^29.4.3" + jest-resolve "^29.4.3" + jest-snapshot "^29.4.3" + jest-util "^29.4.3" slash "^3.0.0" strip-bom "^4.0.0" -jest-snapshot@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.4.2.tgz#ba1fb9abb279fd2c85109ff1757bc56b503bbb3a" - integrity sha512-PdfubrSNN5KwroyMH158R23tWcAXJyx4pvSvWls1dHoLCaUhGul9rsL3uVjtqzRpkxlkMavQjGuWG1newPgmkw== +jest-snapshot@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.4.3.tgz#183d309371450d9c4a3de7567ed2151eb0e91145" + integrity sha512-NGlsqL0jLPDW91dz304QTM/SNO99lpcSYYAjNiX0Ou+sSGgkanKBcSjCfp/pqmiiO1nQaOyLp6XQddAzRcx3Xw== dependencies: "@babel/core" "^7.11.6" "@babel/generator" "^7.7.2" @@ -8505,82 +8504,82 @@ jest-snapshot@^29.4.2: "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.3.3" - "@jest/expect-utils" "^29.4.2" - "@jest/transform" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/expect-utils" "^29.4.3" + "@jest/transform" "^29.4.3" + "@jest/types" "^29.4.3" "@types/babel__traverse" "^7.0.6" "@types/prettier" "^2.1.5" babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^29.4.2" + expect "^29.4.3" graceful-fs "^4.2.9" - jest-diff "^29.4.2" - jest-get-type "^29.4.2" - jest-haste-map "^29.4.2" - jest-matcher-utils "^29.4.2" - jest-message-util "^29.4.2" - jest-util "^29.4.2" + jest-diff "^29.4.3" + jest-get-type "^29.4.3" + jest-haste-map "^29.4.3" + jest-matcher-utils "^29.4.3" + jest-message-util "^29.4.3" + jest-util "^29.4.3" natural-compare "^1.4.0" - pretty-format "^29.4.2" + pretty-format "^29.4.3" semver "^7.3.5" -jest-util@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.4.2.tgz#3db8580b295df453a97de4a1b42dd2578dabd2c2" - integrity sha512-wKnm6XpJgzMUSRFB7YF48CuwdzuDIHenVuoIb1PLuJ6F+uErZsuDkU+EiExkChf6473XcawBrSfDSnXl+/YG4g== +jest-util@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.4.3.tgz#851a148e23fc2b633c55f6dad2e45d7f4579f496" + integrity sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.4.2.tgz#3b3f8c4910ab9a3442d2512e2175df6b3f77b915" - integrity sha512-tto7YKGPJyFbhcKhIDFq8B5od+eVWD/ySZ9Tvcp/NGCvYA4RQbuzhbwYWtIjMT5W5zA2W0eBJwu4HVw34d5G6Q== +jest-validate@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.4.3.tgz#a13849dec4f9e95446a7080ad5758f58fa88642f" + integrity sha512-J3u5v7aPQoXPzaar6GndAVhdQcZr/3osWSgTeKg5v574I9ybX/dTyH0AJFb5XgXIB7faVhf+rS7t4p3lL9qFaw== dependencies: - "@jest/types" "^29.4.2" + "@jest/types" "^29.4.3" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^29.4.2" + jest-get-type "^29.4.3" leven "^3.1.0" - pretty-format "^29.4.2" + pretty-format "^29.4.3" -jest-watcher@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.4.2.tgz#09c0f4c9a9c7c0807fcefb1445b821c6f7953b7c" - integrity sha512-onddLujSoGiMJt+tKutehIidABa175i/Ays+QvKxCqBwp7fvxP3ZhKsrIdOodt71dKxqk4sc0LN41mWLGIK44w== +jest-watcher@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.4.3.tgz#e503baa774f0c2f8f3c8db98a22ebf885f19c384" + integrity sha512-zwlXH3DN3iksoIZNk73etl1HzKyi5FuQdYLnkQKm5BW4n8HpoG59xSwpVdFrnh60iRRaRBGw0gcymIxjJENPcA== dependencies: - "@jest/test-result" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/test-result" "^29.4.3" + "@jest/types" "^29.4.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.13.1" - jest-util "^29.4.2" + jest-util "^29.4.3" string-length "^4.0.1" -jest-worker@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.4.2.tgz#d9b2c3bafc69311d84d94e7fb45677fc8976296f" - integrity sha512-VIuZA2hZmFyRbchsUCHEehoSf2HEl0YVF8SDJqtPnKorAaBuh42V8QsLnde0XP5F6TyCynGPEGgBOn3Fc+wZGw== +jest-worker@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.4.3.tgz#9a4023e1ea1d306034237c7133d7da4240e8934e" + integrity sha512-GLHN/GTAAMEy5BFdvpUfzr9Dr80zQqBrh0fz1mtRMe05hqP45+HfQltu7oTBfduD0UeZs09d+maFtFYAXFWvAA== dependencies: "@types/node" "*" - jest-util "^29.4.2" + jest-util "^29.4.3" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.4.2.tgz#4c2127d03a71dc187f386156ef155dbf323fb7be" - integrity sha512-+5hLd260vNIHu+7ZgMIooSpKl7Jp5pHKb51e73AJU3owd5dEo/RfVwHbA/na3C/eozrt3hJOLGf96c7EWwIAzg== +jest@29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-29.4.3.tgz#1b8be541666c6feb99990fd98adac4737e6e6386" + integrity sha512-XvK65feuEFGZT8OO0fB/QAQS+LGHvQpaadkH5p47/j3Ocqq3xf2pK9R+G0GzgfuhXVxEv76qCOOcMb5efLk6PA== dependencies: - "@jest/core" "^29.4.2" - "@jest/types" "^29.4.2" + "@jest/core" "^29.4.3" + "@jest/types" "^29.4.3" import-local "^3.0.2" - jest-cli "^29.4.2" + jest-cli "^29.4.3" jquery@^3.5.0: version "3.6.3" @@ -11342,12 +11341,12 @@ pretty-error@^2.0.2: lodash "^4.17.20" renderkid "^2.0.4" -pretty-format@^29.4.2: - version "29.4.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.4.2.tgz#64bf5ccc0d718c03027d94ac957bdd32b3fb2401" - integrity sha512-qKlHR8yFVCbcEWba0H0TOC8dnLlO4vPlyEjRPw31FZ2Rupy9nLa8ZLbYny8gWEl8CkEhJqAE6IzdNELTBVcBEg== +pretty-format@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.4.3.tgz#25500ada21a53c9e8423205cf0337056b201244c" + integrity sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA== dependencies: - "@jest/schemas" "^29.4.2" + "@jest/schemas" "^29.4.3" ansi-styles "^5.0.0" react-is "^18.0.0" From fbccaec65a113d1918854228d71ce35b31c14960 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Feb 2023 23:19:33 +0100 Subject: [PATCH 4/4] chore(deps): bump puppeteer from 19.7.0 to 19.7.1 (#11879) Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 19.7.0 to 19.7.1. - [Release notes](https://github.com/puppeteer/puppeteer/releases) - [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json) - [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.7.0...puppeteer-v19.7.1) --- updated-dependencies: - dependency-name: puppeteer dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 24 +++++++++--------------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index f1e87d54ffbcc8..4db78dc64ddff8 100644 --- a/package.json +++ b/package.json @@ -132,7 +132,7 @@ "pidusage": "3.0.2", "plist": "3.0.6", "proxy-chain": "2.2.0", - "puppeteer": "19.7.0", + "puppeteer": "19.7.1", "puppeteer-extra": "3.3.4", "puppeteer-extra-plugin-stealth": "2.11.1", "query-string": "7.1.3", diff --git a/yarn.lock b/yarn.lock index 7cf0192279f19e..cd94427fb94062 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3886,11 +3886,6 @@ chrome-trace-event@^1.0.2: resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -chromium-bidi@0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/chromium-bidi/-/chromium-bidi-0.4.3.tgz#40ae4a5409ef3fbeabafb29d5325f3f58cbeea12" - integrity sha512-A40H1rdpJqkTdnGhnYDzMhtDdIbkXNFj2wgIfivMXL7LyHFDmBtv1hdyycDhnxtYunbPLDZtTs/n+ZT5j7Vnew== - chrono-node@2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/chrono-node/-/chrono-node-2.5.0.tgz#c4d5f4f4db9d72604a5beb79fdc5fd57be4b212f" @@ -11526,12 +11521,11 @@ pupa@^2.0.1: dependencies: escape-goat "^2.0.0" -puppeteer-core@19.7.0: - version "19.7.0" - resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-19.7.0.tgz#bd069fa15137e1e13e69b23278fbb508465c1955" - integrity sha512-BU05W24N+fWudCCeWxv/+R9fnMGmS6HCNPJbieoy0S4yAloVOoVDpOnHV8ZpFTGMPTHQ2EuPyZPWA+idPKO0pw== +puppeteer-core@19.7.1: + version "19.7.1" + resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-19.7.1.tgz#6f5326ba0a97a7ba63f8f986c3971e31ef42d871" + integrity sha512-4b5Go25IA+0xrUIw0Qtqi4nxc0qwdu/C7VT1+tFPl1W27207YT+7bxfANC3PjXMlS6bcbzinCf5YfGqMl8tfyQ== dependencies: - chromium-bidi "0.4.3" cross-fetch "3.1.5" debug "4.3.4" devtools-protocol "0.0.1094867" @@ -11590,16 +11584,16 @@ puppeteer-extra@3.3.4: debug "^4.1.1" deepmerge "^4.2.2" -puppeteer@19.7.0: - version "19.7.0" - resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-19.7.0.tgz#67fe8ffb11ff1719ba180643b9b2c06116b0d3ef" - integrity sha512-ri4XTvTWL09E3L+SNhY9FKRdEOCRhFyyuBppg7D5lk9q4BZKvDWivpjstwmtz5lr8ufxju/jkn9y7uGowISHgw== +puppeteer@19.7.1: + version "19.7.1" + resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-19.7.1.tgz#53c0234cac96f28934da139b0239237ccef3251a" + integrity sha512-Hampj7jHlicySL1sSLHCwoFoRCi6RcEbnZmRE5brtbk0mp6Td33+9kWQD2eFs09772JIt00ybPKr50Gt7Y18Xg== dependencies: cosmiconfig "8.0.0" https-proxy-agent "5.0.1" progress "2.0.3" proxy-from-env "1.1.0" - puppeteer-core "19.7.0" + puppeteer-core "19.7.1" q@^1.1.2: version "1.5.1"