From 7bcace0410a57a5ccdd7f361ffe90daa431d8006 Mon Sep 17 00:00:00 2001 From: stu2not Date: Wed, 16 Sep 2026 14:14:56 +0800 Subject: [PATCH] fix(mini): address UI feedback and device status display Correct battery colors, participant artwork, navigation icons, title layout, and map spacing. Animate the binding countdown using the existing expiry, recover polling after transient failures, and show online and battery data on success. Keep current firmware messaging consistent with version availability. Validation: WeChat mini-program build, 16 UI tests, and isolated developer-tool scenarios passed. Five pre-existing TypeScript errors remain; physical-device validation is pending. --- .../src/assets/tab-icons/chat-icon.png | Bin 5629 -> 7559 bytes .../src/assets/tab-icons/chat-selected.png | Bin 6333 -> 8327 bytes .../src/assets/tab-icons/device-icon.png | Bin 3850 -> 3991 bytes .../src/assets/tab-icons/device-selected.png | Bin 4104 -> 4326 bytes .../src/assets/tab-icons/location-icon.png | Bin 4893 -> 4402 bytes .../assets/tab-icons/location-selected.png | Bin 5403 -> 4870 bytes .../src/assets/tab-icons/manage-icon.png | Bin 4817 -> 4700 bytes .../src/assets/tab-icons/manage-selected.png | Bin 5283 -> 5214 bytes banban-mini/src/assets/ui/avatar-parent.png | Bin 0 -> 40503 bytes banban-mini/src/assets/ui/heading-chat.png | Bin 0 -> 8912 bytes .../src/assets/ui/heading-location.png | Bin 0 -> 17985 bytes banban-mini/src/assets/ui/heading-manage.png | Bin 0 -> 18582 bytes .../components/firmware-progress/index.tsx | 14 ++-- .../firmware-progress/view-model.ts | 25 +++--- .../src/components/page-title/index.tsx | 13 +++ banban-mini/src/pages/bind/index.scss | 25 +++++- banban-mini/src/pages/bind/index.tsx | 77 ++++++++++++++++-- banban-mini/src/pages/chat/index.tsx | 3 +- banban-mini/src/pages/device/index.scss | 5 ++ banban-mini/src/pages/device/index.tsx | 29 +++---- banban-mini/src/pages/location/index.scss | 4 +- banban-mini/src/pages/location/index.tsx | 3 +- banban-mini/src/pages/sleep/index.tsx | 46 +++-------- banban-mini/src/styles/ui-theme.scss | 46 ++++++++--- banban-mini/src/utils/artwork.ts | 7 +- banban-mini/src/utils/battery.ts | 15 ++++ banban-mini/src/utils/firmware-status.ts | 26 ++++++ banban-mini/src/utils/page-style.ts | 19 ++++- banban-mini/tests/firmware-progress.test.cjs | 66 ++++++++++++++- 29 files changed, 321 insertions(+), 102 deletions(-) create mode 100644 banban-mini/src/assets/ui/avatar-parent.png create mode 100644 banban-mini/src/assets/ui/heading-chat.png create mode 100644 banban-mini/src/assets/ui/heading-location.png create mode 100644 banban-mini/src/assets/ui/heading-manage.png create mode 100644 banban-mini/src/components/page-title/index.tsx create mode 100644 banban-mini/src/utils/battery.ts create mode 100644 banban-mini/src/utils/firmware-status.ts diff --git a/banban-mini/src/assets/tab-icons/chat-icon.png b/banban-mini/src/assets/tab-icons/chat-icon.png index 78e23cbbe926d8f2430bb5361cab8b083a4327fc..cd6b4db96bb386364b4f478683bb2e839a93c900 100644 GIT binary patch literal 7559 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 diff --git a/banban-mini/src/assets/tab-icons/chat-selected.png b/banban-mini/src/assets/tab-icons/chat-selected.png index 64a1a600fe86719833a395b5ddcd725ff51054e4..c0e84165ba316df72de21afa457647a1cb844b43 100644 GIT binary patch literal 8327 zcmcIqWmg?N~*te=sTq#Bfhs=cI6oF4Axm)MjWPglJxLh z;rpT^XQ`wF!}u;E!@!2yzySU;c_-p`f`Nf6fcw85XaW5H$tnL0LO71YU|=X-CSV;U`|SM!&#Mrzt-YNjM}jUw4(N-;P}Su8>)973n{-*D~G=IY!#;_aNm-X;#; z7W&LAzj}GKy}2mef7aH7cicjD1n|L;!p6bK1kn7(-uQo4d8x2=%6vSVNhHCdydQ~N zIZfs!wj2<(ZcyvZbV4+X$+cplVS0(ds_d_!U{zJDkPvBbhBWGCmWLAwb}}H*Df7A2 z9?M^bZ5u2Ym63c%I4BVEkVpD zvrTL1qkm}7z0;tQUZ5<9A1$k-=J`PoSoBdCNfmBb8nePG^Pn<(R>Ig+dl2Vi-B1-#A17hx*U2 zftQO2N7c|uN-nO?tBA>a==lVtgaBAA?S+dLxGJV96LzAW0^R`A5t!&`g@SD3fKY^7 zkI77N#Lyp<=J$US{7-NbGW-Kt@DVde@empM^|C(TwW++})aLu*{~4JDR-9PL*c4G} zk-$%LOcz8>2hi!ks}VObFnq*2E1<f1S^0rTMbfAT_?qhK-wePR=x=tk?fAG;TDvn=hL??Ws?vYf;FiLG z+K!3_mpmUaYwzQAQ%{?<{>Ii)BU%1Bce^|mEPtj@^E%nGjLNyKxMUOF}a-}?cB?af{9MXCo9f- z4M&eOV+ex!jK*_Uxv7?FppE3I5g}0B-5Zmc#IEXu#!SQHUZyKFtNjVS%n(6QYGOrp zWn~Jv#^D7EofE;i`I{&W6IqlyzPSS~iy)zF%NfqFNUj3 z{F|4ZAs87e^RG*;54OPC14#`$BoZ2Qs?I4j^5JYk*& z_wNAqJSQO(u*CD+1|4wQG}~HiqcvVcqoS|lWj5~FWz=QmJj-6{zb<!~^E z;oVOEf|iRiYj^ecv45>Cp(>$IXw?woT#ar1w#r|@OIyp95Ad3LD~DcO@m6PTCB*6- z=Bdky|0Gd96ANJOWi#$TE0!>i;*E$=39lTAdwOx7F2gREZ^^@+a7xJ|0wLXPI>w^L z;fUAn-@Dz5ng7)saG=qY#3S{%@$7CcU%`W$ySPg3y*<*#*9YhD5HLE3ZtzOyMd4re z;a)qVs(LpQSWW|Tq{OHSf9&}YH!_jmjWr*nhw}JiHHkiTu&X|m@sF8_lGUKxX{A2I z2nI@R!tDg0X|fsqLgRh3XPD1GQ%61Xm^)uCUdLa2MwughgRr~ohP+Set}lU+cTab` zg&;7l30k+#08d%Sq7dF=OWS0nQ{|s#_Dxl97LEUz3n~VlwzX%04cE^vHH43(ofT;0m%;3?2f)L zN4CWMix|~7_U-2m1vfo)Pf{y4(c)RbKCi7Rz&@q(%%Ai365`?;zp>GXBP{uId`JQ} zdrW@?j3SuE+F=_%Zlq6lA4H3+iv;_USdPt1^Trol{17iVI)G&rN=tY+!S=k?B3-Wg z=evBhhgq=QfBo(7s!;DC7RK;-WIGB7k00hI-~s{ednEZF>lxwcBbQi}MwWe+SBuOt z@+WRne(5g{9cBak*wj`52H!exA;Cm5P}4v-J@8u{&JL$$9fRe*^q zsL-bMH`N2aOE}y`6MW!QBK&GnR%F~8hch%XF~&PHr1t)nO&9^*weBeg>!BLP_3cus z5P@t{N0Q2l>0BsmUFfoUHfO&aS#=|A#*p@8X1mwSl`YACK~RKNQUnBsZ|cUb?RaG2 zNjQLMIlnVcNW$t7nQHZm1yA3JGcdAP%m)%s&}gTQ~Q6Xk}IsRvyzf5$aRge=^P@t0g{L>$lZ89a`c-TbEogp|z zs8z@bAg!}`QcGez!RE&$6vPKMoyz9`-6@)eg-DTPvgAnSSxV z^IqBmxm=j_vd9Ckr~K1gM~j8>u?hw%j5b%}Ux8_aR+*{v=;)!@TX;IiPymyZy!?c$ zsg{phJ$j}8Kef6$aU(*?s66MhrS8Gh$|a7$;rw#6b;%q!+`x?ulOKE?6gc<>7c%-& zzf04*_qeI9+F<^?-k@ZVoLMwuL}9g^oA4)ua+m*>3Wy0|nwHJb>NinyxV0tXx*jsZ zrmh33ZriTo5gvUB6gSZm=wt#y!4H9-BBJ7wa`iY43Lawp6EFYv zT)bN|E>@4sIK~j`xq+7``pNM3Js(BkDpm0luo@yr*@aDAjyPavrZ7xzpbI*#yJBmZ zKOD=1k)fl+`oOCUxw@A#e!BHk#ds9eg^KhHH+#7Xxu`qk+G>U=+iPmo4rh`C+wK$w z`wf@3FD-tko{9mFlW#2$zpYC*Nc~ZL;L=lO?ftvue79X&{(zRv$=AdP3P->R zI6#YJd^}O6m^L;?&>Z9;88B?7B|mpsW`@}xNwdKSX#Bo(EiMsz-gZRL=(EZSp7li! zGWAn;Gtau;)SCaK!`FubNK&K1CuTMN;#*y_9BEKveB=h3bx>)Q1|E@%%FN*8hjXI@ zcS(#?T$KurAgmg4;QhBwXY6<-eL)>2eOy2lwyIvQ^U))|_PYG|)C=6)IyIArOAKOf z->#RpuK45zGG7FYQgx%XTf`}3ME)3g>J+YozKu9lLV0#e{HiGPYB36mbbPGT;(Tx}d-@6C#az*#G*o>*i#SPuUp+ z6YA`4m(GQkhe84yRnbFT3bm<*++D3Qf)Q`jtgsh;H>hq3X;WbZYO($o(3TCkTdkS_ z)^G~)I{+zMqZ}SyIJnxwZ5Cj>2~vsLV~Jx~4x<%ov+L>AOb2r$uXlb$B& z^hK0Kl{D&~K8e>6z5zty) zwHa^ir-b&&`+1B%PbckvboTFM5X@<|*+qD$YSWZZUj-DjkFz(tw9mbGI)71+RRspw z=`VQZEf%U_L~Gp$5Uham^oP`$VS!gO7k2gMgKZZXSjC8tANpKm_8u$Ci+GTvdjpjFL;uL&& zfn#db5NZKp*^-jRVBdF&Z5MwJ7hw$lDe-GyfcBtmzD9?(x8Om(YRgk4CnGm6v@6eV zKws^A&Z|l3vZIq;XSwb$(nd$OYw36;JO1ZkN*?F|u{G=6!4RR)l#Xe5HJUu4)b`J+ zFhlJ0c2|!LrZZTR#M978dHD1~ z{PaWniy9VF4v47`{=Y*CJP$_&H4A^rYyZF%V#bXDwBBNlT{U4Fqn>cLh!Cz|R@#r- z-lSUjQj!jXZj)R1F^mazw|wqN(3#D4p%w&bFu|uOYi^1;;iGrhbThDUz|q2#%%W6D zR_~)kVz!D{tL5YqY7FnVC9~inK0SNMVWAmlK~@{t#)%OGW!!Dp=7r^IMeYvt#Ae8y(@DJF$dFsS}Ch z`Fl<|r6C{ha&VMBctoKg(p+m5CVpqKvlK_luqW#cwcRlxzO1p!igqf8!6SWft1RBL?Ngj+XoW;qcNk8MI zUo`_ZxxK4->fVrFi#_lyzytxRWL?tAf^tB_9$2TOX^6=Uo#Y2BNdb2EuGZzL;t-sl z5W=>*3Ok0oIC{aK!M?>GcIer{!g;VtG1gnI9*#sh6ur(m*y<53&90G0?om}Td$RM@ zf(OMS1caqoxrJ3V$vnV5@reS38%7?~N~Q^MfT^K`BRM@LlJsz+lAn zqQv0{bDmz}r!V~{lCWMf{IGe2YkhePlG;barq;i^GQDZyuIsp4f_qE?gn6_$REAt# zboep|1r+gNBdG*o2zK-!_p_$F(m^F+V^Ol-N`TM=vVzY6F4l)&3HMUD$@}xo=e2RJ zl`9$n*XZj^h3~%?VxDBPH3<5FEu)V=+_gbE4m7~8y)kk!4u4Td-QvurD&l*oK@hB; zy_R%@5*a{m5K~HWI{J-evsAHVvrF?#)@1S~T~*7c+;Tg6zqpA_Bcn%Fu15%+Pzvsr zX@B|{o*7pfLjCxwrMeftTxisH7jA5VYEy3u1E6Go$%4Tupw&lwidsZv}zD^(j}Z+qXz3L9h4Dm?A*kfMhreab#&3G=U^3El)gt zHRwfd^N<8t0*fY!t2Wh~CDS!{D*EwTXt-T|Bb${9f_!biJHsQST^UC5)a%uf)i`g^ z#R$idy}-?-tI$aLF`1edE^*(Ol+jhQPqaLk0fCE9{%g6Uq&G5@s9{ght7iIX^eizo za$r4?%s4diI|r(y zqWW<*_N`m>IluSb*m$FpN6XKqWKX5}SENiIZFXU5Fn=nASz1%gVV1tHRLZ!Hcqws% z<4q2Fvq*PObpUsn*EYqtMcn$zQdP#&z|SVIvor}c{pdg!g&Sv#kS+mMT!u))dFgoR zTKH}UAzpP*4m>8v_+aNlJhH0#W+7!7K?rdm6KQJ-yK3VpFwtuO(Ub<7#9L}HUYOFr z;ztDhIFY(27t;5<+VLaPKpd$P)r#%Y>Am98bjgmOLvBb}nB{wE2R2L8>)gG3V_fi0 z5kfGC%$X!ExlrvcJvK9(pVJaZpRy|~Ja%q7fza%>*TQo;i&~D&VS;@tlDN#=g0_C( zXa9!yNwe}GZ)l_Uaw-#Jp=D5yWy4b#>If}l5&=mR$el-wchc-9k@KcuLgV&M2y=~B;1g>PD&wB2>^>?s%r z|8r#1A6NTGk^(#tTg?%Kz%Xji3*VUXbO`B5tgH>VQ)jFGBpZwZnjy*z37=VH5|V$w z&JR(S!)@{-L%~E*+d@APu9x|q@*`ZS*Veq@UX3!Xr@ne$``0`+kLOHtiwis3i0Bn^ ze+mA|C8N2KJ>jf5oMh?J%cegdO#}B~T)W$y+`z7(s$|n#2~txm)oe5uTykd$FNQgR ze4>`IF2i7Ajf$jZZJW;L!s&}w`JK$e0Pn*vIgaQknWL~3e-pru&o`X@g*$9zOFy zYOyHk%>oK+C4w2~q=lk9`UI?LYi8uG|6WM#7o2G;oAtuZUt3@_gG!tFLpP=6){Y

&%zUoU;~Rzh&u6^h7Qe-;+Ao-=bC$ z{)s;V&Hv%pEF3Df_)?UnY$ABUtRx5GQ@9;*)(W*+@y!pPn-Mg)2vKy`T=Rk;eZnuk zau!7wxa}0hFY_W+WR7Ne=#4>(hm&e9$-IlzV^&oaC0G)4F*7`tCr58O2=?C@WQZ~I zO^23ddF*^m3}VXAn4<(?=lhj-QVWWHS4BhDfX$p@Po><|O8Snin;1Yje zeT=t{Q6nWbTH%8%PvJ8|(<|Y669qFJTSe{<`_=E6LD9{)NP>Se+5x5p|3K!r)54@x&a1 ze76W}#l)k`4HIP3Mn=lF@}5@`c5eG8Z;ty7WAMXJ*Ez=~)lLT;cr(kQp@@4(lm*R@ z-}Dxgq|alccOZjFP3-GgWL_jG$Vt2mjSmR~MB^bbKC1~3`}A`FBDgfU4)-ovg8ryq zC5OO(f^_Ur8^?TZQV7$lit+{RBs3L&_1q-s&|Lodcmf^E<)W;5@cP zlACsPB9?j8^`6Aqvh&WNFtHj`n!T5nE%v{F{^niVQGy#tCktsKXG5a$hZij(Vx|Hz zZr~!u7y|(})^TI2hd)o}tWYhFO^IB$d#PCs?R7HXitP!s9JxFGd=X}(jyb+0kj0hB zWk%qMlw%8NZpoKwYF)hvj^V4a7v0dP8d<9BuFEN3blrE{%Kq{sZ8{+@av{Y&uA+yR z&fKKAsrFA}{aMO7Ajr=;3H7;F_|Y(sB`+ixiHlk2_C|v8Hm>xWYy_i26&5{+Y@Ej= zdA5;-`-iK(lqMu)7<0dwtrIO0K{LB8)^jyQ1_+^#ANkaBV*XuFh!H*$J6F&Uo(yOd zo5x%(x*F|RIhYqtEA;vG6jQkMFf{zAwPGFPvlsz)_ay}S`n0cGE@=dOq*q&o&0^ZJ zh=i$uKo_AH$u!o1wP4S1QMfPhKD?C6THwz~w>fOxS1C~EJ^Xo4qRjTq>hrgPdbM%B z?@`+JlepVNV|DG`fH1H2kr;48Ql>XWK$MCo1^X$Z3FD~OmbTH8cj42VLbV1#M@R`k zc1k(;CWdSJb$n}wPPpLKXZZD-i#4hJhJ(#(ntpid;~v?o!ii@Wp{gBY0ppn0-KoEa zmbKsZ2cN1>q$5Oxk|qg~-^D0N1h1we<028Gg3ESZMu&ULbv`oeP#5S!BYD2zEjeR^ z+x+}_kZN06&QS-j;g?%!K3$`Ss})8t2%Vtlu<`HMu2#L@(l)gr{@cI{E@35%)l*C8 zX90ddS)MTF3z69nVO81!9XqIlG>}1!eDpL*QA5&V=pbmxFR2!kmzkskksftXK{(i@ zqSL22&UfI9@_(VAtUq9Dqly>Ip~B-%;|OQDYOcwvVT8b~QnlfARR}p@%fWZkMrwM6 z@5|l%{-If72LIe~!qvPW>KKF09}~9b2=D=-5)4OJo_;fF;?gxmwn7g`y4UGW%@}3J zHcc(>?{jdG_bX4qiYi!pZH{QXtp;N zlv(tn^_gcqu+FoyACY>b=8h6ARYV2jr0Zr)B>NU_YwV>V4946?rhjBjo4;Xw#q6DP z!oneL&PzC%5bvcC!!PSruxq5n^~ctASVKmTMuu?qoj)XV=q1jtD#OV)~; G1pN=fWvcW5 literal 6333 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 diff --git a/banban-mini/src/assets/tab-icons/device-icon.png b/banban-mini/src/assets/tab-icons/device-icon.png index 9dbbd0e3553bbe7cff9ed239c30ee118a8beafa5..2c96ff063608d2283a43caad08fe339932e66fef 100644 GIT binary patch literal 3991 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 GC;bO5xLr~J literal 3850 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 ZqXl<3Dq@50sQ&zI)X~&Omup;${XYg1_xS(- diff --git a/banban-mini/src/assets/tab-icons/device-selected.png b/banban-mini/src/assets/tab-icons/device-selected.png index da0b495db280ac9f8568777265adde6a289da94d..752546ccd163a7bf24c8c9cd17a287057839a7fd 100644 GIT binary patch literal 4326 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 literal 4104 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 diff --git a/banban-mini/src/assets/tab-icons/location-icon.png b/banban-mini/src/assets/tab-icons/location-icon.png index 8d4a559ce66e5abdcb12d47ad95ad03c4dd8d40e..ab03c21b2079963fd888aa8cc8c14c7879f10a04 100644 GIT binary patch literal 4402 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 literal 4893 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 VPg=g3nf>2A3aYBBQuWL(>OV?`ES~@X literal 5403 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%0DU!s)zTIx* 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 TW_xe`r}Js5>8jQ#+eZFBWAnai literal 5283 zcmZWtcR1Wzx1P~^3n55M7`>MWGCDyJM6aVWIx`qXCrF|W(Ypvi^xh?U2+>;*B}zu` zqFg!WyXQO4y}##KzxD3*zH6<$_FwziuQZ=4krL4p0RR9}6=j7Nw_fwsvLGEjgy z+ql4Qdq@e2h(i9-|3Bux9siYS`0q@ye`o%S`A;T<|IYyb8tCuS`YU>STv9|3{(p{M ziin>5_c8!L^+-iQRtE{(HX$_7(NB^pFD}9@F3QWHh%*(XjB40jrrJzVoAsJ?V(S50 z3FU8ksr7<|CC{na!7E)g`){^u&Mj-^V%WA_qVkq&RH<1dBI#t}{0nmo9P&?m;XB-~ zSTz+}i#;M2d)H7c+Y9jFt6lN+EYyxat^oQe1)Z!pPB10TUjRvw6J9urs{N@q8ZvXa z%&D8)zHD#I&{?D%JYkMgG7*$o+VNSM;Zd?WOJMZf}-yJQw1@2WBq;~j0 z$>1nMA>ZcP3G-UI;5tL#-qNTSfZivcBgYrjX*nr(Sj#eEfXM$31(h<`9>_;gB0hqKk=a-hOTS|bL-O#a;{GGy#)~To;&C4Xv2|#NrqDJdu zhOKCN@UolMblm+!v7hEaU=E2LE$4kSF%}S-`ibUd-;!=UN)D1eP%dYVa6QG>)vgh!)#mA zR6A(#+r(z;bUp_Awc+CZWV+GsyF*v?(YO&wiT9@)+6%-q25Ip^o*Mo}YmHSJ(3Lj8 z1D`MMgeRhN`?AXmUUt$>+Immj4b0b_9B>K>1;(TX%K;--s?+icA#HvMZn{5c6F5}^ zjc9zHcyMd@9i;SQ8ddT~S}8e~n_;zJkA5bN)Qd5QvAU|Zar^b&$)@zjQSb5B+kNCC zB74{k6#L50O+V#Lv}=N&f7pP2okI#-;}dOVOWK2*C*P6yzfIZ zzIct)fLq*FuG3na%YR91bsd=oaEMUamfW9xtOLe(A#XXhkrSEtMr*U0EJDryqUhvgag1BTB~W|HsLh~oOvptmP)OuiUXYS3 zvgdN3sIereD=Hm2Ax%DqDhFO#oc29==Eh`vvIHMRno*7{Zyt*A5? zRlmb;8w<~0G^Yhh(nixJ$b*!!{09>_&Qa`ysBCPnOO|S)n7OCEa%KGF&h^+4d8vj> z?lqDsB$4)atn4IBGfxHsB{_47gfs?7lOk$KF{Lf&FSWY}AQ8{!vJuN#RLqB5m3VIR<%^u^CM~vh$_k7lC)q=ZiJmLi4b%jm zsQ9DrNv~HbF>^>dVtErIZ6IshpPq7b|8fm=rk3EC5i|!#bh5-gKf)k437+!%z50+ zt3p)ffV_%!IS0GVvfoVz=K(L6p4@S%{bv5H#&$vcaDt1c1(!TKL4yl2pxI(HrAfUz zR2rt7DMOE^eX}W?(&E6~w^B_3!D!IS`(cwkApjF8r!*7&ymFBS4+hW|+*JzfdF~qn zOg(`$CywZP9zT9|Uvl6OT?Vh(k|W6)sABbg@p{-F8&6lhLWaJrd4DUIj$4(+Hc$8k zu9|V{eQM6?_$N_>zC?IEXUgFBN7L+@0T&u{gv`%YeS{-I zeyZ;@ECt0TpI0xUzoaoRz$hm?+(L$I{qw7vD0C(i%^x#ZTIWC281t$NQuz+N8?`15 zp-Z;Ln^X(>#5(w)-09_pit7DQQGw*&>|(L3EL+FY?Z9Jw@_Y&6`Ssn?q@E%#02Cm5 zpd1$#gO@)s8Foap%x)d}bgVVm@loP?{>72!TDfTfium(QPChmZb=^Z#F`1j&_U0Lc zqwp@6s4-8>BNN+)eKz|*nq$d|m7+9(Q^S;_PfUB1_ncc1x|&qcTY3$9{bNDj>`am^ z9lr|VglC%fdhJ*6V&zh73(^iYw1CiIqgC%7S0lq1cL3WpoAIddBdxe@0GOQ`*53%r{TT#4d?p4wP>vIUqS2M}>j z3oOO)t4j$;`kX?GN*M`=}ts3!Gc{>R>#xF z(gtCOdd0-NuNGN@x;BpjJ?LBl$5`_V+wa87T^^dfbdQwFx^%>Q#clm9VW{95!)O8; zjdy-O4 z`S3kH{W!?|c!Ux_JhnhxeUpaRw`Y=XB@rosEQ=<6&$85xF?tJqMaK@{ulzbDH#5tpq!2rZB#RU~fOHHrM#7=Wix z)%StQr|X5TKj(&Sw4b|Xj>+72AX`4rUm*EPAP1Z9Gb8{sXmW@vF>zRN2M?pkplQ2= zZOy>iu)4w4klB2{fu}Gz3_o555F$h9CP0xpb?OzV#5zq)n405KKF3appFA+i#QiGs zV)Z!KbMdC@QPAl+cE>iXfGGrI3boTsOk<{5EJ}tEk|KcIv8(YPVqF; zuB8r}W#rCGa3A6>ZSnAK$TBvQ(2FkH-0UD)u=cb(`uz?eQ8c&qJN0@)`@^h_j`0OQ zcfStInt2fMc-)RE6C?|JTL07L{FuRItRiZ1ch{+C3H?euT_Fh=LR}emjKQafZ=`s` z%w3b-8lr~3-{~;gnJIijN>k`9;K=TDrOW4{fbOwPYT=X?uiUE*PM4ag30}3C+6owN z*25H~<#G0j*68-+(`=qjUhx7M>$l_%hlI^HV2XEgJ2r^$UiCv#Nd&IQnkNVbs)#j@ zj(2mf2Q2Vh>y{`tiK$f|!uF-Jk*Jxl{2lQl3~#d@xm@+ZayHaOsve$PTnqGf9d@>0 z;w8?yX^}`6}F~9)9CvO-)3V~$pH)s2hngxm8ng~I{L5@v2 zi+&l!pQC1>5jy7$6a`a=Bqto%0{$HFWSd3H!cld4iJHr^r1d8Z{db|+r9hTe97d`v z_6Y1!0G`RutcVgf9y~5~(ZD7VLwBwZE?>;z>$l%5*Zn@#ze#+x_Hv2}xfBTd&}QDd zUp5LC9lU)IeE*>j0iG;-aP-}4`Cl|Lz&Jxysy*3N z>~cM92-mm*L+vZ^DoS$2@|(A|q)d%T7gtDswz-`J4H&r%YA2aRa`az8>b2Crw0;bK z6g03rwp-)^r9#IVJop)wYg#dl88JgJ&m)}I<8o2@&Nif=?zLFk5W+GJDeGaMNB~X8 ztAixxNx(tF<=ecych4U5Y6wcYil54h0|U4}#dilVF~*O` z$B5vWhZekuD;VTaMmY_=c#?eBCy^~ChTnyUYD8E$?otHe0KD=k(IDREB6W#bhd%F z$I-n0g2(mO==bWW^|67zRpNors5JMzU44P42QLcKmhH;@9{SE!g+7?tWMgq;KuYtz zer{al0v{}0zvks3^Jbi{l~<5EYhV)RvdWTl@BC5@UMoe---F1pWaJ?ZRyo%g>)`en zk2ldfq)}>D9k)b69*#7d)cIFtMcva zS+{Qm#N%l2F&Vwdw=%KA-qS?IMh4%vy0TqA$cIhFQ_$-EM)`8!+9kduQK#| z`f|*D?ZEBk+Nu;1_-d86G*JOZz47N~ZF2|8#y`9tql~yDv#IiQI7e-dqfq&74Q`^wicOmDH@vVhUkQdTE`pGcRMz`jv8kRXEX7GN=3JQrFtwg+~=w z9Pf(gJsoYbG(ktDkF0T$!h@Q2dcP;ECC*mMk&8}MU@51G`YxkEWY;IadyV}U1lJ61 zN4!A^5XQE?EV17+3;4uu*2j0f6CwQT^%?m+L+9yDxo7%Vrueag&nYDFPY$4CvnTh8lb#}2_l?EpRfjO0 z3Rj@!-NrMO5M@S^voR)KM5LdR&NvtWb$jsm|2%Hs0GTK|hEl$ekC=31*D}0D7oLab z9m0KfX{9xF{cS9auiLh_9z+X?2zfbf-Em!br||IjYjoF4*v7%h+iXHixcK~tU_CYA z2Wao0-zL{n>eY+1MZJUl-Ct$d%GE}tu=k?fka=-KA7lApItD*} zKOOWbEJaqg-Dtw-)z|$Akr>|#ZM@cVcO3APzGhU~Pn~AjYSpor_OONgE~xx&PjrfJ z1zoL-@nFpEh8sTac`6`^Mb7P0*WByXnG*kx$%!}8Rl@YLU+&cK{CUq)QGBjYCTAY< EKjDqXaR2}S diff --git a/banban-mini/src/assets/ui/avatar-parent.png b/banban-mini/src/assets/ui/avatar-parent.png new file mode 100644 index 0000000000000000000000000000000000000000..df07e6078951d281e15ccedfb3e6a7bf0895ee1d GIT binary patch literal 40503 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 HqoDr)nM}(& literal 0 HcmV?d00001 diff --git a/banban-mini/src/assets/ui/heading-location.png b/banban-mini/src/assets/ui/heading-location.png new file mode 100644 index 0000000000000000000000000000000000000000..9186c72edf7041ca0b0ec8daf9628786add0d6f2 GIT binary patch literal 17985 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 bcI+r5fSRr~d7|5X@PW>pKIhhWG8F$`?eljL literal 0 HcmV?d00001 diff --git a/banban-mini/src/components/firmware-progress/index.tsx b/banban-mini/src/components/firmware-progress/index.tsx index 3b3b9e7..9bdd48d 100644 --- a/banban-mini/src/components/firmware-progress/index.tsx +++ b/banban-mini/src/components/firmware-progress/index.tsx @@ -16,20 +16,20 @@ export default function FirmwareProgress({ status, refreshError, onClose, onRetr {view.title} - {view.version && 本次更新版本 {view.version}} + {view.version && {view.current ? '当前版本' : '本次更新版本'} {view.version}} {view.message} - + {!view.current && - - + } + {!view.current && {refreshError ? '上次更新进度' : '更新进度'} {view.hasProgress ? `${view.percent}%` : '等待设备上报'} - - {!view.complete && !view.failed && 处理中……} + } + {!view.complete && !view.failed && !view.current && 处理中……} {view.complete ? '完成' : '关闭'} {view.failed && onRetry && 重试} diff --git a/banban-mini/src/components/firmware-progress/view-model.ts b/banban-mini/src/components/firmware-progress/view-model.ts index 46f4510..576bb05 100644 --- a/banban-mini/src/components/firmware-progress/view-model.ts +++ b/banban-mini/src/components/firmware-progress/view-model.ts @@ -1,21 +1,24 @@ import type { DeviceFirmwareStatus } from '@/services/device' +import { isFirmwareCurrent, isFirmwareUpdateInProgress } from '../../utils/firmware-status' export function firmwareProgressView(status: DeviceFirmwareStatus | null, refreshError = false) { - const state = String(status?.update_status || '').toLowerCase() + const state = String(status?.update_status || '').trim().toLowerCase() const complete = state === 'success' || state === 'completed' - const failed = state === 'failed' + const current = !complete && !isFirmwareUpdateInProgress(state) && isFirmwareCurrent(status) + const failed = state === 'failed' && !current const value = Number(status?.progress) const progress = complete ? 100 : Number.isFinite(value) ? Math.max(0, Math.min(100, value)) : 0 const hasProgress = complete || progress > 0 const target = status?.target_version - const version = target && !['unknown', 'updating'].includes(target) ? target : status?.latest_version - const title = complete ? '固件更新完成' : failed ? '固件更新失败' : '固件更新中' + const version = current ? status?.current_version : target && !['unknown', 'updating'].includes(target) ? target : status?.latest_version + const title = complete ? '固件更新完成' : current ? '当前已是最新版本' : failed ? '固件更新失败' : '固件更新中' const message = complete ? '设备已完成更新,可以继续使用。' - : failed ? '更新未完成,请确认设备电量和网络后重试。' - : refreshError ? '暂时无法刷新进度,正在重试。你可以先关闭此窗口。' - : state === 'sent' ? '更新指令已发送,等待设备确认。' - : progress >= 100 ? '进度已达 100%,等待设备确认更新结果。' - : hasProgress ? '请保持设备电量充足,并连接网络。' - : '设备正在处理更新,等待进度上报。' - return { title, message, version, progress, percent: Math.floor(progress), hasProgress, complete, failed } + : current ? '当前设备已运行最新版本,无需更新。' + : failed ? '更新未完成,请确认设备电量和网络后重试。' + : refreshError ? '暂时无法刷新进度,正在重试。你可以先关闭此窗口。' + : state === 'sent' ? '更新指令已发送,等待设备确认。' + : progress >= 100 ? '进度已达 100%,等待设备确认更新结果。' + : hasProgress ? '请保持设备电量充足,并连接网络。' + : '设备正在处理更新,等待进度上报。' + return { title, message, version, progress, percent: Math.floor(progress), hasProgress, complete, failed, current } } diff --git a/banban-mini/src/components/page-title/index.tsx b/banban-mini/src/components/page-title/index.tsx new file mode 100644 index 0000000..5824192 --- /dev/null +++ b/banban-mini/src/components/page-title/index.tsx @@ -0,0 +1,13 @@ +import { Image } from '@tarojs/components' + +const artwork = { + 玩伴: require('../../assets/ui/heading-chat.png'), + 设备定位: require('../../assets/ui/heading-location.png'), + 设备管理: require('../../assets/ui/heading-manage.png'), +} + +// Bundle the supplied design's lettering so headings do not depend on font loading. +export default function PageTitle({ title }: { title: keyof typeof artwork }) { + return +} diff --git a/banban-mini/src/pages/bind/index.scss b/banban-mini/src/pages/bind/index.scss index 0129003..916824b 100644 --- a/banban-mini/src/pages/bind/index.scss +++ b/banban-mini/src/pages/bind/index.scss @@ -388,7 +388,25 @@ .bind-result-title { display: block; color: #895731; font-size: 46px; font-weight: 700; line-height: 1.35; } .bind-result-art { display: block; width: 310px; height: 290px; margin: 12px auto 20px; } .bind-result-description { display: block; margin-top: 18px; color: #a68d74; font-size: 27px; line-height: 1.65; word-break: break-word; } -.bind-countdown-ring { width: 220px; height: 220px; border: 12px solid #f9d96c; border-top-color: #ffa24f; border-radius: 50%; margin: 44px auto; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #fffdf7; } +.bind-countdown-ring { + position: relative; + width: 244px; + height: 244px; + border-radius: 50%; + margin: 44px auto; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: #fffdf7; + box-shadow: inset 0 0 0 12px #f9d96c; +} +.bind-countdown-half { position: absolute; top: 0; width: 50%; height: 100%; overflow: hidden; pointer-events: none; } +.bind-countdown-half.right { right: 0; } +.bind-countdown-half.left { left: 0; } +.bind-countdown-arc { position: absolute; top: 0; width: 100%; height: 100%; box-sizing: border-box; border: 12px solid #ffa24f; transition: transform .8s linear; } +.bind-countdown-half.right .bind-countdown-arc { left: -100%; border-right: 0; border-radius: 122px 0 0 122px; transform-origin: 100% 50%; } +.bind-countdown-half.left .bind-countdown-arc { left: 100%; border-left: 0; border-radius: 0 122px 122px 0; transform-origin: 0 50%; } .bind-countdown-value { font-size: 62px; font-weight: 700; color: #ec913e; } .bind-countdown-label { margin-top: 12px; font-size: 22px; color: #aa8154; } .bind-instruction { padding: 28px; border: 2px solid #d2b48c; border-radius: 46px; background: #fffdf7; } @@ -398,3 +416,8 @@ .bind-result-button.primary { background: linear-gradient(#ffce8d, #efa05a); border: 2px solid #cf935a; color: #895731; } .bind-result-button.secondary { background: #fffdf7; border: 2px solid #cf935a; color: #ad8054; } .bind-result-button.waiting { background: linear-gradient(#eeede9, #c9c7c1); border: 2px solid #aaa69c; color: #777168; } +.bind-device-summary { margin-top: 32px; padding: 12px 28px; border: 2px solid #d2b48c; border-radius: 28px; background: #fffdf7; text-align: left; } +.bind-device-row { display: flex; align-items: center; justify-content: space-between; padding: 20px 0; color: #a68d74; font-size: 26px; } +.bind-device-row + .bind-device-row { border-top: 1px solid #eee3d5; } +.bind-device-value { color: #895731; font-weight: 600; } +.bind-device-value.online { color: #93b516; } diff --git a/banban-mini/src/pages/bind/index.tsx b/banban-mini/src/pages/bind/index.tsx index 6dec695..a0119b9 100644 --- a/banban-mini/src/pages/bind/index.tsx +++ b/banban-mini/src/pages/bind/index.tsx @@ -1,9 +1,11 @@ import { getPageStyle } from '@/utils/page-style' +import { formatBatteryDisplay } from '@/utils/battery' import { View, Text, Image, Input, Button } from '@tarojs/components' import { useEffect, useRef, useState } from 'react' import Taro, { useDidShow, useDidHide, useRouter } from '@tarojs/taro' import { getToken } from '@/services/auth' +import { DeviceOnlineStatus, DeviceStatus, getDeviceOnlineStatus, getDeviceStatus } from '@/services/device' import { getNFCBindSession, reportBindInitialLocation, @@ -179,11 +181,19 @@ export default function Bind() { const [bindResultDestination, setBindResultDestination] = useState('/pages/device/index') const [bindExpiresAt, setBindExpiresAt] = useState('') const [remainingBindSeconds, setRemainingBindSeconds] = useState(0) + const [totalBindSeconds, setTotalBindSeconds] = useState(0) + const [boundDeviceId, setBoundDeviceId] = useState('') + const [boundDeviceStatus, setBoundDeviceStatus] = useState(null) + const [boundDeviceOnline, setBoundDeviceOnline] = useState(null) + const [loadingBoundDevice, setLoadingBoundDevice] = useState(false) const pollingRef = useRef | null>(null) + const pollGenerationRef = useRef(0) + const pageVisibleRef = useRef(true) const countdownRef = useRef | null>(null) const appliedLaunchQrRef = useRef('') useDidShow(() => { + pageVisibleRef.current = true void loadPageData() if (bindStatus === SESSION_STATUS_PENDING && bindToken) { schedulePoll(bindToken) @@ -191,14 +201,32 @@ export default function Bind() { }) useDidHide(() => { + pageVisibleRef.current = false stopPolling() }) useEffect(() => () => { + pageVisibleRef.current = false stopPolling() stopCountdown() }, []) + useEffect(() => { + if (bindStatus !== SESSION_STATUS_COMPLETED || !boundDeviceId) return + let cancelled = false + setLoadingBoundDevice(true) + void Promise.all([ + getDeviceStatus(boundDeviceId).catch(() => null), + getDeviceOnlineStatus(boundDeviceId).catch(() => null), + ]).then(([status, online]) => { + if (cancelled) return + setBoundDeviceStatus(status) + setBoundDeviceOnline(online) + setLoadingBoundDevice(false) + }) + return () => { cancelled = true } + }, [bindStatus, boundDeviceId]) + const hasSelectedOrNewChild = selectedChildId !== null || Boolean(newChildName.trim()) const isPendingBinding = Boolean(pendingDeviceId) const isAddingCard = isCardMode && Boolean(deviceId.trim()) @@ -245,6 +273,7 @@ export default function Bind() { } const stopPolling = () => { + pollGenerationRef.current += 1 if (pollingRef.current) { clearTimeout(pollingRef.current) pollingRef.current = null @@ -260,8 +289,10 @@ export default function Bind() { const schedulePoll = (nextBindToken?: string) => { stopPolling() + if (!pageVisibleRef.current) return + const generation = pollGenerationRef.current pollingRef.current = setTimeout(() => { - void pollBindSession(nextBindToken) + void pollBindSession(nextBindToken, generation) }, 1500) } @@ -274,6 +305,10 @@ export default function Bind() { setBindHint('') setBindExpiresAt('') setRemainingBindSeconds(0) + setTotalBindSeconds(0) + setBoundDeviceId('') + setBoundDeviceStatus(null) + setBoundDeviceOnline(null) } const applyLaunchQrPayload = () => { @@ -336,12 +371,13 @@ export default function Bind() { return () => stopCountdown() }, [bindStatus, bindExpiresAt]) - const pollBindSession = async (nextBindToken?: string) => { + const pollBindSession = async (nextBindToken?: string, generation = pollGenerationRef.current) => { const activeBindToken = (nextBindToken || bindToken).trim() - if (!activeBindToken) return + if (!activeBindToken || !pageVisibleRef.current || generation !== pollGenerationRef.current) return try { const session = await getNFCBindSession(activeBindToken) + if (!pageVisibleRef.current || generation !== pollGenerationRef.current) return setBindStatus(session.status) setCardUUID(session.card_uuid || '') setBindExpiresAt(session.expires_at || '') @@ -360,6 +396,7 @@ export default function Bind() { stopCountdown() if (session.status === SESSION_STATUS_COMPLETED) { + setBoundDeviceId(session.device_id) setSelectedBindingDeviceId(session.device_id) if (!isAddingCard && session.child_id) { void uploadBindInitialLocation(session.device_id) @@ -391,8 +428,10 @@ export default function Bind() { return } } catch (error: any) { + if (!pageVisibleRef.current || generation !== pollGenerationRef.current) return console.error('[bind] poll bind session failed:', error) - setBindHint(error?.message || '查询绑定状态失败,请重试') + setBindHint('暂时无法查询绑定结果,正在重试,请稍候') + schedulePoll(activeBindToken) } } @@ -526,6 +565,7 @@ export default function Bind() { setBindStatus(session.status) setBindExpiresAt(session.expires_at) setRemainingBindSeconds(getRemainingBindSeconds(session.expires_at)) + setTotalBindSeconds(getRemainingBindSeconds(session.expires_at)) setBindHint('已发送加卡指令,请在倒计时结束前去设备上贴新卡') schedulePoll(session.bind_token) Taro.showToast({ title: '请去设备上贴新卡', icon: 'none' }) @@ -546,6 +586,7 @@ export default function Bind() { setBindStatus(session.status) setBindExpiresAt(session.expires_at) setRemainingBindSeconds(getRemainingBindSeconds(session.expires_at)) + setTotalBindSeconds(getRemainingBindSeconds(session.expires_at)) setBindHint(childId ? '已发送绑卡指令,请在倒计时结束前去设备上贴自己的卡' : '已发送绑卡指令,贴卡后设备会先进入待关联状态') schedulePoll(session.bind_token) Taro.showToast({ title: '请去设备上贴卡', icon: 'none' }) @@ -581,6 +622,8 @@ export default function Bind() { if (sessionVisible) { const completed = bindStatus === SESSION_STATUS_COMPLETED const pending = bindStatus === SESSION_STATUS_PENDING + const countdownAngle = totalBindSeconds > 0 ? Math.max(0, Math.min(360, remainingBindSeconds / totalBindSeconds * 360)) : 0 + const resultBattery = formatBatteryDisplay(boundDeviceStatus?.power ?? boundDeviceStatus?.battery_pct) const title = pending ? '请在设备上贴卡' : completed ? isAddingCard ? '新卡添加完成' : '设备绑定成功' : isExpiredBind ? '贴卡时间已过' : '贴卡未完成' @@ -597,6 +640,12 @@ export default function Bind() { <> {title} + + + + + + {formatRemainingTime(remainingBindSeconds)} 剩余贴卡时间 @@ -613,9 +662,23 @@ export default function Bind() { {title} {bindHint} {completed ? ( - + <> + + + 设备状态 + + {loadingBoundDevice ? '查询中' : boundDeviceOnline ? boundDeviceOnline.online ? '在线' : '离线' : '--'} + + + + 当前电量 + {loadingBoundDevice ? '查询中' : `${resultBattery.text}${resultBattery.showPercent ? '%' : ''}`} + + + + ) : ( <>