pull/1211/head
parent
4635481c77
commit
a8827c361c
|
@ -104,12 +104,8 @@ export const downloadInfoUpdate = (lists: LX.Download.ListItem[]) => {
|
||||||
export const downloadInfoRemove = (ids: string[]) => {
|
export const downloadInfoRemove = (ids: string[]) => {
|
||||||
deleteDownloadList(ids)
|
deleteDownloadList(ids)
|
||||||
if (list) {
|
if (list) {
|
||||||
const listSet = new Set<string>()
|
const idSet = new Set<string>(ids)
|
||||||
for (const item of list) listSet.add(item.id)
|
list = list.filter(task => !idSet.has(task.id))
|
||||||
for (const id of ids) listSet.delete(id)
|
|
||||||
const newList = list.filter(task => listSet.has(task.id))
|
|
||||||
list.splice(0, list.length)
|
|
||||||
for (const item of newList) list.push(item)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -226,12 +226,8 @@ export const musicsRemove = (listId: string, ids: string[]) => {
|
||||||
let targetList = getListMusics(listId)
|
let targetList = getListMusics(listId)
|
||||||
if (!targetList.length) return
|
if (!targetList.length) return
|
||||||
removeMusicInfos(listId, ids)
|
removeMusicInfos(listId, ids)
|
||||||
const listSet = new Set<string>()
|
const idsSet = new Set<string>(ids)
|
||||||
for (const item of targetList) listSet.add(item.id)
|
musicLists.set(listId, targetList.filter(mInfo => !idsSet.has(mInfo.id)))
|
||||||
for (const id of ids) listSet.delete(id)
|
|
||||||
const newList = targetList.filter(mInfo => listSet.has(mInfo.id))
|
|
||||||
targetList.splice(0, targetList.length)
|
|
||||||
arrPush(targetList, newList)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -267,12 +263,8 @@ export const musicsMove = (fromId: string, toId: string, musicInfos: LX.Music.Mu
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
listSet = new Set<string>()
|
listSet = new Set<string>(ids)
|
||||||
for (const item of fromList) listSet.add(item.id)
|
musicLists.set(fromId, fromList.filter(mInfo => !listSet.has(mInfo.id)))
|
||||||
for (const id of ids) listSet.delete(id)
|
|
||||||
const newList = fromList.filter(mInfo => listSet.has(mInfo.id))
|
|
||||||
fromList.splice(0, fromList.length)
|
|
||||||
arrPush(fromList, newList)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -279,8 +279,6 @@ export default {
|
||||||
})
|
})
|
||||||
watch(() => props.list, (list) => {
|
watch(() => props.list, (list) => {
|
||||||
handleReset(list)
|
handleReset(list)
|
||||||
}, {
|
|
||||||
deep: true,
|
|
||||||
})
|
})
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
|
|
@ -368,15 +368,13 @@ export const pauseDownloadTasks = async(list: LX.Download.ListItem[]) => {
|
||||||
export const removeDownloadTasks = async(ids: string[]) => {
|
export const removeDownloadTasks = async(ids: string[]) => {
|
||||||
await downloadTasksRemove(ids)
|
await downloadTasksRemove(ids)
|
||||||
|
|
||||||
const listSet = new Set<string>()
|
const idsSet = new Set<string>(ids)
|
||||||
for (const item of downloadList) listSet.add(item.id)
|
|
||||||
for (const id of ids) listSet.delete(id)
|
|
||||||
const newList = downloadList.filter(task => {
|
const newList = downloadList.filter(task => {
|
||||||
if (runingTask.has(task.id)) {
|
if (runingTask.has(task.id)) {
|
||||||
void window.lx.worker.download.removeTask(task.id)
|
void window.lx.worker.download.removeTask(task.id)
|
||||||
runingTask.delete(task.id)
|
runingTask.delete(task.id)
|
||||||
}
|
}
|
||||||
return listSet.has(task.id)
|
return !idsSet.has(task.id)
|
||||||
})
|
})
|
||||||
downloadList.splice(0, downloadList.length)
|
downloadList.splice(0, downloadList.length)
|
||||||
arrPush(downloadList, newList)
|
arrPush(downloadList, newList)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { shallowReactive, markRaw, markRawList, toRaw } from '@common/utils/vueTools'
|
import { markRaw, markRawList, toRaw } from '@common/utils/vueTools'
|
||||||
import {
|
import {
|
||||||
allMusicList,
|
allMusicList,
|
||||||
defaultList,
|
defaultList,
|
||||||
|
@ -16,7 +16,7 @@ export const setUserLists = (lists: LX.List.UserListInfo[]) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
export const setMusicList = (listId: string, musicList: LX.Music.MusicInfo[]) => {
|
export const setMusicList = (listId: string, musicList: LX.Music.MusicInfo[]) => {
|
||||||
const list = shallowReactive(markRawList(musicList))
|
const list = markRawList(musicList)
|
||||||
allMusicList.set(listId, list)
|
allMusicList.set(listId, list)
|
||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,7 @@ const overwriteMusicList = (id: string, list: LX.Music.MusicInfo[]) => {
|
||||||
targetList.splice(0, targetList.length)
|
targetList.splice(0, targetList.length)
|
||||||
arrPush(targetList, list)
|
arrPush(targetList, list)
|
||||||
} else {
|
} else {
|
||||||
allMusicList.set(id, shallowReactive(list))
|
allMusicList.set(id, list)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const removeMusicList = (id: string) => {
|
const removeMusicList = (id: string) => {
|
||||||
|
@ -258,10 +258,8 @@ export const listMusicRemove = (listId: string, ids: string[]): string[] => {
|
||||||
let targetList = allMusicList.get(listId)
|
let targetList = allMusicList.get(listId)
|
||||||
if (!targetList) return listId == loveList.id ? [listId] : []
|
if (!targetList) return listId == loveList.id ? [listId] : []
|
||||||
|
|
||||||
const listSet = new Set<string>()
|
const idsSet = new Set<string>(ids)
|
||||||
for (const item of targetList) listSet.add(item.id)
|
const newList = targetList.filter(mInfo => !idsSet.has(mInfo.id))
|
||||||
for (const id of ids) listSet.delete(id)
|
|
||||||
const newList = targetList.filter(mInfo => listSet.has(mInfo.id))
|
|
||||||
targetList.splice(0, targetList.length)
|
targetList.splice(0, targetList.length)
|
||||||
arrPush(targetList, newList)
|
arrPush(targetList, newList)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue