mirror of
https://github.com/DIYgod/RSSHub.git
synced 2025-12-15 01:30:33 +08:00
rss: add douyin user
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -7,8 +7,7 @@ package-lock.json
|
|||||||
.idea
|
.idea
|
||||||
.DS_Store
|
.DS_Store
|
||||||
docs/.vuepress/dist
|
docs/.vuepress/dist
|
||||||
|
|
||||||
config/app.json
|
config/app.json
|
||||||
config/config.js
|
config/config.js
|
||||||
|
|
||||||
yarn-error.log
|
yarn-error.log
|
||||||
|
tmp
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
package.json
|
package.json
|
||||||
docs/.vuepress/dist
|
docs/.vuepress/dist
|
||||||
package-lock.json
|
package-lock.json
|
||||||
|
routes/douyin/fuck-byted-acrawler.js
|
||||||
|
|||||||
0
cache/.gitkeep
vendored
0
cache/.gitkeep
vendored
@@ -2674,3 +2674,15 @@ GitHub 官方也提供了一些 RSS:
|
|||||||
举例: <https://rsshub.app/xkcd/what-if>
|
举例: <https://rsshub.app/xkcd/what-if>
|
||||||
|
|
||||||
路由: `/xkcd/what-if`
|
路由: `/xkcd/what-if`
|
||||||
|
|
||||||
|
## 抖音
|
||||||
|
|
||||||
|
### 用户动态 <Author uid="DIYgod"/>
|
||||||
|
|
||||||
|
举例: <https://rsshub.app/douyin/user/93610979153>
|
||||||
|
|
||||||
|
路由: `/douyin/user/:id`
|
||||||
|
|
||||||
|
参数:
|
||||||
|
|
||||||
|
- id, 用户 id, 可在 分享出去获得的用户主页 URL 中找到
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
"luxon": "^1.3.3",
|
"luxon": "^1.3.3",
|
||||||
"markdown-it": "^8.4.2",
|
"markdown-it": "^8.4.2",
|
||||||
"path-to-regexp": "2.4.0",
|
"path-to-regexp": "2.4.0",
|
||||||
|
"puppeteer": "^1.7.0",
|
||||||
"raven": "^2.6.3",
|
"raven": "^2.6.3",
|
||||||
"readall": "1.0.0",
|
"readall": "1.0.0",
|
||||||
"redis": "2.8.0",
|
"redis": "2.8.0",
|
||||||
|
|||||||
@@ -525,4 +525,7 @@ router.get('/xkcd/what-if', require('./routes/xkcd/what-if'));
|
|||||||
// Minecraft CurseForge
|
// Minecraft CurseForge
|
||||||
router.get('/curseforge/files/:project', require('./routes/curseforge/files'));
|
router.get('/curseforge/files/:project', require('./routes/curseforge/files'));
|
||||||
|
|
||||||
|
// 抖音
|
||||||
|
router.get('/douyin/user/:id', require('./routes/douyin/user'));
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
65
routes/douyin/user.js
Normal file
65
routes/douyin/user.js
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
const cheerio = require('cheerio');
|
||||||
|
|
||||||
|
module.exports = async (ctx) => {
|
||||||
|
const id = ctx.params.id;
|
||||||
|
const getPage = await require('../../utils/puppeteer');
|
||||||
|
const page = await getPage();
|
||||||
|
|
||||||
|
const timerPromise = new Promise((resolve) => setTimeout(resolve, 1000));
|
||||||
|
await timerPromise;
|
||||||
|
|
||||||
|
const data = await new Promise((resolve) => {
|
||||||
|
const result = {
|
||||||
|
name: null,
|
||||||
|
description: null,
|
||||||
|
list: null,
|
||||||
|
};
|
||||||
|
|
||||||
|
page.goto(`https://www.douyin.com/share/user/${id}`);
|
||||||
|
|
||||||
|
page.on('response', (response) => {
|
||||||
|
const req = response.request();
|
||||||
|
if (req.url().match(`www.douyin.com/share/user/${id}`)) {
|
||||||
|
response.text().then((text) => {
|
||||||
|
const $ = cheerio.load(text);
|
||||||
|
result.name = $('.nickname').text();
|
||||||
|
result.description = $('.signature').text();
|
||||||
|
if (result.list) {
|
||||||
|
resolve(result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else if (req.url().match('www.douyin.com/aweme/v1/aweme/post')) {
|
||||||
|
response.json().then((data) => {
|
||||||
|
result.list = data;
|
||||||
|
if (result.name) {
|
||||||
|
resolve(result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
ctx.state.data = {
|
||||||
|
title: `${data.name}的抖音`,
|
||||||
|
link: `https://www.douyin.com/share/user/${id}`,
|
||||||
|
description: data.description,
|
||||||
|
item:
|
||||||
|
data.list &&
|
||||||
|
data.list.aweme_list.map((item) => ({
|
||||||
|
title: item.share_info.share_desc,
|
||||||
|
description: `
|
||||||
|
<p>${item.share_info.share_desc}</p>
|
||||||
|
<p><a href="https://www.amemv.com/redirect/?redirect_url=aweme%3A%2F%2Faweme%2Fdetail%2F${item.aweme_id}%3Frefer%3Dweb%26gd_label%3Dclick_wap_profile_feature%26appParam%3D%26needlaunchlog%3D1">APP 内打开</a></p>
|
||||||
|
<p>
|
||||||
|
<video
|
||||||
|
controls="controls"
|
||||||
|
width="${item.video.width}"
|
||||||
|
height="${item.video.height}"
|
||||||
|
poster="${item.video.cover.url_list[0]}"
|
||||||
|
src="${item.video.play_addr.url_list[0]}"
|
||||||
|
>
|
||||||
|
</p>`,
|
||||||
|
link: item.video.play_addr.url_list[0],
|
||||||
|
})),
|
||||||
|
};
|
||||||
|
};
|
||||||
@@ -39,7 +39,7 @@ module.exports = async (ctx) => {
|
|||||||
responseType: 'arraybuffer',
|
responseType: 'arraybuffer',
|
||||||
});
|
});
|
||||||
|
|
||||||
const filePath = `cache/${item.file_id}.png`;
|
const filePath = `tmp/${item.file_id}.png`;
|
||||||
|
|
||||||
await sharp(fileResponse.data)
|
await sharp(fileResponse.data)
|
||||||
.png()
|
.png()
|
||||||
|
|||||||
26
utils/puppeteer.js
Normal file
26
utils/puppeteer.js
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
const puppeteer = require('puppeteer');
|
||||||
|
const logger = require('./logger');
|
||||||
|
const config = require('../config');
|
||||||
|
|
||||||
|
const options = {
|
||||||
|
args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-infobars', '--window-position=0,0', '--ignore-certifcate-errors', '--ignore-certifcate-errors-spki-list', `--user-agent=${config.ua}`],
|
||||||
|
headless: true,
|
||||||
|
ignoreHTTPSErrors: true,
|
||||||
|
userDataDir: './tmp',
|
||||||
|
};
|
||||||
|
|
||||||
|
module.exports = (async () => {
|
||||||
|
const browser = await puppeteer.launch(options);
|
||||||
|
logger.info('Puppeteer launched.');
|
||||||
|
|
||||||
|
return async () => {
|
||||||
|
const page = await browser.newPage();
|
||||||
|
|
||||||
|
// 防止 page 未正确关闭,一分钟后自行关闭
|
||||||
|
setTimeout(() => {
|
||||||
|
page.close();
|
||||||
|
}, 60000);
|
||||||
|
|
||||||
|
return page;
|
||||||
|
};
|
||||||
|
})();
|
||||||
75
yarn.lock
75
yarn.lock
@@ -877,6 +877,12 @@ acorn@^5.6.0:
|
|||||||
version "5.7.1"
|
version "5.7.1"
|
||||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.1.tgz#f095829297706a7c9776958c0afc8930a9b9d9d8"
|
resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.1.tgz#f095829297706a7c9776958c0afc8930a9b9d9d8"
|
||||||
|
|
||||||
|
agent-base@^4.1.0:
|
||||||
|
version "4.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9"
|
||||||
|
dependencies:
|
||||||
|
es6-promisify "^5.0.0"
|
||||||
|
|
||||||
agentkeepalive@^2.2.0:
|
agentkeepalive@^2.2.0:
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-2.2.0.tgz#c5d1bd4b129008f1163f236f86e5faea2026e2ef"
|
resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-2.2.0.tgz#c5d1bd4b129008f1163f236f86e5faea2026e2ef"
|
||||||
@@ -1872,7 +1878,7 @@ concat-map@0.0.1:
|
|||||||
version "0.0.1"
|
version "0.0.1"
|
||||||
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||||
|
|
||||||
concat-stream@^1.5.0:
|
concat-stream@1.6.2, concat-stream@^1.5.0:
|
||||||
version "1.6.2"
|
version "1.6.2"
|
||||||
resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
|
resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -2242,7 +2248,7 @@ debug@0.7.4:
|
|||||||
version "0.7.4"
|
version "0.7.4"
|
||||||
resolved "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz#06e1ea8082c2cb14e39806e22e2f6f757f92af39"
|
resolved "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz#06e1ea8082c2cb14e39806e22e2f6f757f92af39"
|
||||||
|
|
||||||
debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.1, debug@^2.6.3, debug@^2.6.8:
|
debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.1, debug@^2.6.3, debug@^2.6.8:
|
||||||
version "2.6.9"
|
version "2.6.9"
|
||||||
resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
|
resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -2629,7 +2635,7 @@ es6-promise@^3.2.1:
|
|||||||
version "3.3.1"
|
version "3.3.1"
|
||||||
resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
|
resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
|
||||||
|
|
||||||
es6-promise@^4.1.0:
|
es6-promise@^4.0.3, es6-promise@^4.1.0:
|
||||||
version "4.2.4"
|
version "4.2.4"
|
||||||
resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29"
|
resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29"
|
||||||
|
|
||||||
@@ -2639,6 +2645,12 @@ es6-promisify@^4.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
es6-promise "^3.2.1"
|
es6-promise "^3.2.1"
|
||||||
|
|
||||||
|
es6-promisify@^5.0.0:
|
||||||
|
version "5.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203"
|
||||||
|
dependencies:
|
||||||
|
es6-promise "^4.0.3"
|
||||||
|
|
||||||
es6-symbol@^3.1.1, es6-symbol@~3.1.1:
|
es6-symbol@^3.1.1, es6-symbol@~3.1.1:
|
||||||
version "3.1.1"
|
version "3.1.1"
|
||||||
resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
|
resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
|
||||||
@@ -2933,6 +2945,15 @@ extglob@^2.0.4:
|
|||||||
snapdragon "^0.8.1"
|
snapdragon "^0.8.1"
|
||||||
to-regex "^3.0.1"
|
to-regex "^3.0.1"
|
||||||
|
|
||||||
|
extract-zip@^1.6.6:
|
||||||
|
version "1.6.7"
|
||||||
|
resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9"
|
||||||
|
dependencies:
|
||||||
|
concat-stream "1.6.2"
|
||||||
|
debug "2.6.9"
|
||||||
|
mkdirp "0.5.1"
|
||||||
|
yauzl "2.4.1"
|
||||||
|
|
||||||
extsprintf@1.3.0:
|
extsprintf@1.3.0:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
|
resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
|
||||||
@@ -2980,6 +3001,12 @@ fastparse@^1.1.1:
|
|||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8"
|
resolved "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8"
|
||||||
|
|
||||||
|
fd-slicer@~1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
|
||||||
|
dependencies:
|
||||||
|
pend "~1.2.0"
|
||||||
|
|
||||||
fecha@^2.3.3:
|
fecha@^2.3.3:
|
||||||
version "2.3.3"
|
version "2.3.3"
|
||||||
resolved "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz#948e74157df1a32fd1b12c3a3c3cdcb6ec9d96cd"
|
resolved "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz#948e74157df1a32fd1b12c3a3c3cdcb6ec9d96cd"
|
||||||
@@ -3625,6 +3652,13 @@ https-browserify@^1.0.0:
|
|||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
|
resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
|
||||||
|
|
||||||
|
https-proxy-agent@^2.2.1:
|
||||||
|
version "2.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0"
|
||||||
|
dependencies:
|
||||||
|
agent-base "^4.1.0"
|
||||||
|
debug "^3.1.0"
|
||||||
|
|
||||||
iconv-lite@0.4.24:
|
iconv-lite@0.4.24:
|
||||||
version "0.4.24"
|
version "0.4.24"
|
||||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
||||||
@@ -4989,7 +5023,7 @@ mkdirp@0.3.0:
|
|||||||
version "0.3.0"
|
version "0.3.0"
|
||||||
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e"
|
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e"
|
||||||
|
|
||||||
mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
|
mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
|
||||||
version "0.5.1"
|
version "0.5.1"
|
||||||
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -5582,6 +5616,10 @@ pbkdf2@^3.0.3:
|
|||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
sha.js "^2.4.8"
|
sha.js "^2.4.8"
|
||||||
|
|
||||||
|
pend@~1.2.0:
|
||||||
|
version "1.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
|
||||||
|
|
||||||
performance-now@^2.1.0:
|
performance-now@^2.1.0:
|
||||||
version "2.1.0"
|
version "2.1.0"
|
||||||
resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
||||||
@@ -6019,6 +6057,10 @@ promise-inflight@^1.0.1:
|
|||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
|
resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
|
||||||
|
|
||||||
|
proxy-from-env@^1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee"
|
||||||
|
|
||||||
prr@~1.0.1:
|
prr@~1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
|
resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
|
||||||
@@ -6087,6 +6129,19 @@ punycode@^1.2.4, punycode@^1.4.1:
|
|||||||
version "1.4.1"
|
version "1.4.1"
|
||||||
resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
||||||
|
|
||||||
|
puppeteer@^1.7.0:
|
||||||
|
version "1.7.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-1.7.0.tgz#edcba2300a50847202c0f19fd15e7a96171ff3bd"
|
||||||
|
dependencies:
|
||||||
|
debug "^3.1.0"
|
||||||
|
extract-zip "^1.6.6"
|
||||||
|
https-proxy-agent "^2.2.1"
|
||||||
|
mime "^2.0.3"
|
||||||
|
progress "^2.0.0"
|
||||||
|
proxy-from-env "^1.0.0"
|
||||||
|
rimraf "^2.6.1"
|
||||||
|
ws "^5.1.1"
|
||||||
|
|
||||||
q@^1.0.1, q@^1.1.2:
|
q@^1.0.1, q@^1.1.2:
|
||||||
version "1.5.1"
|
version "1.5.1"
|
||||||
resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
|
resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
|
||||||
@@ -8010,6 +8065,12 @@ ws@^4.0.0:
|
|||||||
async-limiter "~1.0.0"
|
async-limiter "~1.0.0"
|
||||||
safe-buffer "~5.1.0"
|
safe-buffer "~5.1.0"
|
||||||
|
|
||||||
|
ws@^5.1.1:
|
||||||
|
version "5.2.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f"
|
||||||
|
dependencies:
|
||||||
|
async-limiter "~1.0.0"
|
||||||
|
|
||||||
xdg-basedir@^3.0.0:
|
xdg-basedir@^3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
|
resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
|
||||||
@@ -8047,6 +8108,12 @@ yargs-parser@^10.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
camelcase "^4.1.0"
|
camelcase "^4.1.0"
|
||||||
|
|
||||||
|
yauzl@2.4.1:
|
||||||
|
version "2.4.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005"
|
||||||
|
dependencies:
|
||||||
|
fd-slicer "~1.0.1"
|
||||||
|
|
||||||
ylru@^1.2.0:
|
ylru@^1.2.0:
|
||||||
version "1.2.1"
|
version "1.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f"
|
resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f"
|
||||||
|
|||||||
Reference in New Issue
Block a user