diff options
| author | mo khan <mo@mokhan.ca> | 2025-04-30 12:57:05 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2025-04-30 12:57:05 -0600 |
| commit | 513ed03b62565ac1bcd3a83ffa6aa47c5d5b7bc9 (patch) | |
| tree | 383840812a0b2de65fb300e0718e3feaa37b3630 | |
| parent | 86830bbc2f382ff837b1068bd097d5e97c9ec2aa (diff) | |
refactor: delegate to x package
| -rw-r--r-- | go.mod | 2 | ||||
| -rw-r--r-- | go.sum | 2 | ||||
| -rw-r--r-- | pkg/pls/option.go | 17 | ||||
| -rw-r--r-- | pkg/test/http.go | 3 | ||||
| -rw-r--r-- | pkg/web/cookie/new.go | 22 |
5 files changed, 15 insertions, 31 deletions
@@ -9,7 +9,7 @@ require ( github.com/rs/zerolog v1.34.0 github.com/stretchr/testify v1.10.0 github.com/testcontainers/testcontainers-go v0.36.0 - github.com/xlgmokha/x v0.0.0-20250428220023-07723124c0a2 + github.com/xlgmokha/x v0.0.0-20250430185455-b691eda27477 golang.org/x/oauth2 v0.29.0 ) @@ -136,6 +136,8 @@ github.com/xlgmokha/x v0.0.0-20250425224307-3bca1eacf7f5 h1:WTxSCjaoo9xIabUBOPKC github.com/xlgmokha/x v0.0.0-20250425224307-3bca1eacf7f5/go.mod h1:axGPKzoJCNTmPJxYqN5l+Z9gGbPe0yolkT61a5p3QiI= github.com/xlgmokha/x v0.0.0-20250428220023-07723124c0a2 h1:bMuGvVZ8MEV3De4yn/+5ldWdjVLMjnC5JloA76p4Eek= github.com/xlgmokha/x v0.0.0-20250428220023-07723124c0a2/go.mod h1:axGPKzoJCNTmPJxYqN5l+Z9gGbPe0yolkT61a5p3QiI= +github.com/xlgmokha/x v0.0.0-20250430185455-b691eda27477 h1:oeKrn9BSDSic5MTXKhQesxhIhB7byxl86IHtCD+yw4k= +github.com/xlgmokha/x v0.0.0-20250430185455-b691eda27477/go.mod h1:axGPKzoJCNTmPJxYqN5l+Z9gGbPe0yolkT61a5p3QiI= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= diff --git a/pkg/pls/option.go b/pkg/pls/option.go deleted file mode 100644 index e4fb245..0000000 --- a/pkg/pls/option.go +++ /dev/null @@ -1,17 +0,0 @@ -package pls - -import "github.com/xlgmokha/x/pkg/x" - -type Option[T any] func(T) T - -func New[T any](options ...Option[T]) T { - item := x.Default[T]() - for _, option := range options { - item = option(item) - } - return item -} - -func Prepend[T any](rest []T, beginning ...T) []T { - return append(beginning, rest...) -} diff --git a/pkg/test/http.go b/pkg/test/http.go index 6c15016..b65ccc9 100644 --- a/pkg/test/http.go +++ b/pkg/test/http.go @@ -10,10 +10,9 @@ import ( xcontext "github.com/xlgmokha/x/pkg/context" "github.com/xlgmokha/x/pkg/serde" "github.com/xlgmokha/x/pkg/x" - "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/pls" ) -type RequestOption pls.Option[*http.Request] +type RequestOption x.Option[*http.Request] func Request(method, target string, options ...RequestOption) *http.Request { request := httptest.NewRequest(method, target, nil) diff --git a/pkg/web/cookie/new.go b/pkg/web/cookie/new.go index f4b049e..c255818 100644 --- a/pkg/web/cookie/new.go +++ b/pkg/web/cookie/new.go @@ -5,11 +5,11 @@ import ( "time" "github.com/xlgmokha/x/pkg/env" - "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/pls" + "github.com/xlgmokha/x/pkg/x" ) -func New(name, value string, options ...pls.Option[*http.Cookie]) *http.Cookie { - options = pls.Prepend[pls.Option[*http.Cookie]]( +func New(name, value string, options ...x.Option[*http.Cookie]) *http.Cookie { + options = x.Prepend[x.Option[*http.Cookie]]( options, With(func(c *http.Cookie) { c.Name = name @@ -21,47 +21,47 @@ func New(name, value string, options ...pls.Option[*http.Cookie]) *http.Cookie { WithSameSite(http.SameSiteStrictMode), WithDomain(env.Fetch("HOST", "localhost")), ) - return pls.New[*http.Cookie](options...) + return x.New[*http.Cookie](options...) } -func With(with func(*http.Cookie)) pls.Option[*http.Cookie] { +func With(with func(*http.Cookie)) x.Option[*http.Cookie] { return func(c *http.Cookie) *http.Cookie { with(c) return c } } -func WithPath(value string) pls.Option[*http.Cookie] { +func WithPath(value string) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.Path = value }) } -func WithHttpOnly(value bool) pls.Option[*http.Cookie] { +func WithHttpOnly(value bool) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.HttpOnly = value }) } -func WithSecure(value bool) pls.Option[*http.Cookie] { +func WithSecure(value bool) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.Secure = value }) } -func WithDomain(value string) pls.Option[*http.Cookie] { +func WithDomain(value string) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.Domain = value }) } -func WithSameSite(value http.SameSite) pls.Option[*http.Cookie] { +func WithSameSite(value http.SameSite) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.SameSite = value }) } -func WithExpiration(expires time.Time) pls.Option[*http.Cookie] { +func WithExpiration(expires time.Time) x.Option[*http.Cookie] { return With(func(c *http.Cookie) { c.Expires = expires c.MaxAge = int(time.Until(expires).Seconds()) |
