45
45
import { onMounted , ref } from ' vue' ;
46
46
import { useI18n } from ' vue-i18n' ;
47
47
48
- import { isElectron , isMobile } from ' @/utils' ;
49
- import { getLatestReleaseInfo , getProxyNodes } from ' @/utils/update' ;
48
+ import { isElectron } from ' @/utils' ;
50
49
51
50
import config from ' ../../../../package.json' ;
52
51
53
52
const { t } = useI18n ();
54
53
55
54
const showModal = ref (false );
56
55
const noPrompt = ref (false );
57
- const releaseInfo = ref <any >(null );
58
56
59
57
const closeModal = () => {
60
58
showModal .value = false ;
@@ -63,11 +61,9 @@ const closeModal = () => {
63
61
}
64
62
};
65
63
66
- const proxyHosts = ref <string []>([]);
67
-
68
64
onMounted (async () => {
69
65
// 如果是 electron 环境,不显示安装提示
70
- if (isElectron || isMobile . value ) {
66
+ if (isElectron ) {
71
67
return ;
72
68
}
73
69
@@ -76,58 +72,11 @@ onMounted(async () => {
76
72
if (isDismissed ) {
77
73
return ;
78
74
}
79
-
80
- // 获取最新版本信息
81
- releaseInfo .value = await getLatestReleaseInfo ();
82
75
showModal .value = true ;
83
- proxyHosts .value = await getProxyNodes ();
84
76
});
85
77
86
78
const handleInstall = async (): Promise <void > => {
87
- const assets = releaseInfo .value ?.assets || [];
88
- const { userAgent } = navigator ;
89
- const isMac = userAgent .toLowerCase ().includes (' mac' );
90
- const isWindows = userAgent .toLowerCase ().includes (' win' );
91
- const isLinux = userAgent .toLowerCase ().includes (' linux' );
92
- const isX64 =
93
- userAgent .includes (' x86_64' ) || userAgent .includes (' Win64' ) || userAgent .includes (' WOW64' );
94
-
95
- let downloadUrl = ' ' ;
96
-
97
- // 根据平台和架构选择对应的安装包
98
- if (isMac ) {
99
- // macOS
100
- const macAsset = assets .find ((asset ) => asset .name .includes (' mac' ));
101
- downloadUrl = macAsset ?.browser_download_url || ' ' ;
102
- } else if (isWindows ) {
103
- // Windows
104
- let winAsset = assets .find (
105
- (asset ) =>
106
- asset .name .includes (' win' ) &&
107
- (isX64 ? asset .name .includes (' x64' ) : asset .name .includes (' ia32' ))
108
- );
109
- if (! winAsset ) {
110
- winAsset = assets .find ((asset ) => asset .name .includes (' win.exe' ));
111
- }
112
- downloadUrl = winAsset ?.browser_download_url || ' ' ;
113
- } else if (isLinux ) {
114
- // Linux
115
- const linuxAsset = assets .find (
116
- (asset ) =>
117
- (asset .name .endsWith (' .AppImage' ) || asset .name .endsWith (' .deb' )) &&
118
- asset .name .includes (' x64' )
119
- );
120
- downloadUrl = linuxAsset ?.browser_download_url || ' ' ;
121
- }
122
-
123
- if (downloadUrl ) {
124
- const proxyDownloadUrl = ` ${proxyHosts .value [0 ]}/${downloadUrl } ` ;
125
- window .open (proxyDownloadUrl , ' _blank' );
126
- } else {
127
- // 如果没有找到对应的安装包,跳转到 release 页面
128
- window .open (' https://github.com/algerkong/AlgerMusicPlayer/releases/latest' , ' _blank' );
129
- }
130
- closeModal ();
79
+ window .open (' http://donate.alger.fun/download' , ' _blank' );
131
80
};
132
81
</script >
133
82
0 commit comments