|
4 | 4 | easy: "anode_", |
5 | 5 | connect: "connect_" |
6 | 6 | }; |
| 7 | + var requiredAssets = { |
| 8 | + easy: "Bisq_Easy-", |
| 9 | + connect: "Bisq_Connect-" |
| 10 | + }; |
7 | 11 |
|
8 | 12 | function ready(callback) { |
9 | 13 | if (document.readyState === "loading") { |
|
23 | 27 | return safeTag.replace(new RegExp("^" + escapedPrefix, "i"), ""); |
24 | 28 | } |
25 | 29 |
|
26 | | - function findLatestByPrefix(releases, prefix) { |
| 30 | + function hasAsset(release, assetName) { |
| 31 | + return Array.isArray(release.assets) && release.assets.some(function (asset) { |
| 32 | + return asset && asset.name === assetName; |
| 33 | + }); |
| 34 | + } |
| 35 | + |
| 36 | + function hasExpectedAssets(release, prefix, appNamePrefix) { |
| 37 | + var version = extractVersion(release.tag_name, prefix); |
| 38 | + return version && |
| 39 | + hasAsset(release, appNamePrefix + version + ".apk") && |
| 40 | + hasAsset(release, "release-cert.pem"); |
| 41 | + } |
| 42 | + |
| 43 | + function findLatestByPrefix(releases, prefix, appNamePrefix) { |
27 | 44 | var matches = releases.filter(function (release) { |
28 | | - if (release.draft) { |
| 45 | + if (release.draft || release.prerelease) { |
29 | 46 | return false; |
30 | 47 | } |
31 | 48 |
|
32 | 49 | var tag = sanitizeTag(release.tag_name); |
33 | | - return tag.toLowerCase().indexOf(prefix.toLowerCase()) === 0; |
| 50 | + return tag.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && |
| 51 | + hasExpectedAssets(release, prefix, appNamePrefix); |
34 | 52 | }); |
35 | 53 |
|
36 | 54 | if (matches.length === 0) { |
|
90 | 108 | throw new Error("Unexpected GitHub API response"); |
91 | 109 | } |
92 | 110 |
|
93 | | - var easyRelease = findLatestByPrefix(releases, prefixes.easy); |
94 | | - var connectRelease = findLatestByPrefix(releases, prefixes.connect); |
| 111 | + var easyRelease = findLatestByPrefix(releases, prefixes.easy, requiredAssets.easy); |
| 112 | + var connectRelease = findLatestByPrefix(releases, prefixes.connect, requiredAssets.connect); |
95 | 113 | var easyVersionElement = document.querySelector('[data-version="bisq-easy"]'); |
96 | 114 | var connectVersionElement = document.querySelector('[data-version="bisq-connect"]'); |
97 | 115 |
|
|
0 commit comments