share.ts
1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import { defHttp } from '/@/utils/http/axios';
import { ViewTypeEnum } from '/@/views/sys/share/config/config';
import { isShareMode } from '/@/views/sys/share/hook';
enum Api {
CHECK = '/share/check',
PUBLIC_LOGIN = '/auth/login/public',
SHARE_CONTENT = '/share',
}
export const checkShareAccessToken = (type: ViewTypeEnum, id: string) => {
return defHttp.get<Record<'data', boolean>>(
{
url: `${Api.CHECK}/${type}/${id}`,
},
{
withShareToken: isShareMode(),
}
);
};
export const sharePageLogin = (publicId: string) => {
return defHttp.post<Record<'token' | 'refreshToken', string>>(
{
url: Api.PUBLIC_LOGIN,
data: { publicId },
},
{
joinPrefix: false,
withShareToken: isShareMode(),
}
);
};
export const getShareContent = (record: Record<'accessCredentials' | 'id', string>) => {
const { id, accessCredentials } = record;
return defHttp.get(
{
url: `${Api.SHARE_CONTENT}/${ViewTypeEnum.DATA_BOARD}/share_data/${id}`,
params: { accessCredentials },
},
{
withShareToken: isShareMode(),
}
);
};