@@ -10,14 +10,21 @@ import {
1010import * as tiny from "./tiny_mappings.js" ;
1111
1212( async ( ) => {
13- const minecraftStableVersions = await getMinecraftStableVersions ( "gen1" ) ;
14- const minecraftAllVersions = await getMinecraftVersions ( "gen1" ) ;
13+ const genSelectorRadios = {
14+ gen1 : document . getElementById ( "generation-gen1" ) ,
15+ gen2 : document . getElementById ( "generation-gen2" )
16+ }
17+
18+ const gen = Object . entries ( genSelectorRadios ) . find ( ( [ _ , button ] ) => button . checked ) [ 0 ] ;
19+ let minecraftStableVersions = await getMinecraftStableVersions ( gen ) ;
20+ let minecraftAllVersions = await getMinecraftVersions ( gen ) ;
1521
1622 let possibleVersions ;
1723
1824 const versionSelectorInput = document . getElementById ( "mc-version" ) ;
1925 const versionListElement = document . getElementById ( "version-list" ) ;
2026 const allowSnapshotsCheck = document . getElementById ( "allow-snapshots" ) ;
27+ const featherGenSelector = document . getElementById ( "calamus-gen-selectors" ) ;
2128
2229 const buildSourceElement = document . getElementById ( "build-source" ) ;
2330 const buildTargetElement = document . getElementById ( "build-target" ) ;
@@ -29,7 +36,8 @@ import * as tiny from "./tiny_mappings.js";
2936 if (
3037 possibleVersions . some ( ( version ) => versionSelectorInput . value === version )
3138 ) {
32- await getFeatherVersionMeta ( "gen1" , versionSelectorInput . value ) . then (
39+ const gen = Object . entries ( genSelectorRadios ) . find ( ( [ _ , button ] ) => button . checked ) [ 0 ] ;
40+ await getFeatherVersionMeta ( gen , versionSelectorInput . value ) . then (
3341 ( featherVersionMeta ) => {
3442 buildSourceElement . innerHTML = "" ;
3543 buildTargetElement . innerHTML = "" ;
@@ -47,11 +55,16 @@ import * as tiny from "./tiny_mappings.js";
4755
4856 // Hide the diff viewer bc the source and target builds are the same
4957 diffViewerElement . style . display = "none" ;
58+ } else {
59+ buildSourceElement . innerHTML = "" ;
60+ buildTargetElement . innerHTML = "" ;
61+ diffViewerElement . style . display = "none" ;
5062 }
5163 }
5264
5365 async function getTinyMappings ( version ) {
54- let arrayBuf = await getFeatherBuildMaven ( version )
66+ const gen = Object . entries ( genSelectorRadios ) . find ( ( [ _ , button ] ) => button . checked ) [ 0 ] ;
67+ let arrayBuf = await getFeatherBuildMaven ( gen , version )
5568 . then ( ( response ) => response . blob ( ) ) // Get response as a Blob
5669 . then ( async ( blob ) => {
5770 const arrayBuffer = await blob . arrayBuffer ( ) ; // Convert Blob to ArrayBuffer
@@ -142,14 +155,18 @@ import * as tiny from "./tiny_mappings.js";
142155 ) ;
143156
144157 allowSnapshotsCheck . addEventListener ( "change" , ( _ ) => {
145- if ( allowSnapshotsCheck . checked ) {
146- possibleVersions = minecraftAllVersions ;
147- } else {
148- possibleVersions = minecraftStableVersions ;
149- }
150158 updateVersionList ( ) ;
151159 } ) ;
152160
161+ featherGenSelector . addEventListener ( "change" , async ( e ) => {
162+ const gen = Object . entries ( genSelectorRadios ) . find ( ( [ _ , button ] ) => button === e . target ) [ 0 ] ;
163+ minecraftStableVersions = await getMinecraftStableVersions ( gen ) ;
164+ minecraftAllVersions = await getMinecraftVersions ( gen ) ;
165+
166+ updateVersionList ( ) ;
167+ await updateFeatherBuilds ( ) ;
168+ } )
169+
153170 buildSourceElement . addEventListener (
154171 "change" ,
155172 async ( _ ) => await updateFeatherDiff ( ) ,
@@ -165,17 +182,21 @@ import * as tiny from "./tiny_mappings.js";
165182 } ) ;
166183
167184 function updateVersionList ( ) {
168- const list = possibleVersions ;
185+ if ( allowSnapshotsCheck . checked ) {
186+ possibleVersions = minecraftAllVersions ;
187+ } else {
188+ possibleVersions = minecraftStableVersions ;
189+ }
190+
169191 while ( versionListElement . firstChild )
170192 versionListElement . removeChild ( versionListElement . lastChild ) ;
171- list . forEach ( ( e ) => {
193+ possibleVersions . forEach ( ( e ) => {
172194 const opt = new Option ( ) ;
173195 opt . value = e ;
174196 versionListElement . appendChild ( opt ) ;
175197 } ) ;
176198 }
177199
178- possibleVersions = minecraftStableVersions ;
179200 updateVersionList ( ) ;
180201 await updateFeatherBuilds ( ) ;
181202} ) ( ) ;
0 commit comments