Sync excluded field to MCP and CLI

Add excluded boolean to the MCP CookiePattern schema and
UpdateCookiePatternInput. Expose it in CLI cookie-pattern
view, list, and update commands.

Signed-off-by: Émile Ré <emile@getprobo.com>
This commit is contained in:
Émile Ré
2026-05-01 16:48:55 +04:00
parent 3ed61c6084
commit dd1d0ebffb
6 changed files with 29 additions and 2 deletions

View File

@@ -37,6 +37,7 @@ query($id: ID!, $first: Int, $after: CursorKey) {
matchType
displayName
source
excluded
}
}
pageInfo {
@@ -55,6 +56,7 @@ type cookiePattern struct {
MatchType string `json:"matchType"`
DisplayName string `json:"displayName"`
Source string `json:"source"`
Excluded bool `json:"excluded"`
}
func NewCmdList(f *cmdutil.Factory) *cobra.Command {
@@ -133,10 +135,14 @@ func NewCmdList(f *cmdutil.Factory) *cobra.Command {
rows := make([][]string, 0, len(patterns))
for _, p := range patterns {
rows = append(rows, []string{p.ID, p.Pattern, p.MatchType, p.DisplayName, p.Source})
excluded := ""
if p.Excluded {
excluded = "yes"
}
rows = append(rows, []string{p.ID, p.Pattern, p.MatchType, p.DisplayName, p.Source, excluded})
}
t := cmdutil.NewTable("ID", "PATTERN", "MATCH TYPE", "DISPLAY NAME", "SOURCE").Rows(rows...)
t := cmdutil.NewTable("ID", "PATTERN", "MATCH TYPE", "DISPLAY NAME", "SOURCE", "EXCLUDED").Rows(rows...)
_, _ = fmt.Fprintln(f.IOStreams.Out, t)
if totalCount > len(patterns) {

View File

@@ -51,6 +51,7 @@ func NewCmdUpdate(f *cmdutil.Factory) *cobra.Command {
flagDisplayName string
flagDescription string
flagMaxAge int
flagExcluded bool
)
cmd := &cobra.Command{
@@ -87,6 +88,9 @@ func NewCmdUpdate(f *cmdutil.Factory) *cobra.Command {
if cmd.Flags().Changed("max-age-seconds") {
input["maxAgeSeconds"] = flagMaxAge
}
if cmd.Flags().Changed("excluded") {
input["excluded"] = flagExcluded
}
if len(input) == 1 {
return fmt.Errorf("at least one field must be specified for update")
@@ -112,6 +116,7 @@ func NewCmdUpdate(f *cmdutil.Factory) *cobra.Command {
cmd.Flags().StringVar(&flagDisplayName, "display-name", "", "Display name")
cmd.Flags().StringVar(&flagDescription, "description", "", "Description")
cmd.Flags().IntVar(&flagMaxAge, "max-age-seconds", 0, "Maximum age in seconds")
cmd.Flags().BoolVar(&flagExcluded, "excluded", false, "Exclude pattern from consent banner")
return cmd
}

View File

@@ -36,6 +36,7 @@ query($id: ID!) {
maxAgeSeconds
description
source
excluded
createdAt
updatedAt
}
@@ -53,6 +54,7 @@ type viewResponse struct {
MaxAgeSeconds *int `json:"maxAgeSeconds"`
Description *string `json:"description"`
Source string `json:"source"`
Excluded bool `json:"excluded"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
} `json:"node"`
@@ -117,6 +119,7 @@ func NewCmdView(f *cmdutil.Factory) *cobra.Command {
_, _ = fmt.Fprintf(out, "%s%s\n", label.Render("Pattern:"), v.Pattern)
_, _ = fmt.Fprintf(out, "%s%s\n", label.Render("Match Type:"), v.MatchType)
_, _ = fmt.Fprintf(out, "%s%s\n", label.Render("Source:"), v.Source)
_, _ = fmt.Fprintf(out, "%s%v\n", label.Render("Excluded:"), v.Excluded)
if v.MaxAgeSeconds != nil {
_, _ = fmt.Fprintf(out, "%s%d\n", label.Render("Max Age (seconds):"), *v.MaxAgeSeconds)
}