From bb08db51b965891a386eab6989895ab275fa5010 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 09:56:27 +0800 Subject: [PATCH 01/22] chore: build app before start --- .github/workflows/issue-command.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/issue-command.yml b/.github/workflows/issue-command.yml index ac519655d6..1cc371618c 100644 --- a/.github/workflows/issue-command.yml +++ b/.github/workflows/issue-command.yml @@ -80,6 +80,10 @@ jobs: const script = require(`${process.env.GITHUB_WORKSPACE}/scripts/workflow/test-route/identify.js`) return script({ github, context, core }, body, number, sender) + - name: Build RSSHub + if: env.TEST_CONTINUE + run: pnpm build + - name: Start RSSHub if: env.TEST_CONTINUE run: pnpm start & From bfa2ffa4b5f9845d1c339a1ba35ff844e748dca8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 22 Mar 2024 10:00:18 +0800 Subject: [PATCH 02/22] chore(deps-dev): bump eslint-plugin-yml from 1.13.1 to 1.13.2 (#14900) * chore(deps-dev): bump eslint-plugin-yml from 1.13.1 to 1.13.2 Bumps [eslint-plugin-yml](https://github.com/ota-meshi/eslint-plugin-yml) from 1.13.1 to 1.13.2. - [Release notes](https://github.com/ota-meshi/eslint-plugin-yml/releases) - [Changelog](https://github.com/ota-meshi/eslint-plugin-yml/blob/master/CHANGELOG.md) - [Commits](https://github.com/ota-meshi/eslint-plugin-yml/compare/v1.13.1...v1.13.2) --- updated-dependencies: - dependency-name: eslint-plugin-yml dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * chore: fix pnpm install --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 40a12f5a0a..f680298a42 100644 --- a/package.json +++ b/package.json @@ -154,7 +154,7 @@ "eslint-plugin-n": "16.6.2", "eslint-plugin-prettier": "5.1.3", "eslint-plugin-unicorn": "51.0.1", - "eslint-plugin-yml": "1.13.1", + "eslint-plugin-yml": "1.13.2", "fs-extra": "11.2.0", "husky": "9.0.11", "lint-staged": "15.2.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b3a4a9f3be..cb0d1fea76 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -323,8 +323,8 @@ devDependencies: specifier: 51.0.1 version: 51.0.1(eslint@8.57.0) eslint-plugin-yml: - specifier: 1.13.1 - version: 1.13.1(eslint@8.57.0) + specifier: 1.13.2 + version: 1.13.2(eslint@8.57.0) fs-extra: specifier: 11.2.0 version: 11.2.0 @@ -4549,8 +4549,8 @@ packages: - supports-color dev: true - /eslint-plugin-yml@1.13.1(eslint@8.57.0): - resolution: {integrity: sha512-J1gNca5cWUIlo6ilQJBlPwap2ggVuc7gaOxiCdYjmncyWN8aNHErEhk2ICFj6shr8Jz27c3AU1Ie7i6HqVa4Hw==} + /eslint-plugin-yml@1.13.2(eslint@8.57.0): + resolution: {integrity: sha512-1i71VhmsG5UxE41rIJmJjhlTTxYy7upAY5Hqj8AdBc7rfJzRIZr3a2spuOS8+N7ZDCWsHAWY3J6lzQNQHDv6Uw==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' From 0f688c81240a7a77c0845683b14683f208fe71ab Mon Sep 17 00:00:00 2001 From: Ethan Shen <42264778+nczitzk@users.noreply.github.com> Date: Fri, 22 Mar 2024 11:14:05 +0800 Subject: [PATCH 03/22] =?UTF-8?q?fix(route):=20=E5=B0=8F=E5=88=80=E5=A8=B1?= =?UTF-8?q?=E4=B9=90=E7=BD=91=20(#14898)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/routes/x6d/index.ts | 114 +++++++++++++++++++++++++++------------- 1 file changed, 78 insertions(+), 36 deletions(-) diff --git a/lib/routes/x6d/index.ts b/lib/routes/x6d/index.ts index ca3de354a6..6320c74283 100644 --- a/lib/routes/x6d/index.ts +++ b/lib/routes/x6d/index.ts @@ -1,28 +1,19 @@ import { Route } from '@/types'; + import cache from '@/utils/cache'; import got from '@/utils/got'; import { load } from 'cheerio'; -import { parseDate } from '@/utils/parse-date'; import timezone from '@/utils/timezone'; - -const baseUrl = 'https://xd.x6d.com'; +import { parseDate } from '@/utils/parse-date'; export const route: Route = { path: '/:id?', - categories: ['new-media'], - example: '/x6d/34', - parameters: { id: '分类 id,可在对应分类页面的 URL 中找到,默认为首页最近更新' }, - features: { - requireConfig: false, - requirePuppeteer: false, - antiCrawler: false, - supportBT: false, - supportPodcast: false, - supportScihub: false, - }, name: '分类', + url: 'xd.x6d.com', maintainers: ['nczitzk'], handler, + example: '/x6d/34', + parameters: { id: '分类 id,可在对应分类页面的 URL 中找到,默认为首页最近更新' }, description: `| 技巧分享 | QQ 技巧 | 微信技巧 | 其他教程 | 其他分享 | | -------- | ------- | -------- | -------- | -------- | | 31 | 55 | 112 | 33 | 88 | @@ -46,54 +37,105 @@ export const route: Route = { | 资源宝库 | 书籍资料 | 设计资源 | 剪辑资源 | 办公资源 | 壁纸资源 | 编程资源 | | -------- | -------- | -------- | -------- | -------- | -------- | -------- | | 106 | 107 | 108 | 109 | 110 | 111 | 113 |`, + categories: ['new-media'], + + features: { + requireConfig: false, + requirePuppeteer: false, + antiCrawler: false, + supportBT: false, + supportPodcast: false, + supportScihub: false, + }, }; -async function handler(ctx) { +export async function handler(ctx) { const { id = 'latest' } = ctx.req.param(); + const limit = ctx.req.query('limit') ? Number.parseInt(ctx.req.query('limit'), 10) : 22; - const currentUrl = id === 'latest' ? baseUrl : `${baseUrl}/html/${id}.html`; + const rootUrl = 'https://xd.x6d.com'; - const { data: response } = await got(currentUrl); + let currentUrl = new URL(id === 'latest' ? '' : `html/${id}.html`, rootUrl).href; - const $ = load(response); + const { data: firstResponse } = await got(currentUrl); + + let $; + + if (/ { + const query = id === 'latest' ? $('#newslist ul').first().find('li').not('li.addd').find('a').slice(0, limit) : $('a.soft-title').slice(0, limit); + + let items = query.toArray().map((item) => { item = $(item); + return { - title: item.text(), - link: `${baseUrl}${item.attr('href')}`, + title: item.prop('title') ?? item.text(), + link: new URL(item.prop('href'), rootUrl).href, + language, }; }); - const items = await Promise.all( - list.map((item) => + items = await Promise.all( + items.map((item) => cache.tryGet(item.link, async () => { const { data: detailResponse } = await got(item.link); - const content = load(detailResponse); - item.description = content('div.article-content').html(); - item.pubDate = timezone(parseDate(content('time').text()), 8); + const $$ = load(detailResponse); + + const title = $$('h1.article-title').text(); + const description = $$('div.article-content').html(); + const image = new URL($$('div.article-content img').first().prop('src'), rootUrl).href; + + item.title = title; + item.description = description; + item.pubDate = timezone(parseDate($$('time').text()), +8); + item.category = $$('b.bq-wg') + .toArray() + .map((c) => $$(c).text()); + item.author = $$('span.bq-zz').text(); + item.content = { + html: description, + text: $$('div.article-content').text(), + }; + item.image = image; + item.banner = image; + item.language = language; return item; }) ) ); + const image = new URL($('div.header-logo img').prop('src'), rootUrl).href; + return { - title: `小刀娱乐网 - ${$('title').text().split('-')[0]}`, + title: $('title').text().split(/\s-/)[0], + description: $('meta[name="description"]').prop('content'), link: currentUrl, item: items, + allowEmpty: true, + image, + language, }; } From 708212f3598af4c084f73f309c551ebf10070794 Mon Sep 17 00:00:00 2001 From: LMark <40017222+ladeng07@users.noreply.github.com> Date: Fri, 22 Mar 2024 11:57:38 +0800 Subject: [PATCH 04/22] =?UTF-8?q?feat(route):=20Add=20LA=20UOSC=E7=A4=BE?= =?UTF-8?q?=E5=8C=BA=20(#14896)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add LA UOSC社区 * Fixed Mentioned Issue * Handled an undefined issue --- lib/routes/loongarch/namespace.ts | 6 ++++ lib/routes/loongarch/post.ts | 59 +++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 lib/routes/loongarch/namespace.ts create mode 100644 lib/routes/loongarch/post.ts diff --git a/lib/routes/loongarch/namespace.ts b/lib/routes/loongarch/namespace.ts new file mode 100644 index 0000000000..016800db50 --- /dev/null +++ b/lib/routes/loongarch/namespace.ts @@ -0,0 +1,6 @@ +import type { Namespace } from '@/types'; + +export const namespace: Namespace = { + name: 'LA UOSC社区', + url: 'loongarch.org', +}; diff --git a/lib/routes/loongarch/post.ts b/lib/routes/loongarch/post.ts new file mode 100644 index 0000000000..ae24849e2e --- /dev/null +++ b/lib/routes/loongarch/post.ts @@ -0,0 +1,59 @@ +import { parseDate } from '@/utils/parse-date'; +import got from '@/utils/got'; + +export const route: Route = { + path: '/post/:type?', + categories: ['bbs'], + example: '/loongarch/post/newest', + parameters: { type: 'top 或 newest' }, + radar: [ + { + source: ['bbs.loongarch.org'], + }, + ], + name: '最热 / 最新帖子', + maintainers: ['ladeng07', '3401797899'], + handler, + url: 'bbs.loongarch.org/', +}; + +async function handler(ctx) { + const type = ctx.req.param('type'); + const link = 'https://bbs.loongarch.org/api/discussions'; + + let title = '最新帖子'; + let sortValue = '-createdAt'; + if (type === 'top') { + title = '最热帖子'; + sortValue = '-commentCount'; + } + + const { data: response } = await got('https://bbs.loongarch.org/api/discussions', { + searchParams: { + include: 'user,tags,tags.parent,firstPost', + sort: sortValue, + 'page[offset]': 0, + }, + }); + + const users = response.included.filter((i) => i.type === 'users'); + const tags = response.included.filter((i) => i.type === 'tags'); + const posts = response.included.filter((i) => i.type === 'posts'); + + const out = response.data.map(({ attributes, relationships }) => ({ + title: attributes.title, + link: `https://bbs.loongarch.org/d/${attributes.slug}`, + author: users.find((i) => i.id === relationships.user.data.id).attributes.displayName, + description: posts.find((i) => i.id === relationships.firstPost.data.id).attributes.contentHtml, + pubDate: parseDate(attributes.createdAt), + updated: parseDate(attributes.lastPostedAt), + category: relationships.tags.data.map((tag) => tags.find((i) => i.id === tag.id).attributes.name), + })); + + return { + title: `LA UOSC-${title}`, + link, + description: `LA UOSC-${title}`, + item: out, + }; +} From e04c79b208e76f3e25f978c5ac4fb698e5b9390b Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 12:08:10 +0800 Subject: [PATCH 05/22] revert: "chore: run format after build assets" This reverts commit a1a5cb777af4a32c6c43307620a3f5e660060b65. --- .github/workflows/build-assets.yml | 3 +++ .github/workflows/format.yml | 7 +++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index 1aaea2a806..ec6d04c401 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -11,6 +11,9 @@ on: permissions: contents: read +concurrency: + group: git-push-lock + jobs: build: runs-on: ubuntu-latest diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 7bbe9209bc..41da0171ad 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -4,14 +4,13 @@ on: push: branches: - master - workflow_run: - workflows: ['Build assets'] - types: - - completed permissions: contents: read +concurrency: + group: git-push-lock + jobs: format: permissions: From e7fb4e8fd0cbf4aa3e3fc68f7d7b1ce74a41e3c2 Mon Sep 17 00:00:00 2001 From: Jia Chen Date: Fri, 22 Mar 2024 12:09:14 +0800 Subject: [PATCH 06/22] fix(route): fix 36kr route & kaopu.news doc desc (#14884) * fix(route): fix 36kr route & kaopu.news doc desc * chore(route): Update lib/routes/36kr/index.ts --------- --- lib/routes/36kr/index.ts | 13 +++++++++++-- lib/routes/kaopu/news.ts | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/routes/36kr/index.ts b/lib/routes/36kr/index.ts index dd2740243d..4b9bc98238 100644 --- a/lib/routes/36kr/index.ts +++ b/lib/routes/36kr/index.ts @@ -17,10 +17,19 @@ const shortcuts = { }; export const route: Route = { - path: '/{.*}?', + path: '/:category/:subCategory?/:keyword?', categories: ['new-media'], + example: '/36kr/newsflashes', + parameters: { + category: '分类,必填项', + subCategory: '子分类,选填项,目的是为了兼容老逻辑', + keyword: '关键词,选填项,仅搜索文章/快讯时有效', + }, name: '资讯, 快讯, 用户文章, 主题文章, 专题文章, 搜索文章, 搜索快讯', - maintainers: ['nczitzk'], + maintainers: ['nczitzk', 'fashioncj'], + description: `| 最新资讯频道 | 快讯 | 推荐资讯|生活|房产|职场|搜索文章|搜索快讯| + | ------- | -------- | -------- | -------- | -------- | --------| -------- | -------- | + | news | newsflashes | recommend | life | estate | workplace | search/articles/关键词 | search/articles/关键词 |`, handler, }; diff --git a/lib/routes/kaopu/news.ts b/lib/routes/kaopu/news.ts index c81b69bf52..c7b6e9aac6 100644 --- a/lib/routes/kaopu/news.ts +++ b/lib/routes/kaopu/news.ts @@ -5,7 +5,7 @@ import { parseDate } from '@/utils/parse-date'; export const route: Route = { path: '/news/:language?', categories: ['new-media'], - example: '/news/zh-hans, /news/zh-hant', + example: '/news/zh-hans', parameters: { language: '语言', }, From 2158895f0179bea8b1e3e63749e90377c450005f Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 12:13:59 +0800 Subject: [PATCH 07/22] chore: remove concurrency group from build-assets.yml and format.yml workflows --- .github/workflows/build-assets.yml | 3 --- .github/workflows/format.yml | 3 --- 2 files changed, 6 deletions(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index ec6d04c401..1aaea2a806 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -11,9 +11,6 @@ on: permissions: contents: read -concurrency: - group: git-push-lock - jobs: build: runs-on: ubuntu-latest diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 41da0171ad..705b8281c2 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -8,9 +8,6 @@ on: permissions: contents: read -concurrency: - group: git-push-lock - jobs: format: permissions: From a9f06f453d60c24e12d377b88c41ecb0175d3695 Mon Sep 17 00:00:00 2001 From: zcw159357 Date: Fri, 22 Mar 2024 12:20:49 +0800 Subject: [PATCH 08/22] fix(route): Fix afdian (#14892) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 迁移爱发电 * Update lib/routes/afdian/explore.ts --------- --- lib/router.js | 4 +-- .../dynamic.js => routes/afdian/dynamic.ts} | 18 +++++++++--- .../explore.js => routes/afdian/explore.ts} | 29 ++++++++++++++++--- lib/routes/afdian/namespace.ts | 6 ++++ 4 files changed, 47 insertions(+), 10 deletions(-) rename lib/{routes-deprecated/afdian/dynamic.js => routes/afdian/dynamic.ts} (72%) rename lib/{routes-deprecated/afdian/explore.js => routes/afdian/explore.ts} (63%) create mode 100644 lib/routes/afdian/namespace.ts diff --git a/lib/router.js b/lib/router.js index 0c89d215ed..6acc307b7a 100644 --- a/lib/router.js +++ b/lib/router.js @@ -756,8 +756,8 @@ router.get('/nosetime/home', lazyloadRouteHandler('./routes/nosetime/home')); router.get('/daxiaamu/home', lazyloadRouteHandler('./routes/daxiaamu/home')); // 爱发电 -router.get('/afdian/explore/:type?/:category?', lazyloadRouteHandler('./routes/afdian/explore')); -router.get('/afdian/dynamic/:uid', lazyloadRouteHandler('./routes/afdian/dynamic')); +// router.get('/afdian/explore/:type?/:category?', lazyloadRouteHandler('./routes/afdian/explore')); +// router.get('/afdian/dynamic/:uid', lazyloadRouteHandler('./routes/afdian/dynamic')); // Simons Foundation router.get('/simonsfoundation/articles', lazyloadRouteHandler('./routes/simonsfoundation/articles')); diff --git a/lib/routes-deprecated/afdian/dynamic.js b/lib/routes/afdian/dynamic.ts similarity index 72% rename from lib/routes-deprecated/afdian/dynamic.js rename to lib/routes/afdian/dynamic.ts index b25a3d605b..b6260495b2 100644 --- a/lib/routes-deprecated/afdian/dynamic.js +++ b/lib/routes/afdian/dynamic.ts @@ -1,7 +1,17 @@ -const got = require('@/utils/got'); +import got from '@/utils/got'; -module.exports = async (ctx) => { - const url_slug = ctx.params.uid.replace('@', ''); +export const route: Route = { + path: '/dynamic/:uid?', + categories: ['other'], + example: '/afdian/dynamic/@afdian', + parameters: { uid: '用户id,用户动态页面url里可找到' }, + name: '用户动态', + maintainers: ['sanmmm'], + handler, +}; + +async function handler(ctx) { + const url_slug = ctx.req.param('uid').replace('@', ''); const baseUrl = 'https://afdian.net'; const userInfoRes = await got(`${baseUrl}/api/user/get-profile-by-slug`, { searchParams: { @@ -26,7 +36,7 @@ module.exports = async (ctx) => { pubDate: new Date(Number(publish_time) * 1000).toUTCString(), }; }); - ctx.state.data = { + return { title: `${name}的爱发电动态`, description: `${name}的爱发电动态`, image: avatar, diff --git a/lib/routes-deprecated/afdian/explore.js b/lib/routes/afdian/explore.ts similarity index 63% rename from lib/routes-deprecated/afdian/explore.js rename to lib/routes/afdian/explore.ts index bccd77236a..8007b3de71 100644 --- a/lib/routes-deprecated/afdian/explore.js +++ b/lib/routes/afdian/explore.ts @@ -1,4 +1,4 @@ -const got = require('@/utils/got'); +import got from '@/utils/got'; const categoryMap = { 所有: '', @@ -26,8 +26,29 @@ const typeToLabel = { hot: '人气', }; -module.exports = async (ctx) => { - const { type = 'rec', category = '所有' } = ctx.params; +export const route: Route = { + path: '/explore/:type/:category?', + categories: ['other'], + example: '/afdian/explore/hot/所有', + parameters: { type: '分类', category: '目录类型,默认为 `所有`' }, + name: '发现用户', + maintainers: ['sanmmm'], + description: `分类 + + | 推荐 | 最热 | + | ---- | ---- | + | rec | hot | + + 目录类型 + + | 所有 | 绘画 | 视频 | 写作 | 游戏 | 音乐 | 播客 | 摄影 | 技术 | Vtuber | 舞蹈 | 体育 | 旅游 | 美食 | 时尚 | 数码 | 动画 | 其他 | + | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ------ | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | + | 所有 | 绘画 | 视频 | 写作 | 游戏 | 音乐 | 播客 | 摄影 | 技术 | Vtuber | 舞蹈 | 体育 | 旅游 | 美食 | 时尚 | 数码 | 动画 | 其他 |`, + handler, +}; + +async function handler(ctx) { + const { type = 'rec', category = '所有' } = ctx.req.param(); const baseUrl = 'https://afdian.net'; const link = `${baseUrl}/api/creator/list`; const res = await got(link, { @@ -48,7 +69,7 @@ module.exports = async (ctx) => { link: `${baseUrl}/@${item.url_slug}`, }; }); - ctx.state.data = { + return { title: `爱发电-创作者 (按 ${category}/${typeToLabel[type]})`, description: `爱发电-发现创作者 (按 ${category}/${typeToLabel[type]})`, link: `${baseUrl}/explore`, diff --git a/lib/routes/afdian/namespace.ts b/lib/routes/afdian/namespace.ts new file mode 100644 index 0000000000..3c4d181d72 --- /dev/null +++ b/lib/routes/afdian/namespace.ts @@ -0,0 +1,6 @@ +import type { Namespace } from '@/types'; + +export const namespace: Namespace = { + name: '爱发电', + url: 'afdian.net', +}; From 8e904f50d99c5ea56f4cecb5d89b5bf29aedb7b5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 22 Mar 2024 04:22:25 +0000 Subject: [PATCH 09/22] style: auto format --- lib/routes/afdian/dynamic.ts | 2 +- lib/routes/afdian/explore.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/routes/afdian/dynamic.ts b/lib/routes/afdian/dynamic.ts index b6260495b2..f69f6edc1a 100644 --- a/lib/routes/afdian/dynamic.ts +++ b/lib/routes/afdian/dynamic.ts @@ -43,4 +43,4 @@ async function handler(ctx) { link: `${baseUrl}/@${url_slug}`, item: list, }; -}; +} diff --git a/lib/routes/afdian/explore.ts b/lib/routes/afdian/explore.ts index 8007b3de71..14437242a9 100644 --- a/lib/routes/afdian/explore.ts +++ b/lib/routes/afdian/explore.ts @@ -75,4 +75,4 @@ async function handler(ctx) { link: `${baseUrl}/explore`, item: list, }; -}; +} From 25c74273a0518e78649cf71044c817ef4f1fba63 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 12:48:52 +0800 Subject: [PATCH 10/22] chore: update docs in 1 commit docs changes no longer triggers 2 netlify builds --- .github/workflows/build-assets.yml | 36 ++++++++++++++---------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index 1aaea2a806..5ccb47a7f0 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -47,23 +47,21 @@ jobs: publish_dir: ./assets user_name: 'github-actions[bot]' user_email: '41898282+github-actions[bot]@users.noreply.github.com' - - name: Pushes to docs repository - en - uses: cpina/github-action-push-to-another-repository@main - env: - API_TOKEN_GITHUB: ${{ secrets.DOCS_API_TOKEN }} + - name: Checkout docs + uses: actions/checkout@v4 with: - source-directory: './assets/build/docs/en' - target-directory: './src/routes' - destination-github-username: 'RSSNext' - destination-repository-name: 'rsshub-docs' - target-branch: 'main' - - name: Pushes to docs repository - zh - uses: cpina/github-action-push-to-another-repository@main - env: - API_TOKEN_GITHUB: ${{ secrets.DOCS_API_TOKEN }} - with: - source-directory: './assets/build/docs/zh' - target-directory: './src/zh/routes' - destination-github-username: 'RSSNext' - destination-repository-name: 'rsshub-docs' - target-branch: 'main' + repository: 'RSSNext/rsshub-docs' + token: ${{ secrets.DOCS_API_TOKEN }} + path: rsshub-docs + - name: Update docs + run: | + cp -r ./assets/build/docs/en/* ./rsshub-docs/src/routes + cp -r ./assets/build/docs/zh/* ./rsshub-docs/src/zh/routes + - name: Commit docs + run: | + cd rsshub-docs + COMMIT_HASH=$(git rev-parse HEAD) + git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" + git config --local user.name "github-actions[bot]" + git status + git diff-index --quiet HEAD || (git commit -m "chore: auto build\nUpdate from https://github.com/DIYgod/RSSHub/commit/$COMMIT_HASH" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) From 5b769aaac281f2ae8e059f3acdd1328f5a9b9ed3 Mon Sep 17 00:00:00 2001 From: lyqluis <39592732+lyqluis@users.noreply.github.com> Date: Fri, 22 Mar 2024 12:49:57 +0800 Subject: [PATCH 11/22] docs(route): /douban/book/latest, udpate description to display correctly (#14902) --- lib/routes/douban/book/latest.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/routes/douban/book/latest.ts b/lib/routes/douban/book/latest.ts index 778791afbc..1de7c4db60 100644 --- a/lib/routes/douban/book/latest.ts +++ b/lib/routes/douban/book/latest.ts @@ -20,8 +20,7 @@ export const route: Route = { }, name: '新书速递', maintainers: ['fengkx', 'lyqluis'], - description: ` - | 文学 | 小说 | 历史文化 | 社会纪实 | 科学新知 | 艺术设计 | 商业经管 | 绘本漫画 | + description: `| 文学 | 小说 | 历史文化 | 社会纪实 | 科学新知 | 艺术设计 | 商业经管 | 绘本漫画 | | ------------ | ------- | -------- | --------- | -------- | -------- | -------- | -------- | | prose_poetry | fiction | history | biography | science | art | business | comics |`, handler, From 7bb23d991cc2d3dc395294461d57ea05de045427 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 13:09:28 +0800 Subject: [PATCH 12/22] chore: remove wrong commit hash for rsshub-docs --- .github/workflows/build-assets.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index 5ccb47a7f0..91945f5421 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -60,8 +60,7 @@ jobs: - name: Commit docs run: | cd rsshub-docs - COMMIT_HASH=$(git rev-parse HEAD) git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git diff-index --quiet HEAD || (git commit -m "chore: auto build\nUpdate from https://github.com/DIYgod/RSSHub/commit/$COMMIT_HASH" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) + git diff-index --quiet HEAD || (git commit -m "chore: auto build" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) From fed70ac07decd13b9c7a2d9e0dac675d4a7b0cf7 Mon Sep 17 00:00:00 2001 From: cnkmmk <22782790+cnkmmk@users.noreply.github.com> Date: Fri, 22 Mar 2024 13:11:34 +0800 Subject: [PATCH 13/22] =?UTF-8?q?feat(route):=20add=20=E7=94=AC=E5=93=A5?= =?UTF-8?q?=E4=BE=83=E4=BE=83=E4=BE=83YouTube=E6=95=99=E7=A8=8B=E6=91=98?= =?UTF-8?q?=E8=A6=81=E9=9A=8F=E7=AC=94=20(#14885)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: pull[bot] <39814207+pull[bot]@users.noreply.github.com> --- lib/routes/ygkkk/namespace.ts | 6 +++++ lib/routes/ygkkk/rss.ts | 48 +++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 lib/routes/ygkkk/namespace.ts create mode 100644 lib/routes/ygkkk/rss.ts diff --git a/lib/routes/ygkkk/namespace.ts b/lib/routes/ygkkk/namespace.ts new file mode 100644 index 0000000000..c9495f6c52 --- /dev/null +++ b/lib/routes/ygkkk/namespace.ts @@ -0,0 +1,6 @@ +import type { Namespace } from '@/types'; + +export const namespace: Namespace = { + name: "甬哥侃侃侃YouTube教程摘要随笔", + url: 'ygkkk.blogspot.com', +}; diff --git a/lib/routes/ygkkk/rss.ts b/lib/routes/ygkkk/rss.ts new file mode 100644 index 0000000000..df65a7eef2 --- /dev/null +++ b/lib/routes/ygkkk/rss.ts @@ -0,0 +1,48 @@ +import { Route } from '@/types'; +import got from '@/utils/got'; +import { load } from 'cheerio'; + +export const route: Route = { + path: '/', + categories: ['blog'], + example: '/ygkkk', + radar: [ + { + source: ['ygkkk.blogspot.com/'], + }, + ], + name: '最新发表', + maintainers: ['cnkmmk'], + handler, + url: 'ygkkk.blogspot.com/', +}; + +async function handler() { + const currentUrl = 'https://ygkkk.blogspot.com'; + const response = await got(`${currentUrl}/feeds/posts/default?alt=rss`); + const $ = load(response.data, { xmlMode: true }); + const title_main = $('channel > title').text(); + const description_main = $('channel > description').text(); + const items = $('channel > item') + .map((_, item) => { + const $item = $(item); + const link = $item.find('link').text(); + const title = $item.find('title').text(); + const description = $item.find('description').text(); + const pubDate = $item.find('pubDate').text(); + return { + link, + pubDate, // no need to normalize because it's from a valid RSS feed + title, + description, + }; + }) + .get(); + + return { + title: title_main, + description: description_main, + link: currentUrl, + item: items, + }; +} From 8ce0176ca659794b4ef4e13530cde6a41cac932c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 22 Mar 2024 05:13:29 +0000 Subject: [PATCH 14/22] style: auto format --- lib/routes/ygkkk/namespace.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/routes/ygkkk/namespace.ts b/lib/routes/ygkkk/namespace.ts index c9495f6c52..cd116d5ed4 100644 --- a/lib/routes/ygkkk/namespace.ts +++ b/lib/routes/ygkkk/namespace.ts @@ -1,6 +1,6 @@ import type { Namespace } from '@/types'; export const namespace: Namespace = { - name: "甬哥侃侃侃YouTube教程摘要随笔", + name: '甬哥侃侃侃YouTube教程摘要随笔', url: 'ygkkk.blogspot.com', }; From b0990045740dd0f948ab5db77b2c4614106d3166 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 13:28:56 +0800 Subject: [PATCH 15/22] chore: use proper commit sha from envs --- .github/workflows/build-assets.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index 91945f5421..f87c262cb1 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -63,4 +63,4 @@ jobs: git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git diff-index --quiet HEAD || (git commit -m "chore: auto build" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) + git diff-index --quiet HEAD || (git commit -m "chore: auto build\n\nUpdate from https://github.com/$GITHUB_REPOSITORY/commit/$GITHUB_SHA" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) From e17044324b0eb3e2f118d7d1643422c3509dd2b9 Mon Sep 17 00:00:00 2001 From: lyqluis <39592732+lyqluis@users.noreply.github.com> Date: Fri, 22 Mar 2024 13:30:10 +0800 Subject: [PATCH 16/22] fix(route): /3dmgame/news (#14904) --- lib/routes/3dmgame/game.ts | 4 ++-- lib/routes/3dmgame/news-center.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/routes/3dmgame/game.ts b/lib/routes/3dmgame/game.ts index 765b49c644..f6bda17f81 100644 --- a/lib/routes/3dmgame/game.ts +++ b/lib/routes/3dmgame/game.ts @@ -6,7 +6,7 @@ import { parseDate } from '@/utils/parse-date'; import { parseArticle } from './utils'; export const route: Route = { - path: '/:name/:type?', + path: '/games/:name/:type?', radar: [ { source: ['3dmgame.com/games/:name/:type'], @@ -14,7 +14,7 @@ export const route: Route = { ], name: '游戏资讯', categories: ['game'], - maintainers: ['sinchang', 'jacky2001114', 'HenryQW'], + maintainers: ['sinchang', 'jacky2001114', 'HenryQW', 'lyqluis'], handler, }; diff --git a/lib/routes/3dmgame/news-center.ts b/lib/routes/3dmgame/news-center.ts index a2d9f4396b..c8b305052c 100644 --- a/lib/routes/3dmgame/news-center.ts +++ b/lib/routes/3dmgame/news-center.ts @@ -25,7 +25,7 @@ export const route: Route = { }, ], name: '新闻中心', - maintainers: ['zhboner'], + maintainers: ['zhboner', 'lyqluis'], handler, description: `| 新闻推荐 | 游戏新闻 | 动漫影视 | 智能数码 | 时事焦点 | | -------- | -------- | -------- | -------- | ----------- | @@ -35,7 +35,7 @@ export const route: Route = { async function handler(ctx) { const { category = '' } = ctx.req.param(); const isArcPost = category && !isNaN(category); // https://www.3dmgame.com/news/\d+/ - const url = `https://www.3dmgame.com/${category && category !== 'news_36_1' ? 'news/' : ''}${category ?? 'news'}/`; + const url = `https://www.3dmgame.com/${category === 'news_36_1' ? category : 'news/' + category}`; const res = await got(url); const $ = load(res.data); const list = $(isArcPost ? '.selectarcpost' : '.selectpost') From cc04d9ad9bff1b44aee8f7b256b9015713963b24 Mon Sep 17 00:00:00 2001 From: rkscv Date: Fri, 22 Mar 2024 13:34:03 +0800 Subject: [PATCH 17/22] feat(route): linovelib volume (#14857) --- lib/routes/linovelib/namespace.ts | 2 +- lib/routes/linovelib/volume.ts | 36 +++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 lib/routes/linovelib/volume.ts diff --git a/lib/routes/linovelib/namespace.ts b/lib/routes/linovelib/namespace.ts index e2f0de1a68..5edd5c3802 100644 --- a/lib/routes/linovelib/namespace.ts +++ b/lib/routes/linovelib/namespace.ts @@ -1,6 +1,6 @@ import type { Namespace } from '@/types'; export const namespace: Namespace = { - name: '哩哔轻小说', + name: '哔哩轻小说', url: 'linovelib.com', }; diff --git a/lib/routes/linovelib/volume.ts b/lib/routes/linovelib/volume.ts new file mode 100644 index 0000000000..8aa877e3db --- /dev/null +++ b/lib/routes/linovelib/volume.ts @@ -0,0 +1,36 @@ +import type { Route, Data } from '@/types'; +import type { Context } from 'hono'; +import got from '@/utils/got'; +import { load } from 'cheerio'; + +export const route: Route = { + path: '/volume/:id', + categories: ['reading'], + example: '/linovelib/volume/8', + parameters: { id: '小说 ID,可在小说页 URL 中找到' }, + radar: [ + { + source: ['www.linovelib.com/novel/:id/catalog'], + }, + ], + name: '卷', + maintainers: ['rkscv'], + handler, +}; + +async function handler(ctx: Context): Promise { + const { id } = ctx.req.param(); + const link = `https://www.linovelib.com/novel/${id}/catalog`; + const $ = load(await got(link).text()); + return { + title: `${$('.book-meta h1').text()} - 哔哩轻小说`, + link, + item: $('.volume') + .toArray() + .map((elem) => ({ + title: $(elem).find('h2').text(), + link: $(elem).find('.volume-cover').attr('href'), + })) + .toReversed(), + }; +} From 222efb93b84b576c36c60a6bfebc7160314342ad Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 13:40:00 +0800 Subject: [PATCH 18/22] chore: remove linebreaks --- .github/workflows/build-assets.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index f87c262cb1..3d2444154c 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -63,4 +63,4 @@ jobs: git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git diff-index --quiet HEAD || (git commit -m "chore: auto build\n\nUpdate from https://github.com/$GITHUB_REPOSITORY/commit/$GITHUB_SHA" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) + git diff-index --quiet HEAD || (git commit -m "chore: auto build $GITHUB_SHA" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) From 6d11d330ee0842e535db578abbfcbdc63abf34c0 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 22 Mar 2024 06:25:06 +0000 Subject: [PATCH 19/22] chore: fix cross repo referencing --- .github/workflows/build-assets.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index 3d2444154c..bd725fea94 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -63,4 +63,4 @@ jobs: git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git diff-index --quiet HEAD || (git commit -m "chore: auto build $GITHUB_SHA" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) + git diff-index --quiet HEAD || (git commit -m "chore: auto build https://github.com/$GITHUB_REPOSITORY/commit/$GITHUB_SHA" -a --no-verify && git push "https://${GITHUB_ACTOR}:${{ secrets.DOCS_API_TOKEN }}@github.com/RSSNext/rsshub-docs.git" HEAD:main) From cfd2477e37322dee0c21080d9041a710d882eec9 Mon Sep 17 00:00:00 2001 From: cnkmmk <22782790+cnkmmk@users.noreply.github.com> Date: Fri, 22 Mar 2024 14:26:27 +0800 Subject: [PATCH 20/22] =?UTF-8?q?feat(route):=20add=20=E5=AD=90=E6=96=B9?= =?UTF-8?q?=E6=9C=89=E6=96=99=20(#14905)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/routes/ippa/namespace.ts | 6 ++++++ lib/routes/ippa/rss.ts | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 lib/routes/ippa/namespace.ts create mode 100644 lib/routes/ippa/rss.ts diff --git a/lib/routes/ippa/namespace.ts b/lib/routes/ippa/namespace.ts new file mode 100644 index 0000000000..7c7ed93f74 --- /dev/null +++ b/lib/routes/ippa/namespace.ts @@ -0,0 +1,6 @@ +import type { Namespace } from '@/types'; + +export const namespace: Namespace = { + name: '子方有料', + url: 'ippa.top', +}; diff --git a/lib/routes/ippa/rss.ts b/lib/routes/ippa/rss.ts new file mode 100644 index 0000000000..db65ffaf5c --- /dev/null +++ b/lib/routes/ippa/rss.ts @@ -0,0 +1,35 @@ +import { Route } from '@/types'; +import { parseDate } from '@/utils/parse-date'; +import got from '@/utils/got'; + +export const route: Route = { + path: '/', + categories: ['blog'], + example: '/ippa', + radar: [ + { + source: ['ippa.top/'], + }, + ], + name: '最新文章', + maintainers: ['cnkmmk'], + handler, + url: 'ippa.top/', +}; + +async function handler() { + const url = 'https://www.ippa.top'; + const response = await got(`${url}/wp-json/wp/v2/posts`); + const list = response.data; + return { + title: '子方有料', + link: url, + description: '子方有料 - 最新文章', + item: list.map((item) => ({ + title: item.title.rendered, + link: item.link, + pubDate: parseDate(item.date_gmt), + description: item.content.rendered, + })), + }; +} From 2ed8e87a4d1a6b7e34751e654258eb3c7c6e0bfa Mon Sep 17 00:00:00 2001 From: Mg Pig Date: Fri, 22 Mar 2024 15:17:25 +0800 Subject: [PATCH 21/22] fix(route): fix 2023game route description (#14906) --- lib/routes/2023game/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/routes/2023game/index.ts b/lib/routes/2023game/index.ts index 03ae687a08..ab94ff4069 100644 --- a/lib/routes/2023game/index.ts +++ b/lib/routes/2023game/index.ts @@ -26,9 +26,9 @@ export const route: Route = { url: 'www.2023game.com/', description: `分类 - | PS4游戏 | switch游戏 | 3DS游戏 | PSV游戏 | Xbox360 | PS3游戏 | 世嘉MD/SS | PSP游戏 | PC周边 | 怀旧掌机 | 怀旧主机 | PS4教程 | PS4金手指 | switch金手指 | switch教程 | switch补丁 | switch主题 | switch存档 | - | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | - | ps4 | sgame | 3ds | psv | jiaocheng | ps3yx | zhuji.md | zhangji.psp | pcgame | zhangji | zhuji | ps4.psjc | ps41.ps4pkg | nsaita.cundang | nsaita.pojie | nsaita.buding | nsaita.zhutie | nsaita.zhuti |`, + | PS4游戏 | switch游戏 | 3DS游戏 | PSV游戏 | Xbox360 | PS3游戏 | 世嘉MD/SS | PSP游戏 | PC周边 | 怀旧掌机 | 怀旧主机 | PS4教程 | PS4金手指 | switch金手指 | switch教程 | switch补丁 | switch主题 | switch存档 | + | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | + | ps4 | sgame | 3ds | psv | jiaocheng | ps3yx | zhuji.md | zhangji.psp | pcgame | zhangji | zhuji | ps4.psjc | ps41.ps4pkg | nsaita.cundang | nsaita.pojie | nsaita.buding | nsaita.zhutie | nsaita.zhuti |`, }; async function handler(ctx?: Context): Promise { From 2789ed96e5b4496f2dcff5e4bcaa7489f4a985cc Mon Sep 17 00:00:00 2001 From: DIYgod Date: Fri, 22 Mar 2024 14:42:29 +0000 Subject: [PATCH 22/22] chore: upgrade got (#14913) * chore: upgrade got * fix: new got --- .github/dependabot.yml | 3 - lib/utils/got.ts | 18 +- lib/utils/request-wrapper.ts | 1 + package.json | 2 +- pnpm-lock.yaml | 807 +++++++++++++++++------------------ 5 files changed, 392 insertions(+), 439 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 921464b8a9..9aa571cd5e 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -11,9 +11,6 @@ updates: ignore: - dependency-name: jsrsasign versions: ['>=11.0.0'] # no longer includes KJUR.crypto.Cipher for RSA - # ESM only packages - - dependency-name: got - versions: ['>=12.0.0'] - dependency-name: unified versions: ['>=10.0.0'] diff --git a/lib/utils/got.ts b/lib/utils/got.ts index 1aace01ec0..d99ddc3f6d 100644 --- a/lib/utils/got.ts +++ b/lib/utils/got.ts @@ -1,6 +1,6 @@ import logger from '@/utils/logger'; import { config } from '@/config'; -import got, { CancelableRequest, Response as GotResponse, NormalizedOptions, Options, Got } from 'got'; +import got, { CancelableRequest, Response as GotResponse, OptionsInit, Options, Got } from 'got'; type Response = GotResponse & { data: T; @@ -25,22 +25,14 @@ const custom: { delete: GotRequestFunction; } & GotRequestFunction & Got = got.extend({ - get: got.get, retry: { limit: config.requestRetry, statusCodes: [400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 421, 422, 423, 424, 426, 428, 429, 431, 451, 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, 511, 521, 522, 524], }, hooks: { beforeRetry: [ - ( - options: NormalizedOptions & { - retryCount?: number; - }, - err, - count - ) => { - logger.error(`Request ${options.url} fail, retry attempt #${count}: ${err}`); - options.retryCount = count; + (err, count) => { + logger.error(`Request ${err.options.url} fail, retry attempt #${count}: ${err}`); }, ], beforeRedirect: [ @@ -63,7 +55,7 @@ const custom: { ], init: [ ( - options: Options & { + options: OptionsInit & { data?: string; } ) => { @@ -84,4 +76,4 @@ const custom: { custom.all = (list) => Promise.all(list); export default custom; -export type { Response, NormalizedOptions, Options } from 'got'; +export type { Response, Options } from 'got'; diff --git a/lib/utils/request-wrapper.ts b/lib/utils/request-wrapper.ts index d80fbc7f73..98e0a3a2de 100644 --- a/lib/utils/request-wrapper.ts +++ b/lib/utils/request-wrapper.ts @@ -45,6 +45,7 @@ const requestWrapper = (url: string, options: http.RequestOptions = {}) => { if (config.proxyStrategy === 'all') { prxied = proxyWrapper(url, optionsWithHeaders); } else if (config.proxyStrategy === 'on_retry' && (optionsWithHeaders as any).retryCount) { + // TODO prxied = proxyWrapper(url, optionsWithHeaders); } if (prxied) { diff --git a/package.json b/package.json index f680298a42..81bae96eed 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,7 @@ "fanfou-sdk": "5.0.0", "git-rev-sync": "3.0.2", "googleapis": "134.0.0", - "got": "11.8.6", + "got": "14.2.1", "hono": "4.1.3", "html-to-text": "9.0.5", "https-proxy-agent": "7.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cb0d1fea76..387bc28e98 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -75,8 +75,8 @@ dependencies: specifier: 134.0.0 version: 134.0.0 got: - specifier: 11.8.6 - version: 11.8.6 + specifier: 14.2.1 + version: 14.2.1 hono: specifier: 4.1.3 version: 4.1.3 @@ -216,10 +216,10 @@ dependencies: devDependencies: '@babel/preset-env': specifier: 7.24.3 - version: 7.24.3(@babel/core@7.23.9) + version: 7.24.3(@babel/core@7.24.3) '@babel/preset-typescript': specifier: 7.24.1 - version: 7.24.1(@babel/core@7.23.9) + version: 7.24.1(@babel/core@7.24.3) '@microsoft/eslint-formatter-sarif': specifier: 3.0.0 version: 3.0.0 @@ -380,6 +380,14 @@ packages: '@jridgewell/trace-mapping': 0.3.22 dev: true + /@ampproject/remapping@2.3.0: + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + /@asteasolutions/zod-to-openapi@5.5.0(zod@3.22.4): resolution: {integrity: sha512-d5HwrvM6dOKr3XdeF+DmashGvfEc+1oiEfbscugsiwSTrFtuMa7ETpW9sTNnVgn+hJaz+PRxPQUYD7q9/5dUig==} peerDependencies: @@ -402,24 +410,32 @@ packages: '@babel/highlight': 7.23.4 chalk: 2.4.2 + /@babel/code-frame@7.24.2: + resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.24.2 + picocolors: 1.0.0 + dev: true + /@babel/compat-data@7.24.1: resolution: {integrity: sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==} engines: {node: '>=6.9.0'} dev: true - /@babel/core@7.23.9: - resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==} + /@babel/core@7.24.3: + resolution: {integrity: sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.24.2 + '@babel/generator': 7.24.1 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) - '@babel/helpers': 7.23.9 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) + '@babel/helpers': 7.24.1 '@babel/parser': 7.24.1 '@babel/template': 7.24.0 - '@babel/traverse': 7.23.9 + '@babel/traverse': 7.24.1 '@babel/types': 7.24.0 convert-source-map: 2.0.0 debug: 4.3.4 @@ -430,12 +446,12 @@ packages: - supports-color dev: true - /@babel/generator@7.23.6: - resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} + /@babel/generator@7.24.1: + resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.0 - '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 dev: true @@ -465,42 +481,42 @@ packages: semver: 6.3.1 dev: true - /@babel/helper-create-class-features-plugin@7.24.1(@babel/core@7.23.9): + /@babel/helper-create-class-features-plugin@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.23.9) + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.3) '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 dev: true - /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.9): + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.3): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 dev: true - /@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.23.9): + /@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.3): resolution: {integrity: sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.24.0 debug: 4.3.4 @@ -544,13 +560,13 @@ packages: '@babel/types': 7.24.0 dev: true - /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9): + /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.3): resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-module-imports': 7.24.1 '@babel/helper-simple-access': 7.22.5 @@ -570,25 +586,25 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.9): + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.3): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 dev: true - /@babel/helper-replace-supers@7.24.1(@babel/core@7.23.9): + /@babel/helper-replace-supers@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 @@ -638,12 +654,12 @@ packages: '@babel/types': 7.24.0 dev: true - /@babel/helpers@7.23.9: - resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==} + /@babel/helpers@7.24.1: + resolution: {integrity: sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.24.0 - '@babel/traverse': 7.23.9 + '@babel/traverse': 7.24.1 '@babel/types': 7.24.0 transitivePeerDependencies: - supports-color @@ -657,6 +673,16 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 + /@babel/highlight@7.24.2: + resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.22.20 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.0 + dev: true + /@babel/parser@7.23.9: resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} engines: {node: '>=6.0.0'} @@ -673,895 +699,895 @@ packages: '@babel/types': 7.24.0 dev: true - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.23.9): + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.23.9): + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.23.9) + '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.3) dev: true - /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.23.9): + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.9): + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.3): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 dev: true - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.9): + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.3): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.9): + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.3): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.9): + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.3): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.23.9): + /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.23.9): + /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.9): + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.3): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.23.9): + /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.9): + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.3): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.9): + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.3): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.9): + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.3): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.9): + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.3): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.9): + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.3): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.23.9): + /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.9): + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.3): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.23.9): + /@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.3): resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9) + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.3) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-module-imports': 7.24.1 '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.9) + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-block-scoping@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-block-scoping@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-h71T2QQvDgM2SmT29UYU6ozjMlAt7s7CSs5Hvy8f8cf/GM/Z4a2zMfN+fjVGaieeCrXR3EdQl6C4gQG+OgmbKw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-class-static-block@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-class-static-block@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-FUHlKCn6J3ERiu8Dv+4eoz7w8+kFLSyeVG4vDAikwADGjUCoHw/JHokyGtr8OR4UjpwPVivyF+h8Q5iv/JmrtA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.9) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-classes@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-classes@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.23.9) + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.3) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 dev: true - /@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/template': 7.24.0 dev: true - /@babel/plugin-transform-destructuring@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-destructuring@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: true - /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-literals@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-simple-access': 7.22.5 dev: true - /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-identifier': 7.22.20 dev: true - /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.9): + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.3): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-object-rest-spread@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-object-rest-spread@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.23.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.23.9) + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-parameters@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-parameters@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.9) + '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.9) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 regenerator-transform: 0.15.2 dev: true - /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-spread@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: true - /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.9) + '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.23.9) + '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.24.3) dev: true - /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.23.9): + /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3) '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/preset-env@7.24.3(@babel/core@7.23.9): + /@babel/preset-env@7.24.3(@babel/core@7.24.3): resolution: {integrity: sha512-fSk430k5c2ff8536JcPvPWK4tZDwehWLGlBp0wrsBUjZVdeQV6lePbwKWZaZfK2vnh/1kQX1PzAJWsnBmVgGJA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.24.1 - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.9) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.9) - '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.23.9) - '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoping': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-class-static-block': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-destructuring': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-object-rest-spread': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-typeof-symbol': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.23.9) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.9) - babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.23.9) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.23.9) - babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.23.9) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.3) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.3) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.3) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.3) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.3) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.3) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.3) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.3) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.3) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.3) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.3) + '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.3) + '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-block-scoping': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-class-static-block': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-destructuring': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.3) + '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-object-rest-spread': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-typeof-symbol': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.3) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.3) + babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.3) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.3) + babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.3) core-js-compat: 3.36.1 semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.9): + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.3): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/types': 7.24.0 esutils: 2.0.3 dev: true - /@babel/preset-typescript@7.24.1(@babel/core@7.23.9): + /@babel/preset-typescript@7.24.1(@babel/core@7.24.3): resolution: {integrity: sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.3 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.23.9) - '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.23.9) + '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.3) + '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.3) dev: true /@babel/regjsgen@0.8.0: @@ -1592,12 +1618,12 @@ packages: '@babel/types': 7.24.0 dev: true - /@babel/traverse@7.23.9: - resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==} + /@babel/traverse@7.24.1: + resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 + '@babel/code-frame': 7.24.2 + '@babel/generator': 7.24.1 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 @@ -1959,6 +1985,15 @@ packages: '@jridgewell/trace-mapping': 0.3.22 dev: true + /@jridgewell/gen-mapping@0.3.5: + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.25 + dev: true + /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} @@ -1969,6 +2004,11 @@ packages: engines: {node: '>=6.0.0'} dev: true + /@jridgewell/set-array@1.2.1: + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + dev: true + /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} dev: true @@ -2331,16 +2371,16 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@sindresorhus/is@4.6.0: - resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} - engines: {node: '>=10'} - dev: false - /@sindresorhus/is@5.6.0: resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} engines: {node: '>=14.16'} dev: false + /@sindresorhus/is@6.2.0: + resolution: {integrity: sha512-yM/IGPkVnYGblhDosFBwq0ZGdnVSBkNV4onUtipGMOjZd4kB6GAu3ys91aftSbyMHh6A2GPdt+KDI5NoWP63MQ==} + engines: {node: '>=16'} + dev: false + /@stylistic/eslint-plugin-js@1.7.0(eslint@8.57.0): resolution: {integrity: sha512-PN6On/+or63FGnhhMKSQfYcWutRlzOiYlVdLM6yN7lquoBTqUJHYnl4TA4MHwiAt46X5gRxDr1+xPZ1lOLcL+Q==} engines: {node: ^16.0.0 || >=18.0.0} @@ -2413,13 +2453,6 @@ packages: - typescript dev: true - /@szmarczak/http-timer@4.0.6: - resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} - engines: {node: '>=10'} - dependencies: - defer-to-connect: 2.0.1 - dev: false - /@szmarczak/http-timer@5.0.1: resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} engines: {node: '>=14.16'} @@ -2444,15 +2477,6 @@ packages: resolution: {integrity: sha512-Jhy+MWRlro6UjVi578V/4ZGNfeCOcNCp0YaFNIUGFKlImowqwb1O/22wDVk3FDGMLqxdpOV3qQHD5fPEH4hK6A==} dev: false - /@types/cacheable-request@6.0.3: - resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} - dependencies: - '@types/http-cache-semantics': 4.0.4 - '@types/keyv': 3.1.4 - '@types/node': 20.11.30 - '@types/responselike': 1.0.3 - dev: false - /@types/caseless@0.12.5: resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==} @@ -2545,12 +2569,6 @@ packages: '@types/node': 20.11.30 dev: true - /@types/keyv@3.1.4: - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - dependencies: - '@types/node': 20.11.30 - dev: false - /@types/linkify-it@3.0.5: resolution: {integrity: sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==} dev: true @@ -2631,12 +2649,6 @@ packages: '@types/tough-cookie': 4.0.5 form-data: 2.5.1 - /@types/responselike@1.0.3: - resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} - dependencies: - '@types/node': 20.11.30 - dev: false - /@types/sanitize-html@2.11.0: resolution: {integrity: sha512-7oxPGNQHXLHE48r/r/qjn7q0hlrs3kL7oZnGj0Wf/h9tj/6ibFyRkNbsDxaBBZ4XUZ0Dx5LGCyDJ04ytSofacQ==} dependencies: @@ -3212,38 +3224,38 @@ packages: resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} dev: false - /babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.23.9): + /babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.24.3): resolution: {integrity: sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/compat-data': 7.24.1 - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3) semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.23.9): + /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.3): resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3) core-js-compat: 3.36.1 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.23.9): + /babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.24.3): resolution: {integrity: sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.23.9) + '@babel/core': 7.24.3 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3) transitivePeerDependencies: - supports-color dev: true @@ -3265,8 +3277,8 @@ packages: dev: false optional: true - /bare-fs@2.1.5: - resolution: {integrity: sha512-5t0nlecX+N2uJqdxe9d18A98cp2u9BETelbjKpiVgQqzzmVNFYWEAjQHqS+2Khgto1vcwhik9cXucaj5ve2WWA==} + /bare-fs@2.2.2: + resolution: {integrity: sha512-X9IqgvyB0/VA5OZJyb5ZstoN62AzD7YxVGog13kkfYWYqJYcK0kcqLZ6TrmH5qr4/8//ejVcX4x/a0UvaogXmA==} requiresBuild: true dependencies: bare-events: 2.2.0 @@ -3424,11 +3436,6 @@ packages: engines: {node: '>=8'} dev: true - /cacheable-lookup@5.0.4: - resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} - engines: {node: '>=10.6.0'} - dev: false - /cacheable-lookup@7.0.0: resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==} engines: {node: '>=14.16'} @@ -3443,23 +3450,10 @@ packages: http-cache-semantics: 4.1.1 keyv: 4.5.4 mimic-response: 4.0.0 - normalize-url: 8.0.0 + normalize-url: 8.0.1 responselike: 3.0.0 dev: false - /cacheable-request@7.0.4: - resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} - engines: {node: '>=8'} - dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 - http-cache-semantics: 4.1.1 - keyv: 4.5.4 - lowercase-keys: 2.0.0 - normalize-url: 6.1.0 - responselike: 2.0.1 - dev: false - /call-bind@1.0.7: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} @@ -3739,12 +3733,6 @@ packages: shallow-clone: 0.1.2 dev: false - /clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - dependencies: - mimic-response: 1.0.1 - dev: false - /clone@1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} @@ -4947,6 +4935,11 @@ packages: engines: {node: '>= 14.17'} dev: false + /form-data-encoder@4.0.2: + resolution: {integrity: sha512-KQVhvhK8ZkWzxKxOr56CPulAhH3dobtuQ4+hNQ+HekH/Wp5gSOafqRAeTphQUJAIk0GBvHZgJ2ZGRWd5kphMuw==} + engines: {node: '>= 18'} + dev: false + /form-data@2.3.3: resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} engines: {node: '>= 0.12'} @@ -5106,7 +5099,6 @@ packages: /get-stream@8.0.1: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} - dev: true /get-tsconfig@4.7.2: resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} @@ -5237,23 +5229,6 @@ packages: dependencies: get-intrinsic: 1.2.4 - /got@11.8.6: - resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} - engines: {node: '>=10.19.0'} - dependencies: - '@sindresorhus/is': 4.6.0 - '@szmarczak/http-timer': 4.0.6 - '@types/cacheable-request': 6.0.3 - '@types/responselike': 1.0.3 - cacheable-lookup: 5.0.4 - cacheable-request: 7.0.4 - decompress-response: 6.0.0 - http2-wrapper: 1.0.3 - lowercase-keys: 2.0.0 - p-cancelable: 2.1.1 - responselike: 2.0.1 - dev: false - /got@12.6.1: resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} engines: {node: '>=14.16'} @@ -5271,6 +5246,23 @@ packages: responselike: 3.0.0 dev: false + /got@14.2.1: + resolution: {integrity: sha512-KOaPMremmsvx6l9BLC04LYE6ZFW4x7e4HkTe3LwBmtuYYQwpeS4XKqzhubTIkaQ1Nr+eXxeori0zuwupXMovBQ==} + engines: {node: '>=20'} + dependencies: + '@sindresorhus/is': 6.2.0 + '@szmarczak/http-timer': 5.0.1 + cacheable-lookup: 7.0.0 + cacheable-request: 10.2.14 + decompress-response: 6.0.0 + form-data-encoder: 4.0.2 + get-stream: 8.0.1 + http2-wrapper: 2.2.1 + lowercase-keys: 3.0.0 + p-cancelable: 4.0.1 + responselike: 3.0.0 + dev: false + /graceful-fs@4.1.15: resolution: {integrity: sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==} dev: false @@ -5472,14 +5464,6 @@ packages: sshpk: 1.18.0 dev: false - /http2-wrapper@1.0.3: - resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} - engines: {node: '>=10.19.0'} - dependencies: - quick-lru: 5.1.1 - resolve-alpn: 1.2.1 - dev: false - /http2-wrapper@2.2.1: resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==} engines: {node: '>=10.19.0'} @@ -6278,11 +6262,6 @@ packages: resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} dev: false - /lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} - dev: false - /lowercase-keys@3.0.0: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6679,11 +6658,6 @@ packages: engines: {node: '>=12'} dev: true - /mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} - dev: false - /mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -6877,13 +6851,8 @@ packages: validate-npm-package-license: 3.0.4 dev: true - /normalize-url@6.1.0: - resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} - engines: {node: '>=10'} - dev: false - - /normalize-url@8.0.0: - resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} + /normalize-url@8.0.1: + resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==} engines: {node: '>=14.16'} dev: false @@ -7039,16 +7008,16 @@ packages: '@otplib/preset-v11': 12.0.1 dev: false - /p-cancelable@2.1.1: - resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} - engines: {node: '>=8'} - dev: false - /p-cancelable@3.0.0: resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} engines: {node: '>=12.20'} dev: false + /p-cancelable@4.0.1: + resolution: {integrity: sha512-wBowNApzd45EIKdO1LaU+LrMBwAcjfPaYtVzV3lmfM3gf8Z4CHZsiIqlM8TZZ8okYvh5A1cP6gTfCRQtwUpaUg==} + engines: {node: '>=14.16'} + dev: false + /p-finally@1.0.0: resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} engines: {node: '>=4'} @@ -7840,12 +7809,6 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - /responselike@2.0.1: - resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} - dependencies: - lowercase-keys: 2.0.0 - dev: false - /responselike@3.0.0: resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} engines: {node: '>=14.16'} @@ -8443,7 +8406,7 @@ packages: pump: 3.0.0 tar-stream: 3.1.7 optionalDependencies: - bare-fs: 2.1.5 + bare-fs: 2.2.2 bare-path: 2.1.0 dev: false