新增同步功能对“不喜欢歌曲”列表的同步

This commit is contained in:
lyswhut
2023-09-05 23:11:09 +08:00
parent fc03cd77fc
commit b1f9e525ab
62 changed files with 1275 additions and 314 deletions
+10 -2
View File
@@ -1,7 +1,7 @@
import { markRaw } from '@common/utils/vueTools'
import { dislikeInfo } from './state'
import { dislikeInfo, dislikeRuleCount } from './state'
import { SPLIT_CHAR } from '@common/constants'
@@ -19,6 +19,7 @@ export const initDislikeInfo = ({ musicNames, rules, names, singerNames }: LX.Di
dislikeInfo.singerNames = markRaw(singerNames)
dislikeInfo.musicNames = markRaw(musicNames)
dislikeInfo.rules = rules
dislikeRuleCount.value = dislikeInfo.musicNames.size + dislikeInfo.singerNames.size + dislikeInfo.names.size
}
const initNameSet = () => {
@@ -46,7 +47,8 @@ const initNameSet = () => {
list.push(`${SPLIT_CHAR.DISLIKE_NAME}${singer}`)
}
}
dislikeInfo.rules = Array.from(new Set(list)).join('\n') + '\n'
dislikeInfo.rules = Array.from(new Set(list)).join('\n')
dislikeRuleCount.value = dislikeInfo.musicNames.size + dislikeInfo.singerNames.size + dislikeInfo.names.size
}
export const addDislikeInfo = (infos: LX.Dislike.DislikeMusicInfo[]) => {
@@ -61,6 +63,12 @@ export const overwirteDislikeInfo = (rules: string) => {
return dislikeInfo.rules
}
export const clearDislikeInfo = () => {
dislikeInfo.rules = ''
initNameSet()
return dislikeInfo.rules
}
// export const updateDislikeInfo = (info: LX.Dislike.ListItem) => {
// const targetInfo = dislikeInfo.list.find(i => i.id == info.id)
+3 -1
View File
@@ -1,4 +1,4 @@
import { markRaw } from '@common/utils/vueTools'
import { markRaw, ref } from '@common/utils/vueTools'
// import { deduplicationList } from '@common/utils/renderer'
@@ -9,3 +9,5 @@ export const dislikeInfo: LX.Dislike.DislikeInfo = markRaw({
singerNames: markRaw(new Set()),
rules: '',
})
export const dislikeRuleCount = ref(0)
+2
View File
@@ -31,6 +31,7 @@ export const sync: {
isShowSyncMode: boolean
isShowAuthCodeModal: boolean
deviceName: string
type: keyof LX.Sync.ModeTypes
server: {
port: string
status: {
@@ -55,6 +56,7 @@ export const sync: {
isShowSyncMode: false,
isShowAuthCodeModal: false,
deviceName: '',
type: 'list',
server: {
port: '',
status: {