From 507289074b66591c485b5f1047dd3f87672694d4 Mon Sep 17 00:00:00 2001 From: oppiliappan Date: Thu, 22 Jan 2026 10:37:11 +0000 Subject: [PATCH] appview/pages: add func to construct queryParams queryParams is like dict: constructs a url.Values map. Signed-off-by: oppiliappan --- appview/pages/funcmap.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/appview/pages/funcmap.go b/appview/pages/funcmap.go index 1bc65598..a65b76d6 100644 --- a/appview/pages/funcmap.go +++ b/appview/pages/funcmap.go @@ -332,6 +332,24 @@ func (p *Pages) funcMap() template.FuncMap { } return dict, nil }, + "queryParams": func(params ...any) (url.Values, error) { + if len(params)%2 != 0 { + return nil, errors.New("invalid queryParams call") + } + vals := make(url.Values, len(params)/2) + for i := 0; i < len(params); i += 2 { + key, ok := params[i].(string) + if !ok { + return nil, errors.New("queryParams keys must be strings") + } + v, ok := params[i+1].(string) + if !ok { + return nil, errors.New("queryParams values must be strings") + } + vals.Add(key, v) + } + return vals, nil + }, "deref": func(v any) any { val := reflect.ValueOf(v) if val.Kind() == reflect.Pointer && !val.IsNil() { -- 2.51.2