import fs from 'fs'; import { languages } from './languages'; function localizeManifest(manifestTemplateData: any, language: string) { const localizedManifestFile = `static/${language}.manifest.webmanifest`; const localizedStringsFile = `src/locales/${language}.json`; const localizedStrings = JSON.parse(fs.readFileSync(localizedStringsFile, 'utf8')); manifestTemplateData.description = localizedStrings.metadata.description; manifestTemplateData.lang = language; manifestTemplateData.start_url = `/${language}/app`; manifestTemplateData.scope = `/${language}/app`; manifestTemplateData.id = `https://gpx.studio/${language}/app`; fs.writeFileSync(localizedManifestFile, JSON.stringify(manifestTemplateData, null, 2)); } const manifestTemplateFile = 'static/en.manifest.webmanifest'; const manifestTemplateData = JSON.parse(fs.readFileSync(manifestTemplateFile, 'utf8')); for (const language of Object.keys(languages)) { if (language === 'en') continue; localizeManifest(manifestTemplateData, language); }