// #ifdef APP-PLUS
import checkVersion from '@/uni_modules/uni-upgrade-center-app/utils/check-update'

// #endif

export function checkUpgrade(toast = false) {
    // #ifdef APP-PLUS
    // 版本更新检查
    if (toast) {
        Message.loading('正在检查更新...')
    }
    checkVersion()
        .then((res) => {
            if (toast && res?.result?.code === 0) {
                Message.toast('已是最新版本~')
            }
        })
        .finally(() => {
            if (toast) {
                Message.hideLoading()
            }
        })
    // #endif
}

/**
 * 关闭 splashscreen 并检查更新
 */
export function closeSplashscreenAndChechUpgrade() {
    return new Promise<void>((resolve) => {
        // FIXED: pages 第一路由页面为登录页，加上 splashscreen 配置控制使得用户体验更好
        // #ifdef APP-PLUS
        nextTick(() => {
            // FIX: 延时执行，解决安卓环境下可能意外看到登录页的问题
            const { platform } = uni.getSystemInfoSync()
            const isAndroid = platform === 'android'
            setTimeout(
                () => {
                    plus.navigator.closeSplashscreen()
                    // 检查更新
                    checkUpgrade()
                    resolve()
                },
                isAndroid ? 1000 : 50,
            )
        })
        // #endif
        // #ifndef APP-PLUS
        resolve()
        // #endif
    })
}
