Jose Selesan
28e1a732e0
feat(analysis): add monthly pattern analysis feature with chart and API integration
2026-09-14 16:41:21 -03:00
Jose Selesan
f2c26c266c
fix: peak hours analysis uses all historical data
...
Remove date range filtering from peak-hours endpoint so the
analysis considers all available data in the database, not just
the last 30 days.
2026-08-28 13:31:30 -03:00
Jose Selesan
0998d64cbb
feat: add BELO peak hour analysis chart
...
- New backend endpoint GET /quotes/:type/peak-hours
- Groups daily price data by hour to find peak frequency
- Bar chart showing how often each hour is the daily peak
- Only displayed for BELO currency in analysis page
2026-08-28 12:05:43 -03:00
Jose Selesan
2fe8198c41
fix(analysis): use last business day of previous month for 'Vs. mes anterior' card
2026-08-28 11:46:41 -03:00
Jose Selesan
1fee87a4ce
fix(analysis): use compound inflation calculation instead of linear sum
2026-08-27 12:52:48 -03:00
Jose Selesan
d24f3ce872
feat(analysis): add 12-month summary row with total variation and accumulated inflation
2026-08-27 11:56:02 -03:00
Jose Selesan
b78fcbc0e9
fix(quotes): add logging + parallel fetch for external API diagnostics
2026-08-27 11:51:21 -03:00
Jose Selesan
d8aed4970c
feat(analysis): bold month names for DB-sourced data, regular for external
2026-08-27 11:37:43 -03:00
Jose Selesan
28f9dea7ba
feat(analysis): rolling 12-month table with external API fallback
...
- monthly-last endpoint now returns last 12 months (rolling)
- For months without DB data, fetches from ArgentinaDatos API
- Casa mapping: BELO=cripto, BLUE=blue, BNA=oficial
- DB data takes priority over external API data
2026-08-27 11:33:45 -03:00
Jose Selesan
873fd63ea4
style(analysis): use full month names in variation table
2026-08-27 11:16:39 -03:00
Jose Selesan
88fa05d5b8
style(analysis): show raw values inline instead of below percentage
2026-08-27 10:37:04 -03:00
Jose Selesan
f9e0267c94
feat(analysis): show raw values ( → ) below each variation
2026-08-27 10:34:33 -03:00
Jose Selesan
0c634bbc8b
fix(analysis): don't skip any months for inflation, just check if data exists
2026-08-27 10:22:13 -03:00
Jose Selesan
e32131d32e
fix(analysis): only skip inflation for current month, not last complete month
...
The last complete month's inflation is usually available by the 14th of the
current month. Previously July was always skipped even though data exists.
2026-08-27 10:21:39 -03:00
Jose Selesan
66ab56b46a
feat(analysis): add monthly variation table with inflation comparison
...
- New backend endpoint GET /api/quotes/monthly-last
- MonthlyVariationTable component with BELO/Blue/Oficial % changes
- Inflation data from ArgentinaDatos API with 24h cache
- Visual indicators: green if beats inflation, red if below
- Responsive: cards on mobile, table on desktop
2026-08-27 10:13:56 -03:00
Jose Selesan
a6e95f0c05
fix(analysis): pad comparison chart Y domain to 20% around the range
2026-08-20 14:38:57 -03:00
Jose Selesan
48c4c892cd
feat(analysis): add comparison chart of buy price for the 3 quotes
2026-08-20 14:33:39 -03:00
Jose Selesan
31dae446af
feat(telegram): add /blu and /oficial commands and main menu
2026-08-20 14:22:56 -03:00
Jose Selesan
96f6b26a76
feat(telegram): add /belo command with current quote and daily progress
2026-08-20 14:17:31 -03:00
Jose Selesan
0407a79e1e
Updated Telegram notification
2026-08-05 13:56:52 -03:00
Jose Selesan
4784242a35
Added estimaded salary to dashboard
2026-07-22 12:31:58 -03:00
09f00aa3b9
Merge pull request 'feat/payment-wallets' ( #5 ) from feat/payment-wallets into main
...
Reviewed-on: #5
2026-06-17 14:11:30 +00:00
Jose Selesan
04b3f87aca
feat(wallets): implement wallet movements feature with filtering and pagination
2026-06-17 11:10:20 -03:00
Jose Selesan
33120deed6
feat(expenses): add walletId to expense model and implement wallet adjustments in expense operations
2026-06-17 10:54:43 -03:00
Jose Selesan
5671b4a14b
feat(wallets): add isDefault field to wallet model and implement setDefaultWallet functionality
2026-06-17 10:15:44 -03:00
798d657869
Merge pull request 'feat(wallets): implement wallet management features including create, update, delete, deposit, transfer, and list movements' ( #4 ) from feat/wallets into main
...
Reviewed-on: #4
2026-06-17 12:37:20 +00:00
Jose Selesan
1d954217b7
feat(wallets): implement wallet management features including create, update, delete, deposit, transfer, and list movements
...
- Added createWallet, updateWallet, deleteWallet, depositWallet, transferWallet, and listMovements handlers.
- Created corresponding routes for wallet operations.
- Developed frontend components for wallet management including dialogs for creating, editing, depositing, adjusting balance, transferring, and viewing movements.
- Integrated wallet management into the authenticated routes.
2026-06-17 09:36:55 -03:00
Jose Selesan
1ff2abc16a
feat(header): add Telegram icon and link to settings based on connection status
2026-06-17 09:01:28 -03:00
Jose Selesan
b8d8f16f4e
feat(telegram): integrate Telegram bot for notifications and add related models
2026-06-17 08:42:13 -03:00
Jose Selesan
c0c8bf0945
feat(analysis): make analysis page work for all currencies (BELO, BLUE, BNA)
...
- Replace hardcoded BELO analysis with generic AnalysisPage
- Add /quotes/analysis/ route with currency path param
- Add currency selector tabs on analysis page
- Dashboard QuoteCards now navigate to analysis for all currencies
- Old /quotes/belo/analysis redirects to /quotes/analysis/BELO
2026-06-12 16:44:20 -03:00
Jose Selesan
142fd4e33f
feat(expenses): add beloPrice and usdcEquivalent fields to Expense model and update related logic
2026-06-08 21:13:03 -03:00
Jose Selesan
b08399908b
feat(expenses): allow editing paid expenses (status, amountPayed, paymentDate)
2026-06-08 08:12:46 -03:00
Jose Selesan
6f06ee18da
feat(belo): add current quote card and improve date formats on analysis page
2026-06-04 12:09:03 -03:00
Jose Selesan
b4f4030ee8
feat(layout): make header sticky so it's always visible on scroll
2026-06-04 11:50:05 -03:00
Jose Selesan
824f3a18ab
fix(belo): improve mobile header layout - stack title above actions on small screens
2026-06-04 11:38:10 -03:00
Jose Selesan
0915ad1223
feat: enhance date handling and formatting in quotes and belo features
2026-06-04 11:32:38 -03:00
Jose Selesan
7c864053bb
feat(belo): add daily and monthly variation quotes to analysis page
2026-06-04 11:10:37 -03:00
Jose Selesan
9ce5511ad8
feat(dashboard): add Dolar Oficial (BNA) card to panel grid
2026-06-04 11:05:38 -03:00
Jose Selesan
55098a7b95
feat(expenses): add edit amount and due date for pending expenses
2026-06-04 11:00:36 -03:00
Jose Selesan
5b6ccf0fa6
chore: add Biome for lint and fix all lint errors
...
- Install @biomejs/biome as devDependency at root
- Configure biome.json with 2-space indent, double quotes, Tailwind CSS support
- Add lint/lint:fix/format/format:fix scripts to root and app package.json
- Fix noNonNullAssertion: env vars extracted to variables with suppression, <div role=button> replaced with <button>
- Fix noUnusedVariables: remove unused destructured vars
- Fix useIterableCallbackReturn: arrow functions with block body
- Fix noExplicitAny: recharts Tooltip formatters
- Fix noLabelWithoutControl: add htmlFor+id or use <span> for non-input labels
- Fix noStaticElementInteractions/useKeyWithClickEvents: role+keyboard events for overlays
- Fix noArrayIndexKey: use error string as key
- Fix CSS parse: enable tailwindDirectives parser
- Normalize formatting across 80 files with biome check --write
2026-06-04 10:48:07 -03:00
Jose Selesan
53a797703e
feat(dashboard): add pending/upcoming expenses table
...
- Backend: GET /expenses/pending-upcoming returns PENDING expenses with dueDate <= today+5 days, classified as overdue/upcoming
- DashboardExpensesTable: groups by periodicExpenseId, shows summed totals with status badges, links to /expenses?periodicExpenseId=X
- Expenses route accepts ?periodicExpenseId search param and pre-selects it in the filter
- fix: BeloAnalysisPage DatePicker type mismatch
2026-06-04 10:34:34 -03:00
33248401f7
Merge pull request 'feat(belo): add analysis page with historical stats, chart, and date range picker' ( #3 ) from feat/belo-analysis into main
...
Reviewed-on: #3
2026-06-04 12:49:01 +00:00
Jose Selesan
8b8a4670cb
feat(belo): add analysis page with historical stats, chart, and date range picker
2026-06-04 09:48:20 -03:00
Jose Selesan
bd53b26f29
Hide scrollbars on expense tab strips
2026-06-01 08:20:19 -03:00
Jose Selesan
2fd23cedc6
Improve expenses mobile layout and payment flow
2026-06-01 08:03:48 -03:00
Jose Selesan
988d58d761
feat(cache): implement a simple caching mechanism with TTL and prefix invalidation
...
refactor(expenses): integrate caching for periodic expenses and related operations
refactor(quotes): add caching for quotes retrieval and history endpoints
2026-05-29 19:25:15 -03:00
Jose Selesan
801f04df12
feat(dashboard): add monthly totals data to DashboardPage and update pending payments display
2026-05-29 19:13:22 -03:00
Jose Selesan
f6c03e3c91
refactor(expenses): optimize monthly totals and pending calculations using raw SQL queries
2026-05-29 19:05:23 -03:00
Jose Selesan
3daf67639a
refactor(expenses): optimize expense aggregation queries for improved performance
2026-05-29 19:00:03 -03:00
Jose Selesan
94aab6dce7
feat(logging): add request logger middleware for improved request tracking
2026-05-29 18:53:34 -03:00