* Adds basic validations for required fields
Also deletes a few extraneous .keep files
Does not add the family_id required field for user, since that breaks the basic test setup
* Restore keep files to this branch
* Remove Credit model and validate models behind ids
* Restore concerns .keep
* Create sidebar element and working with turbo
* Add overview fields
* Add columns to transations and tidy modal
* permit new transaction params
* Add autosubmit form controller
* remove unused show code
* install pagy
* add pagy to controller, display default pagy UI
* display hardcoded custom UI to confirm styling
* implement custom UI with pagy methods
* move pagination into partial
* use lucide icons
* only display pagination if 2 or more pages are available
* add mobile pagination placeholder
* use link_to and display greyed out buttons when no prev or next needed
* sort transactions by date so grouping works appropriately with pagination
* add space between mobile view buttons
* remove debugging
* Handle Turbo updates with tabs
Fixes #491
* Add Filterable concern for controllers
* Add trendline chart
* Extract common UI to partials
* Series refactor
* Put placeholders for calculations in
* Add classification generated column to account
* Add basic net worth calculation
* Add net worth tests
* Get net worth graph working
* Fix lint errors
* Implement asset grouping query
* Make trends and series more intuitive
* Fully functional dashboard
* Remove logging
* Hide the additional arrow shown on safari browser for summary tag
* Move global css to tailwind config
---------
Co-authored-by: Sriram Krishnan <sriram@seafoodsouq.com>
* Rename account balance field for clarity
`original_balance` and `original_currency` may infer that these values are "original" to the account. In reality, they represent the "current" balance and currency on the account.
* Prepare fixture data for account sync testing
* Update to new field
* Fix conflicts
* Remove local schema change
* Update hard-coded currency UI with currency specific params
* Rename extension methods to match currency option names; Move cents extension to numeric class extension
* Use currency's precision to show the cents part in accounts show page
---------
Co-authored-by: Sriram Krishnan <sriram@seafoodsouq.com>
* Transaction scaffold
* Rough in transaction views
* Fix sort order
* Fix mass assignment issue
* Fix test
* Simplify CI workflow
* Don't seed db before test
* Refresh account on update
* 🐛 Replace turbo frame on create valuation
This avoids the frame reloading it's src when refreshing.
* Change Action Cable adapater to Postgres
* Add trends, time series, seed data
* Remove test data
* Replace old view values with helpers
* Fix tooltip bugs in D3 chart
* Fix tests
* Fix smoke test
* Add CRUD actions for valuations
* Scaffold out inline editing with Turbo
* Refactor series logic
* Scaffold out basic sync process for accounts
* Fix tests
* Add trends, time series, seed data
* Remove test data
* Replace old view values with helpers
* Fix tooltip bugs in D3 chart
* Fix tests
* Fix smoke test
* Add CRUD actions for valuations
* Scaffold out inline editing with Turbo
* Fix active class assignment in sidebar links
* Revert "Fix active class assignment in sidebar links"
This reverts commit 55924f32db.
* Update sidebar_link_to helper to correctly assign active class for nested routes
---------
Co-authored-by: Zach Gollwitzer <zach.gollwitzer@gmail.com>
* Add notification UI
* Make animation an aribtrary value
It didn't make much sense in the theme as it feels very specific, this
change also means the timing information is clearer within the html
itself.
* Update to use tailwind theme
* Refactor structure of icon
* Add support for multiple notifications at once
* Adjust notification animation timing
* Make notification more accessible
Applies role to the notification which will apply the appropriate
aria-live status to ensure notifications are read out when they are
rendered into the screen for screenreader users.
Wraps the svg with a button tag that keyboard users can focus and engage
with to close the notification.
* Fix notification progress indicator placement
* Map flash types to notification types automatically
* Refine notification animations
* Set success as default icon for notifications
* Initial dropdown setup and styles
* Allow form field to pass through block content and update dropdown posititon
* add currency to accounts params
* Add repositionDropdown function and carry over dropdown controller
* remove block context from form builder in favour of using form tag directly
* Hide currency input and set checks for input and label before updating
* align currency button with balance
* revert form_field_tag changes
* remove margin on currency button, looks cleaner
---------
Signed-off-by: Josh Pigford <josh@joshpigford.com>
Co-authored-by: Josh Pigford <josh@joshpigford.com>
* Initial foundational pass at multi-currency
* Default format currency
* More work on currency and exchanging
* Re-build currencies on change
* Currency import/setup
* Background job overhaul + cheaper OXR plan support
* Lint fixes
* Test fixes
* Multi-currency setup instructions
* Allow decimals in the balance field
* Spacing fix for form
---------
Signed-off-by: Josh Pigford <josh@joshpigford.com>