4
4
<div class =" download-section" name =" browsers" >
5
5
<h3 >{{ t("home.download_browser") }}</h3 >
6
6
7
- <button v-wave class =" browser-download" @click =" onBrowserDownload()" >
7
+ <button
8
+ v-wave
9
+ v-tooltip ="
10
+ isMoz
11
+ ? 'Currently disabled due to gross mishandling by Mozilla. Please use the Nightly version!'
12
+ : ''
13
+ "
14
+ class =" browser-download"
15
+ :class =" { 'is-moz': isMoz }"
16
+ @click =" onBrowserDownload()"
17
+ >
8
18
<Logo color =" #29b6f6" />
9
19
<p >
10
20
<span >Stable Release</span >
11
- <sub :style =" { color: 'lightgreen' }" >Version 3.0.1</sub >
21
+ <sub :style =" { color: 'lightgreen', opacity: versions.extension && 1 }" >
22
+ Version {{ versions.extension }}
23
+ </sub >
12
24
</p >
13
25
</button >
14
26
24
36
<Logo color =" #cc41f2" />
25
37
<p >
26
38
<span >Nightly Release</span >
27
- <sub :style =" { color: '#cc41f2' }" >Version 3.0.1</sub >
39
+ <sub :style =" { color: '#cc41f2', opacity: versions['extension-nightly'] && 1 }"
40
+ >Version {{ versions["extension-nightly"] }}</sub
41
+ >
28
42
</p >
29
43
</button >
30
44
</div >
67
81
</template >
68
82
69
83
<script setup lang="ts">
84
+ import { reactive } from " vue" ;
70
85
import { useI18n } from " vue-i18n" ;
71
86
import { useActor } from " @/store/actor" ;
72
87
import { useDownloadLink } from " @/composables/useDownloadLink" ;
@@ -92,6 +107,20 @@ const mobile_dankchat = useDownloadLink("mobile_dankchat");
92
107
93
108
const desktop_chatterino = useDownloadLink (" desktop_chatterino" );
94
109
110
+ const isMoz = browser .name === " Firefox" ;
111
+ const versions = reactive ({
112
+ extension: " " ,
113
+ " extension-nightly" : " " ,
114
+ });
115
+
116
+ const configs = [" extension" , " extension-nightly" ];
117
+ for (const s of configs ) {
118
+ const res = fetch (` ${import .meta .env .VITE_APP_API_REST }/config/${s } ` );
119
+ res .then ((r ) => r .json ()).then ((r ) => {
120
+ versions [s as keyof typeof versions ] = r .version ;
121
+ });
122
+ }
123
+
95
124
const onBrowserDownload = (beta ? : boolean ) => {
96
125
if (browser .name === " Firefox" ) {
97
126
openLink (beta ? firefox_beta .value : firefox .value );
@@ -101,6 +130,7 @@ const onBrowserDownload = (beta?: boolean) => {
101
130
};
102
131
103
132
const openLink = (url : string ): void => {
133
+ if (! url ) return ;
104
134
window .open (` ${url }?referrer=${document .location .host } ` , " _blank" );
105
135
};
106
136
</script >
@@ -179,6 +209,10 @@ main.home-downloads {
179
209
display : grid ;
180
210
}
181
211
212
+ sub {
213
+ opacity : 0 ;
214
+ }
215
+
182
216
& .is-nightly-button {
183
217
// make a gradient with construction stripes
184
218
$color1 : rgba (102 , 56 , 229 , 25% );
@@ -194,6 +228,11 @@ main.home-downloads {
194
228
$color2 75%
195
229
);
196
230
}
231
+
232
+ & :not (.is-nightly-button ).is-moz {
233
+ opacity : 0.5 ;
234
+ background-image : black ;
235
+ }
197
236
}
198
237
}
199
238
0 commit comments