import axios from "axios"; import semver from "semver"; export default async function ({projectId, includePrerelease = false}) { return axios.get(`https://git.fitko.de/api/v4/projects/${projectId}/repository/tags`) .catch((error) => { throw `Fetching of tags failed with ${error.response.status}` }) .then(async ({data}) => { const versionRange = `~*.*.*` const suitableVersions = await data .filter(({name}) => semver.satisfies(name, versionRange, {includePrerelease})) .map(({name}) => name) .sort() return suitableVersions }) }