1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-08-04 21:15:19 +02:00
Commit graph

447 commits

Author SHA1 Message Date
Alex Hatzenbuhler
1b4577e21e
Fix subconditions and condition group form (#2256) 2025-05-19 13:34:02 -04:00
Alex Hatzenbuhler
6917cecf33
Move to 3 decimal place precision for loans (#2245)
* Move to 3 decimal place precision for loans

* kick for tests

* unkick
2025-05-16 11:24:32 -04:00
Zach Gollwitzer
10dd9e061a
Improve account sync performance, handle concurrent market data syncing (#2236)
* PlaidConnectable concern

* Remove bad abstraction

* Put sync implementations in own concerns

* Sync strategies

* Move sync orchestration to Sync class

* Clean up sync class, add state machine

* Basic market data sync cron

* Fix price sync

* Improve sync window column names, add timestamps

* 30 day syncs by default

* Clean up market data methods

* Report high duplicate sync counts to Sentry

* Add sync states throughout app

* account tab session

* Persistent account tab selections

* Remove manual sleep

* Add migration to clear stale syncs on self hosted apps

* Tweak sync states

* Sync completion event broadcasts

* Fix timezones in tests

* Cleanup

* More cleanup

* Plaid item UI broadcasts for sync

* Fix account ID namespace conflict

* Sync broadcasters

* Smoother account sync refreshes

* Remove test sync delay
2025-05-15 10:19:56 -04:00
Taylor Brazelton
9793cc74f9
Typo fix for piece to place. (#2242) 2025-05-15 07:59:00 -04:00
Alex Hatzenbuhler
bebe7b40d6
Improve rules - add name, allow sorting, improve UI (#2177)
* Add ability to name a rule

* Add sorting by name and date,

* Improve rule page and form design

* Small header tweak

* Improve sorting click areas by including icon

* Fix brakeman

* Use icon helper instead of lucide_icon helper

* Fix double headers with new DialogComponent

* Use updated_at for sorting instead of created_at

* Use copy-plus icon for compound rules

* Remove icons and change IF/THEN/FOR font in edit form

* Use text-secondary on disabled rules

* First pass at redesigning the sorting menu

* New rule list

* Borders instead of shadows

* Apply proper text color to TO in edit form

* Improve dark mode with proper background color classes

* Use border-secondary

* Add touch: true to conditions and actions of a rule, so updated_at works as expected

* Fix db schema

* Change sort direction to be a LinkComponent outside of the form for better sort behavior

* Clean up dropdown design to match figma

* Match tags/categories design

* Fix name text color, add bg-divider background for dividers

* Fix family subscription tests (thanks zach!)
2025-05-13 15:53:13 -04:00
Alex Hatzenbuhler
30d3eef67f
Fix AND prefix on rule form (#2234)
* Fix AND prefix on rule form

This new condition prefix data target is used to ensure the AND prefix is added/removed to additional conditions/groups when there aren't any saved conditions yet.

* Ensure the condition group "Add condition" button is type button to avoid form submission

* Add prefix update when removing a subcondition

* Use data condition to update the prefix on conditions, condition groups, and subconditions

* Use condition remove instead of element remove for condition groups so prefix logic runs

* Add back explicit show_prefixes to ensure subconditions never have a prefix

* Run the prefix update runs on a load of a form, which handles prefixes on an edit since no conditions change

* Ensure saved items that are marked for removal don't impact the index

* Simplify logic since we don't process subconditions

* Clean up comments

* Add primary_condition_title field to rule model
2025-05-13 10:34:41 -04:00
Zach Gollwitzer
9e6e4b1ce6 Only run Plaid syncs via webhook after initial sync
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-12 18:55:19 -04:00
Alex Hatzenbuhler
3371243a00
Use single list for desktop and mobile nav bars (#2227)
* Add rules_label to locale file

* Add rules to settings sidebar, use locale text

* Use a single list for mobile and desktop nav
2025-05-09 09:52:18 -04:00
Zach Gollwitzer
1e5edd9f2f
Fix Plaid cash balance double counting (#2222)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Fix Plaid cash balance double counting

* Fix today's cash balance

* Simplify balance trends in activity view
2025-05-08 12:25:53 -04:00
Alex Hatzenbuhler
42207e487e
Fix dark mode welcome screen for self-hosting (#2225) 2025-05-08 08:45:28 -05:00
Zach Gollwitzer
a67f36bf64
Prevent account deletions when account is linked to a Plaid Item (#2218)
* Prevent account deletions when account is linked to a Plaid Item

* Only guard deletions in UI and controller, not at model level
2025-05-07 13:56:20 -04:00
Zach Gollwitzer
628d266980 Fix merchant assignment to transactions
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-07 11:05:29 -04:00
Zach Gollwitzer
fb7107d614
feature(dark mode): misc design fixes (#2215)
* Fix category dark mode styles

* Fix sidebar account tab states

* Fix dashboard balance sheet group styles

* Fix budget dark mode styles

* Fix chart gradient split

* Fix prose styles in dark mode

* Add back chat nav id for tests
2025-05-07 09:26:06 -04:00
Zach Gollwitzer
5da4bb6dc3
Subscription tests and domain (#2209)
* Save work

* Subscriptions and trials domain

* Store family ID on customer

* Remove indirection of stripe calls

* Test simplifications

* Update brakeman

* Fix stripe tests in CI

* Update billing page to show subscription details

* Remove legacy columns

* Complete billing settings page

* Fix hardcoded plan name

* Handle subscriptions for self hosting mode

* Lint fixes
2025-05-06 14:05:21 -04:00
Alex Hatzenbuhler
60c3a04a48
Add rule option to change transaction name (#2175)
* Add change name rule for transaction

* Use HTML template in the ERB, clone and inject those templates from the stimulus controller

* Put back the ai_enabled check

* Update docs

* Example of what no case statement would look like

* Remove action_type and needs_value now that controller is injecting templates/hiding action target

* add "to" to template, improve no-option selection, ensure text box is cleared
2025-05-06 12:11:56 -04:00
Alex Hatzenbuhler
c0267d5665
Use icon helper for all-the-things (#2191)
* Use icon helper for all-the-things

* Pass size and color to the icon from buttonish components directly
2025-05-06 12:08:18 -04:00
Zach Gollwitzer
0fdeebceb1 Fix bulk edit dialog form structure 2025-05-06 11:53:12 -04:00
Zach Gollwitzer
2000f05453
Match Plaid holding values on current day (#2212)
* Match Plaid holding values on current day

* Fix chart timezone issue

* Add timezone tests for syncs

* Hide sidebars on trades test
2025-05-06 09:25:49 -04:00
Joseph Ho
fea1baeb1e
import: Align elements correctly while importing CSV. (#2210)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-05 12:49:25 -04:00
Alex Hatzenbuhler
c022e862aa
Add ability to delete all tags (#2200)
* Add ability to delete all tags

* Downcase resource for confirmation

* Clean up deletion resource names

* titleize button
2025-05-05 12:43:46 -04:00
Zach Gollwitzer
441f436187
Onboarding redirect tests and trial status bar (#2197)
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
* Onboarding redirect tests and trial status bar

* use helper method

* Fix time tolerance failure

* Update post-onboarding message to be generic

* Disable turbo frames on Trial start button

* Update flash notice in test
2025-05-02 15:21:46 -04:00
Zach Gollwitzer
a7a29b4780 Prevent ai icon shrinking 2025-05-02 11:42:09 -04:00
Zach Gollwitzer
1e1ed5ca45 Light / dark assistant icon 2025-05-02 11:36:32 -04:00
Zach Gollwitzer
84eb2c90d4 Fix self host onboarding 2025-05-02 09:34:48 -04:00
Zach Gollwitzer
752835f492 Fix transaction form account pre-filling and form styles 2025-05-02 08:45:17 -04:00
Zach Gollwitzer
a1d64d6c2e Fix subdued text in transaction form 2025-05-02 08:23:37 -04:00
Zach Gollwitzer
c24ae1762f Fix account value cutoff on mobile 2025-05-02 08:20:31 -04:00
Zach Gollwitzer
adc5bf58d7 Fix clean import dark mode styles 2025-05-02 08:15:12 -04:00
Zach Gollwitzer
be0d51057d Fix syntax error in account template 2025-05-02 07:54:12 -04:00
Josh Pigford
0946a1497a Add conditional rendering for account links in transfers view
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
- Implemented checks for the existence of accounts before rendering links in the transfers partial.
- Added error messaging for missing accounts to improve user feedback and prevent broken links.
2025-05-01 19:07:50 -05:00
Alex Hatzenbuhler
194dad702d
Fix initials + profile pictures (#2186)
* Improve initials + profile pictures

* Change to url_options
2025-05-01 18:43:21 -04:00
Josh Pigford
38b6e30bea Add conditional rendering for sync all button in transactions index view
- The "Dev only: Sync all" button is now only displayed in the development environment to prevent accidental usage in production.
2025-05-01 17:01:40 -05:00
Zach Gollwitzer
a51c4d2cba
New onboarding, trials, Stripe integration (#2185)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* New onboarding, trials, Stripe integration

* Fix tests

* Lint fixes

* Fix subscription endpoints
2025-05-01 16:47:14 -04:00
Josh Pigford
79b4a3769b Update mobile layout padding and navigation styles for better responsiveness
- Adjusted padding for mobile sidebar to account for safe area insets.
- Modified main content and bottom navigation styles to enhance layout consistency on mobile devices.
2025-05-01 10:22:39 -05:00
Josh Pigford
9a291edbc8 Fix loading notification rendering and update loading component background class
Fixes #2141
2025-05-01 09:38:51 -05:00
Zach Gollwitzer
d266b6a35e Fix mobile settings nav styles
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-04-30 22:29:06 -04:00
Zach Gollwitzer
d8cf35eca7
Mobile layout fixes (#2179)
* Consolidate safe area padding

* Fix chat overflow on mobile
2025-04-30 22:24:13 -04:00
Zach Gollwitzer
90a9546f32
Pre-launch design sync with Figma spec (#2154)
* Add lookbook + viewcomponent, organize design system file

* Build menu component

* Button updates

* More button fixes

* Replace all menus with new ViewComponent

* Checkpoint: fix tests, all buttons and menus converted

* Split into Link and Button components for clarity

* Button cleanup

* Simplify custom confirmation configuration in views

* Finalize button, link component API

* Add toggle field to custom form builder + Component

* Basic tabs component

* Custom tabs, convert all menu / tab instances in app

* Gem updates

* Centralized icon helper

* Update all icon usage to central helper

* Lint fixes

* Centralize all disclosure instances

* Dialog replacements

* Consolidation of all dialog styles

* Test fixes

* Fix app layout issues, move to component with slots

* Layout simplification

* Flakey test fix

* Fix dashboard mobile issues

* Finalize homepage

* Lint fixes

* Fix shadows and borders in dark mode

* Fix tests

* Remove stale class

* Fix filled icon logic

* Move transparent? to public interface
2025-04-30 18:14:22 -04:00
Josh Pigford
47017a6432 Enhance account links in transfers view to handle missing accounts gracefully. Added conditional checks to display a warning message when account data is unavailable. 2025-04-30 14:29:33 -05:00
Alex Hatzenbuhler
341a800b65
Improve dashboard/account charts and tooltips (#2157)
* Improve net worth hover

* Improve graph tooltip

* Use locales files for some text on net worth and account charts

* Consolidate and simplify trend change between net worth and account charts

* Fix test and self-review stuff

* Clean up some stuff on the holding sidebar
2025-04-28 14:57:32 -04:00
Diego Gasparis Escobedo
71bc51ca15
Fix: Filter categories by transaction type in forms (#2082)
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
Changed transaction form to only display relevant categories based on transaction type (income or expense), improving usability and preventing misclassification. Created a shared transaction type tabs component for consistent navigation between expense, income, and transfer forms, providing a better user experience and reducing code duplication.

Signed-off-by: Zach Gollwitzer <zach@maybe.co>
Co-authored-by: Zach Gollwitzer <zach@maybe.co>
2025-04-25 10:18:10 -04:00
Alex Hatzenbuhler
ce83418f0b
Improve theme selection (#2152)
* Improve theme selectin

* Use HTML form labels and the existing auto-submit controller
2025-04-25 10:15:48 -04:00
Guilherme Mena
210b89cd17
Improve dark mode styles across multiple pages (#2125)
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
* fix: improve dark mode readability across the app

* fix: improve dark mode support for asset percentage text

* fix: apply suggested patch for theme-related improvements

* chore: apply PR feedback – remove dark:, align with design tokens, update form builder

* chore: revert background token and restore original style for visual consistency

* chore: remove unnecessary class attributes from form fields using builder

* refactor: move number_field and date_field into metaprogramming block

* refactor: replace bg-divider-adaptive divs with <hr> and border-secondary

* fix: apply requested changes and linting fixes
2025-04-23 09:42:30 -04:00
Alex Hatzenbuhler
47aeaf8cea
Add nice formatting for subtypes on account list (#2138)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Add nice formatting for subtypes on account list

* Fix rubocop linting errors

* Implement better mapping

* Fix rubocop linting

* Add short and long versions of subtypes

* Simplify subtype reference

Co-authored-by: Zach Gollwitzer <zach.gollwitzer@gmail.com>
Signed-off-by: Alex Hatzenbuhler <hatz@hey.com>

* Simplify reference logic, add a small test

* Fix test

* Fix tests

---------

Signed-off-by: Alex Hatzenbuhler <hatz@hey.com>
Co-authored-by: Zach Gollwitzer <zach.gollwitzer@gmail.com>
2025-04-22 14:10:50 -04:00
Durgaswamy
db34f6d7a2
Fixes #2100: this will fix the problem of text not visible in the modal when dark theme is set (#2112)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Fixes #2100: added 'text-primary' in class , this will fix the problem of text not visible in dark theme inside the modals

* added text-primary in class for form fields

---------

Signed-off-by: Zach Gollwitzer <zach@maybe.co>
Co-authored-by: Zach Gollwitzer <zach@maybe.co>
2025-04-22 09:06:52 -04:00
Zach Gollwitzer
b6cf6198f4 Fix html closing tag 2025-04-22 09:05:38 -04:00
Joseph Ho
08091d24f9
UI: improve alignments with submit button & budget donut (#2131) 2025-04-20 20:06:54 -05:00
Zach Gollwitzer
21623eeb2d Fix display for compound conditions
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-04-18 16:56:20 -04:00
Zach Gollwitzer
bcfbc4b324 Add more descriptive labels to rule rows 2025-04-18 16:37:10 -04:00
neo773
04ee1e73be
Fix dark mode support and improve notification/MFA UI (#2126)
* Fix dark mode support and improve notification/MFA UI"

* hide auth tabs on mfa/verify
2025-04-18 13:56:44 -05:00