Your Name
4462d832d2
fix: mini timer window blank due to hash routing mismatch
...
The app uses createWebHashHistory but the mini timer window was
opened with WebviewUrl::App("/mini-timer") which sets the URL path,
not the hash fragment. Vue Router never matched the route, so the
Dashboard rendered in a 300x64 window (appearing blank). Now loads
root URL and sets window.location.hash via eval. Also shows/focuses
the main window when closing the mini timer.
2026-02-18 15:23:20 +02:00
Your Name
5680194ef4
feat: load invoice templates from JSON files in data/templates directory
2026-02-18 15:12:30 +02:00
Your Name
08d61b40a0
fix: delete invoice_items before invoice to prevent FK constraint failure
2026-02-18 15:07:43 +02:00
Your Name
cca06e851b
feat: add template_id column to invoices table and update_invoice_template command
2026-02-18 14:37:26 +02:00
Your Name
2ddd2ce5d8
feat: add global-shortcut plugin and mini timer window commands
2026-02-18 02:06:07 +02:00
Your Name
f0885921ae
feat: add goals, profitability, timesheet, and import commands
2026-02-18 02:04:10 +02:00
Your Name
1ee4562647
feat: add favorites table, CRUD commands, and Pinia store
2026-02-18 02:02:57 +02:00
Your Name
85c20247f5
feat: add project budgets and rounding override columns
2026-02-18 02:02:13 +02:00
Your Name
26f1b19dde
feat: add tags table, CRUD commands, and Pinia store
2026-02-18 02:01:04 +02:00
Your Name
5ab96769ac
feat: add client billing fields to database and Rust backend
2026-02-17 22:52:51 +02:00
Your Name
ce6c9c23b9
feat: initialize Tauri backend with SQLite database
2026-02-17 18:03:12 +02:00