Kirill
2b5c7fff5e
fix(server): remove duplicate registerAuthRoutes call
2026-05-22 15:31:35 +05:00
Kirill
b3b539b6fb
fix(api): register auth routes
...
Add missing registerAuthRoutes call in registerApiRoutes to enable
POST /api/auth/request-code, /verify-code, /register, /login,
/forgot-password, /reset-password, and PATCH /api/me/profile routes
2026-05-22 15:21:55 +05:00
Kirill
49f24d7482
split auth.js into focused modules (Task 3)
...
- auth-session.js: GET /api/me, GET /api/me/auth-methods
- auth-password.js: POST /api/me/password, POST /api/me/change-password
- auth-oauth.js: DELETE /api/me/oauth/:provider
- auth.js: kept only /api/auth/* routes + /api/me/profile
- api.js: registers new auth route modules
- tests split to separate files per module
2026-05-22 15:19:30 +05:00
Kirill
d79d02d5d1
refactor: remove email change functionality
2026-05-22 14:20:11 +05:00
Kirill
ad43ff98b6
feat: add password change and reset via email code
2026-05-22 14:12:29 +05:00
Kirill
22282c5f4e
fix: accept token as query param in authenticate, pass token to oauth link URL
2026-05-22 13:52:48 +05:00
Kirill
669b9aa45d
test commit
2026-05-22 12:51:41 +05:00
Kirill
b2ccc2a256
chore: fix lint issues, remove unused hasAvatar
2026-05-22 12:27:20 +05:00
Kirill
6bedf0b28a
test(server): add password auth and account methods tests
2026-05-22 11:57:11 +05:00
Kirill
abb14a49e0
feat(server): add auth-methods, set-password, unlink-oauth endpoints
2026-05-22 11:47:46 +05:00
Kirill
c9fa05b7bf
feat(server): add oauth link routes for account binding
2026-05-22 11:45:12 +05:00
Kirill
5f180fffaf
refactor(server): oauth only email, remove profile requests, support account linking state
2026-05-22 11:41:40 +05:00
Kirill
bb7b40ac45
fix(server): remove all avatarType references after DB column drop
2026-05-22 11:36:11 +05:00
Kirill
c3e4f5bdd2
feat(server): add POST /api/auth/register and /api/auth/login
...
- Add register endpoint with email/password validation, bcrypt hashing
- Add login endpoint with rate limiting per IP (5 attempts/min)
- Add helper functions: validatePassword, hashPassword, comparePassword, isAdminEmail
- Add checkLoginRateLimit for brute-force protection
- Add bcrypt dependency
- Remove avatarType column from User (migration)
2026-05-22 11:26:00 +05:00
Kirill
f6729210db
feat: public admin avatar endpoint, real admin avatar in user chat
2026-05-21 21:50:07 +05:00
Kirill
57da755ea1
feat: real user avatars in reviews, conditional product link
2026-05-21 21:10:49 +05:00
Kirill
7e7bade80c
feat: avatars in order messages
2026-05-21 21:05:22 +05:00
Kirill
2751332356
feat: avatar column in admin users table
2026-05-21 20:52:43 +05:00
Kirill
52290e162e
fix: use mutation variables in onSuccess, fix null displayName handling
2026-05-21 20:42:59 +05:00
Kirill
0dfa428931
feat: add admin settings page for display name and avatar editing
2026-05-21 20:28:35 +05:00
Kirill
47124a01a7
test commit
2026-05-21 14:22:03 +05:00
Kirill
058fa26e12
test commit
2026-05-21 13:39:45 +05:00
Kirill
1837b36b14
test commit
2026-05-21 12:02:29 +05:00
Kirill
ae6f86041a
fix: trustProxy for webhook IP validation, filter expired payments, remove dead code
2026-05-20 19:40:23 +05:00
Kirill
3177413acd
chore: fix prettier formatting
2026-05-20 19:33:13 +05:00
Kirill
dcf601d4a2
feat: add yookassa webhook endpoint
2026-05-20 19:19:48 +05:00
Kirill
317b910710
fix: email validation, conditional order update, improved tests for payment routes
2026-05-20 19:12:46 +05:00
Kirill
7d0854a294
fix: use correct notification event name in payment route
2026-05-20 19:00:39 +05:00
Kirill
8d45155b54
feat: rewrite payment route for yookassa redirect flow
2026-05-20 18:53:21 +05:00
Kirill
abadbbd4c4
fix: add retry to getPayment, normalize return, env validation, webhook/builder tests
2026-05-20 18:11:14 +05:00
Kirill
a3556367c6
fix: correct retryable check in yookassa fetchWithRetry
2026-05-20 18:04:07 +05:00
Kirill
3879e4b388
feat: add yookassa API client library with tests
2026-05-20 17:59:35 +05:00
Kirill
b06ba64365
test commit
2026-05-20 12:07:22 +05:00
Kirill
af5376d0e1
fix: rename name→displayName in remaining Prisma select clauses
2026-05-20 11:31:24 +05:00
Kirill
c32d5e6aff
fix: use sx for justifyContent in OAuthButtons, fix import order in test
2026-05-20 11:14:36 +05:00
Kirill
bf22aaf917
test: OAuth user model fields
2026-05-20 11:10:18 +05:00
Kirill
6fde248dc5
feat: enrich Yandex OAuth with firstName/lastName/gender/avatar
2026-05-20 10:55:37 +05:00
Kirill
d2d2f721cd
feat: enrich VK OAuth with firstName/lastName/gender/avatar
2026-05-20 10:53:58 +05:00
Kirill
32a4406cb8
refactor: rename name→displayName in review files
2026-05-20 10:51:48 +05:00
Kirill
cc7e46b447
refactor: rename name→displayName in admin-users
2026-05-20 10:50:38 +05:00
Kirill
ce49f75100
feat: use displayName in mapUserForClient and profile update
2026-05-20 10:46:31 +05:00
Kirill
57275514bf
feat: remove server info-page routes
2026-05-19 14:56:37 +05:00
Kirill
5adbe9baa7
test commit
2026-05-19 11:25:23 +05:00
Kirill
d0b3c97803
feat: improve notifications - fix auth code tg duplicate, double order notify, add PAID label, expand text, add deliveryFeeAdjusted event
2026-05-18 14:48:54 +05:00
Kirill
2f67c37502
test commit
2026-05-18 13:54:05 +05:00
Kirill
6912008a2c
test: add notification preferences tests
2026-05-18 12:06:29 +05:00
Kirill
912724082e
test: add notification preferences tests
2026-05-18 11:45:51 +05:00
Kirill
1d36f6a31b
feat: create admin notification settings on bootstrap
2026-05-18 11:40:24 +05:00
Kirill
84cdccaa17
feat: emit notification events from existing routes
2026-05-18 11:39:02 +05:00
Kirill
e73a0ae09a
feat: wire up notification system in server
2026-05-18 11:36:19 +05:00