mirror of
https://github.com/actualbudget/actual.git
synced 2026-03-11 12:43:09 -05:00
- Add plugin bank sync providers to CreateAccountModal alongside existing providers - Extend SelectLinkedAccountsModal to handle plugin accounts with unified interface - Implement backend API handlers: bank-sync-providers-list, bank-sync-accounts, bank-sync-accounts-link - Add linkAccountPlugin action for Redux state management - Maintain full backward compatibility with existing GoCardless, SimpleFIN, Pluggy.ai providers - Type-safe integration with proper TypeScript definitions - Placeholder implementations ready for real plugin functionality This enables the plugin architecture for bank sync while preserving existing functionality, ready for feature flag control.
40 lines
924 B
JavaScript
40 lines
924 B
JavaScript
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Build script to bundle the plugin with all dependencies
|
|
* Uses esbuild to create a single self-contained JavaScript file
|
|
*/
|
|
|
|
const esbuild = require('esbuild');
|
|
const { join } = require('path');
|
|
|
|
async function bundle() {
|
|
try {
|
|
console.log('Bundling plugin with dependencies...');
|
|
|
|
const entryPoint = join(__dirname, '..', 'dist', 'index.js');
|
|
const outFile = join(__dirname, '..', 'dist', 'bundle.js');
|
|
|
|
await esbuild.build({
|
|
entryPoints: [entryPoint],
|
|
bundle: true,
|
|
platform: 'node',
|
|
target: 'node20',
|
|
format: 'esm',
|
|
outfile: outFile,
|
|
external: [],
|
|
minify: false,
|
|
sourcemap: false,
|
|
treeShaking: true,
|
|
});
|
|
|
|
console.log('Bundle created successfully');
|
|
console.log(`Output: dist/bundle.js`);
|
|
} catch (error) {
|
|
console.error('Failed to bundle:', error.message);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
bundle();
|