feat: add seller saved views
Quality / test (push) Canceled after 0s

This commit is contained in:
2026-09-10 01:36:15 -04:00
parent ec322df25c
commit ffd239d27c
19 changed files with 364 additions and 0 deletions
@@ -0,0 +1,27 @@
import { savedViewSchema } from '@pokemon-inventory/validation/saved-view';
import { createApplicationError } from '../../../shared/errors/application-error.js';
export function createSavedViewService({ savedViewRepository }) {
return {
async list({ sellerId }) {
return savedViewRepository.listBySellerId(sellerId);
},
async create({ sellerId, view }) {
return savedViewRepository.create(sellerId, savedViewSchema.parse(view));
},
async update({ sellerId, viewId, view }) {
const updated = await savedViewRepository.updateForSeller(viewId, sellerId, savedViewSchema.parse(view));
if (!updated) throw createApplicationError('SAVED_VIEW_NOT_FOUND', 'Saved view was not found.', 404);
return updated;
},
async delete({ sellerId, viewId }) {
const deleted = await savedViewRepository.deleteForSeller(viewId, sellerId);
if (!deleted) throw createApplicationError('SAVED_VIEW_NOT_FOUND', 'Saved view was not found.', 404);
return deleted;
},
};
}