Unify cookie category queries with coredata filter
Replace duplicated LoadConsentCategoriesByCookieBannerID, CountConsentCategoriesByCookieBannerID, and LoadAllConsentCategoriesByCookieBannerID with a single CookieCategoryFilter in pkg/coredata. The filter uses the standard CASE WHEN idiom to optionally exclude a kind, eliminating branching in the service layer. Signed-off-by: Émile Ré <emile@probo.com>
This commit is contained in:
@@ -5053,7 +5053,7 @@ func (r *Resolver) ListCookieCategoriesTool(ctx context.Context, req *mcp.CallTo
|
||||
scope := coredata.NewScopeFromObjectID(input.CookieBannerID)
|
||||
cursor := types.NewCursor(input.Size, input.Cursor, page.OrderBy[coredata.CookieCategoryOrderField]{Field: coredata.CookieCategoryOrderFieldRank, Direction: page.OrderDirectionAsc})
|
||||
|
||||
categories, err := r.cookieBanner.ListCookieCategoriesForBanner(ctx, scope, input.CookieBannerID, cursor)
|
||||
categories, err := r.cookieBanner.ListCategoriesForBanner(ctx, scope, input.CookieBannerID, cursor, coredata.NewCookieCategoryFilter(new(coredata.CookieCategoryKindUncategorised)))
|
||||
if err != nil {
|
||||
panic(fmt.Errorf("cannot list cookie categories: %w", err))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user