import {Platform} from 'react-native';
import {z} from 'zod';
import { useApi } from '@common/api/useApi.ts';

const appVersionSchema = z.object({
  version: z.string(), // 版本号
  msg: z.string().optional().default('无'), // 更新说明
  force: z.boolean().optional().default(false), // 是否强制更新
  downloadUrl: z.string().optional(), // 安卓官网下载地址
  url: z.string().url().optional(), // 安卓下载地址
  internal: z.boolean().optional().default(true), // 是否应用内下载
  huawei: z
    .object({
      market: z.string().optional(),
      enable: z.boolean().optional().default(false),
    })
    .optional(),
  xiaomi: z
    .object({
      market: z.string().optional(),
      enable: z.boolean().optional().default(false),
    })
    .optional(),
  oppo: z
    .object({
      market: z.string().optional(),
      enable: z.boolean().optional().default(false),
    })
    .optional(),
  vivo: z
    .object({
      market: z.string().optional(),
      enable: z.boolean().optional().default(false),
    })
    .optional(),
  honor: z
    .object({
      market: z.string().optional(),
      enable: z.boolean().optional().default(false),
    })
    .optional(),
});

// 获取当前最新app版本号，用于检查是否需要更新
// 安卓：{"downloadUrl": "https://www.51trust.com/download.html", "force": false, "htmlVersion": "1.0.5", "isMaintain": false, "msg": "更新说明 1.新增一键全签功能 2.支持拍摄手写笔记设置签名图片 3.新增患者文件夹展示签名列表 4.修正已知bug", "url": "http://tms-dev.oss-cn-beijing.aliyuncs.com/online_android/yiwangxin.6.6.0.apk", "version": "7.0.1"}
// iOS：{"force": false, "htmlVersion": "1.0.4", "isMaintain": false, "msg": "更新说明 1. 为医生提供资料库功能，可以手动群发提醒和宣传文章", "url": "", "version": "6.6.6"}
const useAppVersion = () => {
  return useApi(
    Platform.select({
      android: '/am/v3/common/version/android',
      ios: '/am/v3/common/version/ios',
    }) ?? '',
    'GET',
    {},
    appVersionSchema,
    {
      loadingDelay: 500,
    },
  );
};

export {useAppVersion};
