feat(staging): added transfer for data from settings app(part 2)

This commit is contained in:
Savely Savianok
2024-12-21 18:51:28 +03:00
parent f21678b219
commit 3b2e4992a3
7 changed files with 98 additions and 77 deletions

View File

@@ -1,23 +1,47 @@
import { setStatusBarVisible } from '@zos/ui'
import { RenderAddButton } from './render/totpRenderer'
import { initLoop } from './render/index/renderer'
import { BasePage } from '@zeppos/zml/base-page'
import { LocalStorage } from "@zos/storage"
const localStorage = new LocalStorage()
const app = getApp()
let waitForFetch = true;
Page(
BasePage({
onInit() {
this.getTOTPData().then((x) => {
console.log(x)
localStorage.setItem('TOTPs', x)
app._options.globalData.TOTPS = x
this.initPage();
})
.catch((x) => {
app._options.globalData.TOTPS = localStorage.getItem('TOTPs')
this.initPage()
})
},
build() {
let fetch = setInterval(() => {
if(waitForFetch)
return;
Page({
onInit() {
//If app has no saved TOTPs
if (app._options.globalData.TOTPS.length < 1)
setStatusBarVisible(true)
else
setStatusBarVisible(false)
},
build() {
const buffer = app._options.globalData.TOTPS
if (buffer.length < 1)
RenderAddButton('page/tip')
else{
initLoop(buffer)
clearInterval(fetch);
const buffer = app._options.globalData.TOTPS
if (buffer.length < 1){
RenderAddButton('page/tip')
}
else {
initLoop(buffer)
}
}, 100);
},
initPage() {
waitForFetch = false;
},
getTOTPData() {
return this.request({
method: 'totps'
})
}
}
})
})
)

View File

@@ -1,6 +1,6 @@
import { deleteWidget, prop } from "@zos/ui";
import { prop } from "@zos/ui";
import { TOTP } from "../../../lib/totp-quickjs";
import { RenderAddButton, RenderExpireBar, RenderOTPValue, RenderTOTPContainer } from '../totpRenderer'
import { RenderExpireBar, RenderOTPValue, RenderTOTPContainer } from '../totpRenderer'
/**
*

View File

@@ -12,6 +12,7 @@ const containerRadius = 20 //Corner radius of container
const textColor = 0xa0a0a0 //Color of TOTP description text
const textSize = 24 //Size of TOTP description text
const statusBarPading = 65
/** Function for render box container for TOTP values
*
@@ -112,4 +113,4 @@ export function RenderAddButton(pagePath) {
})
}
function getYPos(position) { return position * (buttonHeight + 10) }
function getYPos(position) { return position * (buttonHeight + 10) + statusBarPading }

View File

@@ -2,27 +2,30 @@ import { createWidget, widget, align } from "@zos/ui";
import { getDeviceInfo } from "@zos/device";
import { onGesture, GESTURE_LEFT } from '@zos/interaction'
import { back } from "@zos/router";
Page({
onInit(){
onGesture({
callback(event) {
if(event === GESTURE_LEFT){
back()
import { BasePage } from "@zeppos/zml/base-page";
Page(
BasePage({
onInit() {
onGesture({
callback(event) {
if (event === GESTURE_LEFT) {
back()
}
}
}
})
},
build() {
const {width, height} = getDeviceInfo()
createWidget(widget.TEXT, {
x: 0,
w: width,
h: height,
color: 0xffffff,
text_size: 30,
align_h: align.CENTER_H,
align_v: align.CENTER_V,
text: 'To add TOTP record open\n settings on Zepp app'
})
}
})
})
},
build() {
const { width, height } = getDeviceInfo()
createWidget(widget.TEXT, {
x: 0,
w: width,
h: height,
color: 0xffffff,
text_size: 30,
align_h: align.CENTER_H,
align_v: align.CENTER_V,
text: 'To add TOTP record open\n settings on Zepp app'
})
}
})
)