11export type ReleaseInfo = {
22 name : string ;
33 browser_download_url : string ;
4- checksum : string ;
4+ checksum ? : string ;
55 type : string ;
66} ;
77
8- type ReleaseDirectory = {
8+ export type ReleaseDirectory = {
99 version : string ;
1010 win : ReleaseInfo [ ] ;
1111 mac : ReleaseInfo [ ] ;
1212 lin : ReleaseInfo [ ] ;
13- src : ReleaseInfo [ ] ;
13+ src ? : ReleaseInfo [ ] ;
1414} ;
1515
1616export const audacityReleases : ReleaseDirectory = {
@@ -127,4 +127,161 @@ export const audacityReleases: ReleaseDirectory = {
127127 type : ".tar.gz" ,
128128 } ,
129129 ] ,
130- } ;
130+ } ;
131+
132+ export const hasDownloadAssets = ( downloads ?: ReleaseDirectory ) : boolean => {
133+ if ( ! downloads ) {
134+ return false ;
135+ }
136+
137+ const { win, mac, lin, src } = downloads ;
138+
139+ return Boolean (
140+ ( win && win . length )
141+ || ( mac && mac . length )
142+ || ( lin && lin . length )
143+ || ( src && src . length ) ,
144+ ) ;
145+ } ;
146+
147+ export type PreReleaseEntry = {
148+ id : string ;
149+ label : string ;
150+ isActive : boolean ;
151+ summary : string ;
152+ pageHref : string ;
153+ downloads : ReleaseDirectory ;
154+ } ;
155+
156+ export const alphaPreRelease : PreReleaseEntry = {
157+ id : "alpha" ,
158+ label : "Alpha" ,
159+ isActive : true ,
160+ summary :
161+ "Get an early look at the next major release. Expect unfinished features and potential bugs." ,
162+ pageHref : "/next" ,
163+ downloads : {
164+ version : "Audacity 4 Alpha 1" ,
165+ win : [
166+ {
167+ name : "64 bit" ,
168+ browser_download_url :
169+ "https://github.com/audacity/audacity/actions/runs/18406361889/artifacts/4237171895" ,
170+ type : ".zip" ,
171+ } ,
172+ ] ,
173+ mac : [
174+ {
175+ name : "ARM 64 zip (Apple Silicon)" ,
176+ browser_download_url :
177+ "https://github.com/audacity/audacity/actions/runs/18406354692/artifacts/4237536953" ,
178+ type : ".zip" ,
179+ } ,
180+ ] ,
181+ lin : [
182+ {
183+ name : "AppImage" ,
184+ browser_download_url :
185+ "https://github.com/audacity/audacity/actions/runs/18406368664/artifacts/4237050905" ,
186+ type : ".zip" ,
187+ } ,
188+ ] ,
189+ src : [ ] ,
190+ } ,
191+ } ;
192+
193+ export const betaPreRelease : PreReleaseEntry = {
194+ id : "beta" ,
195+ label : "Beta" ,
196+ isActive : false ,
197+ summary : "Help us test upcoming features before they ship." ,
198+ pageHref : "/next" ,
199+ downloads : {
200+ version : "3.5.0 beta" ,
201+ win : [
202+ {
203+ name : "64 bit installer (recommended)" ,
204+ browser_download_url :
205+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-win-3.5.0-beta-3-64bit.exe" ,
206+ checksum :
207+ "ed7de964ed11cbc8f74e815dbcb2cb8487ba136818cf1a148f16cadd4c10f3d0" ,
208+ type : ".exe" ,
209+ } ,
210+ {
211+ name : "64 bit zip file" ,
212+ browser_download_url :
213+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-win-3.5.0-beta-3-64bit.zip" ,
214+ checksum :
215+ "52da5c3e2507408d72c4ab425c2e465e3c8ad452b2ac89ddfb3f5bc141d68a03" ,
216+ type : ".zip" ,
217+ } ,
218+ {
219+ name : "32 bit installer" ,
220+ browser_download_url :
221+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-win-3.5.0-beta-3-32bit.exe" ,
222+ checksum :
223+ "6bb6c0d3513be7d98c400f43d84cd39992065f4c6460d80b6cb1667733ca95c7" ,
224+ type : ".exe" ,
225+ } ,
226+ {
227+ name : "32 bit zip file" ,
228+ browser_download_url :
229+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-win-3.5.0-beta-3-32bit.zip" ,
230+ checksum :
231+ "c313ca3c475b487bf88a42537cbc9454090391250017fe210226b3ca78797d9a" ,
232+ type : ".zip" ,
233+ } ,
234+ ] ,
235+ mac : [
236+ {
237+ name : "Universal dmg (recommended)" ,
238+ browser_download_url :
239+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-macOS-3.5.0-beta-3-universal.dmg" ,
240+ checksum :
241+ "9500ede91b837fc12e5106fa33d6603829288b90fb1e28d2d70bfee9db33406e" ,
242+ type : ".dmg" ,
243+ } ,
244+ {
245+ name : "ARM 64 dmg (Apple Silicon)" ,
246+ browser_download_url :
247+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-macOS-3.5.0-beta-3-arm64.dmg" ,
248+ checksum :
249+ "0f3e9b9ee8e77d8b8613db8d66927e982bbec870e801811060d3d8fbc25c7698" ,
250+ type : ".dmg" ,
251+ } ,
252+ {
253+ name : "x86_64 dmg (Intel)" ,
254+ browser_download_url :
255+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-macOS-3.5.0-beta-3-x86_64.dmg" ,
256+ checksum :
257+ "415342de27b572bd3801f51bd77e850a21701b39e2392c2c347ea8db4da4f122" ,
258+ type : ".dmg" ,
259+ } ,
260+ ] ,
261+ lin : [
262+ {
263+ name : "AppImage" ,
264+ browser_download_url :
265+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-linux-3.5.0-beta-3-x64.AppImage" ,
266+ checksum :
267+ "fc5df63e3819f4f59b4366c436579bd1a73b045a4dae28316edf6c23948a06ce" ,
268+ type : ".AppImage" ,
269+ } ,
270+ ] ,
271+ src : [
272+ {
273+ name : "Source code" ,
274+ browser_download_url :
275+ "https://github.com/audacity/audacity/releases/download/Audacity-3.5.0-beta-3/audacity-sources-3.5.0-beta-3.tar.gz" ,
276+ checksum :
277+ "53c33ed875f4eb1501707d7989a6de253370a368c1c50a877e5cfa96c02bebdc" ,
278+ type : ".tar.gz" ,
279+ } ,
280+ ] ,
281+ } ,
282+ } ;
283+
284+ export const preReleaseList : PreReleaseEntry [ ] = [
285+ alphaPreRelease ,
286+ betaPreRelease ,
287+ ] ;
0 commit comments