mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 13:19:39 +02:00
* Budgeting V1 * Basic UI template * Fully scaffolded budgeting v1 * Basic working budget * Finalize donut chart for budgets * Allow categorization of loan payments for budget * Include loan payments in incomes_and_expenses scope * Add budget allocations progress * Empty states * Clean up budget methods * Category aggregation queries * Handle overage scenarios in form * Finalize budget donut chart controller * Passing tests * Fix allocation naming * Add income category migration * Native support for uncategorized budget category * Formatting * Fix subcategory sort order, padding * Fix calculation for category rollups in budget
25 lines
716 B
JavaScript
25 lines
716 B
JavaScript
import { Controller } from "@hotwired/stimulus";
|
|
|
|
// Connects to data-controller="budget-form"
|
|
export default class extends Controller {
|
|
toggleAutoFill(e) {
|
|
const expectedIncome = e.params.income;
|
|
const budgetedSpending = e.params.spending;
|
|
|
|
if (e.target.checked) {
|
|
this.#fillField(expectedIncome.key, expectedIncome.value);
|
|
this.#fillField(budgetedSpending.key, budgetedSpending.value);
|
|
} else {
|
|
this.#clearField(expectedIncome.key);
|
|
this.#clearField(budgetedSpending.key);
|
|
}
|
|
}
|
|
|
|
#fillField(id, value) {
|
|
this.element.querySelector(`input[id="${id}"]`).value = value;
|
|
}
|
|
|
|
#clearField(id) {
|
|
this.element.querySelector(`input[id="${id}"]`).value = "";
|
|
}
|
|
}
|