From 44360594833761426f6f6d323a3a1cf46b8af53c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89mile=20R=C3=A9?= Date: Fri, 24 Apr 2026 13:47:59 +0400 Subject: [PATCH] Add gcmConsentTypes to GraphQL schema and resolvers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Expose gcmConsentTypes on CookieCategory type and accept it in UpdateCookieCategoryInput so the console can read and write GCM consent type mappings per category. Signed-off-by: Émile Ré --- .../api/console/v1/cookie_banner_resolvers.go | 6 ++++++ .../console/v1/graphql/cookie_banner.graphql | 2 ++ .../api/console/v1/types/cookie_category.go | 19 ++++++++++++------- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/pkg/server/api/console/v1/cookie_banner_resolvers.go b/pkg/server/api/console/v1/cookie_banner_resolvers.go index 0ce6b025d..f3249d8ba 100644 --- a/pkg/server/api/console/v1/cookie_banner_resolvers.go +++ b/pkg/server/api/console/v1/cookie_banner_resolvers.go @@ -458,6 +458,11 @@ func (r *mutationResolver) UpdateCookieCategory(ctx context.Context, input types scope := coredata.NewScopeFromObjectID(input.CookieCategoryID) + var gcmConsentTypes *[]string + if input.GcmConsentTypes != nil { + gcmConsentTypes = &input.GcmConsentTypes + } + category, err := r.cookieBanner.UpdateCookieCategory( ctx, scope, @@ -466,6 +471,7 @@ func (r *mutationResolver) UpdateCookieCategory(ctx context.Context, input types Name: input.Name, Slug: input.Slug, Description: input.Description, + GCMConsentTypes: gcmConsentTypes, }, ) if err != nil { diff --git a/pkg/server/api/console/v1/graphql/cookie_banner.graphql b/pkg/server/api/console/v1/graphql/cookie_banner.graphql index 3ec70f246..690199239 100644 --- a/pkg/server/api/console/v1/graphql/cookie_banner.graphql +++ b/pkg/server/api/console/v1/graphql/cookie_banner.graphql @@ -123,6 +123,7 @@ type CookieCategory implements Node { description: String! kind: CookieCategoryKind! rank: Int! + gcmConsentTypes: [String!]! cookies( first: Int @@ -308,6 +309,7 @@ input UpdateCookieCategoryInput { name: String slug: String description: String + gcmConsentTypes: [String!] } input DeleteCookieCategoryInput { diff --git a/pkg/server/api/console/v1/types/cookie_category.go b/pkg/server/api/console/v1/types/cookie_category.go index 835b3358e..c899b4992 100644 --- a/pkg/server/api/console/v1/types/cookie_category.go +++ b/pkg/server/api/console/v1/types/cookie_category.go @@ -61,17 +61,22 @@ func NewCookieCategoryEdge(c *coredata.CookieCategory, orderBy coredata.CookieCa } func NewCookieCategory(c *coredata.CookieCategory) *CookieCategory { + gcmConsentTypes := c.GCMConsentTypes + if gcmConsentTypes == nil { + gcmConsentTypes = []string{} + } return &CookieCategory{ ID: c.ID, CookieBanner: &CookieBanner{ ID: c.CookieBannerID, }, - Name: c.Name, - Slug: c.Slug, - Description: c.Description, - Kind: c.Kind, - Rank: c.Rank, - CreatedAt: c.CreatedAt, - UpdatedAt: c.UpdatedAt, + Name: c.Name, + Slug: c.Slug, + Description: c.Description, + Kind: c.Kind, + Rank: c.Rank, + GcmConsentTypes: gcmConsentTypes, + CreatedAt: c.CreatedAt, + UpdatedAt: c.UpdatedAt, } }