From bc8907b3ef1c1bcec95e5b197030312955486398 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Tue, 15 Apr 2025 17:43:44 +0800 Subject: [PATCH] mod: show lv6_s Closes #687 Signed-off-by: bggRGjQaUbCoE --- assets/images/lv/lv0.png | Bin 514 -> 915 bytes assets/images/lv/lv1.png | Bin 524 -> 876 bytes assets/images/lv/lv2.png | Bin 518 -> 1049 bytes assets/images/lv/lv3.png | Bin 541 -> 991 bytes assets/images/lv/lv4.png | Bin 498 -> 912 bytes assets/images/lv/lv5.png | Bin 539 -> 1077 bytes assets/images/lv/lv6.png | Bin 517 -> 1092 bytes assets/images/lv/lv6_s.png | Bin 0 -> 1426 bytes lib/models/member/info.dart | 3 +++ lib/models/search/result.dart | 3 +++ lib/models/user/info.dart | 4 ++++ lib/models/user/info.g.dart | 7 +++++-- .../member/new/widget/user_info_card.dart | 2 +- lib/pages/mine/view.dart | 2 +- .../search_panel/widgets/article_panel.dart | 1 + lib/pages/search_panel/widgets/live_panel.dart | 1 + .../widgets/media_bangumi_panel.dart | 1 + lib/pages/search_panel/widgets/user_panel.dart | 3 ++- .../search_panel/widgets/video_panel.dart | 1 + .../detail/member/horizontal_member_page.dart | 2 +- .../video/detail/note/note_list_page.dart | 2 +- .../detail/reply/widgets/reply_item_grpc.dart | 2 +- 22 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 assets/images/lv/lv6_s.png diff --git a/assets/images/lv/lv0.png b/assets/images/lv/lv0.png index 3b9999cf730585d4184b92ca9ffd87a1cd4bc024..f9ed49b620d04f29610aa42834b6946d2eafb3b8 100644 GIT binary patch literal 915 zcmV;E18n?>P)Lda*%`NsvxmkA-?$%4ewVr{|tby3&#_k@sduh7}daLzaUF-j?;lsXBt zh~qdpe_Rv<;RomZUD7096HU|5Xfz0=R8DfgX_{!YTAmmI@J|dL04kLVD5Z(-FO^CV zMR715d+Td}2T`1V%_f9Ado=wGDwPUWS62Z5mSw>(jF~!+Bng|Fo5^7Gc#mh|$wR4T!;ELfHmTd-QKVq@d)+NCH84i68fwkL#OcXt;nD=Pp1 z+qQ9ZbOhIRWA%4+bp_kD194fFQLEKJNccnUF@O-l0u5$-?EG^y>i&E_|7Y+3psFeg zg#vDGZzKD9czD41`T5lAs;XjreLYko^EE&agjlgjI8OL(80RU<+<>fE8jy7YS+g`C z>jbi9X+YKqWX;lmMRy>IV(1Aj?n}?2NZkN`jZu;$G#ZVGCMb%6dc7WqN4?>tN$Lie zrU}NpM~dHt437z#reSYy5BYrF)AsW668HD_X{R-n)D0L6252^$p(d2eW$f(iAeZx2 zs0_ov#l=PJzM_gFaf&CAM?Fo`LWOMG#^d9oC)V%x(QG!cy}j)@j%u2Q{r!C?iW1Oi zx7#>7JBv(soI;_1TCFy*-XO~|*4CoSoRJ1ptJTo!uIu99;2r zFN(RR0HqYNJh?{sVuF78x9z7xm!dLvCCYS)e`~q&S9+Jos3s?XE002ovPDHLkV1nAwr^WyP literal 514 zcmV+d0{#7oP);Nu2kPew*oUc(brv1yaRN2+n{V<90K8g!HY`%D|L0iXF{v$nz$cUM;S%e0Ds7Vf69Sglx<9yD{vOHv$^8zvWkc}UT;>? z7kDvso~-#gpfR_=+0~?Osa5NnuLHUZ+nE*qn$Q4){eG{hMdgs}q7+!kiU35WCe>_t zUIpkKal^6n-k+6Y7I=ShyLIsJ4!NTt@mGe^JwXHB4{jl%3uVkkUH||907*qoM6N<$ Ef&;MT>Hq)$ diff --git a/assets/images/lv/lv1.png b/assets/images/lv/lv1.png index 9973e4e7e26d2354e4b6eb18e2ef47f381e70ab3..ad8b70ce0ad220d08090a6aef98cd19513865534 100644 GIT binary patch literal 876 zcmV-y1C#uTP)?f?J)8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H10{KZq zK~z|U?U_$*+CUV>zZs?`Muf^rB}haPK@_r!L@v;KRJ}&GRj<$^^d$MSV}V#yjQ~rj zvM4b^q{NIA3Ghr8QE1E$=eO!T{_iq%ToUPEKH&rV{V!y!253yt?2eC8QrZnav?J?*1r zvx#oEt5wW2O_a;!>1WHb(C_!>8cL_rs8*}fz7;~CR;yt&8ikJIc^)|D(}%V!v*tM= zB=HeDB$SmNXfgoxk0npj8jr5%9i%I*tQJ-*xA|f z#VeHx2q6$c1R8f72kmw{ZaJYunm0{zx<8*qN(t9>mFaHVHV7fg6h1sW46Nfg4qC02 zu4Vua=Kzc`W!Fh5g=JZgQerq9!t=bjH6qRD^ZC#%qwBh8G#X0$@mq}Q;bn~P?d_pd zDg|CM3E(lL;8pUk3++L1a#=)xvl@#@5!ue-O8~x462xT2Sg=CX_Jh<1iAI49-AcZs9Rb_RBf8vh?0QMHpRBHte$%?v4 zMh6~~EYu%;){7`;PL?dWcI49ywOB$o0&3Jky~rk*;y+qz(WF z%gp)!o-G3|l}}$Kql@L59>6Is6ZqV@{b%rGg50TBRaIU3!-+s=B$IDzma#d<`RND% O000065+?8Xywnp@>GK#%O$PNPNab7sj0%KY$CiM)xLu0bP=4 zQWK5OM1w|R41p+$i3>G6N`z8CD=pA=dhc~XK!)jKT4quj{Ox+?%sJ=&+jDO3C7g3? zR6?PUIMzPb4bCqBkPQwWC!Alm7#!44!fmlmaB|tC@NQ1X4Z)<~hQLL##pD#ka(n3R zAtvA^II2xfRtkQz6Id8QH#nNjPGkfgs~e{qPQWcWi+-1JhVOHu=#31h>=vLh77qX& zzE(6igC)OzaLXRNkA6&K7F<`DxV-HgJXSXV;M<=OJP!9{^&Oo33WvoGm(CgBvAPhn=if+F z0?0&~lSQj-wJjifbtPNIzs5gc^X2t#bk(mc9st@rO|XkH7HLZ3n`R2$O!n!nW$DYv zFF@I603q7$$YwK(vI|gd{tHm<0?N&XJ`AlTAbWAXu@g>AgkO!BwJwl~nO5y3BeaH;7mT#`d& z=bR%=jX(9}!f*k;#(v;!q+es-8)(PL`ePs<@W~!rYC5A?Jmm~e#$O|voHe?voR~5L z2BwD~5&=hR52)gx$3?7GjFdQE@qokY^6rjV`iVk0E&gWB$Gq^we zOmkV$7ySf);AriBm3^nTMH53|3LcKWM0kEuXW2_gf`qQ!S9SaUm>a{Ru~!`UH+k3H z0=4#P1nt=`l>4HCcsKPS@B1m5MrhUW$1zs^){tyfee_9aRz}Dr^~#ukoWo0Ob}J=kWdy78hMV{R7`)KO#VED zP*?^T##ARMa%t8>(Rlm)pYC8m?Vn&V2Mew8Vv5nz)M697z?yNWUr6##M#n^S}daMJY`Fn%I( TxZEDJ00000NkvXXu0mjfCQjCw literal 518 zcmV+h0{Q)kP)r1wA}>f3=TAf|siM4nUGTKz{+j8&t2=*Cr_?)}<4^EMHmgOkoZC%H0A;B#C zUIIUjykMD=u2Xd*a_{1{D1k46-cipPoAEkcmWQJPc(Q;3-jNike`wtXM5jKCw80}U zh!v{qLIu7;=+d~#V!T=E*T7`5uL8P?7-isEr>z1&E9VWNjZcAPG4?)xzIM4B&}{}1 zMSz)rb%lT3KYdG+auK5p{MnB`I{2}J+`m?41MhYOIt4!d018W?4)GF+*#H0l07*qo IM6N<$g6IL`%>V!Z diff --git a/assets/images/lv/lv3.png b/assets/images/lv/lv3.png index 54e08d2d733d5569f51a802308a521fc02e65ce3..80a0db3fad5977e2f421f7b4b7a68cf786a55f66 100644 GIT binary patch literal 991 zcmV<510ei~P)41$G6fkp^g`jFbRdDMyRdl*U~PMpMP?KV+ADa-Nkx#xU7=eySqF*8~f z7oI}dJ1{rQ;Ijb2K8Mc|<2JQ20XN^xpCZU-0WL8s0u1g0>}0?Tkb3Lg%rSuO0Mrxk zVoigX5+J8d6UZxqipz;tv^XvSwcMrxVi>@{va<{l6~*t4tGF}}iwZ(?IpHQ3Y~1^t zmCX3p`2ww4ybJncDg-t5tA$M+3PMD=a$AdQKp=3azFK*;OB0-mDiQz;n`w0363y-t z{V`QWL&TDSbk-7v%`13r|1o7qKf*ZR6a*sU+P+R*S4dg1y%<}->q+mLbEsRxx$TjE zo%JJU;r>XjrvC;_;Od?jHfjP4;A6(bqtU#p?}wQZG9`)5kT*Ve#8ezj);~Tt2+$Rp z*A>#sZOIM=%^;~e{d*hSKhUXSqqfKw0XWbVLPRALEcd?qk+VGKqInREHP-;Q9DSJ= zuj{YkS}lonPe9c!(CX;b70)7AsYh;TD+2a+g>Z3a)K`sYs}V>=6yF81tq2GLZAHMZ zf(^gFUbK}4e9D-(`!S2SM-ki=58?QxCQgDufd2k!J-KFQdfKotZFuwDpfzrA-$$Ub zP+cLM-rC_>Xpb&%VvAm7_p*KY1>XsnTCl5ZN0Q+x5_)ujE4yRp3^`Mf3>59v`%dXQ z0q67{&)MFGdo-wG z@eQ!DcvCVSrwjNpXV#6~A5#(YD1xbo4=2Hc2@MAmTFvX@1se}Wawth>+rFAuRH{l6 z23=y6BxCq{9;4a%ueyT?4d?qKjZ$t3D;|Nqh=Nqqo#|H-240TWmu$mk41H}}JOCth z|Bo%cj6l7#YIOnt-j|=Pbw- zY!D^Muo)fYHoEzC))6wHi*&ChetHc$Q{v52hP}s&Z&DXu6Jar7O47#i*1n?TxYu=- zu-rdJR6#|-Eayy4m6r$8zia>i N002ovPDHLkV1g`kwR8Xg literal 541 zcmV+&0^+y=}C4!WxV zz^ozLx5EyDPa3rCJ3OrB4KLI+a5!O_Ede~i4s8JB2J;pGMrYsvs3p*kjCg@zq1*y^ zD}Eco9_>vhGUEN3TL!)ZumX@6tn~%81pH5rD?roJ z9}d&(0AQ_vri^$wA0J7MuyvSb6WttV#9LMcj|!7>?z}Ge{vxbY;ki9Q7uJ@Y-47Ku zRSIrXj@PPx@V?2h%-_VYfw3C==d|fts7HOxaksBI9`ReGZUYlv6Fjfc)(F6Bh4F(n zLwzE+9NbGPbkJl!-X{1sOta|)d?bKB>(L9kwYh$ zzd%TPWM*s@!^naN3z>C5@kKPu45l>)fIXi=)s^*@;#>wgso_@e7tI|=&(S1eBmo#7 zLSNo2te5zqB_wN zP;ygKW)jYR&tCzci3URU9>nXig9R&&>^SJJTc1X@?f1%;Z>J+f=mhAmQLnJA$4f$e z8tFamO=nfG=fe)GAi~dp@gel>J+Hj22ibWjUlR3A{*!ld=N9ye{~0{-K9Z0Mp)>)l-AHS9;qmEj=##6ETX4&V2T|~n(Awp- zky}7t+<>1Wr6Ud*m6t%nru^BPABG3fcMpm`Z)eeG167$kgjE8?UUh{s0bqU(eSST< znh)^T%bfu^JApdoJIc-$ANR|I>;o0jmp>1~6Xj mD5{7tL*NvvlY}qgaQZhB^5AsYu5vm600007Kn#XIP~Y2Zzy_fcgaPiM8-z^I3{a#>w?HyM z=?1CF0AzwDn~(|U!_hQ_y8u#1kAPo5$g=$5-wM#$XyHnPQeE&^$~mozsb$5ucj80vEn264T6V5?eTf>C7E4f26PR+ zE7s7dVO`ynp4ELYO>LF>tn}71AkggK2Ov1EtG^cXx5twxu7TG>D;bCV1y{Xjg8w)J zonG@mq)Cs*MN%ePY7(B4L?C2Xf`8H|cKUq7p25Ez?Y%&f8i~GzKqnX1M0l& zEr2$G`z?o=-@50o0eza6CPyd#d`YPuzpfiE3i=+`*}j1Fib2bZ_c9w#f%qi=v4Fkj2;4`DS%A@<9nTT-40v&_lqq4vi%Wq(vs?;*E_$J(ScdIh_=p0_=|wgn?hf|Nr`lZSxQ)g=L8#hnpe_6K}oQ(qLq|gfJn@!?>il* zy7W|^l};al@#6{4F{0fsBDwv*RA*UNe?#ujYqQ#mObgN-Ot4w@}It0wRj+$;TX&jaCuQ_oH+^rj!pmo&W$4X*;|mqmjX${69~5J z$kqXDmgA6?KZnfV`~SL{%+v{L><)5AcK9mZy7DWaq`&+sAa7p=mrJQijz-^Zw_V(# z>CtOiOLo|+Q+4-Ni~MJ3gBM$^IeSGktsG&?h|24Kw6T$|_Znvk^ZR3D8I-JS*D;3x vHHI+(BKQ9NAA^890t&loQUu1|4BGo2Z<#nq*B25500000NkvXXu0mjfgA(nr literal 539 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 literal 0 HcmV?d00001 diff --git a/lib/models/member/info.dart b/lib/models/member/info.dart index 789131eef..006b394d6 100644 --- a/lib/models/member/info.dart +++ b/lib/models/member/info.dart @@ -11,6 +11,7 @@ class MemberInfoModel { this.official, this.vip, this.liveRoom, + this.isSeniorMember, }); int? mid; @@ -24,6 +25,7 @@ class MemberInfoModel { Map? official; Vip? vip; LiveRoom? liveRoom; + int? isSeniorMember; MemberInfoModel.fromJson(Map json) { mid = json['mid']; @@ -38,6 +40,7 @@ class MemberInfoModel { vip = Vip.fromJson(json['vip']); liveRoom = json['live_room'] != null ? LiveRoom.fromJson(json['live_room']) : null; + isSeniorMember = json['is_senior_member']; } } diff --git a/lib/models/search/result.dart b/lib/models/search/result.dart index c78912f3d..64c48711c 100644 --- a/lib/models/search/result.dart +++ b/lib/models/search/result.dart @@ -123,6 +123,7 @@ class SearchUserItemModel { this.isLive, this.roomId, this.officialVerify, + this.isSeniorMember, }); String? type; @@ -141,6 +142,7 @@ class SearchUserItemModel { int? isLive; int? roomId; Map? officialVerify; + int? isSeniorMember; SearchUserItemModel.fromJson(Map json) { type = json['type']; @@ -159,6 +161,7 @@ class SearchUserItemModel { isLive = json['is_live']; roomId = json['room_id']; officialVerify = json['official_verify']; + isSeniorMember = json['is_senior_member']; } } diff --git a/lib/models/user/info.dart b/lib/models/user/info.dart index c520443f7..624c2dc3a 100644 --- a/lib/models/user/info.dart +++ b/lib/models/user/info.dart @@ -29,6 +29,7 @@ class UserInfoData { this.wallet, this.hasShop, this.shopUrl, + this.isSeniorMember, }); @HiveField(0) bool? isLogin; @@ -78,6 +79,8 @@ class UserInfoData { bool? hasShop; @HiveField(23) String? shopUrl; + @HiveField(24) + int? isSeniorMember; UserInfoData.fromJson(Map json) { isLogin = json['isLogin'] ?? false; @@ -106,6 +109,7 @@ class UserInfoData { wallet = json['wallet']; hasShop = json['has_shop']; shopUrl = json['shop_url']; + isSeniorMember = json['is_senior_member']; } } diff --git a/lib/models/user/info.g.dart b/lib/models/user/info.g.dart index a2eae1526..ce1744c2f 100644 --- a/lib/models/user/info.g.dart +++ b/lib/models/user/info.g.dart @@ -41,13 +41,14 @@ class UserInfoDataAdapter extends TypeAdapter { wallet: (fields[21] as Map?)?.cast(), hasShop: fields[22] as bool?, shopUrl: fields[23] as String?, + isSeniorMember: fields[24] as int?, ); } @override void write(BinaryWriter writer, UserInfoData obj) { writer - ..writeByte(24) + ..writeByte(25) ..writeByte(0) ..write(obj.isLogin) ..writeByte(1) @@ -95,7 +96,9 @@ class UserInfoDataAdapter extends TypeAdapter { ..writeByte(22) ..write(obj.hasShop) ..writeByte(23) - ..write(obj.shopUrl); + ..write(obj.shopUrl) + ..writeByte(24) + ..write(obj.isSeniorMember); } @override diff --git a/lib/pages/member/new/widget/user_info_card.dart b/lib/pages/member/new/widget/user_info_card.dart index 8315b5f1c..f3e79524d 100644 --- a/lib/pages/member/new/widget/user_info_card.dart +++ b/lib/pages/member/new/widget/user_info_card.dart @@ -130,7 +130,7 @@ class UserInfoCard extends StatelessWidget { ), const SizedBox(width: 8), Image.asset( - 'assets/images/lv/lv${card.levelInfo?.currentLevel}.png', + 'assets/images/lv/lv${card.levelInfo?.identity == 2 ? '6_s' : card.levelInfo?.currentLevel}.png', height: 11, semanticLabel: '等级${card.levelInfo?.currentLevel}', ), diff --git a/lib/pages/mine/view.dart b/lib/pages/mine/view.dart index d1d831539..bed398133 100644 --- a/lib/pages/mine/view.dart +++ b/lib/pages/mine/view.dart @@ -176,7 +176,7 @@ class _MinePageState extends State { ), const SizedBox(width: 4), Image.asset( - 'assets/images/lv/lv${_mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}.png', + 'assets/images/lv/lv${_mineController.userInfo.value.isSeniorMember == 1 ? '6_s' : _mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}.png', height: 10, semanticLabel: '等级:${_mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}', diff --git a/lib/pages/search_panel/widgets/article_panel.dart b/lib/pages/search_panel/widgets/article_panel.dart index f3a084447..d508b862e 100644 --- a/lib/pages/search_panel/widgets/article_panel.dart +++ b/lib/pages/search_panel/widgets/article_panel.dart @@ -27,6 +27,7 @@ Widget searchArticlePanel( return CustomScrollView( controller: searchPanelCtr.scrollController, + physics: const AlwaysScrollableScrollPhysics(), slivers: [ SliverPersistentHeader( pinned: false, diff --git a/lib/pages/search_panel/widgets/live_panel.dart b/lib/pages/search_panel/widgets/live_panel.dart index 49c5639f1..e1d0bbcc4 100644 --- a/lib/pages/search_panel/widgets/live_panel.dart +++ b/lib/pages/search_panel/widgets/live_panel.dart @@ -14,6 +14,7 @@ Widget searchLivePanel( Loading() => loadingWidget, Success() => loadingState.response?.isNotEmpty == true ? GridView.builder( + physics: const AlwaysScrollableScrollPhysics(), padding: EdgeInsets.only( left: StyleString.safeSpace, right: StyleString.safeSpace, diff --git a/lib/pages/search_panel/widgets/media_bangumi_panel.dart b/lib/pages/search_panel/widgets/media_bangumi_panel.dart index 98fb24b4f..cd4310efc 100644 --- a/lib/pages/search_panel/widgets/media_bangumi_panel.dart +++ b/lib/pages/search_panel/widgets/media_bangumi_panel.dart @@ -17,6 +17,7 @@ Widget searchBangumiPanel( Success() => loadingState.response?.isNotEmpty == true ? CustomScrollView( controller: ctr.scrollController, + physics: const AlwaysScrollableScrollPhysics(), slivers: [ SliverPadding( padding: EdgeInsets.only( diff --git a/lib/pages/search_panel/widgets/user_panel.dart b/lib/pages/search_panel/widgets/user_panel.dart index 3b39bce84..bd48e287c 100644 --- a/lib/pages/search_panel/widgets/user_panel.dart +++ b/lib/pages/search_panel/widgets/user_panel.dart @@ -25,6 +25,7 @@ Widget searchUserPanel( return CustomScrollView( controller: searchPanelCtr.scrollController, + physics: const AlwaysScrollableScrollPhysics(), slivers: [ SliverPersistentHeader( pinned: false, @@ -151,7 +152,7 @@ Widget searchUserPanel( ), const SizedBox(width: 6), Image.asset( - 'assets/images/lv/lv${i!.level}.png', + 'assets/images/lv/lv${i.isSeniorMember == 1 ? '6_s' : i!.level}.png', height: 11, semanticLabel: '等级${i.level}', ), diff --git a/lib/pages/search_panel/widgets/video_panel.dart b/lib/pages/search_panel/widgets/video_panel.dart index ac2a4258a..6d4b2f4ab 100644 --- a/lib/pages/search_panel/widgets/video_panel.dart +++ b/lib/pages/search_panel/widgets/video_panel.dart @@ -23,6 +23,7 @@ Widget searchVideoPanel( final controller = Get.put(VideoPanelController(), tag: searchPanelCtr.tag); return CustomScrollView( controller: searchPanelCtr.scrollController, + physics: const AlwaysScrollableScrollPhysics(), slivers: [ SliverPersistentHeader( pinned: false, diff --git a/lib/pages/video/detail/member/horizontal_member_page.dart b/lib/pages/video/detail/member/horizontal_member_page.dart index aee43ef56..435ca29c2 100644 --- a/lib/pages/video/detail/member/horizontal_member_page.dart +++ b/lib/pages/video/detail/member/horizontal_member_page.dart @@ -274,7 +274,7 @@ class _HorizontalMemberPageState extends State { ), const SizedBox(width: 8), Image.asset( - 'assets/images/lv/lv${memberInfoModel.level}.png', + 'assets/images/lv/lv${memberInfoModel.isSeniorMember == 1 ? '6_s' : memberInfoModel.level}.png', height: 11, ), ], diff --git a/lib/pages/video/detail/note/note_list_page.dart b/lib/pages/video/detail/note/note_list_page.dart index 121b359b0..e1bc21680 100644 --- a/lib/pages/video/detail/note/note_list_page.dart +++ b/lib/pages/video/detail/note/note_list_page.dart @@ -245,7 +245,7 @@ Widget _itemWidget(BuildContext context, dynamic item) { const SizedBox(width: 6), Image.asset( 'assets/images/lv/lv${item['author']['level']}.png', - height: 11, + height: 19, ), ], ), diff --git a/lib/pages/video/detail/reply/widgets/reply_item_grpc.dart b/lib/pages/video/detail/reply/widgets/reply_item_grpc.dart index 33e9b4e50..4612ca709 100644 --- a/lib/pages/video/detail/reply/widgets/reply_item_grpc.dart +++ b/lib/pages/video/detail/reply/widgets/reply_item_grpc.dart @@ -302,7 +302,7 @@ class ReplyItemGrpc extends StatelessWidget { ), const SizedBox(width: 6), Image.asset( - 'assets/images/lv/lv${replyItem.member.level}.png', + 'assets/images/lv/lv${replyItem.member.isSeniorMember == 1 ? '6_s' : replyItem.member.level}.png', height: 11, semanticLabel: "等级:${replyItem.member.level}", ),