freetube/_scripts/add-iv-supported-links.js
2025-11-24 08:57:03 +01:00

14 lines
868 B
JavaScript

const { readFile, writeFile } = require('fs/promises')
const { join } = require('path')
;(async () => {
const manifest = (await readFile(join(__dirname, '../android/app/src/main/AndroidManifest.xml'))).toString()
const invidiousInstances = JSON.parse((await readFile(join(__dirname, '../static/invidious-instances.json'))).toString())
const supportedLinks = manifest.match(/<!-- supported links -->[\s\S]*?<!-- \/supported links -->/gm)
const instancesXml = invidiousInstances.map(({ url, cors}) => {
return `<data android:host="${url.replace('https://', '')}" />`
}).join('\n ')
const postManifest = manifest.replace(supportedLinks[0], `<!-- supported links -->\n ${instancesXml}\n <!-- \/supported links -->`)
await writeFile(join(__dirname, '../android/app/src/main/AndroidManifest.xml'), postManifest)
})()