|
146 | 146 | let selected: string; |
147 | 147 | let isolateProfile = false; |
148 | 148 | list_versions(PROJECT_ID).then((result) => { |
149 | | - const featured_versions = result |
150 | | - .filter((e) => e.featured) |
151 | | - .filter((e) => e.files.find((e) => e.filename == 'cosign-bundle.zip')); |
| 149 | + const signed_versions = result.filter((e) => |
| 150 | + e.files.find((e) => e.filename == 'cosign-bundle.zip') |
| 151 | + ); |
| 152 | + const featured_versions: Version[] = []; |
| 153 | + const latest: Record<string, Version> = {}; |
| 154 | + for (const version of signed_versions) { |
| 155 | + if (version.name.includes('▪️') || version.name.includes('⚠️')) { |
| 156 | + continue; |
| 157 | + } |
| 158 | + if (version.name.includes('▫️')) { |
| 159 | + console.log(version); |
| 160 | + featured_versions.push(version); |
| 161 | + continue; |
| 162 | + } |
| 163 | + for (const game_version of version.game_versions) { |
| 164 | + if ( |
| 165 | + latest[game_version] == undefined || |
| 166 | + flexver_compare(latest[game_version].version_number, version.version_number) < 0 |
| 167 | + ) { |
| 168 | + latest[game_version] = version; |
| 169 | + } |
| 170 | + } |
| 171 | + } |
| 172 | + for (const key in latest) { |
| 173 | + if (!Object.hasOwn(latest, key)) continue; |
| 174 | +
|
| 175 | + const element = latest[key]; |
| 176 | +
|
| 177 | + if (!featured_versions.includes(element)) { |
| 178 | + featured_versions.push(element); |
| 179 | + } |
| 180 | + } |
| 181 | +
|
| 182 | + featured_versions.sort((a, b) => -flexver_compare(a.version_number, b.version_number)); |
152 | 183 | const release_versions = featured_versions.filter((e) => e.version_type == 'release'); |
153 | 184 | versions = featured_versions; |
154 | 185 | if (release_versions.length > 0) { |
|
0 commit comments