diff --git a/scripts/commands/api/update.js b/scripts/commands/api/update.js index 9ac94b0a..e83d219b 100644 --- a/scripts/commands/api/update.js +++ b/scripts/commands/api/update.js @@ -6,25 +6,30 @@ const CHANNELS_PATH = process.env.CHANNELS_PATH || 'sites/**/*.channels.xml' const OUTPUT_DIR = process.env.OUTPUT_DIR || '.gh-pages/api' async function main() { - const files = await file.list(CHANNELS_PATH) let guides = [] - for (const filepath of files) { - const { site, channels } = await parser.parseChannels(filepath) - const dir = file.dirname(filepath) - const config = require(file.resolve(`${dir}/${site}.config.js`)) - if (config.ignore) continue - const filename = file.basename(filepath) - const [__, suffix] = filename.match(/\_(.*)\.channels\.xml$/) || [null, null] + try { + const files = await file.list(CHANNELS_PATH) + for (const filepath of files) { + const { site, channels } = await parser.parseChannels(filepath) + const dir = file.dirname(filepath) + const config = require(file.resolve(`${dir}/${site}.config.js`)) + if (config.ignore) continue - for (const channel of channels) { - guides.push({ - channel: channel.xmltv_id, - site, - lang: channel.lang, - url: `https://iptv-org.github.io/epg/guides/${suffix}/${site}.epg.xml` - }) + const filename = file.basename(filepath) + const [__, suffix] = filename.match(/\_(.*)\.channels\.xml$/) || [null, null] + + for (const channel of channels) { + guides.push({ + channel: channel.xmltv_id, + site, + lang: channel.lang, + url: `https://iptv-org.github.io/epg/guides/${suffix}/${site}.epg.xml` + }) + } } + } catch (err) { + console.error(err) } guides = _.sortBy(guides, 'channel')