1df226684Sopenharmony_ci/* 2df226684Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 3df226684Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4df226684Sopenharmony_ci * you may not use this file except in compliance with the License. 5df226684Sopenharmony_ci * You may obtain a copy of the License at 6df226684Sopenharmony_ci * 7df226684Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8df226684Sopenharmony_ci * 9df226684Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10df226684Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11df226684Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12df226684Sopenharmony_ci * See the License for the specific language governing permissions and 13df226684Sopenharmony_ci * limitations under the License. 14df226684Sopenharmony_ci */ 15df226684Sopenharmony_ci 16df226684Sopenharmony_ciimport UIExtensionContentSession from '@ohos.app.ability.UIExtensionContentSession'; 17df226684Sopenharmony_ciimport router from '@ohos.router'; 18df226684Sopenharmony_ciimport common from '@ohos.app.ability.common'; 19df226684Sopenharmony_ciimport { staffItem } from '../common/encryptionComponents/staff'; 20df226684Sopenharmony_ciimport Constants from '../common/constant'; 21df226684Sopenharmony_ciimport ability from '@ohos.ability.ability'; 22df226684Sopenharmony_ciimport { 23df226684Sopenharmony_ci AuthAccount, 24df226684Sopenharmony_ci PermissionType, 25df226684Sopenharmony_ci calculate, 26df226684Sopenharmony_ci toggleShow, 27df226684Sopenharmony_ci directionStatus, 28df226684Sopenharmony_ci getTime, 29df226684Sopenharmony_ci} from '../common/utils'; 30df226684Sopenharmony_ciimport GlobalContext from '../common/GlobalContext'; 31df226684Sopenharmony_ciimport HomeFeature from '../feature/HomeFeature'; 32df226684Sopenharmony_ciimport { HiLog } from '../common/HiLog'; 33df226684Sopenharmony_ciimport { SystemUtils } from '../common/systemUtils'; 34df226684Sopenharmony_ci 35df226684Sopenharmony_ciconst TAG = 'EncSucc'; 36df226684Sopenharmony_cilet abilityResult: ability.AbilityResult = { 37df226684Sopenharmony_ci 'resultCode': 0, 38df226684Sopenharmony_ci 'want': {} 39df226684Sopenharmony_ci}; 40df226684Sopenharmony_ci 41df226684Sopenharmony_ci@Extend(Text) 42df226684Sopenharmony_cifunction customizeText() { 43df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary_activated')) 44df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_button2')) 45df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 46df226684Sopenharmony_ci} 47df226684Sopenharmony_ci 48df226684Sopenharmony_cilet storage: LocalStorage = LocalStorage.getShared(); 49df226684Sopenharmony_ci@Entry(storage) 50df226684Sopenharmony_ci@Component 51df226684Sopenharmony_cistruct encryptionSuccess { 52df226684Sopenharmony_ci @State session: UIExtensionContentSession | undefined = storage === undefined ? undefined : storage.get<UIExtensionContentSession>('session'); 53df226684Sopenharmony_ci private routerParams: Record<string, AuthAccount[] | PermissionType> = 54df226684Sopenharmony_ci router.getParams() as Record<string, AuthAccount[] | PermissionType>; 55df226684Sopenharmony_ci @State directionStatus: number = 0; 56df226684Sopenharmony_ci @State flag: boolean = false; 57df226684Sopenharmony_ci @State editFlag: boolean = false; 58df226684Sopenharmony_ci @State readOnlyFlag: boolean = false; 59df226684Sopenharmony_ci @State handlePopupReadOnly: boolean = false; 60df226684Sopenharmony_ci @State handlePopupEdit: boolean = false; 61df226684Sopenharmony_ci @State rowNamesLenEdit: number = 0; 62df226684Sopenharmony_ci @State rowNamesLenReadOnly: number = 0; 63df226684Sopenharmony_ci @State hideNamesNumEdit: string = '0'; 64df226684Sopenharmony_ci @State hideNamesNumReadOnly: string = '0'; 65df226684Sopenharmony_ci @State showNamesArrEdit: AuthAccount[] = []; 66df226684Sopenharmony_ci @State showNamesArrReadOnly: AuthAccount[] = []; 67df226684Sopenharmony_ci @State staffDataArrayReadOnly: AuthAccount[] = this.routerParams.staffDataArrayReadOnly as AuthAccount[]; 68df226684Sopenharmony_ci @State staffDataArrayEdit: AuthAccount[] = this.routerParams.staffDataArrayEdit as AuthAccount[]; 69df226684Sopenharmony_ci 70df226684Sopenharmony_ci @Builder popupBuilderReadOnly() { 71df226684Sopenharmony_ci Row() { 72df226684Sopenharmony_ci Text($r('app.string.header_title_readonly_tips')) 73df226684Sopenharmony_ci .fontFamily('HarmonyHeiTi') 74df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 75df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 76df226684Sopenharmony_ci } 77df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_MESSAGE_TIPS) 78df226684Sopenharmony_ci .padding({ 79df226684Sopenharmony_ci left: Constants.ROW_FONT_SIZE, 80df226684Sopenharmony_ci right: Constants.ROW_FONT_SIZE, 81df226684Sopenharmony_ci top: Constants.DA_MARGIN_TOP, 82df226684Sopenharmony_ci bottom: Constants.DA_MARGIN_TOP 83df226684Sopenharmony_ci }) 84df226684Sopenharmony_ci } 85df226684Sopenharmony_ci 86df226684Sopenharmony_ci @Builder popupBuilderEdit() { 87df226684Sopenharmony_ci Row() { 88df226684Sopenharmony_ci Text($r('app.string.header_title_edit_tips')) 89df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 90df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 91df226684Sopenharmony_ci } 92df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_MESSAGE_TIPS) 93df226684Sopenharmony_ci .padding({ 94df226684Sopenharmony_ci left: Constants.ROW_FONT_SIZE, 95df226684Sopenharmony_ci right: Constants.ROW_FONT_SIZE, 96df226684Sopenharmony_ci top: Constants.DA_MARGIN_TOP, 97df226684Sopenharmony_ci bottom: Constants.DA_MARGIN_TOP 98df226684Sopenharmony_ci }) 99df226684Sopenharmony_ci } 100df226684Sopenharmony_ci 101df226684Sopenharmony_ci onFlagChange() { 102df226684Sopenharmony_ci animateTo({ 103df226684Sopenharmony_ci duration: 650, 104df226684Sopenharmony_ci curve: Curve.Smooth 105df226684Sopenharmony_ci }, () => { 106df226684Sopenharmony_ci this.flag = !this.flag; 107df226684Sopenharmony_ci }) 108df226684Sopenharmony_ci } 109df226684Sopenharmony_ci 110df226684Sopenharmony_ci aboutToAppear() { 111df226684Sopenharmony_ci HiLog.info(TAG, `aboutToAppear, encrypt success`); 112df226684Sopenharmony_ci this.directionStatus = (getContext(this) as common.UIAbilityContext).config.direction ?? -1; 113df226684Sopenharmony_ci directionStatus((counter) => { 114df226684Sopenharmony_ci this.directionStatus = counter; 115df226684Sopenharmony_ci }) 116df226684Sopenharmony_ci } 117df226684Sopenharmony_ci 118df226684Sopenharmony_ci build() { 119df226684Sopenharmony_ci GridRow({ 120df226684Sopenharmony_ci columns: { 121df226684Sopenharmony_ci xs: Constants.XS_COLUMNS, 122df226684Sopenharmony_ci sm: Constants.SM_COLUMNS, 123df226684Sopenharmony_ci md: Constants.MD_COLUMNS, 124df226684Sopenharmony_ci lg: Constants.LG_COLUMNS 125df226684Sopenharmony_ci }, 126df226684Sopenharmony_ci gutter: Constants.DIALOG_GUTTER 127df226684Sopenharmony_ci }) { 128df226684Sopenharmony_ci GridCol({ 129df226684Sopenharmony_ci span: { 130df226684Sopenharmony_ci xs: Constants.XS_SPAN, 131df226684Sopenharmony_ci sm: Constants.SM_SPAN, 132df226684Sopenharmony_ci md: Constants.DIALOG_MD_SPAN, 133df226684Sopenharmony_ci lg: Constants.DIALOG_LG_SPAN 134df226684Sopenharmony_ci }, 135df226684Sopenharmony_ci offset: { 136df226684Sopenharmony_ci xs: Constants.XS_OFFSET, 137df226684Sopenharmony_ci sm: Constants.SM_OFFSET, 138df226684Sopenharmony_ci md: Constants.DIALOG_MD_OFFSET, 139df226684Sopenharmony_ci lg: Constants.DIALOG_LG_OFFSET 140df226684Sopenharmony_ci } 141df226684Sopenharmony_ci }) { 142df226684Sopenharmony_ci Flex({ justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center, 143df226684Sopenharmony_ci direction: FlexDirection.Column }) { 144df226684Sopenharmony_ci Flex({ alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { 145df226684Sopenharmony_ci Column() { 146df226684Sopenharmony_ci Row() { 147df226684Sopenharmony_ci Text($r('app.string.header_title')) 148df226684Sopenharmony_ci .fontWeight(FontWeight.Bold) 149df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 150df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 151df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_dialog_tittle')) 152df226684Sopenharmony_ci .width(Constants.HEADER_TEXT_WIDTH) 153df226684Sopenharmony_ci .align(Alignment.Start) 154df226684Sopenharmony_ci } 155df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 156df226684Sopenharmony_ci .height(Constants.HEADER_COLUMN_HEIGHT) 157df226684Sopenharmony_ci .padding({ 158df226684Sopenharmony_ci left: Constants.HEADER_COLUMN_PADDING_LEFT, 159df226684Sopenharmony_ci right: Constants.HEADER_COLUMN_PADDING_RIGHT 160df226684Sopenharmony_ci }) 161df226684Sopenharmony_ci .margin({ bottom: Constants.HEADER_COLUMN_MARGIN_BOTTOM }); 162df226684Sopenharmony_ci 163df226684Sopenharmony_ci Scroll() { 164df226684Sopenharmony_ci Column() { 165df226684Sopenharmony_ci Stack() { 166df226684Sopenharmony_ci Circle({ width: Constants.ENCRYPTION_SUCCESS_CIRCLE, height: Constants.ENCRYPTION_SUCCESS_CIRCLE }) 167df226684Sopenharmony_ci .fill($r('sys.color.multi_color_04')); 168df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.checkmark')) 169df226684Sopenharmony_ci .fontSize(`${Constants.ENCRYPTION_SUCCESS_ICON}vp`) 170df226684Sopenharmony_ci .fontColor([$r('sys.color.icon_on_primary')]) 171df226684Sopenharmony_ci } 172df226684Sopenharmony_ci .margin({ top: Constants.ENCRYPTION_SUCCESS_IMAGE_MARGIN_TOP }); 173df226684Sopenharmony_ci Column() { 174df226684Sopenharmony_ci Row() { 175df226684Sopenharmony_ci Text($r('app.string.file_encrypted')) 176df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body1')) 177df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 178df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 179df226684Sopenharmony_ci .textAlign(TextAlign.Center) 180df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 181df226684Sopenharmony_ci } 182df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 183df226684Sopenharmony_ci 184df226684Sopenharmony_ci Row() { 185df226684Sopenharmony_ci Text(`${GlobalContext.load('dlpFileName') as string}`) 186df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 187df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_secondary')) 188df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 189df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 190df226684Sopenharmony_ci .textAlign(TextAlign.Center) 191df226684Sopenharmony_ci } 192df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 193df226684Sopenharmony_ci } 194df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 195df226684Sopenharmony_ci .padding({ 196df226684Sopenharmony_ci top: Constants.HEADER_COLUMN_PADDING_LEFT, 197df226684Sopenharmony_ci bottom: Constants.HEADER_COLUMN_PADDING_RIGHT 198df226684Sopenharmony_ci }) 199df226684Sopenharmony_ci 200df226684Sopenharmony_ci Row() { 201df226684Sopenharmony_ci Text(!this.flag ? $r('app.string.viewing_encryption_details') : $r('app.string.stow_away')) 202df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 203df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_secondary')) 204df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 205df226684Sopenharmony_ci .textAlign(TextAlign.Center) 206df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.chevron_down')) 207df226684Sopenharmony_ci .fontSize(`${Constants.PP_IMAGE_HEIGHT}vp`) 208df226684Sopenharmony_ci .fontColor([$r('sys.color.ohos_id_color_tertiary')]) 209df226684Sopenharmony_ci .rotate({ 210df226684Sopenharmony_ci angle: !this.flag ? Constants.PP_BUTTON_PAD : Constants.ENCRYPTION_SUCCESS_TRANSLATE 211df226684Sopenharmony_ci }) 212df226684Sopenharmony_ci .transition({ type: TransitionType.All, opacity: Constants.PP_BUTTON_PAD }) 213df226684Sopenharmony_ci } 214df226684Sopenharmony_ci .onClick(() => this.onFlagChange()) 215df226684Sopenharmony_ci .justifyContent(FlexAlign.Center) 216df226684Sopenharmony_ci .margin({ bottom: Constants.ENCRYPTION_SUCCESS_ROTATE_MARGIN_BOTTOM }) 217df226684Sopenharmony_ci 218df226684Sopenharmony_ci Column() { 219df226684Sopenharmony_ci if (this.flag) { 220df226684Sopenharmony_ci if ((this.routerParams.selectedPermissionTypeReadOnly as PermissionType).data === 'all') { 221df226684Sopenharmony_ci Row() { 222df226684Sopenharmony_ci Text($r('app.string.header_title_readonly')) 223df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 224df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 225df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 226df226684Sopenharmony_ci Text(' : ') 227df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 228df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 229df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 230df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 231df226684Sopenharmony_ci Text($r('app.string.PERMISSION_TYPE_SELECT_ALL')) 232df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 233df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 234df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 235df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 236df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.info_circle')) 237df226684Sopenharmony_ci .fontSize(`${Constants.FOOTER_ROW_PAD_RIGHT}vp`) 238df226684Sopenharmony_ci .fontColor([$r('sys.color.icon_secondary')]) 239df226684Sopenharmony_ci .margin({ 240df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 241df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 242df226684Sopenharmony_ci }) 243df226684Sopenharmony_ci .onClick(() => { 244df226684Sopenharmony_ci this.handlePopupReadOnly = !this.handlePopupReadOnly 245df226684Sopenharmony_ci }) 246df226684Sopenharmony_ci .draggable(false) 247df226684Sopenharmony_ci .bindPopup(this.handlePopupReadOnly, { 248df226684Sopenharmony_ci builder: this.popupBuilderReadOnly, 249df226684Sopenharmony_ci placement: SystemUtils.isRTL() ? Placement.BottomRight : Placement.BottomLeft, 250df226684Sopenharmony_ci offset: { 251df226684Sopenharmony_ci x: SystemUtils.isRTL() ? Constants.POPUP_OFFSET_RTL_X : Constants.POPUP_OFFSET_X 252df226684Sopenharmony_ci }, 253df226684Sopenharmony_ci enableArrow: true, 254df226684Sopenharmony_ci showInSubWindow: false, 255df226684Sopenharmony_ci onStateChange: (e) => { 256df226684Sopenharmony_ci if (!e.isVisible) { 257df226684Sopenharmony_ci this.handlePopupReadOnly = false 258df226684Sopenharmony_ci } 259df226684Sopenharmony_ci } 260df226684Sopenharmony_ci }) 261df226684Sopenharmony_ci } 262df226684Sopenharmony_ci .width(Constants.FOOTER_ROW_WIDTH) 263df226684Sopenharmony_ci .margin({ 264df226684Sopenharmony_ci top: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_TOP, 265df226684Sopenharmony_ci bottom: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_BOTTOM 266df226684Sopenharmony_ci }) 267df226684Sopenharmony_ci } else { 268df226684Sopenharmony_ci if (this.staffDataArrayReadOnly['length']) { 269df226684Sopenharmony_ci Row() { 270df226684Sopenharmony_ci Text($r('app.string.header_title_readonly')) 271df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 272df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 273df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 274df226684Sopenharmony_ci Text(` (${this.staffDataArrayReadOnly['length']}):`) 275df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 276df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 277df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 278df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 279df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.info_circle')) 280df226684Sopenharmony_ci .fontSize(`${Constants.FOOTER_ROW_PAD_RIGHT}vp`) 281df226684Sopenharmony_ci .fontColor([$r('sys.color.icon_secondary')]) 282df226684Sopenharmony_ci .margin({ 283df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 284df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 285df226684Sopenharmony_ci }) 286df226684Sopenharmony_ci .onClick(() => { 287df226684Sopenharmony_ci this.handlePopupReadOnly = !this.handlePopupReadOnly 288df226684Sopenharmony_ci }) 289df226684Sopenharmony_ci .draggable(false) 290df226684Sopenharmony_ci .bindPopup(this.handlePopupReadOnly, { 291df226684Sopenharmony_ci builder: this.popupBuilderReadOnly, 292df226684Sopenharmony_ci placement: SystemUtils.isRTL() ? Placement.BottomRight : Placement.BottomLeft, 293df226684Sopenharmony_ci offset: { 294df226684Sopenharmony_ci x: SystemUtils.isRTL() ? Constants.POPUP_OFFSET_RTL_X : Constants.POPUP_OFFSET_X 295df226684Sopenharmony_ci }, 296df226684Sopenharmony_ci enableArrow: true, 297df226684Sopenharmony_ci showInSubWindow: false, 298df226684Sopenharmony_ci onStateChange: (e) => { 299df226684Sopenharmony_ci if (!e.isVisible) { 300df226684Sopenharmony_ci this.handlePopupReadOnly = false 301df226684Sopenharmony_ci } 302df226684Sopenharmony_ci } 303df226684Sopenharmony_ci }) 304df226684Sopenharmony_ci } 305df226684Sopenharmony_ci .width(Constants.FOOTER_ROW_WIDTH) 306df226684Sopenharmony_ci 307df226684Sopenharmony_ci Flex({ 308df226684Sopenharmony_ci direction: FlexDirection.Row, 309df226684Sopenharmony_ci wrap: FlexWrap.Wrap, 310df226684Sopenharmony_ci }) { 311df226684Sopenharmony_ci if (this.staffDataArrayReadOnly['length'] > 0) { 312df226684Sopenharmony_ci ForEach( 313df226684Sopenharmony_ci this.showNamesArrReadOnly, 314df226684Sopenharmony_ci (item: AuthAccount, index?: number) => { 315df226684Sopenharmony_ci staffItem({ 316df226684Sopenharmony_ci authAccount: item.authAccount, 317df226684Sopenharmony_ci textContent: item.textContent, 318df226684Sopenharmony_ci isActive: false, 319df226684Sopenharmony_ci changeIndex: Number(index), 320df226684Sopenharmony_ci }) 321df226684Sopenharmony_ci }, 322df226684Sopenharmony_ci (item: AuthAccount) => item.authAccount 323df226684Sopenharmony_ci ) 324df226684Sopenharmony_ci if (Number(this.hideNamesNumReadOnly) > 0) { 325df226684Sopenharmony_ci Row() { 326df226684Sopenharmony_ci if (this.showNamesArrReadOnly.length !== this.staffDataArrayReadOnly.length) { 327df226684Sopenharmony_ci Text() { 328df226684Sopenharmony_ci Span('+') 329df226684Sopenharmony_ci Span(this.hideNamesNumReadOnly) 330df226684Sopenharmony_ci } 331df226684Sopenharmony_ci .customizeText() 332df226684Sopenharmony_ci } 333df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.chevron_down')) 334df226684Sopenharmony_ci .fontSize(`${Constants.PP_IMAGE_HEIGHT}vp`) 335df226684Sopenharmony_ci .fontColor([$r('sys.color.ohos_id_color_secondary')]) 336df226684Sopenharmony_ci .rotate({ 337df226684Sopenharmony_ci angle: !this.readOnlyFlag ? 338df226684Sopenharmony_ci Constants.PP_BUTTON_PAD : Constants.ENCRYPTION_SUCCESS_TRANSLATE 339df226684Sopenharmony_ci }) 340df226684Sopenharmony_ci .transition({ type: TransitionType.All, opacity: Constants.PP_BUTTON_PAD }) 341df226684Sopenharmony_ci } 342df226684Sopenharmony_ci .height(Constants.ENCRYPTION_SUCCESS_TOGGLE_HEIGHT) 343df226684Sopenharmony_ci .onClick(() => { 344df226684Sopenharmony_ci let tmp: Record<string, AuthAccount[] | boolean> = toggleShow( 345df226684Sopenharmony_ci this.routerParams.staffDataArrayReadOnly as AuthAccount[], 346df226684Sopenharmony_ci this.showNamesArrReadOnly, 347df226684Sopenharmony_ci this.readOnlyFlag, 348df226684Sopenharmony_ci this.rowNamesLenReadOnly 349df226684Sopenharmony_ci ); 350df226684Sopenharmony_ci this.showNamesArrReadOnly = tmp.showNamesArr as AuthAccount[]; 351df226684Sopenharmony_ci this.readOnlyFlag = tmp.showFlag as boolean; 352df226684Sopenharmony_ci }) 353df226684Sopenharmony_ci } 354df226684Sopenharmony_ci } 355df226684Sopenharmony_ci } 356df226684Sopenharmony_ci .onAreaChange((oldValue: Area, newValue: Area) => { 357df226684Sopenharmony_ci if (oldValue.width === Constants.ENCRYPTION_ON_AREA_CHANGE_WIDTH || 358df226684Sopenharmony_ci newValue.width !== oldValue.width) { 359df226684Sopenharmony_ci let tmp: Record<string, number | AuthAccount[] | string> = 360df226684Sopenharmony_ci calculate(newValue, this.routerParams.staffDataArrayReadOnly as AuthAccount[]); 361df226684Sopenharmony_ci this.rowNamesLenReadOnly = tmp.rowNamesLen as number; 362df226684Sopenharmony_ci this.showNamesArrReadOnly = tmp.showNamesArr as AuthAccount[]; 363df226684Sopenharmony_ci this.hideNamesNumReadOnly = tmp.hideNamesNum as string; 364df226684Sopenharmony_ci this.readOnlyFlag = false; 365df226684Sopenharmony_ci } 366df226684Sopenharmony_ci }) 367df226684Sopenharmony_ci .margin({ 368df226684Sopenharmony_ci top: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_TOP, 369df226684Sopenharmony_ci bottom: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_BOTTOM 370df226684Sopenharmony_ci }) 371df226684Sopenharmony_ci } 372df226684Sopenharmony_ci } 373df226684Sopenharmony_ci 374df226684Sopenharmony_ci if (['all', 'self'] 375df226684Sopenharmony_ci .includes((this.routerParams.selectedPermissionTypeEdit as PermissionType).data)) { 376df226684Sopenharmony_ci Row() { 377df226684Sopenharmony_ci Text($r('app.string.header_title_edit')) 378df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 379df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 380df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 381df226684Sopenharmony_ci Text(' : ') 382df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 383df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 384df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 385df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 386df226684Sopenharmony_ci Text((this.routerParams.selectedPermissionTypeEdit as PermissionType).data === 'all' ? 387df226684Sopenharmony_ci $r('app.string.PERMISSION_TYPE_SELECT_ALL') : $r('app.string.PERMISSION_TYPE_SELECT_SELF')) 388df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 389df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 390df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 391df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 392df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.info_circle')) 393df226684Sopenharmony_ci .fontSize(`${Constants.FOOTER_ROW_PAD_RIGHT}vp`) 394df226684Sopenharmony_ci .fontColor([$r('sys.color.icon_secondary')]) 395df226684Sopenharmony_ci .margin({ 396df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 397df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 398df226684Sopenharmony_ci }) 399df226684Sopenharmony_ci .onClick(() => { 400df226684Sopenharmony_ci this.handlePopupEdit = !this.handlePopupEdit 401df226684Sopenharmony_ci }) 402df226684Sopenharmony_ci .draggable(false) 403df226684Sopenharmony_ci .bindPopup(this.handlePopupEdit, { 404df226684Sopenharmony_ci builder: this.popupBuilderEdit, 405df226684Sopenharmony_ci placement: SystemUtils.isRTL() ? Placement.BottomRight : Placement.BottomLeft, 406df226684Sopenharmony_ci offset: { 407df226684Sopenharmony_ci x: SystemUtils.isRTL() ? Constants.POPUP_OFFSET_RTL_X : Constants.POPUP_OFFSET_X 408df226684Sopenharmony_ci }, 409df226684Sopenharmony_ci enableArrow: true, 410df226684Sopenharmony_ci showInSubWindow: false, 411df226684Sopenharmony_ci onStateChange: (e) => { 412df226684Sopenharmony_ci if (!e.isVisible) { 413df226684Sopenharmony_ci this.handlePopupEdit = false 414df226684Sopenharmony_ci } 415df226684Sopenharmony_ci } 416df226684Sopenharmony_ci }) 417df226684Sopenharmony_ci } 418df226684Sopenharmony_ci .justifyContent(FlexAlign.Start) 419df226684Sopenharmony_ci .width(Constants.FOOTER_ROW_WIDTH) 420df226684Sopenharmony_ci .margin({ 421df226684Sopenharmony_ci top: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_TOP, 422df226684Sopenharmony_ci bottom: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_BOTTOM 423df226684Sopenharmony_ci }) 424df226684Sopenharmony_ci } else { 425df226684Sopenharmony_ci if (this.staffDataArrayEdit['length']) { 426df226684Sopenharmony_ci Row() { 427df226684Sopenharmony_ci Text($r('app.string.header_title_edit')) 428df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 429df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 430df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 431df226684Sopenharmony_ci Text(` (${this.staffDataArrayEdit['length']}):`) 432df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 433df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 434df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 435df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 436df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.info_circle')) 437df226684Sopenharmony_ci .fontSize(`${Constants.FOOTER_ROW_PAD_RIGHT}vp`) 438df226684Sopenharmony_ci .fontColor([$r('sys.color.icon_secondary')]) 439df226684Sopenharmony_ci .margin({ 440df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 441df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 442df226684Sopenharmony_ci }) 443df226684Sopenharmony_ci .onClick(() => { 444df226684Sopenharmony_ci this.handlePopupEdit = !this.handlePopupEdit 445df226684Sopenharmony_ci }) 446df226684Sopenharmony_ci .draggable(false) 447df226684Sopenharmony_ci .bindPopup(this.handlePopupEdit, { 448df226684Sopenharmony_ci builder: this.popupBuilderEdit, 449df226684Sopenharmony_ci placement: SystemUtils.isRTL() ? Placement.BottomRight : Placement.BottomLeft, 450df226684Sopenharmony_ci offset: { 451df226684Sopenharmony_ci x: SystemUtils.isRTL() ? Constants.POPUP_OFFSET_RTL_X : Constants.POPUP_OFFSET_X 452df226684Sopenharmony_ci }, 453df226684Sopenharmony_ci enableArrow: true, 454df226684Sopenharmony_ci showInSubWindow: false, 455df226684Sopenharmony_ci onStateChange: (e) => { 456df226684Sopenharmony_ci if (!e.isVisible) { 457df226684Sopenharmony_ci this.handlePopupEdit = false 458df226684Sopenharmony_ci } 459df226684Sopenharmony_ci } 460df226684Sopenharmony_ci }) 461df226684Sopenharmony_ci } 462df226684Sopenharmony_ci .justifyContent(FlexAlign.Start) 463df226684Sopenharmony_ci .width(Constants.FOOTER_ROW_WIDTH) 464df226684Sopenharmony_ci 465df226684Sopenharmony_ci Flex({ 466df226684Sopenharmony_ci direction: FlexDirection.Row, 467df226684Sopenharmony_ci wrap: FlexWrap.Wrap, 468df226684Sopenharmony_ci }) { 469df226684Sopenharmony_ci if (this.staffDataArrayEdit['length'] > 0) { 470df226684Sopenharmony_ci ForEach( 471df226684Sopenharmony_ci this.showNamesArrEdit, 472df226684Sopenharmony_ci (item: AuthAccount, index?: number) => { 473df226684Sopenharmony_ci staffItem({ 474df226684Sopenharmony_ci authAccount: item.authAccount, 475df226684Sopenharmony_ci textContent: item.textContent, 476df226684Sopenharmony_ci isActive: false, 477df226684Sopenharmony_ci changeIndex: Number(index), 478df226684Sopenharmony_ci }) 479df226684Sopenharmony_ci }, 480df226684Sopenharmony_ci (item: AuthAccount) => item.authAccount 481df226684Sopenharmony_ci ) 482df226684Sopenharmony_ci if (Number(this.hideNamesNumEdit) > 0) { 483df226684Sopenharmony_ci Row() { 484df226684Sopenharmony_ci if (this.showNamesArrEdit.length !== this.staffDataArrayEdit.length) { 485df226684Sopenharmony_ci Text() { 486df226684Sopenharmony_ci Span('+') 487df226684Sopenharmony_ci Span(this.hideNamesNumEdit) 488df226684Sopenharmony_ci } 489df226684Sopenharmony_ci .customizeText() 490df226684Sopenharmony_ci } 491df226684Sopenharmony_ci SymbolGlyph($r('sys.symbol.chevron_down')) 492df226684Sopenharmony_ci .fontSize(`${Constants.PP_IMAGE_HEIGHT}vp`) 493df226684Sopenharmony_ci .fontColor([$r('sys.color.ohos_id_color_secondary')]) 494df226684Sopenharmony_ci .rotate({ 495df226684Sopenharmony_ci angle: !this.editFlag ? 496df226684Sopenharmony_ci Constants.PP_BUTTON_PAD : Constants.ENCRYPTION_SUCCESS_TRANSLATE 497df226684Sopenharmony_ci }) 498df226684Sopenharmony_ci .transition({ type: TransitionType.All, opacity: Constants.PP_BUTTON_PAD }) 499df226684Sopenharmony_ci } 500df226684Sopenharmony_ci .height(Constants.ENCRYPTION_SUCCESS_TOGGLE_HEIGHT) 501df226684Sopenharmony_ci .onClick(() => { 502df226684Sopenharmony_ci let tmp: Record<string, AuthAccount[] | boolean> = toggleShow( 503df226684Sopenharmony_ci this.routerParams.staffDataArrayEdit as AuthAccount[], 504df226684Sopenharmony_ci this.showNamesArrEdit, 505df226684Sopenharmony_ci this.editFlag, 506df226684Sopenharmony_ci this.rowNamesLenEdit 507df226684Sopenharmony_ci ); 508df226684Sopenharmony_ci this.showNamesArrEdit = tmp.showNamesArr as AuthAccount[]; 509df226684Sopenharmony_ci this.editFlag = tmp.showFlag as boolean; 510df226684Sopenharmony_ci }) 511df226684Sopenharmony_ci } 512df226684Sopenharmony_ci } 513df226684Sopenharmony_ci } 514df226684Sopenharmony_ci .onAreaChange((oldValue: Area, newValue: Area) => { 515df226684Sopenharmony_ci if (oldValue.width === Constants.ENCRYPTION_ON_AREA_CHANGE_WIDTH || 516df226684Sopenharmony_ci newValue.width !== oldValue.width) { 517df226684Sopenharmony_ci let tmp: Record<string, number | AuthAccount[] | string> = 518df226684Sopenharmony_ci calculate(newValue, this.routerParams.staffDataArrayEdit as AuthAccount[]); 519df226684Sopenharmony_ci this.rowNamesLenEdit = tmp.rowNamesLen as number; 520df226684Sopenharmony_ci this.showNamesArrEdit = tmp.showNamesArr as AuthAccount[]; 521df226684Sopenharmony_ci this.hideNamesNumEdit = tmp.hideNamesNum as string; 522df226684Sopenharmony_ci this.editFlag = false; 523df226684Sopenharmony_ci } 524df226684Sopenharmony_ci }) 525df226684Sopenharmony_ci .margin({ 526df226684Sopenharmony_ci top: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_TOP, 527df226684Sopenharmony_ci bottom: Constants.ENCRYPTION_SUCCESS_ADD_STAFF_MARGIN_BOTTOM 528df226684Sopenharmony_ci }) 529df226684Sopenharmony_ci } 530df226684Sopenharmony_ci } 531df226684Sopenharmony_ci 532df226684Sopenharmony_ci Column({ space: Constants.HEADER_ROW_FONT_SIZE }) { 533df226684Sopenharmony_ci Row() { 534df226684Sopenharmony_ci Text($r('app.string.Document_valid_until')) 535df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 536df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 537df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 538df226684Sopenharmony_ci .textAlign(TextAlign.Start) 539df226684Sopenharmony_ci Text(' :') 540df226684Sopenharmony_ci .fontFamily($r('app.string.typeface')) 541df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 542df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary')) 543df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 544df226684Sopenharmony_ci .margin({ 545df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 546df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 547df226684Sopenharmony_ci }) 548df226684Sopenharmony_ci Text(getTime()) 549df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 550df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_secondary')) 551df226684Sopenharmony_ci .fontWeight(FontWeight.Regular) 552df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 553df226684Sopenharmony_ci .textAlign(TextAlign.Start) 554df226684Sopenharmony_ci .margin({ 555df226684Sopenharmony_ci right: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_RIGHT : Constants.AP_TEXT_PAD_LEFT, 556df226684Sopenharmony_ci left: SystemUtils.isRTL() ? Constants.AP_TEXT_PAD_LEFT : Constants.AP_TEXT_PAD_RIGHT, 557df226684Sopenharmony_ci }) 558df226684Sopenharmony_ci } 559df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 560df226684Sopenharmony_ci 561df226684Sopenharmony_ci Row() { 562df226684Sopenharmony_ci Text($r('app.string.change_encryption')) 563df226684Sopenharmony_ci .fontSize($r('sys.float.ohos_id_text_size_body2')) 564df226684Sopenharmony_ci .fontColor($r('sys.color.ohos_id_color_text_primary_activated')) 565df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 566df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 567df226684Sopenharmony_ci .textAlign(TextAlign.Start) 568df226684Sopenharmony_ci .onClick(() => { 569df226684Sopenharmony_ci router.replaceUrl({ 570df226684Sopenharmony_ci url: 'pages/changeEncryption', 571df226684Sopenharmony_ci params: this.routerParams 572df226684Sopenharmony_ci }) 573df226684Sopenharmony_ci }) 574df226684Sopenharmony_ci } 575df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 576df226684Sopenharmony_ci } 577df226684Sopenharmony_ci .width(Constants.HEADER_COLUMN_WIDTH) 578df226684Sopenharmony_ci .margin({ bottom: Constants.ENCRYPTION_CHANGE_VALID_UNTIL_MARGIN_BOTTOM }) 579df226684Sopenharmony_ci } 580df226684Sopenharmony_ci } 581df226684Sopenharmony_ci } 582df226684Sopenharmony_ci }.constraintSize({ 583df226684Sopenharmony_ci maxHeight: this.directionStatus === 584df226684Sopenharmony_ci 0 ? Constants.CHANGE_MAX_HEIGHT : Constants.ENCRYPTION_SUCCESS_MAX_HEIGHT 585df226684Sopenharmony_ci }) 586df226684Sopenharmony_ci .padding({ 587df226684Sopenharmony_ci left: Constants.HEADER_COLUMN_PADDING_LEFT, 588df226684Sopenharmony_ci right: Constants.HEADER_COLUMN_PADDING_RIGHT 589df226684Sopenharmony_ci }) 590df226684Sopenharmony_ci 591df226684Sopenharmony_ci Row() { 592df226684Sopenharmony_ci Button($r('app.string.finished'), { type: ButtonType.Capsule, stateEffect: true }) 593df226684Sopenharmony_ci .backgroundColor($r('sys.color.ohos_id_color_text_primary_activated')) 594df226684Sopenharmony_ci .fontWeight(FontWeight.Medium) 595df226684Sopenharmony_ci .width(Constants.FOOTER_WIDTH_BUTTON) 596df226684Sopenharmony_ci .controlSize(ControlSize.NORMAL) 597df226684Sopenharmony_ci .onClick(async (event) => { 598df226684Sopenharmony_ci if (!(GlobalContext.load('requestIsFromSandBox') as boolean)) { 599df226684Sopenharmony_ci let dlpFileName: string = GlobalContext.load('dlpFileName') as string; 600df226684Sopenharmony_ci try { 601df226684Sopenharmony_ci HiLog.info(TAG, `closeDLPFile: ${dlpFileName}`); 602df226684Sopenharmony_ci let hF = GlobalContext.load('homeFeature') as HomeFeature; 603df226684Sopenharmony_ci await new Promise<void>((resolve, reject) => { 604df226684Sopenharmony_ci hF.closeDLPFileHome(GlobalContext.load('uri'), (err: number) => { 605df226684Sopenharmony_ci if (err !== 0) { 606df226684Sopenharmony_ci reject(); 607df226684Sopenharmony_ci } 608df226684Sopenharmony_ci resolve(); 609df226684Sopenharmony_ci }); 610df226684Sopenharmony_ci }) 611df226684Sopenharmony_ci } catch (err) { 612df226684Sopenharmony_ci HiLog.error(TAG, `closeDLPFile: ${dlpFileName}, failed: ${JSON.stringify(err)}`); 613df226684Sopenharmony_ci } 614df226684Sopenharmony_ci } 615df226684Sopenharmony_ci if (this.session !== undefined) { 616df226684Sopenharmony_ci this.session.terminateSelfWithResult({ 617df226684Sopenharmony_ci 'resultCode': 0, 618df226684Sopenharmony_ci 'want': { 619df226684Sopenharmony_ci 'bundleName': Constants.DLP_MANAGER_BUNDLE_NAME, 620df226684Sopenharmony_ci }, 621df226684Sopenharmony_ci }); 622df226684Sopenharmony_ci } else { 623df226684Sopenharmony_ci if (GlobalContext.load('fileOpenHistoryFromMain')) { 624df226684Sopenharmony_ci (GlobalContext.load('fileOpenHistoryFromMain') as Map<string, Object>) 625df226684Sopenharmony_ci .delete(GlobalContext.load('uri') as string) 626df226684Sopenharmony_ci } 627df226684Sopenharmony_ci abilityResult.resultCode = 0; 628df226684Sopenharmony_ci (getContext(this) as common.UIAbilityContext).terminateSelfWithResult(abilityResult); 629df226684Sopenharmony_ci } 630df226684Sopenharmony_ci }) 631df226684Sopenharmony_ci } 632df226684Sopenharmony_ci .justifyContent(FlexAlign.Center) 633df226684Sopenharmony_ci .margin({ 634df226684Sopenharmony_ci top: Constants.ENCRYPTION_BUTTON_PADDING_TOP, 635df226684Sopenharmony_ci bottom: Constants.ENCRYPTION_BUTTON_MARGIN_BOTTOM 636df226684Sopenharmony_ci }) 637df226684Sopenharmony_ci .padding({ 638df226684Sopenharmony_ci left: Constants.FOOTER_ROW_PAD_LEFT, 639df226684Sopenharmony_ci right: Constants.FOOTER_ROW_PAD_RIGHT 640df226684Sopenharmony_ci }) 641df226684Sopenharmony_ci } 642df226684Sopenharmony_ci .width(Constants.ENCRYPTION_PC_FIXING_WIDTH) 643df226684Sopenharmony_ci .backgroundColor($r('sys.color.ohos_id_color_dialog_bg')) 644df226684Sopenharmony_ci .borderRadius($r('sys.float.ohos_id_corner_radius_dialog')) 645df226684Sopenharmony_ci .constraintSize({ 646df226684Sopenharmony_ci minWidth: Constants.ENCRYPTION_PC_FIXING_WIDTH, 647df226684Sopenharmony_ci minHeight: Constants.ENCRYPTION_LOADING_HEIGHT 648df226684Sopenharmony_ci }) 649df226684Sopenharmony_ci .backgroundBlurStyle(BlurStyle.COMPONENT_ULTRA_THICK); 650df226684Sopenharmony_ci } 651df226684Sopenharmony_ci } 652df226684Sopenharmony_ci } 653df226684Sopenharmony_ci } 654df226684Sopenharmony_ci .backgroundColor($r('sys.color.mask_fourth')) 655df226684Sopenharmony_ci } 656df226684Sopenharmony_ci} 657