Gregor Vostrak
|
7c3f7e2b67
|
make sure dropdown/combobox lists stay visible during close animation to
avoid layout shifts
|
2026-07-09 12:46:11 +02:00 |
|
Gregor Vostrak
|
4a5ba9ff28
|
use pinned selection instead of fix items on dropdown open so async
loaded collections update the dropdown properly
|
2026-07-08 18:06:58 +02:00 |
|
Gregor Vostrak
|
fa8d350c4a
|
add secondary name sorting as tie breaker in client and project tables
|
2026-07-08 15:20:00 +02:00 |
|
Gregor Vostrak
|
c0f5baace1
|
Add virtualizer to ProjectDropdown, ClientDropdown and Reporting
Comboboxes; Remove redundant focus loop on Project/ClientDropdown
|
2026-06-30 19:04:30 +02:00 |
|
Gregor Vostrak
|
fddc9abf05
|
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-06-30 14:24:28 +02:00 |
|
Gregor Vostrak
|
2da0146651
|
keep tasks visible when search term matches project or client name
|
2026-06-30 13:23:17 +02:00 |
|
Gregor Vostrak
|
1f7679145f
|
add virtualizer to ProjectTaskDropdown component to handle bigger
project lists
|
2026-06-29 15:56:56 +02:00 |
|
Gregor Vostrak
|
7d9db18063
|
add pagination to client and project table
|
2026-06-28 17:39:54 +02:00 |
|
Gregor Vostrak
|
50f57f6997
|
add support for activity columns in clockify exports
|
2026-06-25 12:10:44 +02:00 |
|
Gregor Vostrak
|
ab9f6e6afb
|
adapt clockify importer to support task -> tasks column rename
|
2026-06-25 00:20:29 +02:00 |
|
Gregor Vostrak
|
2a40bb7edb
|
add support for archived projects in the clockify importer
|
2026-06-25 00:08:42 +02:00 |
|
Gregor Vostrak
|
25f30fa820
|
fix destructive color contrast
|
2026-06-24 17:44:56 +02:00 |
|
Constantin Graf
|
37a8f43b23
|
Allow Clockify import without Billable column
|
2026-06-24 13:44:48 +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 |
|
Constantin Graf
|
5d744d70c4
|
Migrate permission away from Jetstream; Moved update user to REST API
|
2026-06-18 13:27:43 +02:00 |
|
Gregor Vostrak
|
f9be92894e
|
add banners for invitation accept
|
2026-06-18 13:27:43 +02:00 |
|
Constantin Graf
|
a30d192ea2
|
Updated invitation flow, Moved jetstream function to REST endpoints; Lower case email
|
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 |
|
Gregor Vostrak
|
866e5d8594
|
clamp running time entry duration to min 0 for FullCalendarHeaderDuration calc
|
2026-05-29 17:14:52 +02:00 |
|
Gregor Vostrak
|
72cd0b6f05
|
fix formatting
|
2026-05-29 17:14:52 +02:00 |
|
Gregor Vostrak
|
6d93e48b1d
|
add missing dayjs plugins for isSameOrBefore and isSameOrAfter
|
2026-05-29 17:14:52 +02:00 |
|
Gregor Vostrak
|
09af0f775f
|
add timesheets page
|
2026-05-29 17:14:52 +02:00 |
|
Gregor Vostrak
|
1cc000a584
|
fix local storage filter migration state for visibility filter
|
2026-05-26 11:37:24 +02:00 |
|
Gregor Vostrak
|
1a754f6756
|
improve modal and field group spacing for project modal layout
|
2026-05-26 11:15:15 +02:00 |
|