From b60c438694946f4965159963f38ee0c88115369f Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 9 Nov 2022 10:41:01 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=BC=BA=E8=BF=AB?= =?UTF-8?q?=E7=97=87=E8=AE=BE=E7=BD=AE=E7=9A=84=E6=90=9C=E7=B4=A2=E6=B8=85?= =?UTF-8?q?=E7=90=86=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/components/layout/Toolbar/SearchInput.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/renderer/components/layout/Toolbar/SearchInput.vue b/src/renderer/components/layout/Toolbar/SearchInput.vue index f69282bc..a248408e 100644 --- a/src/renderer/components/layout/Toolbar/SearchInput.vue +++ b/src/renderer/components/layout/Toolbar/SearchInput.vue @@ -28,7 +28,7 @@ export default { const router = useRouter() watch(() => route.name, (newValue, oldValue) => { - if (newValue.name != 'search') { + if (oldValue == 'Search') { setTimeout(() => { if (appSetting['odc.isAutoClearSearchInput'] && searchText.value) searchText.value = '' if (appSetting['odc.isAutoClearSearchList']) setSearchText('') From 4b2251853213744e67777c461df76adb4ab36bba Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 9 Nov 2022 10:41:39 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/lang/en-us.json | 2 +- src/lang/zh-cn.json | 2 +- src/lang/zh-tw.json | 2 +- src/renderer/components/layout/PlayBar/index.vue | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lang/en-us.json b/src/lang/en-us.json index a803641b..2d61a295 100644 --- a/src/lang/en-us.json +++ b/src/lang/en-us.json @@ -556,7 +556,7 @@ "theme_selector_modal__theme_name": "Topic name", "theme_selector_modal__title": "Follow system theme settings", "theme_selector_modal__title_tip": "Note: You can set a light theme and a dark theme in advance, and then it will automatically switch to the corresponding theme you set in advance according to the light and dark theme colors of the system.", - "toggle_source_failed": "Failed to automatically change the source, please try to manually search for the song in other sources to play", + "toggle_source_failed": "Failed to change the source, please try to manually search for the song in other sources to play", "toggle_source_try": "Try switching to another source...", "user_api__allow_show_update_alert": "Allow update popup to show", "user_api__btn_export": "Export", diff --git a/src/lang/zh-cn.json b/src/lang/zh-cn.json index 5e978803..e15af2be 100644 --- a/src/lang/zh-cn.json +++ b/src/lang/zh-cn.json @@ -558,7 +558,7 @@ "theme_selector_modal__theme_name": "主题名称", "theme_selector_modal__title": "跟随系统主题设置", "theme_selector_modal__title_tip": "注:你可以预先设置一个亮色主题及暗色主题,此后将根据系统的亮、暗主题色自动切换为你预先设置的相应主题。", - "toggle_source_failed": "自动换源失败,请尝试手动在其他源搜索该歌曲播放", + "toggle_source_failed": "换源失败,请尝试手动在其他源搜索该歌曲播放", "toggle_source_try": "尝试切换到其他源...", "user_api__allow_show_update_alert": "允许显示更新弹窗", "user_api__btn_export": "导出", diff --git a/src/lang/zh-tw.json b/src/lang/zh-tw.json index 4f04d4e5..10a1e7b2 100644 --- a/src/lang/zh-tw.json +++ b/src/lang/zh-tw.json @@ -556,7 +556,7 @@ "theme_selector_modal__theme_name": "主題名稱", "theme_selector_modal__title": "跟隨系統主題設置", "theme_selector_modal__title_tip": "注:你可以預先設置一個亮色主題及暗色主題,此後將根據系統的亮、暗主題色自動切換為你預先設置的相應主題。", - "toggle_source_failed": "自動換源失敗,請嘗試手動在其他源搜索該歌曲播放", + "toggle_source_failed": "換源失敗,請嘗試手動在其他源搜索該歌曲播放", "toggle_source_try": "嘗試切換到其他源...", "user_api__allow_show_update_alert": "允許顯示更新彈窗", "user_api__btn_export": "導出", diff --git a/src/renderer/components/layout/PlayBar/index.vue b/src/renderer/components/layout/PlayBar/index.vue index baf2a707..e090868f 100644 --- a/src/renderer/components/layout/PlayBar/index.vue +++ b/src/renderer/components/layout/PlayBar/index.vue @@ -8,7 +8,7 @@
{{ title }}
-
{{ statusText }}
+
{{ statusText }}
{{ nowPlayTimeStr }} @@ -234,7 +234,7 @@ export default { flex-flow: column nowrap; justify-content: center; align-items: flex-start; - font-size: 14px; + font-size: 13px; color: var(--color-font); min-width: 0; line-height: 1.5; From 953fc94cb0d82dd72a53ff6fff2d11bd7db0fb60 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 9 Nov 2022 17:08:12 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=A4=A7=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=88=A0=E6=93=8D=E4=BD=9C=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/utils/common.ts | 22 ++++++ .../dbService/modules/download/index.ts | 17 ++--- .../worker/dbService/modules/list/index.ts | 70 ++++++++++--------- src/renderer/store/download/action.ts | 33 +++++---- src/renderer/store/list/listManage/action.ts | 45 ++++++------ src/renderer/store/player/action.ts | 5 +- src/renderer/worker/main/list.ts | 17 ++--- 7 files changed, 123 insertions(+), 86 deletions(-) diff --git a/src/common/utils/common.ts b/src/common/utils/common.ts index 000e99f8..6671cb03 100644 --- a/src/common/utils/common.ts +++ b/src/common/utils/common.ts @@ -180,3 +180,25 @@ export const encodePath = (path: string) => { // https://github.com/lyswhut/lx-music-desktop/issues/963 return path.replaceAll('%', '%25') } + + +export const arrPush = (list: T[], newList: T[]) => { + for (let i = 0; i * 1000 < newList.length; i++) { + list.push(...newList.slice(i * 1000, (i + 1) * 1000)) + } + return list +} + +export const arrUnshift = (list: T[], newList: T[]) => { + for (let i = 0; i * 1000 < newList.length; i++) { + list.splice(i * 1000, 0, ...newList.slice(i * 1000, (i + 1) * 1000)) + } + return list +} + +export const arrPushByPosition = (list: T[], newList: T[], position: number) => { + for (let i = 0; i * 1000 < newList.length; i++) { + list.splice(position + i * 1000, 0, ...newList.slice(i * 1000, (i + 1) * 1000)) + } + return list +} diff --git a/src/main/worker/dbService/modules/download/index.ts b/src/main/worker/dbService/modules/download/index.ts index 5ec966dd..81417fe5 100644 --- a/src/main/worker/dbService/modules/download/index.ts +++ b/src/main/worker/dbService/modules/download/index.ts @@ -1,3 +1,4 @@ +import { arrPush, arrUnshift } from '@common/utils/common' import { queryDownloadList, inertDownloadList, @@ -69,14 +70,14 @@ export const downloadInfoSave = (downloadInfos: LX.Download.ListItem[], addMusic if (!list) initDownloadList() if (addMusicLocationType == 'top') { let newList = [...list] - newList.unshift(...downloadInfos) + arrUnshift(newList, downloadInfos) inertDownloadList(toDBDownloadInfo(downloadInfos), newList.slice(downloadInfos.length - 1).map((info, index) => { return { id: info.id, position: index } })) list = newList } else { inertDownloadList(toDBDownloadInfo(downloadInfos, list.length), []) - list.push(...downloadInfos) + arrPush(list, downloadInfos) } } @@ -103,12 +104,12 @@ export const downloadInfoUpdate = (lists: LX.Download.ListItem[]) => { export const downloadInfoRemove = (ids: string[]) => { deleteDownloadList(ids) if (list) { - for (let i = list.length; i--;) { - let idx = ids.indexOf(list[i].id) - if (idx < 0) continue - list.splice(i, 1) - ids.splice(idx, 1) - } + const listSet = new Set() + for (const item of list) listSet.add(item.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) } } diff --git a/src/main/worker/dbService/modules/list/index.ts b/src/main/worker/dbService/modules/list/index.ts index 94197857..a9841e7d 100644 --- a/src/main/worker/dbService/modules/list/index.ts +++ b/src/main/worker/dbService/modules/list/index.ts @@ -1,4 +1,5 @@ import { LIST_IDS } from '@common/constants' +import { arrPush, arrPushByPosition, arrUnshift } from '@common/utils/common' import { deleteUserLists, inertUserLists, @@ -180,7 +181,10 @@ export const getListMusics = (listId: string): LX.Music.MusicInfo[] => { export const musicOverwrite = (listId: string, musicInfos: LX.Music.MusicInfo[]) => { let targetList = getListMusics(listId) overwriteMusicInfo(listId, toDBMusicInfo(musicInfos, listId)) - if (targetList) targetList.splice(0, targetList.length, ...musicInfos) + if (targetList) { + targetList.splice(0, targetList.length) + arrPush(targetList, musicInfos) + } } /** @@ -203,12 +207,12 @@ export const musicsAdd = (listId: string, musicInfos: LX.Music.MusicInfo[], addM switch (addMusicLocationType) { case 'top': insertMusicInfoListAndRefreshOrder(toDBMusicInfo(musicInfos, listId), listId, toDBMusicInfo(targetList, listId, musicInfos.length)) - targetList.unshift(...musicInfos) + arrUnshift(targetList, musicInfos) break case 'bottom': default: insertMusicInfoList(toDBMusicInfo(musicInfos, listId, targetList.length)) - targetList.push(...musicInfos) + arrPush(targetList, musicInfos) break } } @@ -221,15 +225,13 @@ export const musicsAdd = (listId: string, musicInfos: LX.Music.MusicInfo[], addM export const musicsRemove = (listId: string, ids: string[]) => { let targetList = getListMusics(listId) if (!targetList.length) return - ids = [...ids] removeMusicInfos(listId, ids) - for (let i = targetList.length - 1; i > -1; i--) { - const item = targetList[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - ids.splice(index, 1) - targetList.splice(i, 1) - } + const listSet = new Set() + for (const item of targetList) listSet.add(item.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) } /** @@ -245,32 +247,32 @@ export const musicsMove = (fromId: string, toId: string, musicInfos: LX.Music.Mu const ids = musicInfos.map(musicInfo => musicInfo.id) - const map = new Map() - for (const item of toList) map.set(item.id, item) + let listSet = new Set() + for (const item of toList) listSet.add(item.id) musicInfos = musicInfos.filter(item => { - if (map.has(item.id)) return false - map.set(item.id, item) + if (listSet.has(item.id)) return false + listSet.add(item.id) return true }) switch (addMusicLocationType) { case 'top': moveMusicInfoAndRefreshOrder(fromId, ids, toId, toDBMusicInfo(musicInfos, toId), toDBMusicInfo(toList, toId, musicInfos.length)) - toList.unshift(...musicInfos) + arrUnshift(toList, musicInfos) break case 'bottom': default: moveMusicInfo(fromId, ids, toDBMusicInfo(musicInfos, toId, toList.length)) - toList.push(...musicInfos) + arrPush(toList, musicInfos) break } - for (let i = fromList.length - 1; i > -1; i--) { - const item = fromList[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - ids.splice(index, 1) - fromList.splice(i, 1) - } + + listSet = new Set() + for (const item of fromList) listSet.add(item.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) } /** @@ -320,15 +322,17 @@ export const musicsPositionUpdate = (listId: string, position: number, ids: stri let targetList = getListMusics(listId) if (!targetList.length) return - const newTargetList = [...targetList] - const infos = Array(ids.length) - for (let i = newTargetList.length; i--;) { - const item = newTargetList[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - infos.splice(index, 1, newTargetList.splice(i, 1)[0]) + let newTargetList = [...targetList] + + const infos: LX.Music.MusicInfo[] = [] + const map = new Map() + for (const item of newTargetList) map.set(item.id, item) + for (const id of ids) { + infos.push(map.get(id) as LX.Music.MusicInfo) + map.delete(id) } - newTargetList.splice(Math.min(position, newTargetList.length), 0, ...infos) + newTargetList = newTargetList.filter(mInfo => map.has(mInfo.id)) + arrPushByPosition(newTargetList, infos, Math.min(position, newTargetList.length)) updateMusicInfoOrder(listId, newTargetList.map((info, index) => { return { @@ -358,7 +362,7 @@ export const listDataOverwrite = (myListData: MakeOptional { dbLists.push({ ...listInfo, position: index }) - dbMusicInfos.push(...toDBMusicInfo(list, listInfo.id)) + arrPush(dbMusicInfos, toDBMusicInfo(list, listInfo.id)) }) overwriteListData(dbLists, dbMusicInfos) diff --git a/src/renderer/store/download/action.ts b/src/renderer/store/download/action.ts index 6f3fda9e..d4121d37 100644 --- a/src/renderer/store/download/action.ts +++ b/src/renderer/store/download/action.ts @@ -13,7 +13,7 @@ import { getMusicUrl, getPicUrl, getLyricInfo } from '@renderer/core/music/onlin import { appSetting } from '../setting' import { qualityList } from '..' import { proxyCallback } from '@renderer/worker/utils' -import { joinPath } from '@renderer/utils' +import { arrPush, arrUnshift, joinPath } from '@renderer/utils' import { DOWNLOAD_STATUS } from '@common/constants' const waitingUpdateTasks = new Map() @@ -48,7 +48,7 @@ export const getDownloadList = async(): Promise => { break } } - downloadList.push(...list) + arrPush(downloadList, list) } return downloadList } @@ -59,9 +59,9 @@ const addTasks = async(list: LX.Download.ListItem[]) => { await downloadTasksCreate(list.map(i => toRaw(i)), addMusicLocationType) if (addMusicLocationType === 'top') { - downloadList.unshift(...list) + arrUnshift(downloadList, list) } else { - downloadList.push(...list) + arrPush(downloadList, list) } window.app_event.downloadListUpdate() } @@ -367,18 +367,21 @@ export const pauseDownloadTasks = async(list: LX.Download.ListItem[]) => { */ export const removeDownloadTasks = async(ids: string[]) => { await downloadTasksRemove(ids) - ids = [...ids] - for (let i = downloadList.length; i--;) { - const item = downloadList[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - ids.splice(index, 1) - downloadList.splice(i, 1) - if (runingTask.has(item.id)) { - void window.lx.worker.download.removeTask(item.id) - runingTask.delete(item.id) + + const listSet = new Set() + for (const item of downloadList) listSet.add(item.id) + for (const id of ids) listSet.delete(id) + const newList = downloadList.filter(task => { + if (runingTask.has(task.id)) { + void window.lx.worker.download.removeTask(task.id) + runingTask.delete(task.id) } - } + return listSet.has(task.id) + }) + downloadList.splice(0, downloadList.length) + arrPush(downloadList, newList) + + void checkStartTask() window.app_event.downloadListUpdate() } diff --git a/src/renderer/store/list/listManage/action.ts b/src/renderer/store/list/listManage/action.ts index 9f5247d1..c7213ce3 100644 --- a/src/renderer/store/list/listManage/action.ts +++ b/src/renderer/store/list/listManage/action.ts @@ -8,6 +8,7 @@ import { } from './state' import { overwriteListPosition, overwriteListUpdateInfo, removeListPosition, removeListUpdateInfo } from '@renderer/utils/data' import { LIST_IDS } from '@common/constants' +import { arrPush, arrUnshift } from '@common/utils/common' export const setUserLists = (lists: LX.List.UserListInfo[]) => { userLists.splice(0, userLists.length, ...lists) @@ -25,7 +26,8 @@ const overwriteMusicList = (id: string, list: LX.Music.MusicInfo[]) => { markRawList(list) let targetList = allMusicList.get(id) if (targetList) { - targetList.splice(0, targetList.length, ...list) + targetList.splice(0, targetList.length) + arrPush(targetList, list) } else { allMusicList.set(id, shallowReactive(list)) } @@ -179,16 +181,18 @@ export const userListsUpdatePosition = (position: number, ids: string[]) => { const updateLists: LX.List.UserListInfo[] = [] - for (let i = newUserLists.length; i--;) { - if (ids.includes(newUserLists[i].id)) { - const list = newUserLists.splice(i, 1)[0] - list.locationUpdateTime = Date.now() - updateLists.push(list) - } + // const targetItem = list[position] + const map = new Map() + for (const item of newUserLists) map.set(item.id, item) + for (const id of ids) { + const listInfo = map.get(id) as LX.List.UserListInfo + listInfo.locationUpdateTime = Date.now() + updateLists.push(listInfo) + map.delete(id) } - position = Math.min(newUserLists.length, position) + newUserLists.splice(0, newUserLists.length, ...newUserLists.filter(mInfo => map.has(mInfo.id))) + newUserLists.splice(Math.min(position, newUserLists.length), 0, ...updateLists) - newUserLists.splice(position, 0, ...updateLists) setUserLists(newUserLists) } @@ -212,11 +216,11 @@ export const listMusicAdd = (id: string, musicInfos: LX.Music.MusicInfo[], addMu }) switch (addMusicLocationType) { case 'top': - targetList.unshift(...musicInfos) + arrUnshift(targetList, musicInfos) break case 'bottom': default: - targetList.push(...musicInfos) + arrPush(targetList, musicInfos) break } @@ -234,14 +238,13 @@ export const listMusicRemove = (listId: string, ids: string[]): string[] => { let targetList = allMusicList.get(listId) if (!targetList) return listId == loveList.id ? [listId] : [] - ids = [...ids] - for (let i = targetList.length - 1; i > -1; i--) { - const item = targetList[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - ids.splice(index, 1) - targetList.splice(i, 1) - } + const listSet = new Set() + for (const item of targetList) listSet.add(item.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) + return [listId] } @@ -284,7 +287,9 @@ export const listMusicUpdatePosition = async(listId: string, position: number, i const list = await window.lx.worker.main.createSortedList(toRaw(targetList), position, ids) markRawList(list) - targetList.splice(0, targetList.length, ...list) + targetList.splice(0, targetList.length) + arrPush(targetList, list) + // console.timeEnd('ts') return [listId] } diff --git a/src/renderer/store/player/action.ts b/src/renderer/store/player/action.ts index b2513b77..a8c5ead4 100644 --- a/src/renderer/store/player/action.ts +++ b/src/renderer/store/player/action.ts @@ -19,6 +19,7 @@ import { setProgress } from './playProgress' import { playNext } from '@renderer/core/player' import { LIST_IDS } from '@common/constants' import { toRaw } from '@common/utils/vueTools' +import { arrPush, arrUnshift } from '@common/utils/common' type PlayerMusicInfoKeys = keyof typeof musicInfo @@ -231,8 +232,8 @@ export const addTempPlayList = (list: LX.Player.TempPlayListItem[]) => { } return true }) - if (topList.length) tempPlayList.unshift(...topList.map(({ musicInfo, listId }) => ({ musicInfo, listId, isTempPlay: true }))) - if (bottomList.length) tempPlayList.push(...bottomList.map(({ musicInfo, listId }) => ({ musicInfo, listId, isTempPlay: true }))) + if (topList.length) arrUnshift(tempPlayList, topList.map(({ musicInfo, listId }) => ({ musicInfo, listId, isTempPlay: true }))) + if (bottomList.length) arrPush(tempPlayList, bottomList.map(({ musicInfo, listId }) => ({ musicInfo, listId, isTempPlay: true }))) if (!playMusicInfo.musicInfo) void playNext() } diff --git a/src/renderer/worker/main/list.ts b/src/renderer/worker/main/list.ts index f0dab6cb..81de6b88 100644 --- a/src/renderer/worker/main/list.ts +++ b/src/renderer/worker/main/list.ts @@ -1,6 +1,6 @@ // import { throttle } from '@common/utils' -import { filterFileName, sortInsert, similar } from '@common/utils/common' +import { filterFileName, sortInsert, similar, arrPushByPosition } from '@common/utils/common' import { joinPath, saveStrToFile } from '@common/utils/nodejs' import { createLocalMusicInfo } from '@renderer/utils/music' @@ -212,14 +212,15 @@ export const searchListMusic = (list: LX.Music.MusicInfo[], text: string) => { * @returns */ export const createSortedList = (list: LX.Music.MusicInfo[], position: number, ids: string[]) => { - const infos = Array(ids.length) - for (let i = list.length; i--;) { - const item = list[i] - const index = ids.indexOf(item.id) - if (index < 0) continue - infos.splice(index, 1, list.splice(i, 1)[0]) + const infos: LX.Music.MusicInfo[] = [] + const map = new Map() + for (const item of list) map.set(item.id, item) + for (const id of ids) { + infos.push(map.get(id) as LX.Music.MusicInfo) + map.delete(id) } - list.splice(Math.min(position, list.length), 0, ...infos) + list = list.filter(mInfo => map.has(mInfo.id)) + arrPushByPosition(list, infos, Math.min(position, list.length)) return list } From 69ea40abc00b53a4a84b664fa82c1453bf07c6d1 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 9 Nov 2022 17:23:27 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=B8=8B=E6=8B=89=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=99=A8=E8=87=AA=E5=8A=A8=E5=AE=9A=E4=BD=8D=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E9=A1=B9=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/components/base/Selection.vue | 10 +++++++++- src/renderer/components/layout/PlayBar/index.vue | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/renderer/components/base/Selection.vue b/src/renderer/components/base/Selection.vue index 164e3d56..f4959ea1 100644 --- a/src/renderer/components/base/Selection.vue +++ b/src/renderer/components/base/Selection.vue @@ -52,10 +52,15 @@ export default { } }, computed: { + activeIndex() { + if (this.modelValue == null) return -1 + if (!this.itemName) return this.list.indexOf(this.modelValue) + return this.list.findIndex(l => l[this.itemKey] == this.modelValue) + }, label() { if (this.modelValue == null) return '' if (this.itemName == null) return this.modelValue - const item = this.list.find(l => l[this.itemKey] == this.modelValue) + const item = this.list[this.activeIndex] if (!item) return '' return item[this.itemName] }, @@ -86,6 +91,9 @@ export default { this.show = true this.$nextTick(() => { this.listStyles.transform = `scaleY(1) translateY(${this.handleGetOffset()}px)` + + const activeItem = this.$refs.dom_list.children[this.activeIndex] + if (activeItem) this.$refs.dom_list.scrollTop = activeItem.offsetTop - this.$refs.dom_list.clientHeight * 0.38 }) }, handleGetOffset() { diff --git a/src/renderer/components/layout/PlayBar/index.vue b/src/renderer/components/layout/PlayBar/index.vue index e090868f..4e529f84 100644 --- a/src/renderer/components/layout/PlayBar/index.vue +++ b/src/renderer/components/layout/PlayBar/index.vue @@ -112,7 +112,7 @@ export default { const title = computed(() => { return musicInfo.name ? appSetting['download.fileName'].replace('歌名', musicInfo.name).replace('歌手', musicInfo.singer) - : '^-^' + : '' }) // onBeforeUnmount(() => { From 55d22e424da23e7f70dc830ba1565d51194e5d7d Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 9 Nov 2022 17:44:11 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 532 +++++++++++++++++++++++++++------------------- package.json | 15 +- 2 files changed, 321 insertions(+), 226 deletions(-) diff --git a/package-lock.json b/package-lock.json index c38d0ef4..0015b6bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "lx-music-desktop", - "version": "2.0.0-beta.6", + "version": "2.0.0-beta.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "lx-music-desktop", - "version": "2.0.0-beta.6", + "version": "2.0.0-beta.7", "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { @@ -31,7 +31,7 @@ "sortablejs": "^1.15.0", "tunnel": "^0.0.6", "utf-8-validate": "^5.0.10", - "vue": "^3.2.41", + "vue": "^3.2.42", "vue-router": "^4.1.6" }, "devDependencies": { @@ -46,8 +46,8 @@ "@types/better-sqlite3": "^7.6.2", "@types/needle": "^2.5.3", "@types/tunnel": "^0.0.3", - "@typescript-eslint/eslint-plugin": "^5.42.0", - "@typescript-eslint/parser": "^5.42.0", + "@typescript-eslint/eslint-plugin": "^5.42.1", + "@typescript-eslint/parser": "^5.42.1", "@volar/vue-language-plugin-pug": "^1.0.9", "babel-loader": "^9.1.0", "browserslist": "^4.21.4", @@ -65,13 +65,13 @@ "electron-devtools-installer": "^3.2.0", "electron-to-chromium": "^1.4.284", "electron-updater": "^6.0.0-alpha.2", - "eslint": "^8.26.0", + "eslint": "^8.27.0", "eslint-config-standard": "^17.0.0", "eslint-config-standard-with-typescript": "^23.0.0", "eslint-formatter-friendly": "github:lyswhut/eslint-friendly-formatter#2170d1320e2fad13615a9dcf229669f0bb473a53", "eslint-plugin-html": "^7.1.0", "eslint-plugin-import": "^2.26.0", - "eslint-plugin-n": "^15.4.0", + "eslint-plugin-n": "^15.5.1", "eslint-plugin-promise": "^6.1.1", "eslint-plugin-vue": "^9.7.0", "eslint-webpack-plugin": "^3.2.0", @@ -2783,14 +2783,14 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.42.0.tgz", - "integrity": "sha512-5TJh2AgL6+wpL8H/GTSjNb4WrjKoR2rqvFxR/DDTqYNk6uXn8BJMEcncLSpMbf/XV1aS0jAjYwn98uvVCiAywQ==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.42.1.tgz", + "integrity": "sha512-LyR6x784JCiJ1j6sH5Y0K6cdExqCCm8DJUTcwG5ThNXJj/G8o5E56u5EdG4SLy+bZAwZBswC+GYn3eGdttBVCg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/type-utils": "5.42.0", - "@typescript-eslint/utils": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/type-utils": "5.42.1", + "@typescript-eslint/utils": "5.42.1", "debug": "^4.3.4", "ignore": "^5.2.0", "natural-compare-lite": "^1.4.0", @@ -2831,14 +2831,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.0.tgz", - "integrity": "sha512-Ixh9qrOTDRctFg3yIwrLkgf33AHyEIn6lhyf5cCfwwiGtkWhNpVKlEZApi3inGQR/barWnY7qY8FbGKBO7p3JA==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", + "integrity": "sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/typescript-estree": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", "debug": "^4.3.4" }, "engines": { @@ -2858,13 +2858,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.0.tgz", - "integrity": "sha512-l5/3IBHLH0Bv04y+H+zlcLiEMEMjWGaCX6WyHE5Uk2YkSGAMlgdUPsT/ywTSKgu9D1dmmKMYgYZijObfA39Wow==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.1.tgz", + "integrity": "sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/visitor-keys": "5.42.0" + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2875,13 +2875,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.42.0.tgz", - "integrity": "sha512-HW14TXC45dFVZxnVW8rnUGnvYyRC0E/vxXShFCthcC9VhVTmjqOmtqj6H5rm9Zxv+ORxKA/1aLGD7vmlLsdlOg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.42.1.tgz", + "integrity": "sha512-WWiMChneex5w4xPIX56SSnQQo0tEOy5ZV2dqmj8Z371LJ0E+aymWD25JQ/l4FOuuX+Q49A7pzh/CGIQflxMVXg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.42.0", - "@typescript-eslint/utils": "5.42.0", + "@typescript-eslint/typescript-estree": "5.42.1", + "@typescript-eslint/utils": "5.42.1", "debug": "^4.3.4", "tsutils": "^3.21.0" }, @@ -2902,9 +2902,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.0.tgz", - "integrity": "sha512-t4lzO9ZOAUcHY6bXQYRuu+3SSYdD9TS8ooApZft4WARt4/f2Cj/YpvbTe8A4GuhT4bNW72goDMOy7SW71mZwGw==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.1.tgz", + "integrity": "sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2915,13 +2915,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.0.tgz", - "integrity": "sha512-2O3vSq794x3kZGtV7i4SCWZWCwjEtkWfVqX4m5fbUBomOsEOyd6OAD1qU2lbvV5S8tgy/luJnOYluNyYVeOTTg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.1.tgz", + "integrity": "sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/visitor-keys": "5.42.0", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -2957,16 +2957,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.42.0.tgz", - "integrity": "sha512-JZ++3+h1vbeG1NUECXQZE3hg0kias9kOtcQr3+JVQ3whnjvKuMyktJAAIj6743OeNPnGBmjj7KEmiDL7qsdnCQ==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.42.1.tgz", + "integrity": "sha512-Gxvf12xSp3iYZd/fLqiQRD4uKZjDNR01bQ+j8zvhPjpsZ4HmvEFL/tC4amGNyxN9Rq+iqvpHLhlqx6KTxz9ZyQ==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/typescript-estree": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0", "semver": "^7.3.7" @@ -2998,12 +2998,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.0.tgz", - "integrity": "sha512-QHbu5Hf/2lOEOwy+IUw0GoSCuAzByTAWWrOTKzTzsotiUnWFpuKnXcAhC9YztAf2EElQ0VvIK+pHJUPkM0q7jg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.1.tgz", + "integrity": "sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.42.0", + "@typescript-eslint/types": "5.42.1", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -3136,36 +3136,36 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", - "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.42.tgz", + "integrity": "sha512-qKpDdoGaKq53T1+U4R7pk62QeDe8Kc6RN1xSd7tGi4DK3mGrqT32gyOL542wpt73Ftza0AvWmVCchmKtTpwxDg==", "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.41", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", - "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.42.tgz", + "integrity": "sha512-QVrAVX9zzvLltyQy1uxxgOmsKLStFalw0f/8HEdWIR95YjJsNo3S3SwBJDR2cnjwcVGftXBLksf1ikMyAl8bUw==", "dependencies": { - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-core": "3.2.42", + "@vue/shared": "3.2.42" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", - "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.42.tgz", + "integrity": "sha512-lWiyxMfQ3SXGhFszSpKuPT5JcSM1ypAbLJOpHpCqvbSaJE+FAZYMbFzAC/y4MC3jSbNQ0moWncOS1gO4aXMbNQ==", "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-ssr": "3.2.41", - "@vue/reactivity-transform": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.42", + "@vue/compiler-dom": "3.2.42", + "@vue/compiler-ssr": "3.2.42", + "@vue/reactivity-transform": "3.2.42", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -3173,12 +3173,12 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", - "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.42.tgz", + "integrity": "sha512-2Q0IclcvsX1A8N8/M7Ub32gitdnKdsjRHdj6R3Z/HGW34CXGsb4tHzjthOuT5fiyPG+CzyyAn4HiqCN8oI4iqg==", "dependencies": { - "@vue/compiler-dom": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.42", + "@vue/shared": "3.2.42" } }, "node_modules/@vue/devtools-api": { @@ -3187,60 +3187,60 @@ "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==" }, "node_modules/@vue/reactivity": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.41.tgz", - "integrity": "sha512-9JvCnlj8uc5xRiQGZ28MKGjuCoPhhTwcoAdv3o31+cfGgonwdPNuvqAXLhlzu4zwqavFEG5tvaoINQEfxz+l6g==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.42.tgz", + "integrity": "sha512-X30I+iS7d6c8DZDY7SqahkTRN2THfnkNtf0oCUktuk2gTKRxNOzaARItSmsPKLC7UVUG61Hne8Si3wtQBBDj+A==", "dependencies": { - "@vue/shared": "3.2.41" + "@vue/shared": "3.2.42" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", - "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.42.tgz", + "integrity": "sha512-u5Qp09PCGa0yJqfbHbJXDfm9BrNx5xYtHIl5CuWbnUtBAxr8vKRjMZmFpa4CmSufixWcbwvKvSD9weamEVbfeA==", "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.42", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/runtime-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.41.tgz", - "integrity": "sha512-0LBBRwqnI0p4FgIkO9q2aJBBTKDSjzhnxrxHYengkAF6dMOjeAIZFDADAlcf2h3GDALWnblbeprYYpItiulSVQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.42.tgz", + "integrity": "sha512-9JCPD4k/p4eXXc5ja+YcYwGu+ES9BIgoVty7UlOMEG0Bdz7awxxY78PXIHg1b7HlxQuUdGq6r3COg1cyvDrRCw==", "dependencies": { - "@vue/reactivity": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/reactivity": "3.2.42", + "@vue/shared": "3.2.42" } }, "node_modules/@vue/runtime-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.41.tgz", - "integrity": "sha512-U7zYuR1NVIP8BL6jmOqmapRAHovEFp7CSw4pR2FacqewXNGqZaRfHoNLQsqQvVQ8yuZNZtxSZy0FFyC70YXPpA==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.42.tgz", + "integrity": "sha512-i4OZblZQvFjJ/isNo+jrqXsjJgq4Nz0R/W2iNu40pTLJrikijYPaUOcOJcjVih9eL7zz101RJsbP8zKluQLqRA==", "dependencies": { - "@vue/runtime-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/runtime-core": "3.2.42", + "@vue/shared": "3.2.42", "csstype": "^2.6.8" } }, "node_modules/@vue/server-renderer": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.41.tgz", - "integrity": "sha512-7YHLkfJdTlsZTV0ae5sPwl9Gn/EGr2hrlbcS/8naXm2CDpnKUwC68i1wGlrYAfIgYWL7vUZwk2GkYLQH5CvFig==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.42.tgz", + "integrity": "sha512-xo6XMaJTuKmYRlnS53QN358j0pmZMFNtisLkzV7oXFww0bpkn2MzjkPt4YvOjMNto9NlI609xQKJboEk5nMu2A==", "dependencies": { - "@vue/compiler-ssr": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-ssr": "3.2.42", + "@vue/shared": "3.2.42" }, "peerDependencies": { - "vue": "3.2.41" + "vue": "3.2.42" } }, "node_modules/@vue/shared": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", - "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==" + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.42.tgz", + "integrity": "sha512-cheJw3tpW34LWVUL3fySuwCmF1/gFBHWZ3WjmMcBIHMcnKrS/SRapvkbYWzyw5FiM8OcpYHO5e7hWYOFCsyHmA==" }, "node_modules/@webassemblyjs/ast": { "version": "1.11.1", @@ -7345,9 +7345,9 @@ } }, "node_modules/eslint": { - "version": "8.26.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.26.0.tgz", - "integrity": "sha512-kzJkpaw1Bfwheq4VXUezFriD1GxszX6dUekM7Z3aC2o4hju+tsR/XyTC3RcoSD7jmy9VkPU3+N6YjVU2e96Oyg==", + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.3.3", @@ -7615,19 +7615,19 @@ "dev": true }, "node_modules/eslint-plugin-n": { - "version": "15.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.0.tgz", - "integrity": "sha512-VCqQiZDpdm1Q9grnvy+XsENZoXDgTLqPHRQwgl9qFNNgTKR4YEnQOMN0pFB/9TbmrQ88jdeTnqTcNwRvjqMOtg==", + "version": "15.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.1.tgz", + "integrity": "sha512-kAd+xhZm7brHoFLzKLB7/FGRFJNg/srmv67mqb7tto22rpr4wv/LV6RuXzAfv3jbab7+k1wi42PsIhGviywaaw==", "dev": true, "dependencies": { "builtins": "^5.0.1", "eslint-plugin-es": "^4.1.0", "eslint-utils": "^3.0.0", "ignore": "^5.1.1", - "is-core-module": "^2.10.0", + "is-core-module": "^2.11.0", "minimatch": "^3.1.2", "resolve": "^1.22.1", - "semver": "^7.3.7" + "semver": "^7.3.8" }, "engines": { "node": ">=12.22.0" @@ -13287,6 +13287,32 @@ "readable-stream": "^3.1.1" } }, + "node_modules/posthtml-transform/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/posthtml-transform/node_modules/loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/posthtml-transform/node_modules/posthtml": { "version": "0.11.6", "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.11.6.tgz", @@ -15896,6 +15922,18 @@ "node": ">=0.10.0" } }, + "node_modules/svg-baker/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, "node_modules/svg-baker/node_modules/kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", @@ -15905,6 +15943,20 @@ "node": ">=0.10.0" } }, + "node_modules/svg-baker/node_modules/loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/svg-baker/node_modules/micromatch": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.0.tgz", @@ -17081,15 +17133,15 @@ "dev": true }, "node_modules/vue": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.41.tgz", - "integrity": "sha512-uuuvnrDXEeZ9VUPljgHkqB5IaVO8SxhPpqF2eWOukVrBnRBx2THPSGQBnVRt0GrIG1gvCmFXMGbd7FqcT1ixNQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.42.tgz", + "integrity": "sha512-gH7e5YD9IkX9Lv0QmB+Z7Jac2t7GYHg2AZrgkzQdCmyaUIdSbp6DhdeTM5HO6JbPuRgD1Iu06N9MXxjJ//NnNQ==", "dependencies": { - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-sfc": "3.2.41", - "@vue/runtime-dom": "3.2.41", - "@vue/server-renderer": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.42", + "@vue/compiler-sfc": "3.2.42", + "@vue/runtime-dom": "3.2.42", + "@vue/server-renderer": "3.2.42", + "@vue/shared": "3.2.42" } }, "node_modules/vue-eslint-parser": { @@ -19774,14 +19826,14 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.42.0.tgz", - "integrity": "sha512-5TJh2AgL6+wpL8H/GTSjNb4WrjKoR2rqvFxR/DDTqYNk6uXn8BJMEcncLSpMbf/XV1aS0jAjYwn98uvVCiAywQ==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.42.1.tgz", + "integrity": "sha512-LyR6x784JCiJ1j6sH5Y0K6cdExqCCm8DJUTcwG5ThNXJj/G8o5E56u5EdG4SLy+bZAwZBswC+GYn3eGdttBVCg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/type-utils": "5.42.0", - "@typescript-eslint/utils": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/type-utils": "5.42.1", + "@typescript-eslint/utils": "5.42.1", "debug": "^4.3.4", "ignore": "^5.2.0", "natural-compare-lite": "^1.4.0", @@ -19802,53 +19854,53 @@ } }, "@typescript-eslint/parser": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.0.tgz", - "integrity": "sha512-Ixh9qrOTDRctFg3yIwrLkgf33AHyEIn6lhyf5cCfwwiGtkWhNpVKlEZApi3inGQR/barWnY7qY8FbGKBO7p3JA==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", + "integrity": "sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/typescript-estree": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.0.tgz", - "integrity": "sha512-l5/3IBHLH0Bv04y+H+zlcLiEMEMjWGaCX6WyHE5Uk2YkSGAMlgdUPsT/ywTSKgu9D1dmmKMYgYZijObfA39Wow==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.1.tgz", + "integrity": "sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==", "dev": true, "requires": { - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/visitor-keys": "5.42.0" + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1" } }, "@typescript-eslint/type-utils": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.42.0.tgz", - "integrity": "sha512-HW14TXC45dFVZxnVW8rnUGnvYyRC0E/vxXShFCthcC9VhVTmjqOmtqj6H5rm9Zxv+ORxKA/1aLGD7vmlLsdlOg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.42.1.tgz", + "integrity": "sha512-WWiMChneex5w4xPIX56SSnQQo0tEOy5ZV2dqmj8Z371LJ0E+aymWD25JQ/l4FOuuX+Q49A7pzh/CGIQflxMVXg==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "5.42.0", - "@typescript-eslint/utils": "5.42.0", + "@typescript-eslint/typescript-estree": "5.42.1", + "@typescript-eslint/utils": "5.42.1", "debug": "^4.3.4", "tsutils": "^3.21.0" } }, "@typescript-eslint/types": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.0.tgz", - "integrity": "sha512-t4lzO9ZOAUcHY6bXQYRuu+3SSYdD9TS8ooApZft4WARt4/f2Cj/YpvbTe8A4GuhT4bNW72goDMOy7SW71mZwGw==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.1.tgz", + "integrity": "sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.0.tgz", - "integrity": "sha512-2O3vSq794x3kZGtV7i4SCWZWCwjEtkWfVqX4m5fbUBomOsEOyd6OAD1qU2lbvV5S8tgy/luJnOYluNyYVeOTTg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.1.tgz", + "integrity": "sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==", "dev": true, "requires": { - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/visitor-keys": "5.42.0", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -19868,16 +19920,16 @@ } }, "@typescript-eslint/utils": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.42.0.tgz", - "integrity": "sha512-JZ++3+h1vbeG1NUECXQZE3hg0kias9kOtcQr3+JVQ3whnjvKuMyktJAAIj6743OeNPnGBmjj7KEmiDL7qsdnCQ==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.42.1.tgz", + "integrity": "sha512-Gxvf12xSp3iYZd/fLqiQRD4uKZjDNR01bQ+j8zvhPjpsZ4HmvEFL/tC4amGNyxN9Rq+iqvpHLhlqx6KTxz9ZyQ==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.42.0", - "@typescript-eslint/types": "5.42.0", - "@typescript-eslint/typescript-estree": "5.42.0", + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0", "semver": "^7.3.7" @@ -19895,12 +19947,12 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "5.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.0.tgz", - "integrity": "sha512-QHbu5Hf/2lOEOwy+IUw0GoSCuAzByTAWWrOTKzTzsotiUnWFpuKnXcAhC9YztAf2EElQ0VvIK+pHJUPkM0q7jg==", + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.1.tgz", + "integrity": "sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==", "dev": true, "requires": { - "@typescript-eslint/types": "5.42.0", + "@typescript-eslint/types": "5.42.1", "eslint-visitor-keys": "^3.3.0" }, "dependencies": { @@ -20021,36 +20073,36 @@ } }, "@vue/compiler-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", - "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.42.tgz", + "integrity": "sha512-qKpDdoGaKq53T1+U4R7pk62QeDe8Kc6RN1xSd7tGi4DK3mGrqT32gyOL542wpt73Ftza0AvWmVCchmKtTpwxDg==", "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.41", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", - "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.42.tgz", + "integrity": "sha512-QVrAVX9zzvLltyQy1uxxgOmsKLStFalw0f/8HEdWIR95YjJsNo3S3SwBJDR2cnjwcVGftXBLksf1ikMyAl8bUw==", "requires": { - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-core": "3.2.42", + "@vue/shared": "3.2.42" } }, "@vue/compiler-sfc": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", - "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.42.tgz", + "integrity": "sha512-lWiyxMfQ3SXGhFszSpKuPT5JcSM1ypAbLJOpHpCqvbSaJE+FAZYMbFzAC/y4MC3jSbNQ0moWncOS1gO4aXMbNQ==", "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-ssr": "3.2.41", - "@vue/reactivity-transform": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.42", + "@vue/compiler-dom": "3.2.42", + "@vue/compiler-ssr": "3.2.42", + "@vue/reactivity-transform": "3.2.42", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -20058,12 +20110,12 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", - "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.42.tgz", + "integrity": "sha512-2Q0IclcvsX1A8N8/M7Ub32gitdnKdsjRHdj6R3Z/HGW34CXGsb4tHzjthOuT5fiyPG+CzyyAn4HiqCN8oI4iqg==", "requires": { - "@vue/compiler-dom": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.42", + "@vue/shared": "3.2.42" } }, "@vue/devtools-api": { @@ -20072,57 +20124,57 @@ "integrity": "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==" }, "@vue/reactivity": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.41.tgz", - "integrity": "sha512-9JvCnlj8uc5xRiQGZ28MKGjuCoPhhTwcoAdv3o31+cfGgonwdPNuvqAXLhlzu4zwqavFEG5tvaoINQEfxz+l6g==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.42.tgz", + "integrity": "sha512-X30I+iS7d6c8DZDY7SqahkTRN2THfnkNtf0oCUktuk2gTKRxNOzaARItSmsPKLC7UVUG61Hne8Si3wtQBBDj+A==", "requires": { - "@vue/shared": "3.2.41" + "@vue/shared": "3.2.42" } }, "@vue/reactivity-transform": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", - "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.42.tgz", + "integrity": "sha512-u5Qp09PCGa0yJqfbHbJXDfm9BrNx5xYtHIl5CuWbnUtBAxr8vKRjMZmFpa4CmSufixWcbwvKvSD9weamEVbfeA==", "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.42", + "@vue/shared": "3.2.42", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/runtime-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.41.tgz", - "integrity": "sha512-0LBBRwqnI0p4FgIkO9q2aJBBTKDSjzhnxrxHYengkAF6dMOjeAIZFDADAlcf2h3GDALWnblbeprYYpItiulSVQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.42.tgz", + "integrity": "sha512-9JCPD4k/p4eXXc5ja+YcYwGu+ES9BIgoVty7UlOMEG0Bdz7awxxY78PXIHg1b7HlxQuUdGq6r3COg1cyvDrRCw==", "requires": { - "@vue/reactivity": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/reactivity": "3.2.42", + "@vue/shared": "3.2.42" } }, "@vue/runtime-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.41.tgz", - "integrity": "sha512-U7zYuR1NVIP8BL6jmOqmapRAHovEFp7CSw4pR2FacqewXNGqZaRfHoNLQsqQvVQ8yuZNZtxSZy0FFyC70YXPpA==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.42.tgz", + "integrity": "sha512-i4OZblZQvFjJ/isNo+jrqXsjJgq4Nz0R/W2iNu40pTLJrikijYPaUOcOJcjVih9eL7zz101RJsbP8zKluQLqRA==", "requires": { - "@vue/runtime-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/runtime-core": "3.2.42", + "@vue/shared": "3.2.42", "csstype": "^2.6.8" } }, "@vue/server-renderer": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.41.tgz", - "integrity": "sha512-7YHLkfJdTlsZTV0ae5sPwl9Gn/EGr2hrlbcS/8naXm2CDpnKUwC68i1wGlrYAfIgYWL7vUZwk2GkYLQH5CvFig==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.42.tgz", + "integrity": "sha512-xo6XMaJTuKmYRlnS53QN358j0pmZMFNtisLkzV7oXFww0bpkn2MzjkPt4YvOjMNto9NlI609xQKJboEk5nMu2A==", "requires": { - "@vue/compiler-ssr": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-ssr": "3.2.42", + "@vue/shared": "3.2.42" } }, "@vue/shared": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", - "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==" + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.42.tgz", + "integrity": "sha512-cheJw3tpW34LWVUL3fySuwCmF1/gFBHWZ3WjmMcBIHMcnKrS/SRapvkbYWzyw5FiM8OcpYHO5e7hWYOFCsyHmA==" }, "@webassemblyjs/ast": { "version": "1.11.1", @@ -23293,9 +23345,9 @@ "dev": true }, "eslint": { - "version": "8.26.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.26.0.tgz", - "integrity": "sha512-kzJkpaw1Bfwheq4VXUezFriD1GxszX6dUekM7Z3aC2o4hju+tsR/XyTC3RcoSD7jmy9VkPU3+N6YjVU2e96Oyg==", + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", "dev": true, "requires": { "@eslint/eslintrc": "^1.3.3", @@ -23535,19 +23587,19 @@ } }, "eslint-plugin-n": { - "version": "15.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.0.tgz", - "integrity": "sha512-VCqQiZDpdm1Q9grnvy+XsENZoXDgTLqPHRQwgl9qFNNgTKR4YEnQOMN0pFB/9TbmrQ88jdeTnqTcNwRvjqMOtg==", + "version": "15.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.1.tgz", + "integrity": "sha512-kAd+xhZm7brHoFLzKLB7/FGRFJNg/srmv67mqb7tto22rpr4wv/LV6RuXzAfv3jbab7+k1wi42PsIhGviywaaw==", "dev": true, "requires": { "builtins": "^5.0.1", "eslint-plugin-es": "^4.1.0", "eslint-utils": "^3.0.0", "ignore": "^5.1.1", - "is-core-module": "^2.10.0", + "is-core-module": "^2.11.0", "minimatch": "latest", "resolve": "^1.22.1", - "semver": "^7.3.7" + "semver": "^7.3.8" }, "dependencies": { "semver": { @@ -27653,7 +27705,7 @@ "dev": true, "requires": { "color-parse": "^1.3.7", - "loader-utils": "^2", + "loader-utils": "^1.1.0", "lodash": "^4.17.14", "postcss-values-parser": "^1.5.0", "posthtml": "^0.11.3", @@ -27731,6 +27783,26 @@ "readable-stream": "^3.1.1" } }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, "posthtml": { "version": "0.11.6", "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.11.6.tgz", @@ -29702,7 +29774,7 @@ "clone": "^2.1.1", "he": "^1.1.1", "image-size": "^0.5.1", - "loader-utils": "^2", + "loader-utils": "^1.1.0", "merge-options": "1.0.1", "micromatch": "3.1.0", "postcss": "latest", @@ -29799,12 +29871,32 @@ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", "dev": true }, + "loader-utils": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.1.tgz", + "integrity": "sha512-1Qo97Y2oKaU+Ro2xnDMR26g1BwMT29jNbem1EvcujW2jqt+j5COXyscjM7bLQkM9HaxI7pkWeW7gnI072yMI9Q==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, "micromatch": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.0.tgz", @@ -30747,15 +30839,15 @@ "dev": true }, "vue": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.41.tgz", - "integrity": "sha512-uuuvnrDXEeZ9VUPljgHkqB5IaVO8SxhPpqF2eWOukVrBnRBx2THPSGQBnVRt0GrIG1gvCmFXMGbd7FqcT1ixNQ==", + "version": "3.2.42", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.42.tgz", + "integrity": "sha512-gH7e5YD9IkX9Lv0QmB+Z7Jac2t7GYHg2AZrgkzQdCmyaUIdSbp6DhdeTM5HO6JbPuRgD1Iu06N9MXxjJ//NnNQ==", "requires": { - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-sfc": "3.2.41", - "@vue/runtime-dom": "3.2.41", - "@vue/server-renderer": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.42", + "@vue/compiler-sfc": "3.2.42", + "@vue/runtime-dom": "3.2.42", + "@vue/server-renderer": "3.2.42", + "@vue/shared": "3.2.42" } }, "vue-eslint-parser": { diff --git a/package.json b/package.json index 740c67cd..e8d2d5f9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lx-music-desktop", - "version": "2.0.0-beta.6", + "version": "2.0.0-beta.7", "description": "一个免费的音乐查找助手", "main": "./dist/main.js", "productName": "lx-music-desktop", @@ -214,8 +214,8 @@ "@types/better-sqlite3": "^7.6.2", "@types/needle": "^2.5.3", "@types/tunnel": "^0.0.3", - "@typescript-eslint/eslint-plugin": "^5.42.0", - "@typescript-eslint/parser": "^5.42.0", + "@typescript-eslint/eslint-plugin": "^5.42.1", + "@typescript-eslint/parser": "^5.42.1", "@volar/vue-language-plugin-pug": "^1.0.9", "babel-loader": "^9.1.0", "browserslist": "^4.21.4", @@ -233,13 +233,13 @@ "electron-devtools-installer": "^3.2.0", "electron-to-chromium": "^1.4.284", "electron-updater": "^6.0.0-alpha.2", - "eslint": "^8.26.0", + "eslint": "^8.27.0", "eslint-config-standard": "^17.0.0", "eslint-config-standard-with-typescript": "^23.0.0", "eslint-formatter-friendly": "github:lyswhut/eslint-friendly-formatter#2170d1320e2fad13615a9dcf229669f0bb473a53", "eslint-plugin-html": "^7.1.0", "eslint-plugin-import": "^2.26.0", - "eslint-plugin-n": "^15.4.0", + "eslint-plugin-n": "^15.5.1", "eslint-plugin-promise": "^6.1.1", "eslint-plugin-vue": "^9.7.0", "eslint-webpack-plugin": "^3.2.0", @@ -293,7 +293,7 @@ "sortablejs": "^1.15.0", "tunnel": "^0.0.6", "utf-8-validate": "^5.0.10", - "vue": "^3.2.41", + "vue": "^3.2.42", "vue-router": "^4.1.6" }, "overrides": { @@ -306,6 +306,9 @@ "postcss": "latest", "loader-utils": "^2" }, + "svg-baker": { + "postcss": "latest" + }, "pug-plain-loader": { "loader-utils": "^2" }