mirror of
https://github.com/actualbudget/actual.git
synced 2026-03-11 12:43:09 -05:00
* feat: Add optional starting date and balance for bank sync accounts Adds the ability to specify a custom starting date and balance when linking new bank sync accounts in the Select Linked Accounts modal. Addresses: https://discord.com/channels/937901803608096828/1402270361625563186 Changes: - Frontend: Added inline date and amount input fields in the account linking table for new accounts - Redux: Extended link account actions to accept startingDate and startingBalance parameters - Backend: Updated account linking handlers to pass custom values to sync logic - Sync: Modified syncAccount and processBankSyncDownload to use custom starting date/balance for initial sync transactions Features: - Only displays starting options when creating new accounts (not upgrades) - AmountInput with smart sign detection based on account balance (negative for credit cards/loans) - Defaults to 90 days ago for date and 0 for balance - Mobile-responsive with separate AccountCard layout - Works across all sync providers: GoCardless, SimpleFIN, Pluggy.ai The custom starting balance is used directly for the starting balance transaction, and the custom starting date determines both the sync start date and the transaction date for the starting balance entry. * refactor: Extract shared types and components for starting balance inputs - Create CustomStartingSettings type to replace repeated inline type definitions - Extract StartingOptionsInput component to consolidate duplicate UI between mobile/desktop views - Create LinkAccountBasePayload type shared across GoCardless, SimpleFIN, and PluggyAI link functions - Apply same base type pattern to server-side link account handlers This simplifies the code introduced for custom starting date/balance when linking bank accounts. [autofix.ci] apply automated fixes * allow explicit zero values * refactor: add type guard for BankSyncError to remove oxlint-disable - Create isBankSyncError() type guard function with proper type narrowing - Remove oxlint-disable-next-line comment that suppressed the no-explicit-any rule - Add JSDoc comments for both isBankSyncError and handleSyncError functions - Remove redundant type assertion now that type guard narrows correctly * refactor: address code review nitpicks for SelectLinkedAccountsModal - Use locale-aware date formatting instead of toISOString() - Extract isNewAccountOption helper to reduce duplication - Align AccountCardProps type definition pattern with TableRowProps * Add placeholder date/balance for already linked accounts * [autofix.ci] apply automated fixes * Use StartingBalanceInfo only, and add mobile view --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
149 B
149 B
category, authors
| category | authors | |
|---|---|---|
| Enhancements |
|
Add ability to specify custom starting date and balance when linking new bank sync accounts