王士厅
Showing 52 changed files with 1543 additions and 375 deletions

Too many changes to show.

To preserve performance only 52 of 52+ files are displayed.

@@ -81,7 +81,7 @@ export class WindowModel { @@ -81,7 +81,7 @@ export class WindowModel {
81 81
82 setWindowKeepScreenOn(isKeepScreenOn: boolean) { 82 setWindowKeepScreenOn(isKeepScreenOn: boolean) {
83 this.windowStage?.getMainWindow((err, windowClass: window.Window) => { 83 this.windowStage?.getMainWindow((err, windowClass: window.Window) => {
84 - windowClass.setWindowKeepScreenOn(isKeepScreenOn, (err: BusinessError) => { 84 + windowClass?.setWindowKeepScreenOn(isKeepScreenOn, (err: BusinessError) => {
85 const errCode: number = err.code; 85 const errCode: number = err.code;
86 if (errCode) { 86 if (errCode) {
87 console.error(WindowModel.TAG + '设置屏幕常亮:' + isKeepScreenOn + ',失败: ' + JSON.stringify(err)); 87 console.error(WindowModel.TAG + '设置屏幕常亮:' + isKeepScreenOn + ',失败: ' + JSON.stringify(err));
@@ -155,9 +155,15 @@ function buildErrorMsg(httpStatus: number): string { @@ -155,9 +155,15 @@ function buildErrorMsg(httpStatus: number): string {
155 case HttpStatusCode.HttpVersionNotSupported: 155 case HttpStatusCode.HttpVersionNotSupported:
156 message = "HTTP版本不受支持(505)"; 156 message = "HTTP版本不受支持(505)";
157 break; 157 break;
158 - default:  
159 - // 网络连接故障  
160 - message = `连接出错(${httpStatus})!`; 158 + default:{
  159 + // 网络连接故障
  160 + if(httpStatus != undefined){
  161 + message = `连接出错(${httpStatus})!`;
  162 + }else{
  163 + message = `连接出错!`;
  164 + }
  165 + }
  166 +
161 } 167 }
162 return message; 168 return message;
163 } 169 }
@@ -245,7 +245,6 @@ export class HttpUrlUtils { @@ -245,7 +245,6 @@ export class HttpUrlUtils {
245 * pageSize=20&pageNum=1&topicId=10000009445 245 * pageSize=20&pageNum=1&topicId=10000009445
246 * */ 246 * */
247 static readonly MORNING_EVENING_PAGE_INFO_PATH: string = "/api/rmrb-bff-display-zh/display/zh/c/pageInfo"; 247 static readonly MORNING_EVENING_PAGE_INFO_PATH: string = "/api/rmrb-bff-display-zh/display/zh/c/pageInfo";
248 - static readonly MORNING_EVENING_COMP_INFO_PATH: string = "/api/rmrb-bff-display-zh/display/zh/c/compInfo";  
249 /** 248 /**
250 * 直播回顾 249 * 直播回顾
251 * */ 250 * */
@@ -48,7 +48,8 @@ export struct WdWebLocalComponent { @@ -48,7 +48,8 @@ export struct WdWebLocalComponent {
48 48
49 Row() { 49 Row() {
50 RelativeContainer() { 50 RelativeContainer() {
51 - Web({ src: this.webResource, controller: this.webviewControl }) 51 + // Web({ src: this.webResource, controller: this.webviewControl, renderMode: RenderMode.SYNC_RENDER })
  52 + Web({ src: this.webResource, controller: this.webviewControl})
52 .domStorageAccess(true) 53 .domStorageAccess(true)
53 .databaseAccess(true) 54 .databaseAccess(true)
54 .javaScriptAccess(true) 55 .javaScriptAccess(true)
@@ -56,6 +57,8 @@ export struct WdWebLocalComponent { @@ -56,6 +57,8 @@ export struct WdWebLocalComponent {
56 .mixedMode(MixedMode.All) 57 .mixedMode(MixedMode.All)
57 .onlineImageAccess(true) 58 .onlineImageAccess(true)
58 .enableNativeEmbedMode(true) 59 .enableNativeEmbedMode(true)
  60 + // .layoutMode(WebLayoutMode.FIT_CONTENT)
  61 + // .nestedScroll({ scrollForward: NestedScrollMode.SELF_FIRST, scrollBackward: NestedScrollMode.PARENT_FIRST })
59 .height(this.webHeight) 62 .height(this.webHeight)
60 .onPageBegin((event) => { 63 .onPageBegin((event) => {
61 this.onPageBegin(event?.url); 64 this.onPageBegin(event?.url);
1 -import { AccountManagerUtils, Logger, DateTimeUtils, SPHelper, NumberFormatterUtils, DisplayUtils } from 'wdKit'; 1 +import { AccountManagerUtils, Logger, DateTimeUtils, SPHelper, NumberFormatterUtils, DisplayUtils,
  2 + NetworkUtil } from 'wdKit';
2 import { MultiPictureDetailViewModel } from '../viewmodel/MultiPictureDetailViewModel'; 3 import { MultiPictureDetailViewModel } from '../viewmodel/MultiPictureDetailViewModel';
3 import { ContentDetailDTO,postBatchAttentionStatusParams, 4 import { ContentDetailDTO,postBatchAttentionStatusParams,
4 PhotoListBean, 5 PhotoListBean,
@@ -27,6 +28,8 @@ import { CardMediaInfo } from '../components/cardCommon/CardMediaInfo' @@ -27,6 +28,8 @@ import { CardMediaInfo } from '../components/cardCommon/CardMediaInfo'
27 import router from '@ohos.router'; 28 import router from '@ohos.router';
28 import { publishCommentModel } from './comment/model/PublishCommentModel'; 29 import { publishCommentModel } from './comment/model/PublishCommentModel';
29 import { CommentComponent } from './comment/view/CommentComponent'; 30 import { CommentComponent } from './comment/view/CommentComponent';
  31 +import { EmptyComponent } from './view/EmptyComponent';
  32 +import { detailedSkeleton } from './skeleton/detailSkeleton';
30 33
31 const TAG = 'DynamicDetailComponent' 34 const TAG = 'DynamicDetailComponent'
32 const PATTERN_DATE_CN_RN: string = 'yyyy年MM月dd日 HH:mm'; 35 const PATTERN_DATE_CN_RN: string = 'yyyy年MM月dd日 HH:mm';
@@ -55,6 +58,8 @@ export struct DynamicDetailComponent { @@ -55,6 +58,8 @@ export struct DynamicDetailComponent {
55 private mJumpInfo: ContentDTO = {} as ContentDTO; 58 private mJumpInfo: ContentDTO = {} as ContentDTO;
56 59
57 @State publishTime: string = '' 60 @State publishTime: string = ''
  61 + @State isNetConnected: boolean = true
  62 + @State isPageEnd: boolean = false
58 63
59 64
60 async aboutToAppear() { 65 async aboutToAppear() {
@@ -89,328 +94,342 @@ export struct DynamicDetailComponent { @@ -89,328 +94,342 @@ export struct DynamicDetailComponent {
89 .height($r('app.float.margin_7')) 94 .height($r('app.float.margin_7'))
90 .padding({left: $r('app.float.margin_16'), right: $r('app.float.margin_16')} ) 95 .padding({left: $r('app.float.margin_16'), right: $r('app.float.margin_16')} )
91 Stack({ alignContent: Alignment.Bottom }) { 96 Stack({ alignContent: Alignment.Bottom }) {
92 - Scroll(this.scroller) {  
93 - Column() {  
94 - //号主信息  
95 - Row() {  
96 - //头像  
97 - Stack() {  
98 - Image(this.contentDetailData.rmhInfo?.rmhHeadUrl)  
99 - .alt(this.contentDetailData.rmhInfo?.userType=='1'?$r('app.media.default_head'):$r('app.media.icon_default_head_mater'))  
100 - .width($r('app.float.margin_32'))  
101 - .height($r('app.float.margin_32'))  
102 - .objectFit(ImageFit.Cover)  
103 - .borderRadius($r('app.float.margin_16'))  
104 - Image(this.contentDetailData.rmhInfo?.honoraryIcon)  
105 - .width($r('app.float.margin_48'))  
106 - .height($r('app.float.margin_48'))  
107 - .objectFit(ImageFit.Cover)  
108 - .borderRadius($r('app.float.margin_24'))  
109 - if(!StringUtils.isEmpty(this.contentDetailData.rmhInfo?.authIcon)){ 97 + if (!this.isNetConnected) {
  98 + EmptyComponent({
  99 + emptyType: 1,
  100 + emptyButton: true,
  101 + retry: () => {
  102 + this.getContentDetailData()
  103 + }
  104 + }).padding({ bottom: 200 })
  105 + } else {
  106 + if (!this.isPageEnd) {
  107 + detailedSkeleton()
  108 + }else{
  109 + Scroll(this.scroller) {
  110 + Column() {
  111 + //号主信息
  112 + Row() {
  113 + //头像
110 Stack() { 114 Stack() {
111 - Image(this.contentDetailData.rmhInfo?.authIcon)  
112 - .width($r('app.float.vp_12'))  
113 - .height($r('app.float.vp_12')) 115 + Image(this.contentDetailData.rmhInfo?.rmhHeadUrl)
  116 + .alt(this.contentDetailData.rmhInfo?.userType=='1'?$r('app.media.default_head'):$r('app.media.icon_default_head_mater'))
  117 + .width($r('app.float.margin_32'))
  118 + .height($r('app.float.margin_32'))
114 .objectFit(ImageFit.Cover) 119 .objectFit(ImageFit.Cover)
  120 + .borderRadius($r('app.float.margin_16'))
  121 + Image(this.contentDetailData.rmhInfo?.honoraryIcon)
  122 + .width($r('app.float.margin_48'))
  123 + .height($r('app.float.margin_48'))
  124 + .objectFit(ImageFit.Cover)
  125 + .borderRadius($r('app.float.margin_24'))
  126 + if(!StringUtils.isEmpty(this.contentDetailData.rmhInfo?.authIcon)){
  127 + Stack() {
  128 + Image(this.contentDetailData.rmhInfo?.authIcon)
  129 + .width($r('app.float.vp_12'))
  130 + .height($r('app.float.vp_12'))
  131 + .objectFit(ImageFit.Cover)
  132 + }
  133 + .width($r('app.float.margin_48'))
  134 + .height($r('app.float.margin_48'))
  135 + .alignContent(Alignment.BottomEnd)
  136 + }
115 } 137 }
116 .width($r('app.float.margin_48')) 138 .width($r('app.float.margin_48'))
117 .height($r('app.float.margin_48')) 139 .height($r('app.float.margin_48'))
118 - .alignContent(Alignment.BottomEnd) 140 + .alignContent(Alignment.Center)
  141 + .onClick(() => {
  142 + ProcessUtils.gotoPeopleShipHomePage(this.contentDetailData.rmhInfo == null ?"":this.contentDetailData.rmhInfo.rmhId)
  143 + })
  144 + Column(){
  145 + //昵称
  146 + Text(this.contentDetailData.rmhInfo?.rmhName)
  147 + .fontSize($r('app.float.font_size_14'))
  148 + .fontColor($r('app.color.color_222222'))
  149 + .fontWeight(FontWeight.Medium)
  150 + .margin({ left: $r('app.float.margin_5') })
  151 + .alignSelf(ItemAlign.Start)
  152 + //简介
  153 + Text(this.contentDetailData.rmhInfo?.rmhDesc)
  154 + .fontSize($r('app.float.font_size_14'))
  155 + .fontColor($r('app.color.color_B0B0B0'))
  156 + .fontWeight(FontWeight.Medium)
  157 + .maxLines(1)
  158 + .textOverflow({ overflow: TextOverflow.Ellipsis })
  159 + .margin({ left: $r('app.float.margin_5') })
  160 + .alignSelf(ItemAlign.Start)
  161 + }
  162 + .width('63%')
  163 + .margin({right: $r('app.float.margin_6')})
  164 + if(!StringUtils.isEmpty(this.followStatus)){
  165 + if (this.followStatus == '0') {
  166 + Row() {
  167 + Blank().layoutWeight(1)
  168 + Image($r('app.media.icon_add_attention'))
  169 + .width($r('app.float.vp_12'))
  170 + .height($r('app.float.vp_12'))
  171 + .margin({right:2})
  172 + Text('关注')
  173 + .textAlign(TextAlign.Center)
  174 + .fontSize($r('app.float.font_size_12'))
  175 + .fontColor($r('app.color.color_fff'))
  176 + Blank().layoutWeight(1)
  177 + }
  178 + .width($r('app.float.margin_54'))
  179 + .height($r('app.float.margin_24'))
  180 + .borderRadius($r('app.float.vp_3'))
  181 + .backgroundColor($r('app.color.color_ED2800'))
  182 + .onClick(() => {
  183 + this.handleAccention()
  184 + })
  185 + } else {
  186 + Text('已关注')
  187 + .width($r('app.float.margin_54'))
  188 + .height($r('app.float.margin_24'))
  189 + .borderWidth(1)
  190 + .textAlign(TextAlign.Center)
  191 + .fontSize($r('app.float.font_size_12'))
  192 + .borderRadius($r('app.float.vp_3'))
  193 + .borderColor($r('app.color.color_CCCCCC_1A'))
  194 + .backgroundColor($r('app.color.color_CCCCCC_1A'))
  195 + .fontColor($r('app.color.color_CCCCCC'))
  196 + .onClick(() => {
  197 + this.handleAccention()
  198 + })
  199 + }
  200 + }
119 } 201 }
120 - }  
121 - .width($r('app.float.margin_48'))  
122 - .height($r('app.float.margin_48'))  
123 - .alignContent(Alignment.Center)  
124 - .onClick(() => {  
125 - ProcessUtils.gotoPeopleShipHomePage(this.contentDetailData.rmhInfo == null ?"":this.contentDetailData.rmhInfo.rmhId)  
126 - })  
127 - Column(){  
128 - //昵称  
129 - Text(this.contentDetailData.rmhInfo?.rmhName)  
130 - .fontSize($r('app.float.font_size_14')) 202 + .width('100%')
  203 + .margin({ left: $r('app.float.margin_16')})
  204 + //内容
  205 + Text(StringUtils.isEmpty(this.contentDetailData.newsContent)
  206 + ?StringUtils.isEmpty(this.contentDetailData.newsSummary)
  207 + ?this.contentDetailData.newsTitle
  208 + :this.contentDetailData.newsSummary
  209 + :this.contentDetailData.newsContent)
131 .fontColor($r('app.color.color_222222')) 210 .fontColor($r('app.color.color_222222'))
132 - .fontWeight(FontWeight.Medium)  
133 - .margin({ left: $r('app.float.margin_5') }) 211 + .fontSize($r('app.float.font_size_18'))
  212 + .lineHeight($r('app.float.margin_25'))
  213 + .margin({ top: $r('app.float.margin_6')
  214 + ,left: $r('app.float.margin_16')
  215 + ,right: $r('app.float.margin_16') })
134 .alignSelf(ItemAlign.Start) 216 .alignSelf(ItemAlign.Start)
135 - //简介  
136 - Text(this.contentDetailData.rmhInfo?.rmhDesc)  
137 - .fontSize($r('app.float.font_size_14'))  
138 - .fontColor($r('app.color.color_B0B0B0'))  
139 - .fontWeight(FontWeight.Medium)  
140 - .maxLines(1)  
141 - .textOverflow({ overflow: TextOverflow.Ellipsis })  
142 - .margin({ left: $r('app.float.margin_5') })  
143 - .alignSelf(ItemAlign.Start)  
144 - }  
145 - .width('63%')  
146 - .margin({right: $r('app.float.margin_6')})  
147 - if(!StringUtils.isEmpty(this.followStatus)){  
148 - if (this.followStatus == '0') {  
149 - Row() {  
150 - Blank().layoutWeight(1)  
151 - Image($r('app.media.icon_add_attention'))  
152 - .width($r('app.float.vp_12'))  
153 - .height($r('app.float.vp_12'))  
154 - .margin({right:2})  
155 - Text('关注')  
156 - .textAlign(TextAlign.Center)  
157 - .fontSize($r('app.float.font_size_12'))  
158 - .fontColor($r('app.color.color_fff'))  
159 - Blank().layoutWeight(1)  
160 - }  
161 - .width($r('app.float.margin_54'))  
162 - .height($r('app.float.margin_24'))  
163 - .borderRadius($r('app.float.vp_3'))  
164 - .backgroundColor($r('app.color.color_ED2800'))  
165 - .onClick(() => {  
166 - this.handleAccention()  
167 - })  
168 - } else {  
169 - Text('已关注')  
170 - .width($r('app.float.margin_54'))  
171 - .height($r('app.float.margin_24'))  
172 - .borderWidth(1)  
173 - .textAlign(TextAlign.Center)  
174 - .fontSize($r('app.float.font_size_12'))  
175 - .borderRadius($r('app.float.vp_3'))  
176 - .borderColor($r('app.color.color_CCCCCC_1A'))  
177 - .backgroundColor($r('app.color.color_CCCCCC_1A'))  
178 - .fontColor($r('app.color.color_CCCCCC'))  
179 - .onClick(() => {  
180 - this.handleAccention()  
181 - })  
182 - }  
183 - }  
184 - }  
185 - .width('100%')  
186 - .margin({ left: $r('app.float.margin_16')})  
187 - //内容  
188 - Text(StringUtils.isEmpty(this.contentDetailData.newsContent)  
189 - ?StringUtils.isEmpty(this.contentDetailData.newsSummary)  
190 - ?this.contentDetailData.newsTitle  
191 - :this.contentDetailData.newsSummary  
192 - :this.contentDetailData.newsContent)  
193 - .fontColor($r('app.color.color_222222'))  
194 - .fontSize($r('app.float.font_size_18'))  
195 - .lineHeight($r('app.float.margin_25'))  
196 - .margin({ top: $r('app.float.margin_6')  
197 - ,left: $r('app.float.margin_16')  
198 - ,right: $r('app.float.margin_16') })  
199 - .alignSelf(ItemAlign.Start)  
200 - if(this.contentDetailData.newsType+"" == ContentConstants.TYPE_FOURTEEN){  
201 - //附件内容:图片/视频  
202 - if(this.contentDetailData.photoList!= null && this.contentDetailData.photoList.length>0){  
203 - // 图片-从无图到9图展示  
204 - GridRow({  
205 - gutter: { x: 2, y: 2 }  
206 - }) {  
207 - ForEach(this.contentDetailData.photoList, (item: PhotoListBean, index: number) => {  
208 - if (this.contentDetailData.photoList.length === 1) {  
209 - if (this.getPicType(item) !== 3) {  
210 - GridCol({  
211 - span: this.getPicType(item) === 1 ? 12 : 8  
212 - }){  
213 - Stack({  
214 - alignContent: Alignment.BottomEnd  
215 - }) {  
216 - if (this.getPicType(item) === 1) { 217 + if(this.contentDetailData.newsType+"" == ContentConstants.TYPE_FOURTEEN){
  218 + //附件内容:图片/视频
  219 + if(this.contentDetailData.photoList!= null && this.contentDetailData.photoList.length>0){
  220 + // 图片-从无图到9图展示
  221 + GridRow({
  222 + gutter: { x: 2, y: 2 }
  223 + }) {
  224 + ForEach(this.contentDetailData.photoList, (item: PhotoListBean, index: number) => {
  225 + if (this.contentDetailData.photoList.length === 1) {
  226 + if (this.getPicType(item) !== 3) {
  227 + GridCol({
  228 + span: this.getPicType(item) === 1 ? 12 : 8
  229 + }){
  230 + Stack({
  231 + alignContent: Alignment.BottomEnd
  232 + }) {
  233 + if (this.getPicType(item) === 1) {
  234 + Image(item.picPath)
  235 + .width('100%')
  236 + .height(172)
  237 + .autoResize(true)
  238 + .borderRadius(this.caclImageRadius(index))
  239 + } else if (this.getPicType(item) === 2) {
  240 + Image(item.picPath)
  241 + .width('100%')
  242 + .height(305)
  243 + .autoResize(true)
  244 + .borderRadius(this.caclImageRadius(index))
  245 + }
  246 + Flex({ direction: FlexDirection.Row }) {
  247 + Image($r('app.media.icon_long_pic'))
  248 + .width(14)
  249 + .height(14)
  250 + .margin({right: 4})
  251 + Text('长图')
  252 + .fontSize(12)
  253 + .fontWeight(400)
  254 + .fontColor(0xffffff)
  255 + .fontFamily('PingFang SC')
  256 + }
  257 + .width(48)
  258 + .padding({bottom: 9})
  259 +
  260 + }
  261 + }
  262 + .onClick((event: ClickEvent) => {
  263 + ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)
  264 + })
  265 + } else {
  266 + GridCol({
  267 + span: { xs: 8 }
  268 + }) {
217 Image(item.picPath) 269 Image(item.picPath)
218 .width('100%') 270 .width('100%')
219 - .height(172)  
220 - .autoResize(true)  
221 .borderRadius(this.caclImageRadius(index)) 271 .borderRadius(this.caclImageRadius(index))
222 - } else if (this.getPicType(item) === 2) {  
223 - Image(item.picPath)  
224 - .width('100%')  
225 - .height(305)  
226 .autoResize(true) 272 .autoResize(true)
227 - .borderRadius(this.caclImageRadius(index)) 273 + .opacity(!item.width && !item.height ? 0 : 1)
  274 + .onComplete(callback => {
  275 + item.width = callback?.width || 0;
  276 + item.height = callback?.height || 0;
  277 + })
228 } 278 }
229 - Flex({ direction: FlexDirection.Row }) {  
230 - Image($r('app.media.icon_long_pic'))  
231 - .width(14)  
232 - .height(14)  
233 - .margin({right: 4})  
234 - Text('长图')  
235 - .fontSize(12)  
236 - .fontWeight(400)  
237 - .fontColor(0xffffff)  
238 - .fontFamily('PingFang SC')  
239 - }  
240 - .width(48)  
241 - .padding({bottom: 9})  
242 - 279 + .onClick((event: ClickEvent) => {
  280 + ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)
  281 + })
  282 + }
  283 + } else if (this.contentDetailData.photoList.length === 4) {
  284 + GridCol({
  285 + span: { xs: 4 }
  286 + }) {
  287 + Image(item.picPath)
  288 + .aspectRatio(1)
  289 + .borderRadius(this.caclImageRadius(index))
  290 + }
  291 + .onClick((event: ClickEvent) => {
  292 + ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)
  293 + })
  294 + } else {
  295 + GridCol({
  296 + span: { sm: 4, lg: 3 }
  297 + }) {
  298 + Image(item.picPath)
  299 + .aspectRatio(1)
  300 + .borderRadius(this.caclImageRadius(index))
243 } 301 }
  302 + .onClick((event: ClickEvent) => {
  303 + ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)
  304 + })
  305 + }
  306 + })
  307 + }
  308 + .margin({ left: $r('app.float.margin_16'),right: $r('app.float.margin_16'),top: $r('app.float.margin_8')})
  309 + }
  310 + }else{
  311 + if(this.contentDetailData.videoInfo!= null && this.contentDetailData.videoInfo.length>0){
  312 + GridRow() {
  313 + if (this.contentDetailData.videoInfo[0].videoLandScape === 1) {
  314 + // 横屏
  315 + GridCol({
  316 + span: { xs: 12 }
  317 + }) {
  318 + Stack() {
  319 + Image(this.contentDetailData.fullColumnImgUrls!= null && this.contentDetailData.fullColumnImgUrls.length>0&&!StringUtils.isEmpty(this.contentDetailData.fullColumnImgUrls[0].url)?
  320 + this.contentDetailData.fullColumnImgUrls[0].url:
  321 + this.contentDetailData.videoInfo[0].firstFrameImageUri)
  322 + .width(DisplayUtils.getDeviceWidth()- 32)
  323 + .height((DisplayUtils.getDeviceWidth()-32)* 9 / 16)
  324 + .borderRadius($r('app.float.image_border_radius'))
  325 + CardMediaInfo({ contentDTO: this.mJumpInfo })
  326 + }
  327 + .align(Alignment.BottomEnd)
244 } 328 }
245 - .onClick((event: ClickEvent) => {  
246 - ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)  
247 - })  
248 } else { 329 } else {
  330 + // 竖图显示,宽度占50%,高度自适应
249 GridCol({ 331 GridCol({
250 - span: { xs: 8 } 332 + span: { xs: 6 }
251 }) { 333 }) {
252 - Image(item.picPath)  
253 - .width('100%')  
254 - .borderRadius(this.caclImageRadius(index))  
255 - .autoResize(true)  
256 - .opacity(!item.width && !item.height ? 0 : 1)  
257 - .onComplete(callback => {  
258 - item.width = callback?.width || 0;  
259 - item.height = callback?.height || 0;  
260 - }) 334 + Stack() {
  335 + Image(this.contentDetailData.fullColumnImgUrls!= null && this.contentDetailData.fullColumnImgUrls.length>0&&!StringUtils.isEmpty(this.contentDetailData.fullColumnImgUrls[0].url)?
  336 + this.contentDetailData.fullColumnImgUrls[0].url:
  337 + this.contentDetailData.videoInfo[0].firstFrameImageUri)
  338 + .width(DisplayUtils.getDeviceWidth()/2)
  339 + .height(DisplayUtils.getDeviceWidth()/2* 4 / 3)
  340 + .borderRadius($r('app.float.image_border_radius'))
  341 + CardMediaInfo({ contentDTO: this.mJumpInfo })
  342 + }
  343 + .align(Alignment.BottomEnd)
261 } 344 }
262 - .onClick((event: ClickEvent) => {  
263 - ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)  
264 - })  
265 - }  
266 - } else if (this.contentDetailData.photoList.length === 4) {  
267 - GridCol({  
268 - span: { xs: 4 }  
269 - }) {  
270 - Image(item.picPath)  
271 - .aspectRatio(1)  
272 - .borderRadius(this.caclImageRadius(index))  
273 - }  
274 - .onClick((event: ClickEvent) => {  
275 - ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)  
276 - })  
277 - } else {  
278 - GridCol({  
279 - span: { sm: 4, lg: 3 }  
280 - }) {  
281 - Image(item.picPath)  
282 - .aspectRatio(1)  
283 - .borderRadius(this.caclImageRadius(index))  
284 } 345 }
285 - .onClick((event: ClickEvent) => {  
286 - ProcessUtils.gotoMultiPictureListPage(this.contentDetailData.photoList,index)  
287 - })  
288 } 346 }
289 - }) 347 + .padding({ left: this.contentDetailData.videoInfo[0].videoLandScape === 1?0: 25,top: $r('app.float.margin_8')})
  348 + .onClick((event: ClickEvent) => {
  349 + ProcessUtils.processPage(this.mJumpInfo)
  350 + })
  351 + }
290 } 352 }
291 - .margin({ left: $r('app.float.margin_16'),right: $r('app.float.margin_16'),top: $r('app.float.margin_8')})  
292 - }  
293 - }else{  
294 - if(this.contentDetailData.videoInfo!= null && this.contentDetailData.videoInfo.length>0){  
295 - GridRow() {  
296 - if (this.contentDetailData.videoInfo[0].videoLandScape === 1) {  
297 - // 横屏  
298 - GridCol({  
299 - span: { xs: 12 }  
300 - }) {  
301 - Stack() {  
302 - Image(this.contentDetailData.fullColumnImgUrls!= null && this.contentDetailData.fullColumnImgUrls.length>0&&!StringUtils.isEmpty(this.contentDetailData.fullColumnImgUrls[0].url)?  
303 - this.contentDetailData.fullColumnImgUrls[0].url:  
304 - this.contentDetailData.videoInfo[0].firstFrameImageUri)  
305 - .width(DisplayUtils.getDeviceWidth()- 32)  
306 - .height((DisplayUtils.getDeviceWidth()-32)* 9 / 16)  
307 - .borderRadius($r('app.float.image_border_radius'))  
308 - CardMediaInfo({ contentDTO: this.mJumpInfo })  
309 - }  
310 - .align(Alignment.BottomEnd)  
311 - }  
312 - } else {  
313 - // 竖图显示,宽度占50%,高度自适应  
314 - GridCol({  
315 - span: { xs: 6 }  
316 - }) {  
317 - Stack() {  
318 - Image(this.contentDetailData.fullColumnImgUrls!= null && this.contentDetailData.fullColumnImgUrls.length>0&&!StringUtils.isEmpty(this.contentDetailData.fullColumnImgUrls[0].url)?  
319 - this.contentDetailData.fullColumnImgUrls[0].url:  
320 - this.contentDetailData.videoInfo[0].firstFrameImageUri)  
321 - .width(DisplayUtils.getDeviceWidth()/2)  
322 - .height(DisplayUtils.getDeviceWidth()/2* 4 / 3)  
323 - .borderRadius($r('app.float.image_border_radius'))  
324 - CardMediaInfo({ contentDTO: this.mJumpInfo })  
325 - }  
326 - .align(Alignment.BottomEnd)  
327 - } 353 + //特别声明
  354 + Text("特别声明:本文为人民日报新媒体平台“人民号”作者上传并发布,仅代表作者观点。人民日报仅提供信息发布平台。")
  355 + .fontColor($r('app.color.color_CCCCCC'))
  356 + .fontSize($r('app.float.font_size_12'))
  357 + .lineHeight($r('app.float.margin_16'))
  358 + .margin({ top: $r('app.float.margin_16')
  359 + ,left: $r('app.float.vp_12')
  360 + ,right: $r('app.float.vp_12') })
  361 + //微信/朋友圈/微博
  362 + // Row(){
  363 + // Image($r('app.media.xxhdpi_pic_wechat'))
  364 + // .width($r('app.float.margin_116'))
  365 + // .height($r('app.float.margin_36'))
  366 + // .objectFit(ImageFit.Cover)
  367 + // Image($r('app.media.xxhdpi_pic_pyq'))
  368 + // .width($r('app.float.margin_116'))
  369 + // .height($r('app.float.margin_36'))
  370 + // .margin({ left: $r('app.float.margin_4_negative')})
  371 + // .objectFit(ImageFit.Cover)
  372 + // Image($r('app.media.xxhdpi_pic_wb'))
  373 + // .width($r('app.float.margin_116'))
  374 + // .height($r('app.float.margin_36'))
  375 + // .margin({ left: $r('app.float.margin_4_negative')})
  376 + // .objectFit(ImageFit.Cover)
  377 + // }
  378 + // .margin({ top: $r('app.float.margin_24')})
  379 + //点赞
  380 + Row(){
  381 + Blank().layoutWeight(1)
  382 + Image(this.newsStatusOfUser?.likeStatus == '1'?
  383 + $r('app.media.icon_like_selected_redheart')
  384 + :$r('app.media.icon_like_unselect_grey_redheart'))
  385 + .width($r('app.float.margin_36'))
  386 + .height($r('app.float.margin_36'))
  387 + .objectFit(ImageFit.Cover)
  388 + .margin({ left: $r('app.float.margin_6_negative'),right: $r('app.float.margin_6_negative')})
  389 + if(this.interactDataDTO?.likeNum != 0){
  390 + Text(NumberFormatterUtils.formatNumberWithWan(this.interactDataDTO?.likeNum))
  391 + .fontColor($r('app.color.color_999999'))
  392 + .fontSize($r('app.float.font_size_16'))
  393 + .lineHeight($r('app.float.margin_20'))
  394 + .margin({ left: $r('app.float.margin_2')})
328 } 395 }
  396 + Blank().layoutWeight(1)
329 } 397 }
330 - .padding({ left: this.contentDetailData.videoInfo[0].videoLandScape === 1?0: 25,top: $r('app.float.margin_8')}) 398 + .width($r('app.float.margin_154'))
  399 + .height($r('app.float.margin_40'))
  400 + .margin({top:$r('app.float.margin_16')})
  401 + .borderWidth($r('app.float.margin_1'))
  402 + .borderColor($r('app.color.color_EDEDED'))
  403 + .borderRadius($r('app.float.margin_20'))
331 .onClick((event: ClickEvent) => { 404 .onClick((event: ClickEvent) => {
332 - ProcessUtils.processPage(this.mJumpInfo) 405 + //点赞操作
  406 + this.toggleLikeStatus()
333 }) 407 })
  408 + // 评论
  409 + if (this.contentDetailData?.openComment) {
  410 + Divider().strokeWidth(6).color('#f5f5f5').margin({top:$r('app.float.margin_24')})
  411 + CommentComponent({
  412 + publishCommentModel: {
  413 + targetId: String(this.contentDetailData?.newsId || ''),
  414 + targetRelId: this.contentDetailData?.reLInfo?.relId,
  415 + targetTitle: this.contentDetailData?.newsTitle,
  416 + targetRelType: this.contentDetailData?.reLInfo?.relType,
  417 + targetRelObjectId: String(this.contentDetailData?.reLInfo?.relObjectId),
  418 + keyArticle: String(this.contentDetailData?.keyArticle),
  419 + targetType: String(this.contentDetailData?.newsType),
  420 + } as publishCommentModel
  421 + })
  422 + }
  423 + Blank().layoutWeight(1)
334 } 424 }
335 } 425 }
336 - //特别声明  
337 - Text("特别声明:本文为人民日报新媒体平台“人民号”作者上传并发布,仅代表作者观点。人民日报仅提供信息发布平台。")  
338 - .fontColor($r('app.color.color_CCCCCC'))  
339 - .fontSize($r('app.float.font_size_12'))  
340 - .lineHeight($r('app.float.margin_16'))  
341 - .margin({ top: $r('app.float.margin_16')  
342 - ,left: $r('app.float.vp_12')  
343 - ,right: $r('app.float.vp_12') })  
344 - //微信/朋友圈/微博  
345 - // Row(){  
346 - // Image($r('app.media.xxhdpi_pic_wechat'))  
347 - // .width($r('app.float.margin_116'))  
348 - // .height($r('app.float.margin_36'))  
349 - // .objectFit(ImageFit.Cover)  
350 - // Image($r('app.media.xxhdpi_pic_pyq'))  
351 - // .width($r('app.float.margin_116'))  
352 - // .height($r('app.float.margin_36'))  
353 - // .margin({ left: $r('app.float.margin_4_negative')})  
354 - // .objectFit(ImageFit.Cover)  
355 - // Image($r('app.media.xxhdpi_pic_wb'))  
356 - // .width($r('app.float.margin_116'))  
357 - // .height($r('app.float.margin_36'))  
358 - // .margin({ left: $r('app.float.margin_4_negative')})  
359 - // .objectFit(ImageFit.Cover)  
360 - // }  
361 - // .margin({ top: $r('app.float.margin_24')})  
362 - //点赞  
363 - Row(){  
364 - Blank().layoutWeight(1)  
365 - Image(this.newsStatusOfUser?.likeStatus == '1'?  
366 - $r('app.media.icon_like_selected_redheart')  
367 - :$r('app.media.icon_like_unselect_grey_redheart'))  
368 - .width($r('app.float.margin_36'))  
369 - .height($r('app.float.margin_36'))  
370 - .objectFit(ImageFit.Cover)  
371 - .margin({ left: $r('app.float.margin_6_negative'),right: $r('app.float.margin_6_negative')})  
372 - if(this.interactDataDTO?.likeNum != 0){  
373 - Text(NumberFormatterUtils.formatNumberWithWan(this.interactDataDTO?.likeNum))  
374 - .fontColor($r('app.color.color_999999'))  
375 - .fontSize($r('app.float.font_size_16'))  
376 - .lineHeight($r('app.float.margin_20'))  
377 - .margin({ left: $r('app.float.margin_2')})  
378 - }  
379 - Blank().layoutWeight(1)  
380 - }  
381 - .width($r('app.float.margin_154'))  
382 - .height($r('app.float.margin_40'))  
383 - .margin({top:$r('app.float.margin_16')})  
384 - .borderWidth($r('app.float.margin_1'))  
385 - .borderColor($r('app.color.color_EDEDED'))  
386 - .borderRadius($r('app.float.margin_20'))  
387 - .onClick((event: ClickEvent) => {  
388 - //点赞操作  
389 - this.toggleLikeStatus()  
390 - })  
391 - // 评论  
392 - if (this.contentDetailData?.openComment) {  
393 - Divider().strokeWidth(6).color('#f5f5f5').margin({top:$r('app.float.margin_24')})  
394 - CommentComponent({  
395 - publishCommentModel: {  
396 - targetId: String(this.contentDetailData?.newsId || ''),  
397 - targetRelId: this.contentDetailData?.reLInfo?.relId,  
398 - targetTitle: this.contentDetailData?.newsTitle,  
399 - targetRelType: this.contentDetailData?.reLInfo?.relType,  
400 - targetRelObjectId: String(this.contentDetailData?.reLInfo?.relObjectId),  
401 - keyArticle: String(this.contentDetailData?.keyArticle),  
402 - targetType: String(this.contentDetailData?.newsType),  
403 - } as publishCommentModel  
404 - })  
405 - }  
406 - Blank().layoutWeight(1) 426 + .width(CommonConstants.FULL_WIDTH)
  427 + .height(CommonConstants.FULL_HEIGHT)
  428 + .padding({ bottom: 76 })
  429 + .scrollBar(BarState.Off)
  430 + .alignSelf(ItemAlign.Start)
407 } 431 }
408 } 432 }
409 - .width(CommonConstants.FULL_WIDTH)  
410 - .height(CommonConstants.FULL_HEIGHT)  
411 - .padding({ bottom: 76 })  
412 - .scrollBar(BarState.Off)  
413 - .alignSelf(ItemAlign.Start)  
414 //底部交互区 433 //底部交互区
415 OperRowListView({ contentDetailData: this.contentDetailData 434 OperRowListView({ contentDetailData: this.contentDetailData
416 ,interactData:this.interactDataDTO 435 ,interactData:this.interactDataDTO
@@ -436,8 +455,10 @@ export struct DynamicDetailComponent { @@ -436,8 +455,10 @@ export struct DynamicDetailComponent {
436 * 请求(动态)详情页数据 455 * 请求(动态)详情页数据
437 * */ 456 * */
438 private async getContentDetailData() { 457 private async getContentDetailData() {
  458 + this.isNetConnected = NetworkUtil.isNetConnected()
439 try { 459 try {
440 let data = await MultiPictureDetailViewModel.getDetailData(this.relId, this.contentId, this.relType) 460 let data = await MultiPictureDetailViewModel.getDetailData(this.relId, this.contentId, this.relType)
  461 + this.isPageEnd = true;
441 this.contentDetailData = data[0]; 462 this.contentDetailData = data[0];
442 let dateTime = 463 let dateTime =
443 DateTimeUtils.parseDate(this.contentDetailData?.publishTime, DateTimeUtils.PATTERN_DATE_TIME_HYPHEN); 464 DateTimeUtils.parseDate(this.contentDetailData?.publishTime, DateTimeUtils.PATTERN_DATE_TIME_HYPHEN);
@@ -446,6 +467,7 @@ export struct DynamicDetailComponent { @@ -446,6 +467,7 @@ export struct DynamicDetailComponent {
446 console.log('动态详情',JSON.stringify(this.contentDetailData)) 467 console.log('动态详情',JSON.stringify(this.contentDetailData))
447 } catch (exception) { 468 } catch (exception) {
448 console.log('请求失败',JSON.stringify(exception)) 469 console.log('请求失败',JSON.stringify(exception))
  470 + this.isPageEnd = true;
449 } 471 }
450 this.getBatchAttentionStatus() 472 this.getBatchAttentionStatus()
451 this.getInteractDataStatus() 473 this.getInteractDataStatus()
@@ -67,7 +67,6 @@ export struct ImageAndTextPageComponent { @@ -67,7 +67,6 @@ export struct ImageAndTextPageComponent {
67 .padding({ left: 15, right: 15, }) 67 .padding({ left: 15, right: 15, })
68 .justifyContent(FlexAlign.SpaceBetween) 68 .justifyContent(FlexAlign.SpaceBetween)
69 .alignItems(VerticalAlign.Bottom) 69 .alignItems(VerticalAlign.Bottom)
70 - .backgroundColor(Color.White)  
71 70
72 Row() { 71 Row() {
73 Image($r('app.media.line')) 72 Image($r('app.media.line'))
@@ -87,9 +86,10 @@ export struct ImageAndTextPageComponent { @@ -87,9 +86,10 @@ export struct ImageAndTextPageComponent {
87 action: this.action, 86 action: this.action,
88 isPageEnd: $isPageEnd 87 isPageEnd: $isPageEnd
89 }) 88 })
  89 + .padding({bottom:10})
90 Column() { 90 Column() {
91 // 点赞 91 // 点赞
92 - if (this.contentDetailData[0]?.openLikes) { 92 + if (this.contentDetailData[0]?.openLikes && this.contentDetailData[0]?.likesStyle !== 4) {
93 Row() { 93 Row() {
94 Row() { 94 Row() {
95 if (this.newsStatusOfUser?.likeStatus === '1') { 95 if (this.newsStatusOfUser?.likeStatus === '1') {
@@ -107,15 +107,15 @@ export struct ImageAndTextPageComponent { @@ -107,15 +107,15 @@ export struct ImageAndTextPageComponent {
107 .height(24) 107 .height(24)
108 .margin({ right: 5 }) 108 .margin({ right: 5 })
109 } 109 }
110 - if (this.interactData?.likeNum != 0) { 110 + if (this.interactData?.likeNum > 0) {
111 Text(NumberFormatterUtils.formatNumberWithWan(this.interactData?.likeNum)) 111 Text(NumberFormatterUtils.formatNumberWithWan(this.interactData?.likeNum))
112 .fontSize(16) 112 .fontSize(16)
113 .fontColor(this.newsStatusOfUser?.likeStatus === '1' ? '#ED2800' : '#999999') 113 .fontColor(this.newsStatusOfUser?.likeStatus === '1' ? '#ED2800' : '#999999')
114 .fontWeight(500) 114 .fontWeight(500)
115 } 115 }
116 } 116 }
117 - .width(140)  
118 - .height(36) 117 + .width(154)
  118 + .height(40)
119 .justifyContent(FlexAlign.Center) 119 .justifyContent(FlexAlign.Center)
120 .alignItems(VerticalAlign.Center) 120 .alignItems(VerticalAlign.Center)
121 .borderRadius(20) 121 .borderRadius(20)
@@ -127,7 +127,8 @@ export struct ImageAndTextPageComponent { @@ -127,7 +127,8 @@ export struct ImageAndTextPageComponent {
127 this.toggleLikeStatus() 127 this.toggleLikeStatus()
128 }) 128 })
129 129
130 - }.width(CommonConstants.FULL_WIDTH).height(80) 130 + }.width(CommonConstants.FULL_WIDTH)
  131 + .padding({top:14,bottom:24})
131 .justifyContent(FlexAlign.Center) 132 .justifyContent(FlexAlign.Center)
132 } 133 }
133 if (this.recommendList.length > 0) { 134 if (this.recommendList.length > 0) {
@@ -179,6 +180,7 @@ export struct ImageAndTextPageComponent { @@ -179,6 +180,7 @@ export struct ImageAndTextPageComponent {
179 } 180 }
180 .width(CommonConstants.FULL_WIDTH) 181 .width(CommonConstants.FULL_WIDTH)
181 .height(CommonConstants.FULL_HEIGHT) 182 .height(CommonConstants.FULL_HEIGHT)
  183 + .backgroundColor(Color.White)
182 } 184 }
183 185
184 private async getDetail() { 186 private async getDetail() {
@@ -13,12 +13,9 @@ import { image } from '@kit.ImageKit'; @@ -13,12 +13,9 @@ import { image } from '@kit.ImageKit';
13 import { getPicture, imageNet2PixelMap } from '../../utils/ImageUtils'; 13 import { getPicture, imageNet2PixelMap } from '../../utils/ImageUtils';
14 import { effectKit } from '@kit.ArkGraphics2D'; 14 import { effectKit } from '@kit.ArkGraphics2D';
15 import { window } from '@kit.ArkUI'; 15 import { window } from '@kit.ArkUI';
16 -import DailyPaperTopicModel from '../../model/DailyPaperTopicModel'  
17 16
18 const TAG = 'MorningEveningPaperComponent'; 17 const TAG = 'MorningEveningPaperComponent';
19 18
20 -const PATTERN_DATE_CN_RN: string = 'yyyy年\nMM月dd日'; // 日期中包含包含中文年月日  
21 -  
22 @Entry 19 @Entry
23 @Component 20 @Component
24 export struct MorningEveningPaperComponent { 21 export struct MorningEveningPaperComponent {
@@ -102,21 +99,16 @@ export struct MorningEveningPaperComponent { @@ -102,21 +99,16 @@ export struct MorningEveningPaperComponent {
102 99
103 async aboutToAppear() { 100 async aboutToAppear() {
104 let windowHight: window.Window = await window.getLastWindow(getContext(this)); 101 let windowHight: window.Window = await window.getLastWindow(getContext(this));
105 - await windowHight.setWindowLayoutFullScreen(true);  
106 - WindowModel.shared.setWindowSystemBarProperties({ statusBarContentColor: '#ffffff', }) 102 + // await windowHight.setWindowLayoutFullScreen(true);
  103 + // WindowModel.shared.setWindowSystemBarProperties({ statusBarContentColor: '#ffffff', })
107 this.topSafeHeight = px2vp(windowHight.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM).topRect.height) 104 this.topSafeHeight = px2vp(windowHight.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM).topRect.height)
108 105
109 - let dailyPaperTopicPageId = await SPHelper.default.getSync('dailyPaperTopicPageId', "") as String 106 + const dailyPaperTopicPageId = await SPHelper.default.getSync('dailyPaperTopicPageId', "") as String
110 console.info(TAG, `aboutToAppear = ` + dailyPaperTopicPageId) 107 console.info(TAG, `aboutToAppear = ` + dailyPaperTopicPageId)
111 const currentTime = new Date().getTime() 108 const currentTime = new Date().getTime()
112 Logger.info(TAG, "currentTime = " + currentTime) 109 Logger.info(TAG, "currentTime = " + currentTime)
113 Logger.info(TAG, `currentTime = ${currentTime}`) 110 Logger.info(TAG, `currentTime = ${currentTime}`)
114 try { 111 try {
115 - let dailyPaperTopicBean = await DailyPaperTopicModel.getDailyPaperTopic()  
116 - if (dailyPaperTopicBean) {  
117 - dailyPaperTopicPageId = '' + dailyPaperTopicBean.id  
118 - Logger.info(TAG, "pageID = " + dailyPaperTopicPageId)  
119 - }  
120 112
121 // let pageInfoBean = await MorningEveningViewModel.getMorningEveningPageInfo("" + this.dailyPaperTopicPageId) 113 // let pageInfoBean = await MorningEveningViewModel.getMorningEveningPageInfo("" + this.dailyPaperTopicPageId)
122 let pageInfoBean = await MorningEveningViewModel.getMorningEveningPageInfo("" + dailyPaperTopicPageId) //"25091" 114 let pageInfoBean = await MorningEveningViewModel.getMorningEveningPageInfo("" + dailyPaperTopicPageId) //"25091"
@@ -157,7 +149,10 @@ export struct MorningEveningPaperComponent { @@ -157,7 +149,10 @@ export struct MorningEveningPaperComponent {
157 async setComponentBgColor(imageUrl: string) { 149 async setComponentBgColor(imageUrl: string) {
158 // 图片转换为PixelMap对象 150 // 图片转换为PixelMap对象
159 // const pixelMap: image.PixelMap = await image2PixelMap(item.icon); 151 // const pixelMap: image.PixelMap = await image2PixelMap(item.icon);
160 - const imageSource: image.ImageSource | undefined = await getPicture(imageUrl); 152 + Logger.debug(TAG, "compInfoBean compStyle = " + imageUrl)
  153 +
  154 + const imageSource: image.ImageSource | undefined = await getPicture(imageUrl)
  155 +
161 if (imageSource) { 156 if (imageSource) {
162 this.pickColor(imageSource) 157 this.pickColor(imageSource)
163 158
@@ -172,6 +167,8 @@ export struct MorningEveningPaperComponent { @@ -172,6 +167,8 @@ export struct MorningEveningPaperComponent {
172 const pixelMap: image.PixelMap = await imageNet2PixelMap(imageSource); 167 const pixelMap: image.PixelMap = await imageNet2PixelMap(imageSource);
173 effectKit.createColorPicker(pixelMap, (err, colorPicker) => { 168 effectKit.createColorPicker(pixelMap, (err, colorPicker) => {
174 let color = colorPicker.getMainColorSync(); 169 let color = colorPicker.getMainColorSync();
  170 + Logger.debug(TAG, "compInfoBean compStyle = " + color)
  171 +
175 // 将取色器选取的color示例转换为十六进制颜色代码 172 // 将取色器选取的color示例转换为十六进制颜色代码
176 this.mixedBgColor = "#" + color.alpha.toString(16) + color.red.toString(16) + color.green.toString(16) + color.blue.toString(16); 173 this.mixedBgColor = "#" + color.alpha.toString(16) + color.red.toString(16) + color.green.toString(16) + color.blue.toString(16);
177 Logger.debug(TAG, "compInfoBean compStyle = " + this.mixedBgColor) 174 Logger.debug(TAG, "compInfoBean compStyle = " + this.mixedBgColor)
@@ -181,9 +178,9 @@ export struct MorningEveningPaperComponent { @@ -181,9 +178,9 @@ export struct MorningEveningPaperComponent {
181 } 178 }
182 179
183 async aboutToDisappear() { 180 async aboutToDisappear() {
184 - let windowHight: window.Window = await window.getLastWindow(getContext(this));  
185 - await windowHight.setWindowLayoutFullScreen(false);  
186 - WindowModel.shared.setWindowSystemBarProperties({ statusBarContentColor: '#000000', }) 181 + // let windowHight: window.Window = await window.getLastWindow(getContext(this));
  182 + // await windowHight.setWindowLayoutFullScreen(false);
  183 + // WindowModel.shared.setWindowSystemBarProperties({ statusBarContentColor: '#000000', })
187 } 184 }
188 185
189 onPageHide() { 186 onPageHide() {
@@ -212,25 +209,19 @@ export struct MorningEveningPaperComponent { @@ -212,25 +209,19 @@ export struct MorningEveningPaperComponent {
212 }) 209 })
213 } 210 }
214 } 211 }
215 - // .backgroundColor('#FFF1F3F5')  
216 - // .backgroundColor(Color.Blue)  
217 .height('100%') 212 .height('100%')
218 213
219 - // .margin({ left: 12, right: 12 })  
220 -  
221 - PaperTitleComponent()// PaperTitleComponent({  
222 - // // title: this.morningEveningPaperDTO?.topicInfo?.title ?? "",  
223 - // title: this.title ?? "",  
224 - // // subtitle: this.morningEveningPaperDTO?.topicInfo?.topicDate ?? ''  
225 - // subtitle: this.subTitle  
226 - // })  
227 - // .margin({ left: 14, right: 14 }) 214 + PaperTitleComponent()
228 } 215 }
229 .width('100%') 216 .width('100%')
  217 + .height('100%')
  218 + .padding({
  219 + top: this.topSafeHeight
  220 + })
230 // .backgroundColor(Color.Black) 221 // .backgroundColor(Color.Black)
231 // .backgroundColor(this.pageInfoBean?.backgroundColor ?? Color.Black) 222 // .backgroundColor(this.pageInfoBean?.backgroundColor ?? Color.Black)
232 .backgroundColor(this.mixedBgColor ?? Color.Black) 223 .backgroundColor(this.mixedBgColor ?? Color.Black)
233 - .padding({ top: this.topSafeHeight }) 224 +
234 } 225 }
235 226
236 @Builder 227 @Builder
@@ -38,14 +38,17 @@ export struct Card5Component { @@ -38,14 +38,17 @@ export struct Card5Component {
38 ] 38 ]
39 }) 39 })
40 Row() { 40 Row() {
41 - Text(this.contentDTO.newsTitle)  
42 - .width(CommonConstants.FULL_WIDTH)  
43 - .height(CommonConstants.FULL_HEIGHT)  
44 - .fontColor(Color.White)  
45 - .fontSize($r('app.float.normal_text_size'))  
46 - .fontWeight(FontWeight.Bold)  
47 - .maxLines(2)  
48 - .align(Alignment.Bottom) 41 + if (this.titleShowPolicy === 1) {
  42 + Text(this.contentDTO.newsTitle)
  43 + .width(CommonConstants.FULL_WIDTH)
  44 + .height(CommonConstants.FULL_HEIGHT)
  45 + .fontColor(Color.White)
  46 + .fontSize($r('app.float.normal_text_size'))
  47 + .fontWeight(FontWeight.Bold)
  48 + .maxLines(2)
  49 + .align(Alignment.Bottom)
  50 + }
  51 +
49 } 52 }
50 .justifyContent(FlexAlign.Start) 53 .justifyContent(FlexAlign.Start)
51 .height(40) 54 .height(40)
1 -import { CompDTO, ContentDTO, Params } from 'wdBean'; 1 +import { CompDTO, ContentDTO, Params, Action } from 'wdBean';
2 import { WDRouterPage, WDRouterRule } from 'wdRouter/Index'; 2 import { WDRouterPage, WDRouterRule } from 'wdRouter/Index';
3 import { postInteractAccentionOperateParams } from 'wdBean'; 3 import { postInteractAccentionOperateParams } from 'wdBean';
4 import { PageRepository } from '../../repository/PageRepository'; 4 import { PageRepository } from '../../repository/PageRepository';
@@ -16,6 +16,7 @@ const TAG = 'Zh_Single_Row-03' @@ -16,6 +16,7 @@ const TAG = 'Zh_Single_Row-03'
16 @Component 16 @Component
17 export struct ZhSingleRow03 { 17 export struct ZhSingleRow03 {
18 @State compDTO: CompDTO = {} as CompDTO 18 @State compDTO: CompDTO = {} as CompDTO
  19 + @State isEndEdge: boolean = false;
19 scroller: Scroller = new Scroller() 20 scroller: Scroller = new Scroller()
20 21
21 format(timeNum: number) { 22 format(timeNum: number) {
@@ -23,7 +24,8 @@ export struct ZhSingleRow03 { @@ -23,7 +24,8 @@ export struct ZhSingleRow03 {
23 const parseDate = new Date(timeNum).setHours(0,0,0,0); 24 const parseDate = new Date(timeNum).setHours(0,0,0,0);
24 if (todayDate === parseDate) { 25 if (todayDate === parseDate) {
25 return '今天' 26 return '今天'
26 - } else { const str = DateTimeUtils.formatDate(timeNum, 'MM月dd日') 27 + } else {
  28 + const str = DateTimeUtils.formatDate(timeNum, 'MM月dd日')
27 const month: string = str.split('月')[0]; 29 const month: string = str.split('月')[0];
28 if (month[0] === "0") { 30 if (month[0] === "0") {
29 return str.slice(1) 31 return str.slice(1)
@@ -60,7 +62,6 @@ export struct ZhSingleRow03 { @@ -60,7 +62,6 @@ export struct ZhSingleRow03 {
60 Flex({justifyContent: FlexAlign.SpaceBetween}){ 62 Flex({justifyContent: FlexAlign.SpaceBetween}){
61 Row() { 63 Row() {
62 Text(this.format(new Date(item.liveInfo.liveStartTime).getTime())) 64 Text(this.format(new Date(item.liveInfo.liveStartTime).getTime()))
63 - // Text(item.liveInfo.liveStartTime.split(' ')[0].slice(5).split('-').join('月')+'日')  
64 .margin({right: 6}) 65 .margin({right: 6})
65 .fontColor(0x000000) 66 .fontColor(0x000000)
66 .fontSize(13) 67 .fontSize(13)
@@ -106,6 +107,19 @@ export struct ZhSingleRow03 { @@ -106,6 +107,19 @@ export struct ZhSingleRow03 {
106 } 107 }
107 .scrollable(ScrollDirection.Horizontal) 108 .scrollable(ScrollDirection.Horizontal)
108 .scrollBar(BarState.Off) 109 .scrollBar(BarState.Off)
  110 + .onScrollEdge((side: Edge) => {
  111 + if (side === Edge.End) {
  112 + this.isEndEdge = true;
  113 + }
  114 + })
  115 + .onScrollStop(() => {
  116 + if (this.isEndEdge) {
  117 + this.jumpToMore();
  118 + }
  119 + })
  120 + .onScroll((xOffset: number, yOffset: number) => {
  121 + this.isEndEdge = false;
  122 + })
109 } 123 }
110 .padding({ 124 .padding({
111 left: $r('app.float.card_comp_pagePadding_lf'), 125 left: $r('app.float.card_comp_pagePadding_lf'),
@@ -138,30 +152,37 @@ export struct ZhSingleRow03 { @@ -138,30 +152,37 @@ export struct ZhSingleRow03 {
138 Image($r("app.media.more")) 152 Image($r("app.media.more"))
139 .width(14) 153 .width(14)
140 .height(14) 154 .height(14)
141 - .onClick(() => {  
142 - // TODO 跳转的页面,定义的入参可能不合理。推荐id: 41  
143 - let params = {'index': "1"} as Record<string, string>  
144 - WDRouterRule.jumpWithPage(WDRouterPage.followListPage, params)  
145 - })  
146 } 155 }
147 .padding({ 156 .padding({
148 right: $r('app.float.card_comp_pagePadding_lf'), 157 right: $r('app.float.card_comp_pagePadding_lf'),
149 }) 158 })
150 - .visibility(this.compDTO?.objectType === '0' || this.compDTO?.objectType === '' ? Visibility.None : Visibility.Visible)  
151 .onClick(() => { 159 .onClick(() => {
152 - if (this.compDTO?.objectType === '11') {  
153 - ProcessUtils.jumpChannelTab(this.compDTO.objectId, this.compDTO.pageId as string)  
154 - } else if (this.compDTO?.objectType === '5') {  
155 - ProcessUtils._gotoSpecialTopic(this.compDTO.linkUrl)  
156 - } else if (this.compDTO?.objectType === '6') {  
157 - ProcessUtils._gotoDefaultWeb(this.compDTO.linkUrl)  
158 - } 160 + this.jumpToMore();
159 }) 161 })
160 } 162 }
161 .justifyContent(FlexAlign.SpaceBetween) 163 .justifyContent(FlexAlign.SpaceBetween)
162 .margin({ top: 8, bottom: 8 }) 164 .margin({ top: 8, bottom: 8 })
163 .width('100%') 165 .width('100%')
164 } 166 }
  167 +
  168 + private jumpToLiveMorePage() {
  169 + WDRouterRule.jumpWithPage(WDRouterPage.reserveMorePage)
  170 + }
  171 +
  172 + private jumpToMore() {
  173 + if (this.compDTO.linkUrl) {
  174 + let taskAction: Action = {
  175 + type: 'JUMP_H5_BY_WEB_VIEW',
  176 + params: {
  177 + url: this.compDTO.linkUrl
  178 + } as Params,
  179 + };
  180 + WDRouterRule.jumpWithAction(taskAction)
  181 + } else {
  182 + this.jumpToLiveMorePage()
  183 + }
  184 + }
  185 +
165 } 186 }
166 187
167 @Extend(Text) 188 @Extend(Text)
@@ -199,7 +199,9 @@ struct EditUserInfoPage { @@ -199,7 +199,9 @@ struct EditUserInfoPage {
199 getAccountOwnerInfo(){ 199 getAccountOwnerInfo(){
200 EditInfoViewModel.queryAccountOwnerInfo(1,getContext(this)).then((editModel) => { 200 EditInfoViewModel.queryAccountOwnerInfo(1,getContext(this)).then((editModel) => {
201 this.listData = [] 201 this.listData = []
202 - this.headerImg = editModel.userExtend.headPhotoUrl 202 + if (editModel.userExtend.headPhotoUrl) {
  203 + this.headerImg = editModel.userExtend.headPhotoUrl
  204 + }
203 this.currentUserInfo = editModel as editModel; 205 this.currentUserInfo = editModel as editModel;
204 this.listData.push(...EditInfoViewModel.getEditListInfo(editModel)) 206 this.listData.push(...EditInfoViewModel.getEditListInfo(editModel))
205 }); 207 });
1 import { CommonConstants } from 'wdConstant' 1 import { CommonConstants } from 'wdConstant'
2 -import { ContentDTO, CompDTO } from 'wdBean'  
3 -import { ProcessUtils } from 'wdRouter'; 2 +import { ContentDTO, CompDTO, Action, Params } from 'wdBean'
  3 +import { ProcessUtils, WDRouterRule, WDRouterPage } from 'wdRouter';
4 4
5 @Component 5 @Component
6 export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { 6 export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent {
@@ -31,12 +31,16 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { @@ -31,12 +31,16 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent {
31 } 31 }
32 .visibility(this.compDTO?.objectType === '0' || this.compDTO?.objectType === '' ? Visibility.None : Visibility.Visible) 32 .visibility(this.compDTO?.objectType === '0' || this.compDTO?.objectType === '' ? Visibility.None : Visibility.Visible)
33 .onClick(() => { 33 .onClick(() => {
34 - if (this.compDTO?.objectType === '11') {  
35 - ProcessUtils.jumpChannelTab(this.compDTO.objectId, this.compDTO.pageId as string)  
36 - } else if (this.compDTO?.objectType === '5') {  
37 - ProcessUtils._gotoSpecialTopic(this.compDTO.linkUrl)  
38 - } else if (this.compDTO?.objectType === '6') {  
39 - ProcessUtils._gotoDefaultWeb(this.compDTO.linkUrl) 34 + if (this.compDTO.linkUrl) {
  35 + let taskAction: Action = {
  36 + type: 'JUMP_H5_BY_WEB_VIEW',
  37 + params: {
  38 + url: this.compDTO.linkUrl
  39 + } as Params,
  40 + };
  41 + WDRouterRule.jumpWithAction(taskAction)
  42 + } else {
  43 + this.jumpToLiveMorePage()
40 } 44 }
41 }) 45 })
42 46
@@ -95,5 +99,16 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { @@ -95,5 +99,16 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent {
95 // .backgroundColor($r("app.color.color_FE4B05")) 99 // .backgroundColor($r("app.color.color_FE4B05"))
96 .margin({ bottom: 8 }) 100 .margin({ bottom: 8 })
97 } 101 }
  102 +
  103 + private jumpToLiveMorePage() {
  104 + // let taskAction: Action = {
  105 + // type: 'JUMP_INNER_NEW_PAGE',
  106 + // params: {
  107 + // pageID: 'LIVE_MORE_PAGE'
  108 + // } as Params,
  109 + // };
  110 + // WDRouterRule.jumpWithAction(taskAction)
  111 + WDRouterRule.jumpWithPage(WDRouterPage.liveMorePage)
  112 + }
98 } 113 }
99 114
@@ -22,6 +22,7 @@ import { HttpUrlUtils } from 'wdNetwork/Index'; @@ -22,6 +22,7 @@ import { HttpUrlUtils } from 'wdNetwork/Index';
22 import { WDRouterPage, WDRouterRule } from 'wdRouter/Index'; 22 import { WDRouterPage, WDRouterRule } from 'wdRouter/Index';
23 import { PageRepository } from '../../repository/PageRepository'; 23 import { PageRepository } from '../../repository/PageRepository';
24 import { SpConstants } from 'wdConstant/Index'; 24 import { SpConstants } from 'wdConstant/Index';
  25 +import { WDShare } from 'wdShare/Index';
25 26
26 const TAG = 'OperRowListView'; 27 const TAG = 'OperRowListView';
27 28
@@ -49,13 +50,16 @@ export struct OperRowListView { @@ -49,13 +50,16 @@ export struct OperRowListView {
49 @State interactData: InteractDataDTO = {} as InteractDataDTO 50 @State interactData: InteractDataDTO = {} as InteractDataDTO
50 @State newsStatusOfUser: batchLikeAndCollectResult | undefined = undefined // 点赞、收藏状态 51 @State newsStatusOfUser: batchLikeAndCollectResult | undefined = undefined // 点赞、收藏状态
51 @State likeBean: Record<string, string> = {} 52 @State likeBean: Record<string, string> = {}
52 - @State audioUrl: string= '' 53 + @State audioUrl: string = ''
  54 + @State bgColor: ResourceColor = Color.White
53 @State bottomSafeHeight: number = AppStorage.get<number>('bottomSafeHeight') || 0 55 @State bottomSafeHeight: number = AppStorage.get<number>('bottomSafeHeight') || 0
54 needLike: boolean = true 56 needLike: boolean = true
55 57
56 // async aboutToAppear() { 58 // async aboutToAppear() {
57 async onDetailUpdated() { 59 async onDetailUpdated() {
58 - if (!this.contentDetailData) return 60 + if (!this.contentDetailData) {
  61 + return
  62 + }
59 const user_id = await SPHelper.default.get(SpConstants.USER_ID, '') 63 const user_id = await SPHelper.default.get(SpConstants.USER_ID, '')
60 if (user_id) { 64 if (user_id) {
61 this.getInteractDataStatus() 65 this.getInteractDataStatus()
@@ -123,7 +127,7 @@ export struct OperRowListView { @@ -123,7 +127,7 @@ export struct OperRowListView {
123 .justifyContent(FlexAlign.Start) 127 .justifyContent(FlexAlign.Start)
124 } 128 }
125 .width('100%') 129 .width('100%')
126 - .backgroundColor(Color.White) 130 + .backgroundColor(this.bgColor)
127 .padding({ 131 .padding({
128 top: 10, 132 top: 10,
129 // bottom: `${this.bottomSafeHeight}px` 133 // bottom: `${this.bottomSafeHeight}px`
@@ -173,7 +177,8 @@ export struct OperRowListView { @@ -173,7 +177,8 @@ export struct OperRowListView {
173 builderCollect() { 177 builderCollect() {
174 Column() { 178 Column() {
175 Stack({ alignContent: Alignment.TopEnd }) { 179 Stack({ alignContent: Alignment.TopEnd }) {
176 - Image(this.newsStatusOfUser?.collectStatus == 1 ? $r('app.media.ic_collect_check') : $r('app.media.iv_live_comment_collect_un')) 180 + Image(this.newsStatusOfUser?.collectStatus == 1 ? $r('app.media.ic_collect_check') :
  181 + $r('app.media.iv_live_comment_collect_un'))
177 .width(24) 182 .width(24)
178 .height(24) 183 .height(24)
179 .interpolation(ImageInterpolation.High) 184 .interpolation(ImageInterpolation.High)
@@ -225,12 +230,17 @@ export struct OperRowListView { @@ -225,12 +230,17 @@ export struct OperRowListView {
225 .aspectRatio(1) 230 .aspectRatio(1)
226 .interpolation(ImageInterpolation.High) 231 .interpolation(ImageInterpolation.High)
227 .onClick((event: ClickEvent) => { 232 .onClick((event: ClickEvent) => {
228 - ToastUtils.showToast('分享为公共方法,待开发', 1000); 233 + // ToastUtils.showToast('分享为公共方法,待开发', 1000);
  234 + this.share()
229 }) 235 })
230 } 236 }
231 .width(42) 237 .width(42)
232 } 238 }
233 239
  240 + share() {
  241 + WDShare.shareContent(this.contentDetailData)
  242 + }
  243 +
234 // 已登录->查询用户对作品收藏状态 244 // 已登录->查询用户对作品收藏状态
235 private async getInteractDataStatus() { 245 private async getInteractDataStatus() {
236 try { 246 try {
@@ -273,7 +283,7 @@ export struct OperRowListView { @@ -273,7 +283,7 @@ export struct OperRowListView {
273 PageRepository.postExecuteCollectRecord(params).then(res => { 283 PageRepository.postExecuteCollectRecord(params).then(res => {
274 if (this.newsStatusOfUser) { 284 if (this.newsStatusOfUser) {
275 this.newsStatusOfUser.collectStatus = this.newsStatusOfUser?.collectStatus === 1 ? 0 : 1 285 this.newsStatusOfUser.collectStatus = this.newsStatusOfUser?.collectStatus === 1 ? 0 : 1
276 - if(this.newsStatusOfUser.collectStatus === 1){ 286 + if (this.newsStatusOfUser.collectStatus === 1) {
277 promptAction.showToast({ message: '收藏成功' }) 287 promptAction.showToast({ message: '收藏成功' })
278 } 288 }
279 this.queryContentInteractCount() 289 this.queryContentInteractCount()
@@ -299,7 +309,8 @@ export struct OperRowListView { @@ -299,7 +309,8 @@ export struct OperRowListView {
299 this.interactData.collectNum = NumberFormatterUtils.formatNumberWithWan(res.data[0]?.collectNum) 309 this.interactData.collectNum = NumberFormatterUtils.formatNumberWithWan(res.data[0]?.collectNum)
300 this.interactData.commentNum = NumberFormatterUtils.formatNumberWithWan(res.data[0]?.commentNum) 310 this.interactData.commentNum = NumberFormatterUtils.formatNumberWithWan(res.data[0]?.commentNum)
301 // 评论组件需要数据 311 // 评论组件需要数据
302 - if (Number.parseInt(this.interactData.commentNum) > Number.parseInt(this.publishCommentModel.totalCommentNumer)) { 312 + if (Number.parseInt(this.interactData.commentNum) >
  313 + Number.parseInt(this.publishCommentModel.totalCommentNumer)) {
303 this.publishCommentModel.totalCommentNumer = this.interactData.commentNum + '' || '0' 314 this.publishCommentModel.totalCommentNumer = this.interactData.commentNum + '' || '0'
304 } 315 }
305 } 316 }
@@ -200,7 +200,7 @@ export class PageRepository { @@ -200,7 +200,7 @@ export class PageRepository {
200 * topicId:专题id 200 * topicId:专题id
201 * */ 201 * */
202 static getMorningEveningCompInfoUrl(pageId: number, groupId: number, refreshTime: string, topicId: string, pageNum: number, pageSize: number) { 202 static getMorningEveningCompInfoUrl(pageId: number, groupId: number, refreshTime: string, topicId: string, pageNum: number, pageSize: number) {
203 - let url = HttpUrlUtils.getHost() + HttpUrlUtils.MORNING_EVENING_COMP_INFO_PATH; 203 + let url = HttpUrlUtils.getHost() + HttpUrlUtils.COMP_PATH;
204 url = url + "?loadStrategy=first_load&pageNum=" + pageNum + "&refreshTime=" + refreshTime + "&pageId=" 204 url = url + "?loadStrategy=first_load&pageNum=" + pageNum + "&refreshTime=" + refreshTime + "&pageId="
205 + pageId + "&channelStrategy=2&groupId=" + groupId + "&topicId=" + topicId + "&pageSize=" + pageSize; 205 + pageId + "&channelStrategy=2&groupId=" + groupId + "&topicId=" + topicId + "&pageSize=" + pageSize;
206 Logger.info(TAG, "getMorningEveningCompInfoUrl url = " + url) 206 Logger.info(TAG, "getMorningEveningCompInfoUrl url = " + url)
@@ -391,7 +391,7 @@ export class PageRepository { @@ -391,7 +391,7 @@ export class PageRepository {
391 * */ 391 * */
392 static fetchBroadcastCompInfo(pageId: number, groupId: number, refreshTime: string, topicId: 392 static fetchBroadcastCompInfo(pageId: number, groupId: number, refreshTime: string, topicId:
393 string, channelId: string) { 393 string, channelId: string) {
394 - let url = HttpUrlUtils.getHost() + HttpUrlUtils.MORNING_EVENING_COMP_INFO_PATH; 394 + let url = HttpUrlUtils.getHost() + HttpUrlUtils.COMP_PATH;
395 url = `${url}?topicId=${topicId}&channelStrategy=2&groupId=${groupId}&refreshTime=${refreshTime}&pageSize=50&recommend=0&pageId=${pageId}&loadStrategy=first_load&pageNum=1&channelId=${channelId}` 395 url = `${url}?topicId=${topicId}&channelStrategy=2&groupId=${groupId}&refreshTime=${refreshTime}&pageSize=50&recommend=0&pageId=${pageId}&loadStrategy=first_load&pageNum=1&channelId=${channelId}`
396 Logger.info(TAG, "getMorningEveningCompInfoUrl url = " + url) 396 Logger.info(TAG, "getMorningEveningCompInfoUrl url = " + url)
397 return WDHttp.get<ResponseDTO<CompInfoBean>>(url) 397 return WDHttp.get<ResponseDTO<CompInfoBean>>(url)
@@ -90,7 +90,7 @@ export async function image2PixelMap(icon: string): Promise<image.PixelMap> { @@ -90,7 +90,7 @@ export async function image2PixelMap(icon: string): Promise<image.PixelMap> {
90 // 假设http和image是之前正确导入或定义的模块 90 // 假设http和image是之前正确导入或定义的模块
91 export async function getPicture(imageUrl: string): Promise<image.ImageSource | undefined> { 91 export async function getPicture(imageUrl: string): Promise<image.ImageSource | undefined> {
92 // const url: string = 'https://rmrbcmsonline.peopleapp.com/upload/image/202312/rmrb_86691703594454.png'; 92 // const url: string = 'https://rmrbcmsonline.peopleapp.com/upload/image/202312/rmrb_86691703594454.png';
93 - const url: string = 'https://rmrbcmsonline.peopleapp.com/upload/image/201912/rmrb_24141576767688.png?x-oss-process=image/resize,w_550/quality,q_90/format,jpg'; 93 + const url: string = imageUrl;
94 94
95 return new Promise((resolve, reject) => { 95 return new Promise((resolve, reject) => {
96 http.createHttp().request(url, (error: BusinessError, data: http.HttpResponse) => { 96 http.createHttp().request(url, (error: BusinessError, data: http.HttpResponse) => {
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="205" height="12" viewBox="0 0 205 12"><g><g><rect x="0" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="3" y="5.5" width="1" height="1" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="6" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="9" y="1" width="1" height="10" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="12" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="15" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="18" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="21" y="0" width="1" height="12" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="24" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="27" y="4" width="1" height="4" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="30" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="33" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="36" y="2" width="1" height="8" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="39" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="42" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="45" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="48" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="51" y="1" width="1" height="10" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="54" y="4" width="1" height="4" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="57" y="2.5" width="1" height="7" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="60" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="63" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="66" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="69" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="72" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="75" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="78" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="81" y="2" width="1" height="8" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="84" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="87" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="90" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="93" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="96" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="99" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="102" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="105" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="108" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="111" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="114" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="117" y="2.5" width="1" height="7" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="120" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="123" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="126" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="129" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="132" y="2.5" width="1" height="7" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="135" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="138" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="141" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="144" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="147" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="150" y="5.5" width="1" height="1" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="153" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="156" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="159" y="1" width="1" height="10" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="162" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="165" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="168" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="171" y="5.5" width="1" height="1" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="174" y="2" width="1" height="8" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="177" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="180" y="0" width="1" height="12" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="183" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="186" y="3.5" width="1" height="5" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="189" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="192" y="5.5" width="1" height="1" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="195" y="2" width="1" height="8" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="198" y="4.5" width="1" height="3" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="201" y="3" width="1" height="6" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g><g><rect x="204" y="5" width="1" height="2" rx="0.20000000298023224" fill="#ED2800" fill-opacity="1"/></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="44" height="44" viewBox="0 0 44 44"><defs><clipPath id="master_svg0_13405_092216"><rect x="13" y="12" width="20" height="20" rx="0"/></clipPath></defs><g><g><ellipse cx="22" cy="22" rx="22" ry="22" fill="#262626" fill-opacity="1"/></g><g clip-path="url(#master_svg0_13405_092216)"><g><path d="M17.16650390625,14.793388437499999L17.16650390625,29.2046234375C17.16650390625,29.3342234375,17.30783290625,29.4142234375,17.41891990625,29.3475234375L29.42830390625,22.1419434375C29.53620390625,22.0772034375,29.53620390625,21.9208434375,29.42830390625,21.8561034375L17.41891990625,14.6504734375C17.30783290625,14.5838205375,17.16650390625,14.6638394375,17.16650390625,14.793388437499999" fill-rule="evenodd" fill="#ED2800" fill-opacity="1"/></g></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="44" height="44" viewBox="0 0 44 44"><g><g><ellipse cx="22" cy="22" rx="22" ry="22" fill="#262626" fill-opacity="1"/></g><g><g><path d="M15.248507,13.563701539714966L18.84851,14.463701379714966C18.93754,14.485960379714966,19,14.565955379714966,19,14.657725379714966L19,31.245415379714967C19,31.375515379714965,18.87772,31.471015379714967,18.75149,31.439415379714966L15.151493,30.539415379714967C15.0624595,30.517215379714965,15,30.437215379714967,15,30.345415379714964L15,13.757729379714966C15,13.627615879714966,15.122278,13.532144179714965,15.248507,13.563701539714966M25.2485,13.563701539714966L28.8485,14.463701379714966C28.9375,14.485960379714966,29,14.565955379714966,29,14.657725379714966L29,31.245415379714967C29,31.375515379714965,28.8777,31.471015379714967,28.7515,31.439415379714966L25.1515,30.539415379714967C25.0625,30.517215379714965,25,30.437215379714967,25,30.345415379714964L25,13.757729379714966C25,13.627615879714966,25.1223,13.532144179714965,25.2485,13.563701539714966" fill-rule="evenodd" fill="#ED2800" fill-opacity="1"/></g></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="12" height="12" viewBox="0 0 12 12"><g><g></g><g><path d="M5.399900000000001,6.64951171875L5.399900000000001,10.39951171875Q5.399900000000001,10.41940171875,5.40751,10.43778171875Q5.4151299999999996,10.45615171875,5.42919,10.47022171875Q5.44326,10.48428171875,5.4616299999999995,10.49190171875Q5.48001,10.49951171875,5.4999,10.49951171875L6.4499,10.49951171875Q6.46979,10.49951171875,6.48817,10.49190171875Q6.50655,10.48428171875,6.52061,10.47022171875Q6.53468,10.45615171875,6.54229,10.43778171875Q6.5499,10.41940171875,6.5499,10.39951171875L6.5499,6.64951171875L10.4,6.64951171875Q10.41989,6.64951171875,10.43827,6.64190171875Q10.45664,6.63429171875,10.47071,6.62022171875Q10.48477,6.60615171875,10.49239,6.58778171875Q10.5,6.56940171875,10.5,6.54951171875L10.5,5.59951171875Q10.5,5.57962171875,10.49239,5.56124171875Q10.48477,5.54286171875,10.47071,5.52880171875Q10.45664,5.51473171875,10.43827,5.50712171875Q10.41989,5.49951171875,10.4,5.49951171875L6.5499,5.49951171875L6.5499,1.59951171875Q6.5499,1.57962051875,6.54229,1.56124341875Q6.53468,1.54286621875,6.52061,1.52880101875Q6.50655,1.51473581875,6.48817,1.50712376875Q6.46979,1.49951171875,6.4499,1.49951171875L5.4999,1.49951171875Q5.48001,1.49951171875,5.4616299999999995,1.50712376875Q5.44326,1.51473581875,5.42919,1.52880101875Q5.4151299999999996,1.54286621875,5.40751,1.5612433187499999Q5.399900000000001,1.57962051875,5.399900000000001,1.59951171875L5.399900000000001,5.49951171875L1.6,5.49951171875Q1.5801091,5.49951171875,1.5617319,5.50712171875Q1.5433547,5.51473171875,1.5292894,5.52880171875Q1.5152241,5.54286171875,1.50761207,5.56124171875Q1.5,5.57962171875,1.5,5.59951171875L1.5,6.54951171875Q1.5,6.56940171875,1.50761207,6.58778171875Q1.5152241,6.60615171875,1.5292894,6.62022171875Q1.5433547,6.63429171875,1.5617319,6.64190171875Q1.5801091,6.64951171875,1.6,6.64951171875L5.399900000000001,6.64951171875Z" fill-rule="evenodd" fill="#cccccc" fill-opacity="1"/></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="14" height="14" viewBox="0 0 14 14"><g><g><path d="M11.575,5.25L13.8,5.25C13.91046,5.25,14,5.3395431,14,5.45L14,13.8C14,13.91046,13.91046,14,13.8,14L11.575,14C11.4645431,14,11.375,13.91046,11.375,13.8L11.375,5.45C11.375,5.3395431,11.4645431,5.25,11.575,5.25ZM12.375,13L12.375,6.25L13,6.25L13,13L12.375,13Z" fill-rule="evenodd" fill="#aaa" fill-opacity="1"/></g><g><rect x="0.5" y="0.5" width="11.25" height="13" rx="-0.29999999701976776" fill-opacity="0" stroke-opacity="1" stroke="#aaa" fill="none" stroke-width="1"/></g><g><rect x="3.125" y="3.125" width="6" height="2.5" rx="-0.29999999701976776" fill-opacity="0" stroke-opacity="1" stroke="#aaa" fill="none" stroke-width="1"/></g><g><rect x="2.625" y="7.875" width="7" height="1" rx="0.20000000298023224" fill="#aaa" fill-opacity="1"/></g><g><rect x="2.625" y="10.5" width="4.375" height="1" rx="0.20000000298023224" fill="#aaa" fill-opacity="1"/></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="16" height="16" viewBox="0 0 16 16"><g transform="matrix(-1,0,0,1,32,0)"><g></g><g><path d="M25.52813173828125,2.1962385625C25.78848173828125,1.9358891625,26.210591738281252,1.9358891625,26.47094173828125,2.1962385625C26.71269173828125,2.4379915625,26.72996173828125,2.8192225625000003,26.52274173828125,3.0808965625L26.47094173828125,3.1390465625L21.61033173828125,7.9992265625L26.47094173828125,12.8593765625C26.71269173828125,13.1011765625,26.72996173828125,13.4823765625,26.52274173828125,13.7440765625L26.47094173828125,13.8021765625C26.229181738281248,14.0439765625,25.84795173828125,14.0612765625,25.58627173828125,13.8539765625L25.52813173828125,13.8021765625L20.19654373828125,8.470636562500001C19.95479073828125,8.2288765625,19.93752263828125,7.8476465625,20.14473973828125,7.5859665625L20.19654373828125,7.5278265625L25.52813173828125,2.1962385625Z" fill-rule="evenodd" fill="#AAAAAA" fill-opacity="1"/></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="16" height="16" viewBox="0 0 16 16"><g><g transform="matrix(-1,0,0,1,22.797557830810547,0)"><path d="M17.302778915405273,2.0074672451339723L11.457366515405273,7.852883645133972Q11.398519692405273,7.911733645133972,11.398789225305274,7.994953645133972Q11.398519692405273,8.078173645133973,11.457366515405273,8.137023645133972L17.302778915405273,13.982453645133972Q17.330908915405274,14.010553645133973,17.367668915405275,14.025753645133973Q17.404418915405273,14.041053645133973,17.444198915405273,14.041053645133973Q17.483988915405273,14.041053645133973,17.520738915405275,14.025753645133973Q17.557498915405272,14.010553645133973,17.585628915405273,13.982453645133972L18.387008915405275,13.181053645133971Q18.415138915405272,13.152953645133973,18.430368915405275,13.116153645133972Q18.445588915405274,13.079453645133972,18.445588915405274,13.039653645133972Q18.445588915405274,12.999853645133973,18.430368915405275,12.963053645133972Q18.415138915405272,12.926353645133972,18.387008915405275,12.898253645133972L13.483758915405273,7.994953645133972L18.387008915405275,3.0916936451339723Q18.415138915405272,3.0635636451339723,18.430368915405275,3.026813645133972Q18.445588915405274,2.990053645133972,18.445588915405274,2.950273645133972Q18.445588915405274,2.9104936451339722,18.430368915405275,2.873739645133972Q18.415138915405272,2.8369856451339723,18.387008915405275,2.808854645133972L17.585628915405273,2.0074672451339723Q17.527048915405274,1.9488885511339722,17.444208915405273,1.9488885491339722Q17.361358915405273,1.948888547133972,17.302778915405273,2.0074672451339723Z" fill-rule="evenodd" fill="#dddddd" fill-opacity="1"/></g></g></svg>
  1 +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="16" height="16" viewBox="0 0 16 16"><defs><clipPath id="master_svg0_13700_095790"><rect x="0" y="0" width="16" height="16" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_13700_095790)"><g><path d="M3.333251953125,2.2345154375L3.333251953125,13.7635234375C3.333251953125,13.8671234375,3.446314953125,13.9312234375,3.535184953125,13.8778234375L13.142701953125,8.113353437499999C13.229011953125,8.0615734375,13.229011953125,7.9364834375,13.142701953125,7.8846934375L3.535184953125,2.1201834375C3.446314953125,2.0668611375,3.333251953125,2.1308764375,3.333251953125,2.2345154375" fill-rule="evenodd" fill="#1D1D1D" fill-opacity="1"/></g></g></svg>
  1 +/****reset****/
  2 +body,
  3 +div,
  4 +table,
  5 +tr,
  6 +td,
  7 +th,
  8 +h1,
  9 +h2,
  10 +h3,
  11 +h4,
  12 +h5,
  13 +h6,
  14 +form,
  15 +input,
  16 +button,
  17 +label,
  18 +select,
  19 +textarea,
  20 +p,
  21 +u,
  22 +i,
  23 +em,
  24 +ul,
  25 +ol,
  26 +li,
  27 +dl,
  28 +dd,
  29 +dt,
  30 +img,
  31 +article,
  32 +aside,
  33 +details,
  34 +figcaption,
  35 +figure,
  36 +footer,
  37 +header,
  38 +menu,
  39 +nav,
  40 +section {
  41 + box-sizing: border-box;
  42 + margin: 0;
  43 + padding: 0;
  44 + font-size: 100%;
  45 + vertical-align: baseline;
  46 + border: 0;
  47 + outline: 0;
  48 +}
  49 +li {
  50 + list-style: none;
  51 +}
  52 +h1,
  53 +h2,
  54 +h3,
  55 +h4,
  56 +h5,
  57 +h6 {
  58 + font-size: 100%;
  59 +}
  60 +table {
  61 + border-collapse: collapse;
  62 + border-spacing: 0;
  63 + width: 100%;
  64 +}
  65 +a,
  66 +input,
  67 +select,
  68 +textarea,
  69 +area,
  70 +button {
  71 + outline: none;
  72 + font-family: inherit;
  73 + font-size: inherit;
  74 + border: none;
  75 + background: none;
  76 + color: inherit;
  77 +}
  78 +a {
  79 + text-decoration: none;
  80 +}
  81 +a:hover {
  82 + text-decoration: none;
  83 +}
  84 +textarea {
  85 + overflow: auto;
  86 + resize: none;
  87 +}
  88 +input[type="button"],
  89 +input[type="submit"],
  90 +input[type="reset"] {
  91 + cursor: pointer;
  92 + -webkit-appearance: none;
  93 +}
  94 +html,
  95 +body {
  96 + overflow-x: hidden;
  97 + width: 100%;
  98 + height: 100%;
  99 + background: #ffffff;
  100 +}
  101 +* {
  102 + -webkit-overflow-scrolling: touch;
  103 +}
  104 +html {
  105 + -webkit-tap-highlight-color: transparent;
  106 +}
  107 +body {
  108 + text-align: left;
  109 +}
  110 +body #app {
  111 + height: 100%;
  112 +}
  113 +body #app::-webkit-scrollbar {
  114 + display: none;
  115 +}
  116 +body #app::-webkit-scrollbar-thumb {
  117 + display: none;
  118 +}
  119 +body #app::-webkit-scrollbar-track {
  120 + display: none;
  121 +}
  122 +.fl {
  123 + float: left;
  124 +}
  125 +.fr {
  126 + float: right;
  127 +}
  128 +.clearfix {
  129 + zoom: 1;
  130 +}
  131 +.clearfix::before,
  132 +.clearfix::after {
  133 + display: table;
  134 + content: " ";
  135 +}
  136 +.clearfix::after {
  137 + clear: both;
  138 + height: 0;
  139 + font-size: 0;
  140 + visibility: hidden;
  141 +}
  142 +.ant-skeleton {
  143 + display: table;
  144 + width: 100%;
  145 +}
  146 +.ant-skeleton + .ant-skeleton {
  147 + margin-top: 0.64rem;
  148 +}
  149 +.ant-skeleton.active {
  150 + display: none;
  151 +}
  152 +.ant-skeleton-content {
  153 + display: table-cell;
  154 + width: 100%;
  155 + margin-bottom: 0.64rem;
  156 + vertical-align: top;
  157 +}
  158 +.ant-skeleton-content .ant-skeleton-title {
  159 + width: 100%;
  160 + height: 0.53333rem;
  161 + margin-top: 0.26667rem;
  162 + background: #f2f2f2;
  163 +}
  164 +.ant-skeleton-content .ant-skeleton-title + .ant-skeleton-paragraph {
  165 + margin-top: 0.64rem;
  166 +}
  167 +.ant-skeleton-content .ant-skeleton-paragraph {
  168 + padding: 0;
  169 +}
  170 +.ant-skeleton-content .ant-skeleton-paragraph > li {
  171 + width: 23.3%;
  172 + height: 0.32rem;
  173 + list-style: none;
  174 + background: #f2f2f2;
  175 +}
  176 +.ant-skeleton-content .ant-skeleton-paragraph > li + li {
  177 + margin-top: 0.26667rem;
  178 +}
  179 +.ant-skeleton-content .ant-skeleton-paragraph > li:last-child:not(:first-child):not(:nth-child(2)) {
  180 + width: 61%;
  181 +}
  182 +.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,
  183 +.ant-skeleton.ant-skeleton-active .ant-skeleton-button,
  184 +.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph > li,
  185 +.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title,
  186 +.ant-skeleton.ant-skeleton-active .ant-skeleton-image,
  187 +.ant-skeleton.ant-skeleton-active .ant-skeleton-input {
  188 + background: -webkit-gradient(linear, left top, right top, color-stop(25%, #f2f2f2), color-stop(37%, #e6e6e6), color-stop(63%, #f2f2f2));
  189 + background: linear-gradient(90deg, #f2f2f2 25%, #e6e6e6 37%, #f2f2f2 63%);
  190 + background-size: 400% 100%;
  191 + animation: ant-skeleton-loading 1.4s ease infinite;
  192 +}
  193 +@keyframes ant-skeleton-loading {
  194 + 0% {
  195 + background-position: 100% 50%;
  196 + }
  197 + 100% {
  198 + background-position: 0 50%;
  199 + }
  200 +}
  201 +@keyframes spinner-anime {
  202 + 100% {
  203 + transform: rotate(360deg);
  204 + }
  205 +}
  206 +.toast-loading {
  207 + position: fixed;
  208 + top: 0;
  209 + left: 0;
  210 + width: 100%;
  211 + height: 100%;
  212 + display: flex;
  213 + justify-content: center;
  214 + align-items: center;
  215 + text-align: center;
  216 + z-index: 9999999999;
  217 +}
  218 +.toast-loading.active {
  219 + display: none;
  220 +}
  221 +.toast-loading.none {
  222 + display: none;
  223 +}
  224 +.toast-loading .loading-cont {
  225 + display: flex;
  226 + flex-direction: column;
  227 + justify-content: center;
  228 + align-items: center;
  229 + padding: 15px 15px;
  230 + border-radius: 7px;
  231 + background-clip: padding-box;
  232 + color: #fff;
  233 + background-color: rgba(58, 58, 58, 0.9);
  234 + font-size: 15px;
  235 + line-height: 20px;
  236 +}
  237 +.toast-loading .loading-cont .svg {
  238 + margin: 0;
  239 + width: 32px;
  240 + height: 32px;
  241 + display: inline-block;
  242 + width: 20px;
  243 + height: 20px;
  244 + background-image: url("../image/loading.svg");
  245 + background-position: 50%;
  246 + background-size: 100%;
  247 + background-repeat: no-repeat;
  248 + animation: spinner-anime 1s linear infinite;
  249 +}
  250 +.toast-loading .loading-cont .svg-text {
  251 + display: inline-block;
  252 + position: relative;
  253 + top: 4px;
  254 +}
  255 +.skeleton-loading {
  256 + display: block;
  257 + padding: 0.26666667rem 0.48rem 0;
  258 + height: 100%;
  259 + overflow: hidden;
  260 +}
  261 +.skeleton-loading.active {
  262 + position: fixed;
  263 + left: 0;
  264 + top: 0;
  265 + width: 100%;
  266 + opacity: 0;
  267 + visibility: hidden;
  268 + z-index: -1;
  269 +}
  270 +.skeleton-loading.none {
  271 + display: none;
  272 +}
  273 +.error-block {
  274 + display: none;
  275 + box-sizing: border-box;
  276 + text-align: center;
  277 + padding-top: 3.76rem;
  278 +}
  279 +.error-block.active {
  280 + display: block;
  281 +}
  282 +.error-block .error-block-image {
  283 + text-align: center;
  284 +}
  285 +.error-block .error-block-image img {
  286 + width: 4.26666667rem;
  287 + height: 2.98666667rem;
  288 +}
  289 +.error-block .error-block-retry-btn,
  290 +.error-block .error-block-reload-btn {
  291 + width: 2.13333333rem;
  292 + height: 0.74666667rem;
  293 + border-radius: 0.08rem;
  294 + border: 0.02666667rem solid #EDEDED;
  295 + margin: 0 auto;
  296 + margin-top: 0.42666667rem;
  297 + font-size: 0.32rem;
  298 + font-weight: bold;
  299 + line-height: 0.74666667rem;
  300 + text-align: center;
  301 + color: #666666;
  302 +}
  303 +.error-block .error-block-reload-btn {
  304 + width: 3.73333333rem;
  305 +}
  306 +.error-block .error-block-description-title {
  307 + text-align: center;
  308 + margin: 0 auto;
  309 + font-size: 14px;
  310 + color: rgba(51, 51, 51, 0.5);
  311 +}
  312 +.ellipsis1 {
  313 + overflow: hidden;
  314 + text-overflow: ellipsis;
  315 + display: -webkit-box;
  316 + -webkit-line-clamp: 1;
  317 + line-clamp: 1;
  318 + -webkit-box-orient: vertical;
  319 + word-wrap: break-word;
  320 +}
  321 +#app.fixed {
  322 + position: fixed;
  323 + left: 0;
  324 + top: 0;
  325 + z-index: -1;
  326 + visibility: hidden;
  327 + opacity: 0;
  328 + width: 100%;
  329 +}
  330 +.gx-mobile.fixed {
  331 + position: fixed;
  332 + left: 0;
  333 + top: 0;
  334 + z-index: -1;
  335 + visibility: hidden;
  336 + opacity: 0;
  337 + width: 100%;
  338 + height: 17.57333333rem;
  339 +}
  340 +.refresh-content {
  341 + height: 100%;
  342 +}
  343 +.refresh-content .van-pull-refresh {
  344 + height: 100%;
  345 +}
  346 +html {
  347 + transition: color 300ms, background-color 300ms;
  348 +}
  349 +body .van-image__error,
  350 +body .van-image__loading {
  351 + display: block;
  352 +}
  353 +body .prism-fullscreen {
  354 + z-index: 999999 !important;
  355 +}
  356 +body .prism-player .prism-animation,
  357 +body .prism-player .prism-detect-info,
  358 +body .prism-player .prism-button,
  359 +body .prism-player .prism-setting-quality,
  360 +body .prism-player .prism-setting-audio,
  361 +body .prism-player .prism-setting-cc,
  362 +body .prism-player .prism-cc-btn,
  363 +body .prism-player .prism-volume,
  364 +body .prism-player .prism-tooltip,
  365 +body .prism-player .prism-setting-btn,
  366 +body .prism-player .prism-button-retry,
  367 +body .prism-player .dplayer-thumb,
  368 +body .prism-player .prism-progress-played,
  369 +body .prism-player .prism-progress-cursor,
  370 +body .prism-player .prism-progress-hover,
  371 +body .prism-player .prism-big-play-btn,
  372 +body .prism-player .prism-controlbar,
  373 +body .prism-player .prism-info-display,
  374 +body .prism-player .prism-text-overlay,
  375 +body .prism-player .prism-error-operation,
  376 +body .prism-player .prism-ErrorMessage,
  377 +body .prism-player .prism-cover,
  378 +body .prism-player .prism-loading {
  379 + display: none !important;
  380 +}
  381 +#__vconsole {
  382 + z-index: 10000000;
  383 +}
  384 +#__vconsole .vc-switch {
  385 + z-index: 10000000;
  386 +}
  387 +#__vconsole .vc-panel {
  388 + min-height: unset !important;
  389 + height: 500px !important;
  390 +}
  391 +#app {
  392 + overflow-y: hidden;
  393 + overflow-x: hidden;
  394 +}
  395 +#app .van-loading {
  396 + text-align: center;
  397 +}
  398 +html[dark-mode] body {
  399 + background-color: #161827;
  400 +}
  401 +html[dark-mode] body .gx-mobile .vote {
  402 + background-color: #1D1F2F;
  403 +}
  404 +html[dark-mode] body .gx-mobile .suggested .suggested-title {
  405 + color: #d9d9d9ff;
  406 +}
  407 +html[dark-mode] body .gx-mobile .suggested .suggested-item_title {
  408 + color: #d9d9d9ff !important;
  409 +}
  410 +html[dark-mode] body .gx-mobile .suggested .subtitle {
  411 + color: #d9d9d9ff !important;
  412 +}
  413 +html[dark-mode] body .gx-mobile .suggested .left span {
  414 + color: #ffffff5c !important;
  415 +}
  416 +html[dark-mode] body .gx-mobile .title {
  417 + color: #d9d9d9ff;
  418 +}
  419 +html[dark-mode] body .gx-mobile .ptxt {
  420 + color: #ffffffab;
  421 +}
  422 +html[dark-mode] body .gx-mobile .btsIem {
  423 + background-color: #161828;
  424 +}
  425 +html[dark-mode] body .gx-mobile .stx {
  426 + color: #ffffffab !important;
  427 +}
  428 +html[dark-mode] body .gx-mobile .jd .s1 {
  429 + background: linear-gradient(270deg, #e5111eff 0%, #ffb5b9ff 100%);
  430 +}
  431 +html[dark-mode] body .gx-mobile .jd .s2 {
  432 + background-color: #393A47 !important;
  433 +}
  434 +html[dark-mode] body .gx-mobile .open {
  435 + background: linear-gradient(179.9deg, #1d1f2e00 0%, #1d1f2eff 48%, #1d1f2eff 99%);
  436 +}
  437 +html[dark-mode] body .gx-mobile .open img {
  438 + width: 0.42667rem;
  439 + height: 0.42667rem;
  440 +}
  441 +html[dark-mode] body .gx-mobile .time {
  442 + color: rgba(255, 255, 255, 0.4);
  443 +}
  444 +html[dark-mode] body .gx-mobile #newsContent {
  445 + background-color: #12131e !important;
  446 + color: #ccc;
  447 +}
  448 +html[dark-mode] body .gx-mobile #newsContent h1,
  449 +html[dark-mode] body .gx-mobile #newsContent h2,
  450 +html[dark-mode] body .gx-mobile #newsContent div,
  451 +html[dark-mode] body .gx-mobile #newsContent h3,
  452 +html[dark-mode] body .gx-mobile #newsContent p,
  453 +html[dark-mode] body .gx-mobile #newsContent h4,
  454 +html[dark-mode] body .gx-mobile #newsContent h5,
  455 +html[dark-mode] body .gx-mobile #newsContent h6,
  456 +html[dark-mode] body .gx-mobile #newsContent ul,
  457 +html[dark-mode] body .gx-mobile #newsContent li,
  458 +html[dark-mode] body .gx-mobile #newsContent ol {
  459 + background-color: #12131e !important;
  460 + color: #ccc !important;
  461 +}
  462 +html[dark-mode] body .gx-mobile #newsContent .preview-video div,
  463 +html[dark-mode] body .gx-mobile #newsContent .preview-video p {
  464 + background-color: rgba(255, 255, 255, 0) !important;
  465 +}
  466 +html[dark-mode] body .footer {
  467 + background-color: #12131e;
  468 + border-top: #252630;
  469 +}
  470 +.anticon-spin {
  471 + animation: loadingCircle 1s infinite linear;
  472 +}
  473 +.prism-player {
  474 + position: relative;
  475 +}
  476 +.prism-player video {
  477 + position: absolute;
  478 + left: 50%;
  479 + top: 50%;
  480 + transform: translate(-50%, -50%);
  481 + -ms-transform: translate(-50%, -50%);
  482 + -moz-transform: translate(-50%, -50%);
  483 + -webkit-transform: translate(-50%, -50%);
  484 + -o-transform: translate(-50%, -50%);
  485 + -ms-transform-origin: center;
  486 + -moz-transform-origin: center;
  487 + -webkit-transform-origin: center;
  488 + -o-transform-origin: center;
  489 +}
  490 +.prism-player .loading-center,
  491 +.prism-player .prism-ErrorMessage,
  492 +.prism-player .prism-thumbnail,
  493 +.prism-player .prism-cc-selector,
  494 +.prism-player .prism-speed-selector,
  495 +.prism-player .prism-quality-selector,
  496 +.prism-player .prism-audio-selector,
  497 +.prism-player .prism-setting-list,
  498 +.prism-player .prism-volume-control,
  499 +.prism-player .prism-auto-stream-selector,
  500 +.prism-player .prism-marker-text {
  501 + display: none !important;
  502 +}
  503 +@keyframes fadeIn {
  504 + 0% {
  505 + opacity: 0;
  506 + }
  507 + 100% {
  508 + opacity: 1;
  509 + }
  510 +}
  511 +@keyframes loadingCircle {
  512 + 100% {
  513 + -webkit-transform: rotate(360deg);
  514 + transform: rotate(360deg);
  515 + }
  516 +}
  517 +@-webkit-keyframes loadingCircle {
  518 + 100% {
  519 + -webkit-transform: rotate(360deg);
  520 + transform: rotate(360deg);
  521 + }
  522 +}
  523 +@keyframes loadingCircle {
  524 + 100% {
  525 + -webkit-transform: rotate(360deg);
  526 + transform: rotate(360deg);
  527 + }
  528 +}
  529 +/*# sourceMappingURL=global.css.map */
  1 +{"version":3,"sources":["global.less"],"names":[],"mappings":"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","file":"global.css"}
  1 +/****reset****/
  2 +body, div, table, tr, td, th, h1, h2, h3, h4, h5, h6, form, input, button, label, select, textarea, p, u, i, em, ul, ol, li, dl, dd, dt, img, article, aside, details, figcaption, figure, footer, header, menu, nav, section {
  3 + box-sizing: border-box;
  4 + margin: 0;
  5 + padding: 0;
  6 + font-size: 100%;
  7 + vertical-align: baseline;
  8 + border: 0;
  9 + outline: 0;
  10 +}
  11 +
  12 +li {
  13 + list-style: none;
  14 +}
  15 +
  16 +h1, h2, h3, h4, h5, h6 {
  17 + font-size: 100%;
  18 +}
  19 +
  20 +table {
  21 + border-collapse: collapse;
  22 + border-spacing: 0;
  23 + width: 100%;
  24 +}
  25 +
  26 +a, input, select, textarea, area, button {
  27 + outline: none;
  28 + font-family: inherit;
  29 + font-size: inherit;
  30 + border: none;
  31 + background: none;
  32 + color: inherit;
  33 +}
  34 +
  35 +a {
  36 + text-decoration: none;
  37 +}
  38 +
  39 +a:hover {
  40 + text-decoration: none;
  41 +}
  42 +
  43 +textarea {
  44 + overflow: auto;
  45 + resize: none;
  46 +}
  47 +
  48 +input[type="button"], input[type="submit"], input[type="reset"] {
  49 + cursor: pointer;
  50 + -webkit-appearance: none;
  51 +}
  52 +
  53 +html, body {
  54 + overflow-x: hidden;
  55 + width: 100%;
  56 + height: 100%;
  57 + background: #ffffff;
  58 +}
  59 +
  60 +* {
  61 + -webkit-overflow-scrolling: touch;
  62 +}
  63 +
  64 +html {
  65 + -webkit-tap-highlight-color: transparent;
  66 +}
  67 +
  68 +body {
  69 + text-align: left;
  70 +
  71 + #app {
  72 + height: 100%;
  73 +
  74 + &::-webkit-scrollbar {
  75 + display: none;
  76 + }
  77 +
  78 + &::-webkit-scrollbar-thumb {
  79 + display: none;
  80 + }
  81 +
  82 + &::-webkit-scrollbar-track {
  83 + display: none;
  84 + }
  85 + }
  86 +}
  87 +
  88 +.fl {
  89 + float: left;
  90 +}
  91 +
  92 +.fr {
  93 + float: right;
  94 +}
  95 +
  96 +.clearfix {
  97 + zoom: 1;
  98 +
  99 + &::before,
  100 + &::after {
  101 + display: table;
  102 + content: " ";
  103 + }
  104 +
  105 + &::after {
  106 + clear: both;
  107 + height: 0;
  108 + font-size: 0;
  109 + visibility: hidden;
  110 + }
  111 +}
  112 +
  113 +.ant-skeleton {
  114 + display: table;
  115 + width: 100%;
  116 +}
  117 +
  118 +.ant-skeleton + .ant-skeleton {
  119 + margin-top: 0.64rem;
  120 +}
  121 +
  122 +.ant-skeleton.active {
  123 + display: none;
  124 +}
  125 +
  126 +.ant-skeleton-content {
  127 + display: table-cell;
  128 + width: 100%;
  129 + margin-bottom: 0.64rem;
  130 + vertical-align: top;
  131 +}
  132 +
  133 +.ant-skeleton-content .ant-skeleton-title {
  134 + width: 100%;
  135 + height: 0.53333rem;
  136 + margin-top: 0.26667rem;
  137 + background: #f2f2f2;
  138 +}
  139 +
  140 +.ant-skeleton-content .ant-skeleton-title + .ant-skeleton-paragraph {
  141 + margin-top: 0.64rem;
  142 +}
  143 +
  144 +.ant-skeleton-content .ant-skeleton-paragraph {
  145 + padding: 0;
  146 +}
  147 +
  148 +.ant-skeleton-content .ant-skeleton-paragraph > li {
  149 + width: 23.3%;
  150 + height: 0.32rem;
  151 + list-style: none;
  152 + background: #f2f2f2;
  153 +}
  154 +
  155 +.ant-skeleton-content .ant-skeleton-paragraph > li + li {
  156 + margin-top: 0.26667rem;
  157 +}
  158 +
  159 +.ant-skeleton-content .ant-skeleton-paragraph > li:last-child:not(:first-child):not(:nth-child(2)) {
  160 + width: 61%;
  161 +}
  162 +
  163 +.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar, .ant-skeleton.ant-skeleton-active .ant-skeleton-button, .ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph > li, .ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title, .ant-skeleton.ant-skeleton-active .ant-skeleton-image, .ant-skeleton.ant-skeleton-active .ant-skeleton-input {
  164 + background: -webkit-gradient(linear, left top, right top, color-stop(25%, #f2f2f2), color-stop(37%, #e6e6e6), color-stop(63%, #f2f2f2));
  165 + background: linear-gradient(90deg, #f2f2f2 25%, #e6e6e6 37%, #f2f2f2 63%);
  166 + background-size: 400% 100%;
  167 + animation: ant-skeleton-loading 1.4s ease infinite;
  168 +}
  169 +
  170 +@keyframes ant-skeleton-loading {
  171 + 0% {
  172 + background-position: 100% 50%;
  173 + }
  174 + 100% {
  175 + background-position: 0 50%;
  176 + }
  177 +}
  178 +
  179 +@keyframes spinner-anime {
  180 + 100% {
  181 + transform: rotate(360deg);
  182 + }
  183 +}
  184 +
  185 +.toast-loading {
  186 + position: fixed;
  187 + top: 0;
  188 + left: 0;
  189 + width: 100%;
  190 + height: 100%;
  191 + display: flex;
  192 + justify-content: center;
  193 + align-items: center;
  194 + text-align: center;
  195 + z-index: 9999999999;
  196 +
  197 + &.active {
  198 + display: none;
  199 + }
  200 +
  201 + &.none {
  202 + display: none;
  203 + }
  204 +
  205 + .loading-cont {
  206 + display: flex;
  207 + flex-direction: column;
  208 + justify-content: center;
  209 + align-items: center;
  210 + padding: 15px 15px;
  211 + border-radius: 7px;
  212 + background-clip: padding-box;
  213 + color: #fff;
  214 + background-color: rgba(58, 58, 58, 0.9);
  215 + font-size: 15px;
  216 + line-height: 20px;
  217 +
  218 + .svg {
  219 + margin: 0;
  220 + width: 32px;
  221 + height: 32px;
  222 + display: inline-block;
  223 + width: 20px;
  224 + height: 20px;
  225 + background-image: url("../image/loading.svg");
  226 + background-position: 50%;
  227 + background-size: 100%;
  228 + background-repeat: no-repeat;
  229 + animation: spinner-anime 1s linear infinite;
  230 + }
  231 +
  232 + .svg-text {
  233 + display: inline-block;
  234 + position: relative;
  235 + top: 4px;
  236 + }
  237 + }
  238 +}
  239 +
  240 +.skeleton-loading {
  241 + display: block;
  242 + padding: (10 / 37.5rem) (18 / 37.5rem) 0;
  243 + height: 100%;
  244 + overflow: hidden;
  245 +
  246 + &.active {
  247 + position: fixed;
  248 + left: 0;
  249 + top: 0;
  250 + width: 100%;
  251 + opacity: 0;
  252 + visibility: hidden;
  253 + z-index: -1;
  254 + }
  255 +
  256 + &.none {
  257 + display: none;
  258 + }
  259 +}
  260 +
  261 +.error-block {
  262 + display: none;
  263 + box-sizing: border-box;
  264 + text-align: center;
  265 + padding-top: (141 / 37.5rem);
  266 +
  267 + &.active {
  268 + display: block;
  269 + }
  270 +
  271 + .error-block-image {
  272 + text-align: center;
  273 +
  274 + img {
  275 + width: (160 / 37.5rem);
  276 + height: (112 / 37.5rem);
  277 + }
  278 + }
  279 +
  280 + .error-block-retry-btn, .error-block-reload-btn {
  281 + width: (80 / 37.5rem);
  282 + height: (28 / 37.5rem);
  283 + border-radius: (3 / 37.5rem);
  284 + border: (1 / 37.5rem) solid #EDEDED;
  285 + margin: 0 auto;
  286 + margin-top: (16 / 37.5rem);
  287 +
  288 + font-size: (12 / 37.5rem);
  289 + font-weight: bold;
  290 + line-height: (28 / 37.5rem);
  291 + text-align: center;
  292 + color: #666666;
  293 + }
  294 +
  295 + .error-block-reload-btn {
  296 + width: (140 / 37.5rem);
  297 + }
  298 +
  299 + .error-block-description {
  300 + }
  301 +
  302 + .error-block-description-title {
  303 + text-align: center;
  304 + margin: 0 auto;
  305 + font-size: 14px;
  306 + color: rgba(51, 51, 51, 0.5);
  307 + }
  308 +
  309 + .error-block-description-subtitle {
  310 + }
  311 +}
  312 +
  313 +.ellipsis1 {
  314 + overflow: hidden;
  315 + text-overflow: ellipsis;
  316 + display: -webkit-box;
  317 + -webkit-line-clamp: 1;
  318 + line-clamp: 1;
  319 + -webkit-box-orient: vertical;
  320 + word-wrap: break-word;
  321 +}
  322 +
  323 +#app {
  324 + &.fixed {
  325 + position: fixed;
  326 + left: 0;
  327 + top: 0;
  328 + z-index: -1;
  329 + visibility: hidden;
  330 + opacity: 0;
  331 + width: 100%;
  332 + }
  333 +}
  334 +
  335 +.gx-mobile {
  336 + &.fixed {
  337 + position: fixed;
  338 + left: 0;
  339 + top: 0;
  340 + z-index: -1;
  341 + visibility: hidden;
  342 + opacity: 0;
  343 + width: 100%;
  344 + height: (659 / 37.5rem);
  345 + }
  346 +
  347 + &.active {
  348 + //animation-name: fadeIn;
  349 + //animation-duration: .2s;
  350 + }
  351 +}
  352 +
  353 +.refresh-content {
  354 + height: 100%;
  355 +
  356 + .van-pull-refresh {
  357 + height: 100%;
  358 + }
  359 +}
  360 +
  361 +html {
  362 + transition: color 300ms, background-color 300ms;
  363 +}
  364 +
  365 +body {
  366 +
  367 + .van-image__error, .van-image__loading {
  368 + display: block;
  369 + }
  370 +
  371 + .prism-fullscreen {
  372 + z-index: 999999 !important;
  373 + }
  374 +
  375 + .prism-player {
  376 +
  377 + .prism-animation, .prism-detect-info, .prism-button, .prism-setting-quality, .prism-setting-audio, .prism-setting-cc, .prism-cc-btn, .prism-volume, .prism-tooltip, .prism-setting-btn, .prism-button-retry, .dplayer-thumb, .prism-progress-played, .prism-progress-cursor, .prism-progress-hover, .prism-big-play-btn, .prism-controlbar, .prism-info-display, .prism-text-overlay, .prism-error-operation, .prism-ErrorMessage, .prism-cover, .prism-loading {
  378 + display: none !important;
  379 + }
  380 + }
  381 +}
  382 +
  383 +#__vconsole {
  384 + .vc-switch {
  385 + z-index: 10000000;
  386 + }
  387 +
  388 + .vc-panel {
  389 + min-height: unset !important;
  390 + height: 500px !important;
  391 + }
  392 +
  393 + z-index: 10000000;
  394 +}
  395 +
  396 +#app {
  397 + overflow-y: hidden;
  398 + overflow-x: hidden;
  399 +
  400 + .van-loading {
  401 + text-align: center;
  402 + }
  403 +}
  404 +
  405 +html[dark-mode] {
  406 + body {
  407 + // background-color: #12131e;
  408 + background-color: #161827;
  409 +
  410 + .gx-mobile .vote {
  411 + background-color: #1D1F2F;
  412 + }
  413 +
  414 + .gx-mobile .suggested {
  415 + // background-color: #1D1F2F;
  416 + .suggested-title {
  417 + color: #d9d9d9ff;
  418 + }
  419 +
  420 + .suggested-item_title {
  421 + color: #d9d9d9ff !important;
  422 + }
  423 +
  424 + .subtitle {
  425 + color: #d9d9d9ff !important;
  426 + }
  427 +
  428 + .left {
  429 + span {
  430 + color: #ffffff5c !important;
  431 + }
  432 + }
  433 + }
  434 +
  435 + .gx-mobile .title {
  436 + color: #d9d9d9ff;
  437 + }
  438 +
  439 + .gx-mobile .ptxt {
  440 + color: #ffffffab;
  441 + }
  442 +
  443 + .gx-mobile .btsIem {
  444 + background-color: #161828;
  445 + }
  446 +
  447 + .gx-mobile .stx {
  448 + color: #ffffffab !important;
  449 + }
  450 +
  451 + .gx-mobile .jd {
  452 + .s1 {
  453 + background: linear-gradient(270deg, #e5111eff 0%, #ffb5b9ff 100%);
  454 + }
  455 +
  456 + .s2 {
  457 + background-color: #393A47 !important;
  458 + }
  459 + }
  460 +
  461 + .gx-mobile .open {
  462 + background: linear-gradient(179.9deg, #1d1f2e00 0%, #1d1f2eff 48%, #1d1f2eff 99%);
  463 +
  464 + img {
  465 + width: 0.42667rem;
  466 + height: 0.42667rem;
  467 + }
  468 + }
  469 +
  470 + .gx-mobile .time {
  471 + // color: #7a7a7a;
  472 + color: rgba(255, 255, 255, 0.4);
  473 + }
  474 +
  475 + .gx-mobile #newsContent {
  476 + background-color: #12131e !important;
  477 + color: #ccc;
  478 +
  479 + h1, h2, div, h3, p, h4, h5, h6, ul, li, ol {
  480 + background-color: #12131e !important;
  481 + color: #ccc !important;
  482 + }
  483 +
  484 + .preview-video {
  485 + div, p {
  486 + background-color: rgba(255, 255, 255, 0) !important;
  487 + }
  488 + }
  489 +
  490 + }
  491 +
  492 + .footer {
  493 + background-color: #12131e;
  494 + border-top: #252630;
  495 + }
  496 + }
  497 +}
  498 +
  499 +.anticon-spin {
  500 + animation: loadingCircle 1s infinite linear;
  501 +}
  502 +
  503 +.prism-player {
  504 + position: relative;
  505 +
  506 + video {
  507 + position: absolute;
  508 + left: 50%;
  509 + top: 50%;
  510 + transform: translate(-50%,-50%);
  511 + -ms-transform: translate(-50%,-50%);
  512 + -moz-transform: translate(-50%,-50%);
  513 + -webkit-transform: translate(-50%,-50%);
  514 + -o-transform: translate(-50%,-50%);
  515 + -ms-transform-origin: center;
  516 + -moz-transform-origin: center;
  517 + -webkit-transform-origin: center;
  518 + -o-transform-origin: center;
  519 + }
  520 +
  521 + .loading-center, .prism-ErrorMessage, .prism-thumbnail, .prism-cc-selector, .prism-speed-selector, .prism-quality-selector, .prism-audio-selector, .prism-setting-list, .prism-volume-control, .prism-auto-stream-selector, .prism-marker-text {
  522 + display: none !important;
  523 + }
  524 +}
  525 +
  526 +@keyframes fadeIn {
  527 + 0% {
  528 + opacity: 0;
  529 + }
  530 +
  531 + 100% {
  532 + opacity: 1;
  533 + }
  534 +}
  535 +
  536 +@keyframes loadingCircle {
  537 + 100% {
  538 + -webkit-transform: rotate(360deg);
  539 + transform: rotate(360deg);
  540 + }
  541 +}
  542 +
  543 +@-webkit-keyframes loadingCircle {
  544 + 100% {
  545 + -webkit-transform: rotate(360deg);
  546 + transform: rotate(360deg);
  547 + }
  548 +}
  549 +
  550 +@keyframes loadingCircle {
  551 + 100% {
  552 + -webkit-transform: rotate(360deg);
  553 + transform: rotate(360deg);
  554 + }
  555 +}