import chalk from 'chalk'; import api from '@actual-app/api'; import { checkEnv } from './env.js'; import pckg from '../package.json' with { type: 'json' }; checkEnv([ 'ACTUAL_URL', 'ACTUAL_PASSWORD', 'ACTUAL_ENCRYPTION', 'ACTUAL_ID' ]); console.log(chalk.grey(`Connecting to Actual ${chalk.underline(process.env.ACTUAL_URL)}@${pckg.dependencies['@actual-app/api']}...`)); await api.init({ dataDir: './data', serverURL: process.env.ACTUAL_URL, password: process.env.ACTUAL_PASSWORD, }); // console.log(chalk.grey(`Syncing files...`)); // await api.sync(); console.log(chalk.grey(`Downloading budget ${chalk.underline(process.env.ACTUAL_ID)}...`)); await api.downloadBudget(process.env.ACTUAL_ID, { password: process.env.ACTUAL_ENCRYPTION, }); export async function getSchedulesSQL(select = '*') { return (await api.runQuery(api.q('schedules').select(select))).data; } export * from '@actual-app/api';