Commit Graph

50 Commits

Author SHA1 Message Date
d4a52d6f3b feat(reports): refine exports and restore project access 2026-05-14 17:06:35 +03:30
77c07adec8 feat(reports): support multi-user chart series 2026-05-13 09:59:23 +03:30
f9c4c06531 feat(users): return otp expiry metadata 2026-05-13 09:58:58 +03:30
d1c4889d22 feat(users): apply django password validators in auth flows 2026-05-03 20:02:14 +03:30
f04e9ba828 fix(exceptions): change exception message string to exclude field_name 2026-05-03 18:22:36 +03:30
8ff1e4fa61 fix(users): validate password reset mobile input 2026-05-03 17:17:18 +03:30
0823267544 chore(readme): add README.md 2026-05-01 10:48:47 +03:30
df9a183823 test(reports): freeze date-sensitive report view cases 2026-05-01 01:54:13 +03:30
fb15a16204 feat(users): add google oauth login flow 2026-05-01 01:54:02 +03:30
99eb4c2594 perf(db): add targeted composite indexes 2026-04-30 16:13:35 +03:30
054bb5a582 feat(cache): add targeted server-side response caching 2026-04-30 16:13:12 +03:30
08e1793765 feat(throttling): add auth throttling and structured cooldown errors 2026-04-30 15:29:44 +03:30
3152284cf3 test(backend): add coverage for services tasks and apis 2026-04-30 12:44:24 +03:30
8774a4d4dc test(backend): convert existing app suites to unittest 2026-04-30 12:41:54 +03:30
204225dd16 test(backend): switch to django test runner 2026-04-30 12:41:38 +03:30
a2de2a133c fix(users): skip sms delivery when api key is unset 2026-04-29 20:19:13 +03:30
ec199a0e99 feat(projects): add client strip filtering and page refresh 2026-04-29 00:53:54 +03:30
ef05f0a89e feat(reports): add daily rate to report tables and exports 2026-04-28 20:26:20 +03:30
1cd948592c refactor(projects): remove project membership access model 2026-04-28 19:35:24 +03:30
71924ce6fb feat(logs): add workspace activity log api 2026-04-28 18:51:42 +03:30
c8a118788b feat(reports): include workspace thumbnail in pdf exports 2026-04-28 11:38:43 +03:30
315f2ca728 feat(workspaces): add thumbnail upload and lifecycle support 2026-04-28 11:38:35 +03:30
76f02dc259 feat(workspaces): expose role-aware membership details 2026-04-28 10:46:15 +03:30
afb1a55570 fix(permissions): restrict deletes and admin member management 2026-04-28 10:02:37 +03:30
02c9c17c30 fix(time-entries): preserve deleted tags in timesheet edits 2026-04-27 22:58:27 +03:30
7bd60fd641 fix(reports): localize and group exported income values 2026-04-27 21:14:02 +03:30
208e81139b fix(reports): use persian month buckets in chart data 2026-04-27 16:43:54 +03:30
e26263e93f feat(reports): add localized workspace reports and exports 2026-04-27 16:15:41 +03:30
fadf898486 feat(pricing): add workspace user rates and price units 2026-04-26 10:19:04 +03:30
f960ca8221 feat(permissions): centralize workspace role capability checks 2026-04-25 18:48:50 +03:30
5f9d413a57 refactor(notifications): align app structure with backend conventions 2026-04-25 12:00:05 +03:30
48bf4f5c19 feat(notifications): notify membership access changes 2026-04-25 11:51:45 +03:30
0ca3255270 feat(notifications): add redis-backed sse notification streaming 2026-04-25 11:27:46 +03:30
e7de587f59 feat(projects): support members and align rate payloads 2026-04-24 22:20:57 +03:30
a44995017b fix(users): support profile picture delete and dev sms fallback 2026-04-24 22:20:13 +03:30
7cae494892 test(time-entries): cover grouped filters and serializer formatting 2026-04-24 22:19:36 +03:30
83bc3568d0 feat(time-entries): add grouped timesheet filters and responses 2026-04-24 22:19:09 +03:30
9910b386d2 chore(django): track initial migrations and test config 2026-04-24 22:18:28 +03:30
0289a15089 fix(projects): add client's name to the project's response to display in frontend 2026-03-15 01:54:22 +08:00
c548b7c30c fix(<Pagination): currentPage={currentPage}
totalCount={totalItems}

    onPageChange={setCurrentPage}
2026-03-13 10:32:46 +08:00
a54969d1c0 feat(workspaces): change response structure of user field in WorkspaceMembershipSerializer from UUID to UserMiniSerializer object 2026-03-13 01:17:00 +08:00
67aa42baf0 fix(workspaces): removed incorrect search options in WorkspaceViewset by 'owner' 2026-03-12 21:44:55 +08:00
eee584038e feat(workspaces): add 'my_role' and 'owner' fields to WorkspaceSerializer 2026-03-12 21:43:40 +08:00
93b1699253 feat(users): add search endpoint for adding new user to workspace by mobile 2026-03-12 17:42:51 +08:00
5990114151 feat(users): add /me/ endpoint for detail/update/delete user object 2026-03-12 08:25:55 +08:00
720adbe8a3 feat(time_entries): add time_entries app's basic structure and endpoints 2026-03-11 19:46:45 +08:00
4d66293804 feat(tags): add tags app's basic structure and endpoint 2026-03-11 19:17:20 +08:00
7152ab9aca feat(projects): add projects app's basic structure and endpoints 2026-03-11 19:05:57 +08:00
7b6b288c41 feat(clients): add clients app basic structure and endpoints 2026-03-11 18:43:11 +08:00
5d1e1cb7cb initial commit 2026-03-11 18:01:27 +08:00