feat: restructure into XFlow monorepo with Nuxt 4, Modular Onion Monolith, Android client, and Desktop CLI
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
import { toggleListItemUseCase } from '../../../../modules/notes-lists';
|
||||
import { getAuthUser } from '../../../../utils/auth';
|
||||
|
||||
export default defineEventHandler(async (event) => {
|
||||
const itemId = getRouterParam(event, 'id');
|
||||
if (!itemId) {
|
||||
throw createError({ statusCode: 400, message: 'Item ID is required' });
|
||||
}
|
||||
|
||||
const user = getAuthUser(event);
|
||||
const body = await readBody(event).catch(() => ({}));
|
||||
const ownerId = user?.id || body.ownerId || 'default-user';
|
||||
|
||||
const result = await toggleListItemUseCase.execute({
|
||||
itemId,
|
||||
status: body.status,
|
||||
ownerId
|
||||
});
|
||||
|
||||
if (result.isFailure) {
|
||||
const error = result.getError();
|
||||
throw createError({ statusCode: error.statusCode || 400, message: error.message });
|
||||
}
|
||||
|
||||
return {
|
||||
success: true,
|
||||
item: result.getValue().toJSON()
|
||||
};
|
||||
});
|
||||
Reference in New Issue
Block a user