mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
Add package emit mode option
This commit is contained in:
parent
e17388a26c
commit
2a2eb45502
1
@types/global/index.d.ts
vendored
1
@types/global/index.d.ts
vendored
@ -501,6 +501,7 @@ declare global {
|
||||
unfoldFeeds: boolean,
|
||||
feedsImageExporter: boolean,
|
||||
columnImageExporter: boolean,
|
||||
downloadPackageEmitMode: '打包下载' | '分别下载',
|
||||
latestVersionLink: string,
|
||||
currentVersion: string,
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -28,7 +28,7 @@
|
||||
"clear-cache.min.js": "9AB1536D8278DA681831A589AD1414425BF206B36AE109FB4EC1E8A685BB2A9F",
|
||||
"collapse-live-side-bar.min.css": "22348786547D2D8DB659A306AF2E9C1F2050D66488778C71545AAEF785FD57E6",
|
||||
"collapse-live-side-bar.min.js": "BB1B1CF157099A70F1AEA3F154C84D9CA1A84A29B5F6E42357CA9F51FFC4965C",
|
||||
"column-image-exporter.min.js": "EC98F065908736A6DA91A3F8AA68BF8DC9D4D3F2973E374BA7C36C66F5669345",
|
||||
"column-image-exporter.min.js": "DA5AAE1D53273AE5D1F0950547A3500F5E6E67011F1C68757751AE5D3F148A0A",
|
||||
"combo-like.min.js": "368DA34768E947628099D258ED23BC5FFFCFFD25A47346E086C7975C8A52F997",
|
||||
"comment-apis.min.js": "193C9F7E1B288699B01146031A3401E5B5ED6F5DE4D64C15E1D4D20FAB077A01",
|
||||
"comment-dark.min.css": "E980508E86203743C36FEE4F7149BFF53961ECBC4EC140E8C162D18D395B940A",
|
||||
@ -38,7 +38,7 @@
|
||||
"compact-layout.min.css": "CAC8B0DBA8E90B38D31F0811B7B469709052204AC36D5D3F20FE5D0899FDDCCB",
|
||||
"compact-layout.min.js": "B20609A7CBBDB1845FA0156FB5BE6B1E1A1B8B069EA85F65D16241DD2C12D738",
|
||||
"copy-comment-link.min.js": "0488EB370A89B79F39120AB5EF7696F9FEF354E12724E7E41197AE8D1A9A6553",
|
||||
"copy-feeds-link.min.js": "E13B09593E00520336D9DB97383437ACE66F8E49CD408E336A536C22538EA98A",
|
||||
"copy-feeds-link.min.js": "9B4DDB9001A8879F1AC893BDD812B0A0F2810B238A7AC3581F0CF248BDC1B0F4",
|
||||
"custom-control-background.min.css": "1981FD2BF3B17ECF33F98D5DEDAF0D32ACBE9532A51FDB70822286991AB98EF3",
|
||||
"custom-control-background.min.js": "B9F366B251D1572ACE801FF6ECF15D4D1AAB3EA5A5B04B961B6F4310E2AB1A84",
|
||||
"custom-navbar-activities.min.js": "C2825BA81A3DD933346745F3FC8C45ED88932E180F65E7C8D7EED5CA3559A05E",
|
||||
@ -71,7 +71,7 @@
|
||||
"dark-schedule.min.js": "853C446547603F4F0425F19F09F73335C9EC451A790C1C07E5E5B88A09E9B453",
|
||||
"dark-styles.min.js": "77F12E4F159C5139E1FC6030615F88EFD0A02443D34C3C4EDC3DB0B85F081631",
|
||||
"dark.min.css": "EB41BBFB1AFBAA512456710911FB6A21B5B46B61679D901F600D9C6C5992E529",
|
||||
"dark.user.css": "33D34E814FE6EBE4F21688577B1650AF876D46BAE203E47C421F50A5375485B0",
|
||||
"dark.user.css": "9937A2001B339F3AE19DD0F3C90EA04AA65BF7436FC20873D16C3ABC13410E6D",
|
||||
"debounce.min.js": "54D33E1273C1F3FE19550BF1844339C3D54D6B01DF8A39C3162D95B93B079CFA",
|
||||
"default-danmaku-settings.min.css": "D9942B184FEDA7B08CFA0C34920E97D7A83B81762DCBF757642EBB60F95FF25D",
|
||||
"default-danmaku-settings.min.js": "9DBC9AC9B5A3B59EBCC6F04D36527B523D66203AC5FE7C2AD5DB46FFB84F9382",
|
||||
@ -86,11 +86,11 @@
|
||||
"download-audio.min.js": "1F4536DE4FF302BFD026CA17E028AF8EB037FB6D0CB355692549DECAEAE0E8C9",
|
||||
"download-danmaku.min.js": "BB6DAA0F0FD4FFAA8816FB45F8697E17F8B576EFE0DB048C248FD7E3063F8E34",
|
||||
"download-live-records.min.js": "7EF26D22D22EB75A6B27B78B3DB0E2ADE6004587C11B0C2893CF1CCB3B6FAB6F",
|
||||
"download-package.min.js": "4A09ADE741443A1949B7E6354DFC80C91254611BCAB184D5D65DFCB8B153305D",
|
||||
"download-subtitle.min.js": "EAD1F63E53C5A0A9877EBF655B68FB3438601D2869F31D0D4A2F7BD2A215E5F3",
|
||||
"download-video-package.min.js": "79C0338420F6B388B1F5FFB50DB8333CD8DBF253DFF564F143AA0C01E79EF518",
|
||||
"download-video.min.css": "E312176F7A6AA8492FCF0E6422327996D8B9FAB866A39CEA237E43FE353B6569",
|
||||
"download-video.min.html": "A4A17A677C1306AB0FAFEE26098D785533317B92F487BB1452E12A4F66A43303",
|
||||
"download-video.min.js": "D025027B81451BFBDB0F04304DBB98CF90170E5838D20CDFCA39E0952D49BD17",
|
||||
"download-video.min.js": "B425243D99A2DF30D822930E3659D3761383E57F67B198FD1E2A87F2F160B2B2",
|
||||
"dpi-img.vue.min.js": "11DF7577B754D8C01E8331E4FDAC9494E72523099845A0D6B0D897849CD841D6",
|
||||
"expand-danmaku.min.js": "B21658C40085AEA8DC49652AE62EB8610BB2EBEAF7A9C9AF69EF3B11E08EEC8D",
|
||||
"expand-description.min.css": "58C7710A50521B80F7D872BDC4C652610D84C4FABC6874BA66DA37B4F8759224",
|
||||
@ -101,7 +101,7 @@
|
||||
"feeds-apis.min.js": "0A70658F6A398AC5122C4328F69EC93FC122BD19319F89C3DECF60389DC68C30",
|
||||
"feeds-filter-card.vue.min.js": "D743BEF3C77C8A9AB8AA5DD24E8BD0A7AF7E638319137A103F3A9CF278F66CB4",
|
||||
"feeds-filter.min.js": "9E8BC1A669D97992E888A3154FCE64912CE0B7A303D6BE40C3CA0C71A9533B96",
|
||||
"feeds-image-exporter.min.js": "E92D2820FF7BD37AA4D930C9A89DF32B989B4E6A06F8AF6E0C3D9AE777343F81",
|
||||
"feeds-image-exporter.min.js": "2FAB2F9AA7B396AA20C81044578067C592770FB262A7B05C0C54C4394ADC2F37",
|
||||
"feeds-translate-providers.min.js": "DD3B48C051ED1CD89AB79B2563723B2639D8737EF2194136D63ABAA8D4B64F6C",
|
||||
"feeds-translate.min.css": "54E959EC2AD38451B288E0DC669A269BF916CDB0F6B78497E2C315EB2811EF02",
|
||||
"feeds-translate.min.js": "02C12D7A3382E185FF67C503C6287759ED18D2E9C838C2B94668953272BA09B1",
|
||||
@ -123,7 +123,7 @@
|
||||
"gbk.min.js": "872D7A4562F13A539C4A9AF1825DE89E610C775F1AD026EA6986A80DD74E4B53",
|
||||
"get-number.min.js": "7B81A45D0F7D7F68CC6EDE25E02FCD76F8A05B2CF29274F94A99980BB23D8B76",
|
||||
"gui-settings.min.css": "787D487EF39F28C18815C755BB4CA336355B84778861DCC70AA5AC998FDB9CC7",
|
||||
"gui-settings.min.html": "760D5BFDF0A042C1FA0D13CF978C02AC4B3EC81D6E895527C1B53DE0F199B6DC",
|
||||
"gui-settings.min.html": "AB918E5C79F2E28616444D8679A6F8CFB2971B2528B26A9D4689A2E72D7B444F",
|
||||
"gui-settings.min.js": "A092181BBAF56712E2F62B46552DE97D582FB1891B626D9D55276E577BC44D7A",
|
||||
"haruna-scale.min.js": "FD079C86741F614FD63E733CF9B7B896A7D20110754815A540F3341D4DC252B2",
|
||||
"hide-bangumi-reviews.min.js": "7265C0CE994FDA926355A9A4F9B207E7E68E749D47332F3C537EF93E97927A23",
|
||||
|
||||
BIN
min/bundle.zip
BIN
min/bundle.zip
Binary file not shown.
2
min/copy-feeds-link.min.js
vendored
2
min/copy-feeds-link.min.js
vendored
@ -1 +1 @@
|
||||
(()=>{return(i,t)=>{(async()=>{const i=["https://t.bilibili.com/","https://space.bilibili.com/","https://live.bilibili.com/"];if(i.every(i=>!document.URL.includes(i))){return}const{forEachFeedsCard:e,addMenuItem:s}=await t.importAsync("feeds-apis");const c=i=>{s(i,{className:"copy-link",text:"复制链接",action:()=>{GM_setClipboard(`https://t.bilibili.com/${i.id}`,{mimetype:"text/plain"})}})};e({added:c})})()}})();
|
||||
(()=>{return(t,e)=>{(async()=>{const{forEachFeedsCard:t,addMenuItem:a}=await e.importAsync("feeds-apis");const i=t=>{a(t,{className:"copy-link",text:"复制链接",action:()=>{GM_setClipboard(`https://t.bilibili.com/${t.id}`,{mimetype:"text/plain"})}})};t({added:i})})()}})();
|
||||
2
min/download-package.min.js
vendored
2
min/download-package.min.js
vendored
@ -1 +1 @@
|
||||
(()=>{return(e,t)=>{class n{constructor(e={}){this.config=e;this.entries=[]}download(e,t){const a=document.createElement("a");const i=URL.createObjectURL(t);if(n.lastPackageUrl){URL.revokeObjectURL(n.lastPackageUrl)}n.lastPackageUrl=i;a.setAttribute("href",i);a.setAttribute("download",escapeFilename(e));document.body.appendChild(a);a.click();a.remove()}add(e,t){if(t===null||t===undefined){return}console.log(`add file: ${escapeFilename(e)}`);this.entries.push({name:escapeFilename(e),data:t})}async blob(){if(this.entries.length===0){return null}if(this.entries.length===1){const e=this.entries[0].data;return typeof e==="string"?new Blob([e]):e}const e=new JSZip;this.entries.forEach(({name:t,data:n})=>{e.file(t,n)});return await e.generateAsync({type:"blob"})}async emit(e){if(this.entries.length===0){return}if(!e||this.entries.length===1){e=this.entries[0].name}const t=await this.blob();if(!t){return}return this.download(e,t)}static async single(e,t,a={}){const i=new n(a);i.add(e,t);return await i.emit()}}n.lastPackageUrl="";return{export:{DownloadPackage:n}}}})();
|
||||
(()=>{return(e,t)=>{class n{constructor(e={}){this.config=e;this.entries=[]}download(e,t){const a=document.createElement("a");const i=URL.createObjectURL(t);if(n.lastPackageUrl){URL.revokeObjectURL(n.lastPackageUrl)}n.lastPackageUrl=i;a.setAttribute("href",i);a.setAttribute("download",escapeFilename(e));document.body.appendChild(a);a.click();a.remove()}add(e,t){if(t===null||t===undefined){return}console.log(`add file: ${escapeFilename(e)}`);this.entries.push({name:escapeFilename(e),data:t})}async blob(){if(this.entries.length===0){return null}if(this.entries.length===1){const e=this.entries[0].data;return typeof e==="string"?new Blob([e]):e}const e=new JSZip;this.entries.forEach(({name:t,data:n})=>{e.file(t,n)});return await e.generateAsync({type:"blob"})}async emit(t){if(this.entries.length===0){return}if(!t||this.entries.length===1){t=this.entries[0].name}if(e.downloadPackageEmitMode==="分别下载"&&this.entries.length>1){await Promise.all(this.entries.map(e=>n.single(e.name,e.data,this.config)));return}const a=await this.blob();if(!a){return}return this.download(t,a)}static async single(e,t,a={}){const i=new n(a);i.add(e,t);return await i.emit()}}n.lastPackageUrl="";return{export:{DownloadPackage:n}}}})();
|
||||
File diff suppressed because one or more lines are too long
@ -1,14 +1,6 @@
|
||||
import { FeedsCard } from '../feeds-apis'
|
||||
|
||||
(async () => {
|
||||
const urlList = [
|
||||
'https://t.bilibili.com/',
|
||||
'https://space.bilibili.com/',
|
||||
'https://live.bilibili.com/',
|
||||
]
|
||||
if (urlList.every(url => !document.URL.includes(url))) {
|
||||
return
|
||||
}
|
||||
const { forEachFeedsCard, addMenuItem } = await import('../feeds-apis')
|
||||
const addCopyLinkButton = (card: FeedsCard) => {
|
||||
addMenuItem(card, {
|
||||
|
||||
@ -99,6 +99,7 @@ Resource.manifest = {
|
||||
updateCdn: '更新源',
|
||||
autoHideSideBar: '自动隐藏侧栏',
|
||||
elegantScrollbar: '使用细滚动条',
|
||||
downloadPackageEmitMode: '多文件下载模式',
|
||||
},
|
||||
dropdown: [
|
||||
{
|
||||
@ -116,7 +117,11 @@ Resource.manifest = {
|
||||
{
|
||||
key: 'updateCdn',
|
||||
items: ['jsDelivr', 'GitHub'],
|
||||
}
|
||||
},
|
||||
{
|
||||
key:'downloadPackageEmitMode',
|
||||
items: ['打包下载', '分别下载'],
|
||||
},
|
||||
],
|
||||
},
|
||||
useDarkStyle: {
|
||||
@ -291,17 +296,17 @@ Resource.manifest = {
|
||||
useCache: '启用缓存'
|
||||
}
|
||||
},
|
||||
videoDownloadPackage: {
|
||||
path: 'download-video-package.min.js',
|
||||
videoPackage: {
|
||||
path: 'download-package.min.js',
|
||||
},
|
||||
downloadVideo: {
|
||||
path: 'download-video.min.js',
|
||||
html: true,
|
||||
style: 'instant',
|
||||
dependencies: ['title', 'videoInfo', 'videoDownloadPackage'],
|
||||
dependencies: ['title', 'videoInfo', 'videoPackage'],
|
||||
displayNames: {
|
||||
'downloadVideo': '下载视频',
|
||||
'videoDownloadPackage': '下载视频打包器',
|
||||
'videoPackage': '下载视频打包器',
|
||||
'batchDownload': '批量下载',
|
||||
'aria2Rpc': 'aria2 RPC',
|
||||
}
|
||||
|
||||
@ -278,6 +278,7 @@ const fixedSettings = {
|
||||
oldTweets: false,
|
||||
customNavbarCompact: false,
|
||||
watchlaterExpireWarnings: false,
|
||||
downloadPackageEmitMode: '打包下载',
|
||||
latestVersionLink: 'https://cdn.jsdelivr.net/gh/the1812/Bilibili-Evolved@preview/bilibili-evolved.preview.user.js',
|
||||
currentVersion: GM.info.script.version,
|
||||
}
|
||||
|
||||
@ -47,6 +47,10 @@ export class DownloadPackage {
|
||||
if (!filename || this.entries.length === 1) {
|
||||
filename = this.entries[0].name
|
||||
}
|
||||
if (settings.downloadPackageEmitMode === '分别下载' && this.entries.length > 1) {
|
||||
await Promise.all(this.entries.map(e => DownloadPackage.single(e.name, e.data, this.config)))
|
||||
return
|
||||
}
|
||||
const blob = await this.blob()
|
||||
if (!blob) {
|
||||
return
|
||||
|
||||
@ -180,6 +180,7 @@
|
||||
<dropdown indent="0" key="updateCdn" dependencies=""></dropdown>
|
||||
<dropdown indent="0" key="scriptLoadingMode" dependencies=""></dropdown>
|
||||
<dropdown indent="0" key="guiSettingsDockSide" dependencies=""></dropdown>
|
||||
<dropdown indent="0" key="downloadPackageEmitMode" dependencies=""></dropdown>
|
||||
<textbox indent="0" key="sideBarOffset" dependencies=""></textbox>
|
||||
<checkbox indent="0" key="elegantScrollbar" dependencies=""></checkbox>
|
||||
<checkbox indent="0" key="autoHideSideBar" dependencies=""></checkbox>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user