28 lines
805 B
JavaScript
28 lines
805 B
JavaScript
#!/usr/bin/env node
|
|
import path from 'path';
|
|
import fsp from 'fs/promises';
|
|
import json5 from 'json5';
|
|
import Sequencer from './sequencer.js';
|
|
import { Stitcher } from './stitcher.js';
|
|
import type {Programs, Segments, Sequences} from './sequencer.js';
|
|
import type { Voices } from './voice.js';
|
|
import type { Options } from 'openweather-api-node';
|
|
|
|
|
|
interface Config {
|
|
programs: Programs,
|
|
segments: Segments,
|
|
sequences: Sequences,
|
|
voices: Voices,
|
|
weather: Options
|
|
}
|
|
|
|
console.log('morning-report\nCory Sanin 2025\n');
|
|
|
|
const config: Config = json5.parse(await fsp.readFile(process.env['CONFIG'] || path.join('config', 'config.json5'), { encoding: 'utf-8' }));
|
|
const sequence = await Sequencer(config);
|
|
console.log(sequence.join('\n'));
|
|
await Stitcher(sequence);
|
|
|
|
export type { Config };
|