From 651a89145f5c073097b775a8b2b33364a26256dc Mon Sep 17 00:00:00 2001 From: BTMuli Date: Wed, 24 Dec 2025 02:46:28 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20=E8=A7=84=E8=8C=83=E5=8C=96?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 2 +- src/components/app/t-gameNav.vue | 4 +- src/components/app/to-nameCard.vue | 4 +- src/components/func/dialog.ts | 12 +- src/components/func/geetest.ts | 13 +- src/components/func/loading.ts | 7 +- src/components/func/snackbar.ts | 10 +- src/components/pageAnno/ta-card.vue | 66 +-- src/components/pageBag/pb-materialItem.vue | 4 +- src/components/pageBag/pbo-convert.vue | 2 +- src/components/pageBag/pbo-material.vue | 2 +- src/components/pageCollect/to-collectPost.vue | 2 +- src/components/pageConfig/tco-gameLogin.vue | 2 +- src/components/pageHome/ph-calendar-birth.vue | 5 +- src/components/pageHome/ph-comp-sign.vue | 4 +- src/components/pageHome/ph-pos-user.vue | 16 +- src/components/pageNews/to-channel.vue | 15 +- src/components/userAchi/tua-achi-list.vue | 8 +- src/components/userAchi/tua-achi-overlay.vue | 14 +- src/components/userAchi/tua-achi.vue | 10 +- src/components/userAchi/tua-series.vue | 22 +- src/components/userAvatar/tua-avatar-box.vue | 4 +- src/components/userAvatar/tua-detail-card.vue | 2 +- .../userAvatar/tua-detail-overlay.vue | 6 +- src/components/userAvatar/tua-relic-box.vue | 2 +- .../userAvatarCard/tuc-detail-card.vue | 2 +- .../userAvatarOld/tuc-detail-old.vue | 2 +- src/components/userGacha/gbr-data-line.vue | 4 +- src/components/userGacha/gbr-data-view.vue | 4 +- src/components/userGacha/gbr-overview.vue | 6 +- src/components/userGacha/gbr-table.vue | 3 +- .../userGacha/gro-chart-calendar.vue | 4 +- .../userGacha/gro-chart-stackbar.vue | 2 +- src/components/userGacha/gro-data-line.vue | 2 +- src/components/userGacha/gro-data-view.vue | 6 +- src/components/userGacha/gro-overview.vue | 12 +- src/components/userGacha/gro-table.vue | 2 +- src/components/userGacha/ug-his-card.vue | 42 +- src/components/userGacha/ugo-uid.vue | 2 +- src/components/userRecord/tur-world-grid.vue | 11 +- src/components/userRecord/tur-world-sub.vue | 52 ++- src/components/userScripts/tus-sign.vue | 2 +- src/components/viewPost/tp-image.vue | 2 +- src/components/viewPost/tp-villaCard.vue | 4 +- src/components/viewPost/tp-vote.vue | 2 +- src/components/viewPost/vp-btn-collect.vue | 2 +- .../viewPost/vp-overlay-collect.vue | 6 +- src/data/index.ts | 6 +- src/enum/anno.ts | 64 --- src/enum/bbs.ts | 75 +++- src/enum/game.ts | 127 +++++- src/enum/staticData.ts | 20 + src/enum/uiaf.ts | 4 - src/hooks/reachBottom.ts | 15 +- src/main.ts | 3 +- src/pages/User/Abyss.vue | 2 +- src/pages/User/Challenge.vue | 34 +- src/pages/User/Characters.vue | 14 +- src/pages/User/Combat.vue | 2 +- src/pages/User/Gacha.vue | 6 +- src/pages/User/GachaB.vue | 2 +- src/pages/User/Record.vue | 4 +- src/pages/WIKI/Abyss.vue | 2 +- src/pages/WIKI/NameCard.vue | 4 +- src/pages/common/PageAchi.vue | 15 +- src/pages/common/PageAnno.vue | 142 ++---- src/pages/common/PageBagMaterial.vue | 2 +- src/pages/common/PageTest.vue | 2 +- src/pages/common/PostCollect.vue | 4 +- src/pages/common/PostNews.vue | 74 ++-- src/plugins/Bili/index.ts | 3 +- src/plugins/Bili/request/getNav.ts | 7 +- src/plugins/Bili/request/getVideoUrl.ts | 11 +- src/plugins/Bili/request/getVideoView.ts | 11 +- src/plugins/Bili/types/Base.d.ts | 23 +- src/plugins/Bili/types/Nav.d.ts | 29 +- src/plugins/Bili/types/Video.d.ts | 338 +++++++------- src/plugins/Bili/utils/getHeader.ts | 3 +- src/plugins/Bili/utils/getWrid.ts | 19 +- src/plugins/Hutao/index.ts | 3 +- src/plugins/Hutao/request/abyssReq.ts | 71 ++- src/plugins/Hutao/request/combatReq.ts | 19 +- src/plugins/Hutao/types/Abyss.d.ts | 317 +++++-------- src/plugins/Hutao/types/Base.d.ts | 52 +-- src/plugins/Hutao/types/Character.d.ts | 86 ++-- src/plugins/Hutao/types/Combat.d.ts | 54 +-- src/plugins/Hutao/types/Weapon.d.ts | 63 +-- src/plugins/Hutao/utils/abyssUtil.ts | 43 +- src/plugins/Hutao/utils/combatUtil.ts | 11 +- src/plugins/Sqlite/index.ts | 46 +- src/plugins/Sqlite/modules/avatarBirth.ts | 23 +- src/plugins/Sqlite/modules/userAbyss.ts | 76 ++-- src/plugins/Sqlite/modules/userAccount.ts | 112 ++--- src/plugins/Sqlite/modules/userAchi.ts | 157 +++---- src/plugins/Sqlite/modules/userAvatar.ts | 56 +-- src/plugins/Sqlite/modules/userBagMaterial.ts | 50 +-- src/plugins/Sqlite/modules/userChallenge.ts | 71 ++- src/plugins/Sqlite/modules/userCollect.ts | 137 +++--- src/plugins/Sqlite/modules/userCombat.ts | 67 ++- src/plugins/Sqlite/modules/userGacha.ts | 111 +++-- src/plugins/Sqlite/modules/userGachaB.ts | 35 +- src/plugins/Sqlite/modules/userRecord.ts | 64 ++- src/plugins/Sqlite/sql/initData.ts | 19 +- src/plugins/Sqlite/sql/insertData.ts | 21 - src/plugins/Sqlite/utils/transAbyssData.ts | 20 +- src/plugins/Sqlite/utils/transUserRecord.ts | 64 ++- src/request/apiHubReq.ts | 82 ++-- src/request/bbsReq.ts | 20 +- src/request/hk4eReq.ts | 115 +++-- src/request/lunaReq.ts | 38 +- src/request/miscReq.ts | 29 +- src/request/otherReq.ts | 19 +- src/request/painterReq.ts | 60 +-- src/request/passportReq.ts | 44 +- src/request/postReq.ts | 90 ++-- src/request/recordReq.ts | 106 +++-- src/request/takumiReq.ts | 59 ++- src/request/topicReq.ts | 11 +- src/router/index.ts | 3 +- src/router/modules/archive.ts | 3 +- src/router/modules/sub.ts | 3 +- src/router/modules/user.ts | 3 +- src/store/modules/app.ts | 81 ++-- src/store/modules/bbs.ts | 7 +- src/store/modules/user.ts | 3 +- src/types/App/Account.d.ts | 62 ++- src/types/App/Achievement.d.ts | 122 ++--- src/types/App/Calendar.d.ts | 90 ++-- src/types/App/Character.d.ts | 80 ++-- src/types/App/Device.d.ts | 35 +- src/types/App/Gacha.d.ts | 75 +--- src/types/App/NameCard.d.ts | 25 +- src/types/App/Weapon.d.ts | 56 +-- src/types/Archive/Birth.d.ts | 4 +- src/types/BBS/Announcement.d.ts | 258 ----------- src/types/BBS/AppConfig.d.ts | 53 +-- src/types/BBS/CaptchaLogin.d.ts | 151 +++---- src/types/BBS/Collection.d.ts | 104 ++--- src/types/BBS/Emoji.d.ts | 67 ++- src/types/BBS/Forum.d.ts | 125 +++--- src/types/BBS/Game.d.ts | 83 ++-- src/types/BBS/GameLogin.d.ts | 132 +++--- src/types/BBS/Lottery.d.ts | 72 +-- src/types/BBS/Mission.d.ts | 2 +- src/types/BBS/Navigator.d.ts | 344 +++++++------- src/types/BBS/Obc.d.ts | 125 +++--- src/types/BBS/Post.d.ts | 20 + src/types/BBS/Reply.d.ts | 231 +++++----- src/types/BBS/SctPost.d.ts | 97 ++-- src/types/BBS/Sign.d.ts | 1 - src/types/BBS/Topic.d.ts | 131 +++--- src/types/BBS/UGC.d.ts | 128 +++--- src/types/BBS/User.d.ts | 261 +++++------ src/types/BBS/Vote.d.ts | 99 +++-- src/types/Game/ActCalendar.d.ts | 10 +- src/types/Game/Anno.d.ts | 245 ++++++++++ src/types/Game/Avatar.d.ts | 419 ++++++++---------- src/types/Game/Challenge.d.ts | 6 - src/types/Game/Combat.d.ts | 296 +++++++------ src/types/Game/Gacha.d.ts | 171 ++++--- src/types/Game/Login.d.ts | 110 ++--- src/types/Game/Record.d.ts | 259 ++++++----- src/types/Plugins/Hakushi.d.ts | 8 +- src/types/Plugins/UIAF.d.ts | 1 - src/types/Plugins/UIGF.d.ts | 10 +- src/types/Sqlite/Abyss.d.ts | 39 +- src/types/Sqlite/Account.d.ts | 52 +-- src/types/Sqlite/Achievement.d.ts | 71 +-- src/types/Sqlite/AppData.d.ts | 34 +- src/types/Sqlite/Challenge.d.ts | 68 +-- src/types/Sqlite/Character.d.ts | 170 ++++--- src/types/Sqlite/Collection.d.ts | 73 ++- src/types/Sqlite/Combat.d.ts | 63 +-- .../Sqlite/{GachaRecords.d.ts => Gacha.d.ts} | 37 +- src/types/Sqlite/NameCard.d.ts | 28 -- src/types/Sqlite/Record.d.ts | 245 +++++----- src/types/Sqlite/UserBag.d.ts | 4 +- src/utils/Hakushi.ts | 4 +- src/utils/TGBbs.ts | 2 +- src/utils/TGBuild.ts | 5 +- src/utils/TGClient.ts | 188 ++++---- src/utils/TGHttp.ts | 26 +- src/utils/TGLogger.ts | 51 ++- src/utils/TGShare.ts | 34 +- src/utils/TGWindow.ts | 46 +- src/utils/UIAF.ts | 23 +- src/utils/UIGF.ts | 66 +-- src/utils/annoParser.ts | 66 +-- src/utils/birthParser.ts | 18 +- src/utils/colorFunc.ts | 18 +- src/utils/dataBS.ts | 8 +- src/utils/getRequestHeader.ts | 61 ++- src/utils/linkParser.ts | 10 +- src/utils/toolFunc.ts | 133 +++--- src/views/t-anno-json.vue | 32 +- src/views/t-anno.vue | 4 +- src/views/t-post.vue | 68 +-- src/vite-env.d.ts | 36 +- tsdoc.json | 3 +- 199 files changed, 5067 insertions(+), 5390 deletions(-) delete mode 100644 src/enum/anno.ts create mode 100644 src/enum/staticData.ts delete mode 100644 src/plugins/Sqlite/sql/insertData.ts delete mode 100644 src/types/BBS/Announcement.d.ts create mode 100644 src/types/Game/Anno.d.ts rename src/types/Sqlite/{GachaRecords.d.ts => Gacha.d.ts} (79%) delete mode 100644 src/types/Sqlite/NameCard.d.ts diff --git a/src/App.vue b/src/App.vue index f6bb8d51..7ca33149 100644 --- a/src/App.vue +++ b/src/App.vue @@ -313,7 +313,7 @@ async function checkUserLoad(): Promise { await new Promise((resolve) => setTimeout(resolve, 1000)); } -async function parseDeepLink(payload: string | string[]): Promise { +async function parseDeepLink(payload: string | Array): Promise { try { if (typeof payload === "string") return payload; if (payload.length < 2) return "teyvatguide://"; diff --git a/src/components/app/t-gameNav.vue b/src/components/app/t-gameNav.vue index b8222be0..a9b31f7c 100644 --- a/src/components/app/t-gameNav.vue +++ b/src/components/app/t-gameNav.vue @@ -36,8 +36,8 @@ const model = defineModel({ default: 2 }); const actId = ref(); const showOverlay = ref(false); -const nav = shallowRef([]); -const codeData = shallowRef([]); +const nav = shallowRef>([]); +const codeData = shallowRef>([]); const hasNav = computed(() => { const liveNames = ["前瞻直播", "前瞻节目", "直播兑换码", "特别节目"]; const find = nav.value.find((item) => liveNames.includes(item.name)); diff --git a/src/components/app/to-nameCard.vue b/src/components/app/to-nameCard.vue index b889b823..88964be9 100644 --- a/src/components/app/to-nameCard.vue +++ b/src/components/app/to-nameCard.vue @@ -81,7 +81,7 @@ function parseNameCard(desc: string): string { return res; } -function parseDesc(desc: string, inQuote: boolean = false): string[] { +function parseDesc(desc: string, inQuote: boolean = false): Array { let res = desc.replace(/。/g, "。\n"); res = res.replace(/;/g, ";\n"); /* 闲云·鹤云 */ @@ -113,7 +113,7 @@ function parseDesc(desc: string, inQuote: boolean = false): string[] { res = res.replace(/\n」/g, "」\n"); } const match = res.split("\n"); - let array: string[] = []; + let array: Array = []; for (const item of match) { if (item.length > 0 && item.length <= 32) { array.push(item); diff --git a/src/components/func/dialog.ts b/src/components/func/dialog.ts index 9ed8b15a..a345e6e4 100644 --- a/src/components/func/dialog.ts +++ b/src/components/func/dialog.ts @@ -1,6 +1,5 @@ /** - * @file component/func/dialog.ts - * @description dialog 组件封装,函数式调用 + * dialog 组件封装,函数式调用 * @since Beta v0.6.3 */ @@ -27,18 +26,15 @@ export type DialogInputParams = { }; /** - * @description 自定义 confirm 组件 + * 自定义 confirm 组件 * @since Beta v0.6.3 - * @extends ComponentInternalInstance - * @property {Function} exposeProxy.displayBox 显示 confirm - * @return DialogInstance */ -interface DialogInstance extends ComponentInternalInstance { +type DialogInstance = { exposeProxy: { displayCheckBox: (props: DialogCheckParams) => Promise; displayInputBox: (props: DialogInputParams) => Promise; }; -} +} & ComponentInternalInstance; function renderBox(props: DialogParams): VNode { const container = document.createElement("div"); diff --git a/src/components/func/geetest.ts b/src/components/func/geetest.ts index b415e63e..01bff19a 100644 --- a/src/components/func/geetest.ts +++ b/src/components/func/geetest.ts @@ -13,18 +13,15 @@ const geetestId = "tg-func-geetest"; /** * 自定义 geetest 组件 * @since Beta v0.8.7 - * @extends ComponentInternalInstance - * @property {Function} exposeProxy.displayBox 弹出 geetest 验证 - * @return GeetestInstance */ -interface GeetestInstance extends ComponentInternalInstance { +type GeetestInstance = { exposeProxy: { displayBox: ( props: TGApp.BBS.Geetest.CreateRes, raw?: TGApp.BBS.CaptchaLogin.CaptchaAigis, ) => Promise; }; -} +} & ComponentInternalInstance; function renderBox(props: TGApp.BBS.Geetest.CreateRes): VNode { const container = document.createElement("div"); @@ -40,9 +37,9 @@ let geetestInstance: VNode; /** * 弹出 geetest 验证 * @since Beta v0.8.7 - * @param {TGApp.BBS.Geetest.CreateRes} props geetest 验证的参数 - * @param {TGApp.BBS.CaptchaLogin.CaptchaAigis} raw 原始数据,一般用于 Gt4 验证 - * @return {Promise} 验证成功返回验证数据 + * @param props - geetest 验证的参数 + * @param raw - 原始数据,一般用于 Gt4 验证 + * @returns 验证数据 */ async function showGeetest( props: TGApp.BBS.Geetest.CreateRes, diff --git a/src/components/func/loading.ts b/src/components/func/loading.ts index 3805bcec..51a6c96a 100644 --- a/src/components/func/loading.ts +++ b/src/components/func/loading.ts @@ -1,6 +1,5 @@ /** - * @file component/func/loading.ts - * @description loading 组件封装,函数式调用 + * loading 组件封装,函数式调用 * @since Beta v0.6.7 */ @@ -17,9 +16,9 @@ type LoadingUpdateParams = Omit & { timeout? const TIMEOUT: Readonly = 150; /** - * @description 自定义 loading 组件 + * 自定义 loading 组件 * @since Beta v0.6.7 - * @return LoadingInstance + * @returns LoadingInstance */ type LoadingInstance = ComponentInternalInstance & { exposeProxy: { displayBox: (props: LoadingParams) => Promise }; diff --git a/src/components/func/snackbar.ts b/src/components/func/snackbar.ts index 3eaafd24..18c489bd 100644 --- a/src/components/func/snackbar.ts +++ b/src/components/func/snackbar.ts @@ -1,6 +1,5 @@ /** - * @file component/func/snackbar.ts - * @description snackbar 组件封装,函数式调用 + * snackbar 组件封装,函数式调用 * @since Beta v0.6.3 */ @@ -14,15 +13,14 @@ const snackbarId = "tg-func-snackbar"; export type SnackbarParams = { text: string; color: string; timeout: number }; /** - * @description 自定义 snackbar 组件 + * 自定义 snackbar 组件 * @since Beta v0.6.3 - * @return SnackbarInstance */ -interface SnackbarInstance extends ComponentInternalInstance { +type SnackbarInstance = { exposeProxy: { displayBox: (props: SnackbarParams) => void; }; -} +} & ComponentInternalInstance; function renderBox(props: SnackbarParams): VNode { const container = document.createElement("div"); diff --git a/src/components/pageAnno/ta-card.vue b/src/components/pageAnno/ta-card.vue index c7eefba4..eb0255e2 100644 --- a/src/components/pageAnno/ta-card.vue +++ b/src/components/pageAnno/ta-card.vue @@ -1,7 +1,7 @@ diff --git a/src/components/userRecord/tur-world-sub.vue b/src/components/userRecord/tur-world-sub.vue index 229f70e4..720bd39c 100644 --- a/src/components/userRecord/tur-world-sub.vue +++ b/src/components/userRecord/tur-world-sub.vue @@ -1,24 +1,25 @@ +