share.ts 1.05 KB
import { ViewTypeEnum } from "@/enums/external/viewEnum"
import { defHttp } from "@/utils/external/http/axios"

enum Api {
  TOKEN = '/auth/login/public',

  CHECK = '/share/check',

  SHARE_CONTENT = '/share'
}

/**
 * @description 获取token
 * @param publicId string
 */
export const getPublicToken = (publicId: string) => {
  return defHttp.post<Record<'token' | 'refreshToken', string>>({
    url: Api.TOKEN,
    data: { publicId }
  }, { joinPrefix: false })
}

/**
 * @description 检查时候需要访问令牌
 * @param id string
 */
export const checkSharePageNeedAccessToken = (id: string) => {
  return defHttp.get<{data: boolean}>({
    url: `${Api.CHECK}/${ViewTypeEnum.LARGE_SCREEN}/${id}`
  })
}

/**
 * @description 获取分享的数据内容
 * @param options 
 */
export const getShareContentData = (options: Record<'id' | 'accessCredentials', string>) => {
  return defHttp.get<{ data: any }>({
    url: `${Api.SHARE_CONTENT}/${ViewTypeEnum.LARGE_SCREEN}/share_data/${options.id}`,
    params: { accessCredentials: options.accessCredentials }
  })
}