From d712441c23b3f2b2167f78ea22b66057e1c5503b Mon Sep 17 00:00:00 2001 From: BTMuli Date: Fri, 10 Apr 2026 13:49:32 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20=E9=A6=96=E9=A1=B5=E5=AE=9E?= =?UTF-8?q?=E6=97=B6=E4=BE=BF=E7=AC=BA=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/UI/daily/coin.webp | Bin 0 -> 2130 bytes public/UI/daily/domain.webp | Bin 0 -> 1844 bytes public/UI/daily/mission.webp | Bin 0 -> 2050 bytes public/UI/daily/resin.webp | Bin 0 -> 2224 bytes public/UI/daily/task.webp | Bin 0 -> 1932 bytes public/UI/daily/trans.webp | Bin 0 -> 2266 bytes .../pageHome/ph-comp-daily-note.vue | 187 +++++++++++++ .../pageHome/ph-daily-note-boss.vue | 80 ++++++ .../pageHome/ph-daily-note-coin.vue | 134 ++++++++++ .../pageHome/ph-daily-note-expedition.vue | 151 +++++++++++ .../pageHome/ph-daily-note-item.vue | 248 ++++++++++++++++++ .../pageHome/ph-daily-note-quest.vue | 110 ++++++++ .../pageHome/ph-daily-note-resin.vue | 142 ++++++++++ .../pageHome/ph-daily-note-task.vue | 228 ++++++++++++++++ .../pageHome/ph-daily-note-transformer.vue | 152 +++++++++++ src/enum/dailyNote.ts | 118 +++++++++ src/pages/User/Gacha.vue | 2 +- src/pages/common/PageHome.vue | 15 +- src/store/modules/home.ts | 5 +- src/types/Game/DailyNote.d.ts | 112 ++++++-- 20 files changed, 1664 insertions(+), 20 deletions(-) create mode 100644 public/UI/daily/coin.webp create mode 100644 public/UI/daily/domain.webp create mode 100644 public/UI/daily/mission.webp create mode 100644 public/UI/daily/resin.webp create mode 100644 public/UI/daily/task.webp create mode 100644 public/UI/daily/trans.webp create mode 100644 src/components/pageHome/ph-comp-daily-note.vue create mode 100644 src/components/pageHome/ph-daily-note-boss.vue create mode 100644 src/components/pageHome/ph-daily-note-coin.vue create mode 100644 src/components/pageHome/ph-daily-note-expedition.vue create mode 100644 src/components/pageHome/ph-daily-note-item.vue create mode 100644 src/components/pageHome/ph-daily-note-quest.vue create mode 100644 src/components/pageHome/ph-daily-note-resin.vue create mode 100644 src/components/pageHome/ph-daily-note-task.vue create mode 100644 src/components/pageHome/ph-daily-note-transformer.vue create mode 100644 src/enum/dailyNote.ts diff --git a/public/UI/daily/coin.webp b/public/UI/daily/coin.webp new file mode 100644 index 0000000000000000000000000000000000000000..4e27a8f13d139949ad9e257dd7f680fef487e6d9 GIT binary patch literal 2130 zcmV-Y2(9;0Nk&FW2mk-|Q=1kix2CF0zLX87{>t@!we z%7d}Vc1HENGALf(=F!kiS2Uc><4H>bgExx~EkR)Q=(N0LG**wEcNvM*qj!~IULFIM zG=^9VYBIpfV_46<@g76(+?A9Vyhulj$M9w8CI!UQNeYm;i&wx*9i#x79$NzH@{klP zE{|{tu!W!41MdF7D*)$a;)q;YSwOZ%DM05YQcyX!(15KCByc<5+ku7Nl0fc!=M63N zPQm6}mje7&XXva-0zTIye7VN(Sxw+~zFH>`>y^&nb7eEIE1!X1a7<7c_;RAaN{3=-CC!LQf|o ziJnh5GWD2IBip>Y2Y|eVIDXK8|PVUu+Z;8Zwm;JkzM6-MKOi zEZ?qNnFg0n>BW@^VX_`k? zqA1gV09H^qAP@!s0MH`t;8-OZ8nS` zd55eDY{8xW!Ww+g8&iu&G`H5}E!5C(s8>lA>+{4&BS3OLp84hg81vf`ulVT;DCr_s z=Nm{Ib;kpJ#_SdzDRTqL*k@2KFUe;wJ+l+p`#7|lCPS&bFc%Kc^TuttR#?)Wj!69l zD#ns}!WFwRL#_1_bx{i>l5mvlXew@RSzKd&-)QQcAW{ykqc}H9;2rp+(3Hhk#%{{< zsP8(W@|{)U4^dhRNBzfQC;xT)zfaJWiUA*Pwg$=?i^byKf|Ft}N!B$A0LOo0%ny+A zG|gjT3@|6ic*52p%*26m6XmZ6@9)xt3P~vbjAg>57rbg13t_Cj0)Ye2zuA#zCY8{b zw#dx7LIgsF!mJAqI*!TL_+y$v_lFJ4Mf}b~yF3dJ8Ej&hX{}Wg+bvUqhAxedM$cM& zHr%q^!@Z+U>}seFq4sBVzQd-d^^}?nSqfHk3%Y=AOGEHZ+^W+P|KOrPhQx&9TKU<$ z#?Q5FbCTZyR@Eqk+-)hsE&X9{e6Vk56xDHKp0W`teL(YVuJ+Yo2!83*;JA%_=$kn3 z#Buk((!5#_=gR@D;+8T+F&evy7B3Ea>;#IrYu>a;cO~y+q)_obm3} z*%hZA0GA&z$kem>?Mu}l__2`>v6UE055uf*V!9Yg&=`DM2KZG zyiBn!CoX-7ma&w&I5!6vT6{rc?g)jN(MraI7tMvPQ9Xt?F`#0mkRd9m|6*fHQnoQY zHGoeB2MEg&0uQ#VUQdB(vbjJhWa7nVKaoGY_Jgp@LDRCPnNL;+wBu;%3+?5|QLfjO zuUYRCGwZ{JF8XC#lf*%nGvi9AjGQaQ7@|LV&q?s8BbUEKnq1N>!A)cAj%%8R*`aMkSp&_TJH zco}I);YXVDS#9YflnDql4o%K?0UYk!wZ_jOkjI&FapsMXe_C=yg?PXG`h%L;+E^5z IumAu60Al|eHUIzs literal 0 HcmV?d00001 diff --git a/public/UI/daily/domain.webp b/public/UI/daily/domain.webp new file mode 100644 index 0000000000000000000000000000000000000000..e6db7ded2112283635fe434a7d64b422ea04a1ee GIT binary patch literal 1844 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 gt7gG;{rDAs{Gz zQFt&md7V*w&J2p@%{(f)r5O#s&ErW^fx$0}22COG>d|Q4q&HqYTK-5+yn3|0N;hwh z4zu7|m)7_bU4OVK$;d=lz&ijh)x;6G)UtqVl{7#vRV1TwuCWH}R6zo_^SvEdq+1fmo$qYW zBHhW@oXa%8|CAXzE0TcEC5mq;F??1M_?@rj0mOWjMzCGk2<*y7;1?W2lyCDGe!lQI zhLis}Vvq+Btuf4nB*y8y4J6Vzk{ti7c_e2V$;Lhqp=BJ2h>lSlL_~a!;pBhlHHMkK z${6??`3RgYZ3K3;jUZjkBbcw)2S9~}&q@}2TEh6GgbbZg@e7@nv17}0Ghy5AutSqO zl#qSsHajr6M+sM=itMPe)Sv~GQeDGjR9PI6OD$RuEmVKU^PvYhqsjaPiDSt^&rVn- zdRmbvJ+C;FT2vHDZ7K$(R;S#bPt>mD-m*~3y!W*;HNJR1zEJyOy_is!ntO1iUL`f> ziK%1RoASiexoo)=PfQ5aTCf)rN>O{n?ac&sPUbb-wwVbt&u7{B5`xZ0$<72nUHC#H zl}(r@`K@!voWmY?t!q#4i|i-;2uCOUlubGY=cuqW$pr7y5g+rMG|)|3gC z&vne+G)H~I#e6@8zG2tU@4Qc}LkE^swt-@V7sFIHlF15nAH6u}^f(g9-aDd%3z_3q z6uyKA_!!V?2v6d~J_=X6Zt6E|A=yRLO$HYOYlK&O4!sa04%=zgm=xlq)%Leh5+rPy zpkal_+nP?CF{V5yMqnARP?2r3tgr391+ZlLqCE^-*o&?;LHp}Z%Uwx#6CLSZ3p6RF zL+41;?W)q3z?U8ZJp8or?`Ng|&5I? zgA?kkO^2g-!e2lFLw12UAIy~@C~}{;a_*5@btnG8@j*N9)GqILrLi_6z;FF*KJTiE zR#XB;e*at0nLqVb2@S%*f`C>$f;3=EIZH2Kj^4Ex+6Z+)*8>FMX)WXjM0L$3~{?jWxA_H_UN zf$(U5W1vW8-1F(RGcpq)KyE%DR=vkmLl{S-=Yv}l!|jsgr)9K!|_(H%1|C2RV!q_u$8LnIXjzPX04P z^0HZ_KRfNlg3@5yr43EhYcSb~4-!!x$%JX?b=0X`yo+t~le}mt&Xa&T-K9v$G*6f4 zrFR2h{&xvqp(QOk9^2&@iS;%j?qdEnx{s($5ZLiNta)^Gcn9RUBZL1vr01K9M_G8r zi95TnSwHeAEt;qnI*?iO7>eBH^Bo{4O+R1H;)5sNBIgB{GNz z&w$oXJ;dl$u^h+yyNq|JF7}&Jw&;c5@r@W-gNTUU#Y)LP8H-bM2Eg`P?K4eTaS0rF zWO9qEukN4mKclVKs;zO4awRlM#q!?xf|%kNX;~R@t$paW zE&X?i$LCdU`ci8--`Zo#pzrWp8UOHR{U{02t{9067Ye6Qvs69VNY>pDRnt3FMv7 zQ)~*_^*dIw-*yNFUNgoPck7w&?$$^sj4`3#p6d@QrSU1CDh(7qJ1Y80KIr_6<%B`S zG?sVqJe?E7#m#ANfCKvk?vw@f@JU$9loY{#2)G_L{@-TZkzFS1wLeEd5=n4f4k{K@ zXq=w>Xvkmit*qN?{%XLk%9E=U8fvgTt6j`WhV-%fUd<~}3} zVqt-H>?#He_}G0X5oS_Iyb(o_?@8xoG?-y|AoJBcy)^=B%wU;pGzJ{K<8%5&bG1R9 zlcn$-#j^#;$skx;@hVUdkoneOYm{qiegc63R$G?nfNapBjVvjBup1HP%QI!9-S32@ z%_NH0A_P<}mbtP*6*O_B?vYgf#_?8jU;!1Xhs#YXSPgwGLss*T-Umu+y5=iLWx^6x0pB%zqo!O?~bcv5+ z2MNB~;Z}DaNP7gM&3Zl2fTE8&tlc50Y=&0PVTSL?o(O9U^Ii4s8HcsCz7D8S3Gn^- z(Q#3qk4=v&!Q5=8biF$u{|UOri0oHf3+Y*|g#~8pH^3hMNlmmxKnH_Uc>%5)^>%_A=4WzmipzyJVvtvyx% literal 0 HcmV?d00001 diff --git a/public/UI/daily/task.webp b/public/UI/daily/task.webp new file mode 100644 index 0000000000000000000000000000000000000000..fbddda2091b080508eb04e8fce569bebee5d442c GIT binary patch literal 1932 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 SU;O%mgsIT|@MtqI0001E%diCi literal 0 HcmV?d00001 diff --git a/public/UI/daily/trans.webp b/public/UI/daily/trans.webp new file mode 100644 index 0000000000000000000000000000000000000000..be61aba3940e39d7aac635da44bad6e032760575 GIT binary patch literal 2266 zcmV<02qpJYNk&G}2mk-|Q=1kix2CF0zLX87{>t@!we z%7d}Vc1HENGALf(=F!kiS2Uc><4H>bgExx~EkR)Q=(N0LG**wEcNvM*qj!~IULFIM zG=^9VYBIpfV_46<@g76(+?A9Vyhulj$M9w8CI!UQNeYm;i&wx*9i#x79$NzH@{klP zE{|{tu!W!41MdF7D*)$a;)q;YSwOZ%DM05YQcyX!(15KCByc<5+ku7Nl0fc!=M63N zPQm6}mje7&XXva-0zTIye7VN(Sxw+~zFH>`>y^&nb7eEIE1!X1a7<7c_;RAaN{3=-CC!LQf|o ziJnh5GWD2IBip>Y2Y|eVIDXK8|PVUu+Z;8Zwm;JkzM6-MKOi zEZ?qNnFg0n>BW@^VX_`k? zqA1gV09H^qAeaUK08k?UodGIr0Bit0Z8DNaq#~iACG5z64T(S)^uR0g&!67;z}vgm zM8j?encp{mN}uL;*}VWdT`%4~iFPp;mu&gCtbS$QGk&J_3+V;uwfh)JCd#V@@ZV=9ck?=Eo|5@NPn_lw>}|_O(j;TBq8R9V zlcSTooICtkU%Q`Iorta$6YOnhiQ74Rb_8>s!5!DlFTuYwn7`a~t;Z4o0RHb$Dx#|? zJ|IpFR&Q$o+rZ;86lHTIoJ!+%hMo^A7Qi~cZ&88{R21j?&nofb*IL^INgbxWr~nR` zQPIi}(*5T*s5+sV*$kO@)rv#?&G97WyN~VJak~%y>*0U<03ZMBEGAG)vMnuPgDUn&saa?iOu^B=)Ec>|1>ORZ* zi4)VNpc_9^Eb{GpHW$0``bpNDJmm6ak`zZ`)?CO-sR27d_tAGoKyy;&a<$m&ueUdR z?|({mL#(SoWNP6tPDHk^AaNIu^+%H3jywQug-)9dq$#=h5V z;=AxQ#ZdXf!YFkO5fWlD`uw%FzGZk#s^dQ6;)Bzii{$8(!^ARE%<;-wV&GpwUXS(Y zfqY1n+9k7I__cLq-!u=rC9kS%&q-Im|8m9F>U_`JALcy4qB?t#{l@|}DnKhhrr4Re z>zSy%QLAIfRUtvw=O2ssgOAG;ueEtZJ>2t|wXc>JCw4li1`a3W@irvbj{%Tw$p~{0 z`$$zS+d+@L)VDEY@NN6XYavQ#WeO+M#mF|dR7wsNY=LFX`fU%nRfAz>I?fz~u5lDc z-r|}Yi%F%kvk%32`OdH}mMY2%CfgKke1@jG=@MrLw$IN89(#THL_g4l@$3QK@%3p5 z!Ja9kfoFs^yk(`B<5P*`3eDZ>aPQY3lC^x0P6|u#&3&fMw{z#e6y;gKEZt&-d)8+D z7xq^9RzaG@PhEA2;*B>~0f|4ofaJW!aauP$j9|)tVPAkjRc-AlJPU`6cisA8a*8j{ zeIf}8NZrjuRKHIj4@csSvj&km_aVC2)Z2iKlFcxx-_e!TD5c$+2m7p^D4gI;m_McpoKo6%+3L0JGld7H>G92dNANf69Q+CkL% zsVgmA-QQUE`l{wSPo=g{J@yB3#;CY;>Ry3YsF0E-qP^xP{*XRgt%Cv7>a8yMDv_*Z zeUO69W9YHaRJ70MuGwZMR+kg;t5Y?qcFQKyk~|(Dw08*TjLiGx9LE!PtL+>=IRC13 zWpoV>wY{>HwS+seqq<4KpZOuvBN$>oBv?K(oDt8jqp1(UgQ?3qqeRV;GydYge9OW( z__j+!8*Y>y3rq!c4(zY5;BPlA?`%j38|gVxZ04;x&RU9)qeH=Q!vLfqGcMIq*Ij8_ zz&!~AavPM1Ky=|RyRFa%%W6Nmro2c&SvBNY8MO}8Wk0LR5$(NP|BHw(zeIAU&}T?4 z4KD~ogGDdgLMyqYBoWAt9gaTrP=k@l5Dd-|a{v(<8^iOjr|*@xzXryXt>|LjF`P5c( + + + diff --git a/src/components/pageHome/ph-daily-note-boss.vue b/src/components/pageHome/ph-daily-note-boss.vue new file mode 100644 index 00000000..978802a5 --- /dev/null +++ b/src/components/pageHome/ph-daily-note-boss.vue @@ -0,0 +1,80 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-coin.vue b/src/components/pageHome/ph-daily-note-coin.vue new file mode 100644 index 00000000..c1004c57 --- /dev/null +++ b/src/components/pageHome/ph-daily-note-coin.vue @@ -0,0 +1,134 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-expedition.vue b/src/components/pageHome/ph-daily-note-expedition.vue new file mode 100644 index 00000000..deb37932 --- /dev/null +++ b/src/components/pageHome/ph-daily-note-expedition.vue @@ -0,0 +1,151 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-item.vue b/src/components/pageHome/ph-daily-note-item.vue new file mode 100644 index 00000000..475626db --- /dev/null +++ b/src/components/pageHome/ph-daily-note-item.vue @@ -0,0 +1,248 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-quest.vue b/src/components/pageHome/ph-daily-note-quest.vue new file mode 100644 index 00000000..935979c7 --- /dev/null +++ b/src/components/pageHome/ph-daily-note-quest.vue @@ -0,0 +1,110 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-resin.vue b/src/components/pageHome/ph-daily-note-resin.vue new file mode 100644 index 00000000..9950760f --- /dev/null +++ b/src/components/pageHome/ph-daily-note-resin.vue @@ -0,0 +1,142 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-task.vue b/src/components/pageHome/ph-daily-note-task.vue new file mode 100644 index 00000000..ac00571a --- /dev/null +++ b/src/components/pageHome/ph-daily-note-task.vue @@ -0,0 +1,228 @@ + + + + diff --git a/src/components/pageHome/ph-daily-note-transformer.vue b/src/components/pageHome/ph-daily-note-transformer.vue new file mode 100644 index 00000000..93846c2d --- /dev/null +++ b/src/components/pageHome/ph-daily-note-transformer.vue @@ -0,0 +1,152 @@ + + + + diff --git a/src/enum/dailyNote.ts b/src/enum/dailyNote.ts new file mode 100644 index 00000000..da579849 --- /dev/null +++ b/src/enum/dailyNote.ts @@ -0,0 +1,118 @@ +/** + * 实时便笺相关枚举 + * @since Beta v0.10.0 + */ + +/** + * 探索派遣状态枚举 + * @since Beta v0.10.0 + * @see TGApp.Game.DailyNote.ExpeditionStatusEnum + */ +const ExpeditionStatusEnum: typeof TGApp.Game.DailyNote.ExpeditionStatus = { + ONGOING: "Ongoing", + FINISHED: "Finished", +}; + +/** + * 获取探索派遣状态描述 + * @since Beta v0.10.0 + * @param status - 探索派遣状态 + * @returns 探索派遣状态描述 + */ +function getExpeditionStatusDesc(status: TGApp.Game.DailyNote.ExpeditionStatusEnum): string { + switch (status) { + case ExpeditionStatusEnum.ONGOING: + return "派遣中"; + case ExpeditionStatusEnum.FINISHED: + return "已完成"; + } +} + +/** + * 任务奖励状态枚举 + * @since Beta v0.10.0 + * @see TGApp.Game.DailyNote.TaskRewardStatusEnum + */ +const TaskRewardStatusEnum: typeof TGApp.Game.DailyNote.TaskRewardStatus = { + UNFINISHED: "TaskRewardStatusUnfinished", + FINISHED: "TaskRewardStatusFinished", + RECEIVED: "TaskRewardStatusReceived", +}; + +/** + * 获取任务奖励状态描述 + * @since Beta v0.10.0 + * @param status - 任务奖励状态 + * @returns 任务奖励状态描述 + */ +function getTaskRewardStatusDesc(status: TGApp.Game.DailyNote.TaskRewardStatusEnum): string { + switch (status) { + case TaskRewardStatusEnum.UNFINISHED: + return "未完成"; + case TaskRewardStatusEnum.FINISHED: + return "已完成"; + case TaskRewardStatusEnum.RECEIVED: + return "已领取"; + } +} + +/** + * 历练点奖励状态枚举 + * @since Beta v0.10.0 + * @see TGApp.Game.DailyNote.AttendanceRewardStatusEnum + */ +const AttendanceRewardStatusEnum: typeof TGApp.Game.DailyNote.AttendanceRewardStatus = { + UNFINISHED: "AttendanceRewardStatusUnfinished", + TAKEN: "AttendanceRewardStatusTakenAward", +}; + +/** + * 获取历练点奖励状态描述 + * @since Beta v0.10.0 + * @param status - 历练点奖励状态 + * @returns 历练点奖励状态描述 + */ +function getAttendanceRewardStatusDesc( + status: TGApp.Game.DailyNote.AttendanceRewardStatusEnum, +): string { + switch (status) { + case AttendanceRewardStatusEnum.UNFINISHED: + return "未完成"; + case AttendanceRewardStatusEnum.TAKEN: + return "已领取"; + } +} + +/** + * 参量质变仪状态枚举 + * @since Beta v0.10.0 + * @see TGApp.Game.DailyNote.TransformerStatusEnum + */ +const TransformerStatusEnum: typeof TGApp.Game.DailyNote.TransformerStatus = { + OBTAINED: "Obtained", + NOT_OBTAINED: "NotObtained", +}; + +/** + * 实时便笺枚举 + * @since Beta v0.10.0 + */ +const dailyNoteEnum = { + expedition: { + status: ExpeditionStatusEnum, + statusDesc: getExpeditionStatusDesc, + }, + taskReward: { + status: TaskRewardStatusEnum, + statusDesc: getTaskRewardStatusDesc, + }, + attendanceReward: { + status: AttendanceRewardStatusEnum, + statusDesc: getAttendanceRewardStatusDesc, + }, + transformer: { + status: TransformerStatusEnum, + }, +}; + +export default dailyNoteEnum; diff --git a/src/pages/User/Gacha.vue b/src/pages/User/Gacha.vue index 7a8ef259..9a825090 100644 --- a/src/pages/User/Gacha.vue +++ b/src/pages/User/Gacha.vue @@ -399,7 +399,7 @@ async function handleHutaoDownload(uids: Array): Promise { await showLoading.end(); showSnackbar.success("成功下载,即将刷新页面"); await new Promise((resolve) => setTimeout(resolve, 1000)); - // window.location.reload(); + window.location.reload(); } async function handleHutaoDelete(uids: Array): Promise { diff --git a/src/pages/common/PageHome.vue b/src/pages/common/PageHome.vue index 371658a5..a00a4efc 100644 --- a/src/pages/common/PageHome.vue +++ b/src/pages/common/PageHome.vue @@ -54,7 +54,7 @@ density="compact" label="首页组件显示" variant="outlined" - width="360px" + width="440px" /> 确定 @@ -72,6 +72,7 @@ import showDialog from "@comp/func/dialog.js"; import showLoading from "@comp/func/loading.js"; import showSnackbar from "@comp/func/snackbar.js"; import PhCompCalendar from "@comp/pageHome/ph-comp-calendar.vue"; +import PhCompDailyNote from "@comp/pageHome/ph-comp-daily-note.vue"; import PhCompPool from "@comp/pageHome/ph-comp-pool.vue"; import PhCompPosition from "@comp/pageHome/ph-comp-position.vue"; import PhCompSign from "@comp/pageHome/ph-comp-sign.vue"; @@ -129,9 +130,10 @@ onMounted(async () => { await showLoading.start("正在加载首页小部件"); games.value = gameList.value.map((i) => ({ icon: i.app_icon, title: i.name, gid: i.id })); showItems.value = homeStore.getShowItems(); - showItemsAll.value = ["游戏签到", "素材日历", "限时祈愿", "近期活动"]; + showItemsAll.value = ["游戏签到", "实时便笺", "素材日历", "限时祈愿", "近期活动"]; } else { showItems.value = homeStore.getShowItems().filter((i) => i !== "游戏签到"); + showItemsAll.value = ["实时便笺", "素材日历", "限时祈愿", "近期活动"]; } oldItems.value = showItems.value; await loadComp(); @@ -157,6 +159,13 @@ async function loadComp(): Promise { showSnackbar.warn("未登录不可设置游戏签到组件"); } break; + case "实时便笺": + if (isLogin.value) { + temp.push(PhCompDailyNote); + } else { + showSnackbar.warn("未登录不可设置实时便笺组件"); + } + break; case "限时祈愿": temp.push(PhCompPool); break; @@ -191,6 +200,8 @@ function getName(name: string): string | undefined { switch (name) { case "ph-comp-sign": return "游戏签到"; + case "ph-comp-daily-note": + return "实时便笺"; case "ph-comp-pool": return "限时祈愿"; case "ph-comp-position": diff --git a/src/store/modules/home.ts b/src/store/modules/home.ts index b93d64f8..029778a5 100644 --- a/src/store/modules/home.ts +++ b/src/store/modules/home.ts @@ -1,6 +1,6 @@ /** * 首页组件状态 - * @since Beta v0.9.0 + * @since Beta v0.10.0 */ import { defineStore } from "pinia"; @@ -10,10 +10,11 @@ import { ref } from "vue"; * 默认展示项 */ const defaultHomeShow: Array = [ - { show: false, order: 4, label: "游戏签到" }, { show: true, order: 1, label: "限时祈愿" }, { show: true, order: 2, label: "近期活动" }, { show: true, order: 3, label: "素材日历" }, + { show: false, order: 4, label: "游戏签到" }, + { show: true, order: 5, label: "实时便笺" }, ]; const useHomeStore = defineStore("home", () => { diff --git a/src/types/Game/DailyNote.d.ts b/src/types/Game/DailyNote.d.ts index 79939727..82f9bfa4 100644 --- a/src/types/Game/DailyNote.d.ts +++ b/src/types/Game/DailyNote.d.ts @@ -128,13 +128,8 @@ declare namespace TGApp.Game.DailyNote { * @since Beta v0.10.0 */ type DailyTaskReward = { - /** - * 状态 - * @todo 枚举 - * @example - * - TaskRewardStatusUnfinished - */ - status: string; + /** 状态 */ + status: TaskRewardStatusEnum; }; /** @@ -142,13 +137,8 @@ declare namespace TGApp.Game.DailyNote { * @since Beta v0.10.0 */ type AttendanceReward = { - /** - * 状态 - * @todo 枚举 - * @example - * - AttendanceRewardStatusTakenAward - */ - status: string; + /** 状态 */ + status: AttendanceRewardStatusEnum; /** * 进度 * @remarks 2000 点满 @@ -174,5 +164,97 @@ declare namespace TGApp.Game.DailyNote { }; /** 任务 */ - type ArchonQuest = unknown; + type ArchonQuest = { + /** + * 章节数 + * @example 第二章 第三幕 + */ + chapter_num: string; + /** + * 章节标题 + * @example 千手百眼,天下人间 + */ + chapter_title: string; + /** + * 章节类型 + * @todo 枚举 + * @example 1 + */ + chapter_type: number; + /** 任务ID */ + id: number; + /** + * 任务状态 + * @todo 枚举 + * @example + * - StatusNotOpen + */ + status: string; + }; + + /** + * 探索派遣状态 + * @since Beta v0.10.0 + * @todo 待确认 + */ + const ExpeditionStatus = { + ONGOING: "Ongoing", + FINISHED: "Finished", + }; + + /** + * 探索派遣状态类型 + * @since Beta v0.10.0 + */ + type ExpeditionStatusEnum = (typeof ExpeditionStatus)[keyof typeof ExpeditionStatus]; + + /** + * 任务奖励状态 + * @since Beta v0.10.0 + * @todo 待确认 + */ + const TaskRewardStatus = { + UNFINISHED: "TaskRewardStatusUnfinished", + FINISHED: "TaskRewardStatusFinished", + RECEIVED: "TaskRewardStatusReceived", + }; + + /** + * 任务奖励状态类型 + * @since Beta v0.10.0 + */ + type TaskRewardStatusEnum = (typeof TaskRewardStatus)[keyof typeof TaskRewardStatus]; + + /** + * 历练点奖励状态 + * @since Beta v0.10.0 + * @todo 待确认 + */ + const AttendanceRewardStatus = { + UNFINISHED: "AttendanceRewardStatusUnfinished", + TAKEN: "AttendanceRewardStatusTakenAward", + }; + + /** + * 历练点奖励状态类型 + * @since Beta v0.10.0 + */ + type AttendanceRewardStatusEnum = + (typeof AttendanceRewardStatus)[keyof typeof AttendanceRewardStatus]; + + /** + * 参量质变仪状态 + * @since Beta v0.10.0 + * @todo 待确认 + */ + const TransformerStatus = { + OBTAINED: "Obtained", + NOT_OBTAINED: "NotObtained", + }; + + /** + * 参量质变仪状态类型 + * @since Beta v0.10.0 + */ + type TransformerStatusEnum = (typeof TransformerStatus)[keyof typeof TransformerStatus]; }