Gregor Vostrak
619c602571
cleanup and deduplicate breaks frontend tests
2026-07-28 16:52:36 +02:00
Gregor Vostrak
600daf44d9
add description/project labels to break placement modal for existing
...
time entries
2026-07-28 16:52:36 +02:00
Gregor Vostrak
a1d6c92806
insert breaks into work entries instead of carving them out; rollback on
...
failure system
2026-07-28 16:52:36 +02:00
Gregor Vostrak
ce1bd6a435
unify display values for work and break time totals
2026-07-28 16:52:36 +02:00
Gregor Vostrak
79d85227c2
bump ui to 0.0.22 and api to 0.0.7
2026-07-28 16:52:36 +02:00
Gregor Vostrak
885abf3333
promote breaks feature in sidebar banner
2026-07-28 16:52:36 +02:00
Gregor Vostrak
cbcd1e51f6
add break time entries and simplified time tracker ui
2026-07-28 16:52:36 +02:00
Gregor Vostrak
ba374c0371
add client name to projecttaskselect dropdown trigger
2026-07-09 13:53:08 +02:00
Gregor Vostrak
e302421765
make sure dropdown/combobox lists stay visible during close animation to
...
avoid layout shifts
2026-07-09 13:01:23 +02:00
Gregor Vostrak
75f5144b45
use pinned selection instead of fix items on dropdown open so async
...
loaded collections update the dropdown properly
2026-07-09 13:01:23 +02:00
Gregor Vostrak
ac68091d3e
add secondary name sorting as tie breaker in client and project tables
2026-07-09 13:01:23 +02:00
Gregor Vostrak
a56942abcf
Add virtualizer to ProjectDropdown, ClientDropdown and Reporting
...
Comboboxes; Remove redundant focus loop on Project/ClientDropdown
2026-07-09 13:01:23 +02:00
Gregor Vostrak
61a0a7db5a
remove the measure row logic and rely on static values only for the
...
virtualizer and remove duplicated focus trap to avoid infinite loop in
project task dropdown
2026-07-09 13:01:23 +02:00
Gregor Vostrak
bc5af14a75
keep tasks visible when search term matches project or client name
2026-07-09 13:01:23 +02:00
Gregor Vostrak
95bfb45978
add virtualizer to ProjectTaskDropdown component to handle bigger
...
project lists
2026-07-09 13:01:23 +02:00
Gregor Vostrak
2207f676ee
add pagination to client and project table
2026-07-09 13:01:23 +02:00
Gregor Vostrak
981bcbe091
add tests for tag match type (backend + e2e)
2026-06-26 14:53:37 +02:00
Gregor Vostrak
ccf3cec8c0
migrate tag match type buttons to reka-ui radio group for accessibility
2026-06-26 14:53:37 +02:00
Gregor Vostrak
4bbde04e28
Rename tag_filter parameter to tag_match_type
2026-06-26 14:53:37 +02:00
Beda Schmid
58d7b33366
Add filter to include/exclude tags
...
[Added]
- Introduced a tag filter feature allowing users to specify whether tags should be included or excluded in time entry filters. This supports 'contains' and 'not_contains' modes.
2026-06-26 14:53:37 +02:00
Gregor Vostrak
25f30fa820
fix destructive color contrast
2026-06-24 17:44:56 +02:00
Constantin Graf
240dd809f4
Fixed organiztion page for employees
2026-06-18 17:30:54 +02:00
Constantin Graf
6a197f7f34
Add password check to users.destroy and organizations.destroy
2026-06-18 13:27:43 +02:00
Gregor Vostrak
5d01b20dbf
change redirects and references to new organization routes
2026-06-18 13:27:43 +02:00
Gregor Vostrak
24875f9424
add currency to organization update endpoint
2026-06-18 13:27:43 +02:00
Gregor Vostrak
4975cf1dab
replace hardcoded inertia props with organization delete/update perms
2026-06-18 13:27:43 +02:00
Gregor Vostrak
b3fb04c4be
remove unused inertia organization page props
2026-06-18 13:27:43 +02:00
Gregor Vostrak
e3e45161a1
call api for organization create/update/delete and switch
2026-06-18 13:27:43 +02:00
Gregor Vostrak
bffd0773be
remove jetstream inertia properties; remove unused ApiTokenManager;
2026-06-18 13:27:43 +02:00
Gregor Vostrak
56ea0ed90e
move banners on login and register cards into the cards
2026-06-18 13:27:43 +02:00
Gregor Vostrak
24c19e7e7c
add pending email cancel button
2026-06-18 13:27:43 +02:00
Gregor Vostrak
d0334bd730
move user delete to api endpoint
2026-06-18 13:27:43 +02:00
Gregor Vostrak
fe4e903203
use api routes for profile information updates
2026-06-18 13:27:43 +02:00
Gregor Vostrak
43e42ace54
show null billable rate as empty not as 0 to avoid confusion
2026-06-18 13:27:43 +02:00
Gregor Vostrak
8f02f98afc
add pending email to UserResource and update openapi client
2026-06-18 13:27:43 +02:00
Gregor Vostrak
c1ecd0eff5
update ui package dependencies; update lucide imports
2026-06-18 13:27:43 +02:00
Gregor Vostrak
5476b4e5a9
update npm dependencies
2026-06-18 13:27:43 +02:00
Gregor Vostrak
f9be92894e
add banners for invitation accept
2026-06-18 13:27:43 +02:00
Gregor Vostrak
cb5c2547f4
fix profile setting sidebar alignment
2026-06-03 12:24:53 +02:00
Gregor Vostrak
13a25524f3
add saved/saving/error indicators to timesheets
2026-06-02 17:14:32 +02:00
Gregor Vostrak
112f6aa6a6
add invoice clone to openapi client, expose DetailedInvoice type
2026-05-29 19:07:55 +02:00
Gregor Vostrak
8eab0485c9
revert reka-ui update; fix DST cellMath;
2026-05-29 17:14:52 +02:00
Gregor Vostrak
0aa0f0bd77
use cn helper for alert-dialog modals
2026-05-29 17:14:52 +02:00
Gregor Vostrak
eb63c4ef03
fix light mode timesheet background and add missing aria-label
2026-05-29 17:14:52 +02:00
Gregor Vostrak
54fffd07bc
add timesheet unit and e2e tests; add unit test CI setup
2026-05-29 17:14:52 +02:00
Gregor Vostrak
da235dfdc8
remove special “Add new project” state in TimeTrackerProjectTaskDropdown
2026-05-29 17:14:52 +02:00
Gregor Vostrak
62354cfe8b
remove timetrackerprojecttaskdropdown test without setup
2026-05-29 17:14:52 +02:00
Gregor Vostrak
396e7b2b6b
fix DST boundary issue in timesheets
2026-05-29 17:14:52 +02:00
Gregor Vostrak
221889ff87
fix "No project" duplicating rows, unify no project senitel to null
2026-05-29 17:14:52 +02:00
Gregor Vostrak
faf3ee471c
fix formatting
2026-05-29 17:14:52 +02:00