feat: auth & admin

This commit is contained in:
2026-06-03 10:41:53 +03:00
parent 612d0f0125
commit 7dc59fb3c4
120 changed files with 4683 additions and 2159 deletions
@@ -13,15 +13,15 @@ Move `await` operations into the branches where they're actually used to avoid b
```typescript
async function handleRequest(userId: string, skipProcessing: boolean) {
const userData = await fetchUserData(userId)
const userData = await fetchUserData(userId);
if (skipProcessing) {
// Returns immediately but still waited for userData
return { skipped: true }
return { skipped: true };
}
// Only this branch uses userData
return processUserData(userData)
return processUserData(userData);
}
```
@@ -31,12 +31,12 @@ async function handleRequest(userId: string, skipProcessing: boolean) {
async function handleRequest(userId: string, skipProcessing: boolean) {
if (skipProcessing) {
// Returns immediately without waiting
return { skipped: true }
return { skipped: true };
}
// Fetch only when needed
const userData = await fetchUserData(userId)
return processUserData(userData)
const userData = await fetchUserData(userId);
return processUserData(userData);
}
```
@@ -45,35 +45,35 @@ async function handleRequest(userId: string, skipProcessing: boolean) {
```typescript
// Incorrect: always fetches permissions
async function updateResource(resourceId: string, userId: string) {
const permissions = await fetchPermissions(userId)
const resource = await getResource(resourceId)
const permissions = await fetchPermissions(userId);
const resource = await getResource(resourceId);
if (!resource) {
return { error: 'Not found' }
return { error: 'Not found' };
}
if (!permissions.canEdit) {
return { error: 'Forbidden' }
return { error: 'Forbidden' };
}
return await updateResourceData(resource, permissions)
return await updateResourceData(resource, permissions);
}
// Correct: fetches only when needed
async function updateResource(resourceId: string, userId: string) {
const resource = await getResource(resourceId)
const resource = await getResource(resourceId);
if (!resource) {
return { error: 'Not found' }
return { error: 'Not found' };
}
const permissions = await fetchPermissions(userId)
const permissions = await fetchPermissions(userId);
if (!permissions.canEdit) {
return { error: 'Forbidden' }
return { error: 'Forbidden' };
}
return await updateResourceData(resource, permissions)
return await updateResourceData(resource, permissions);
}
```