feat: add route render
This commit is contained in:
@@ -2,9 +2,9 @@ package f
|
||||
|
||||
import (
|
||||
"github.com/gofiber/fiber/v3"
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
|
||||
func Path[T fiber.GenericType](key string) func(fiber.Ctx) (T, error) {
|
||||
return func(ctx fiber.Ctx) (T, error) {
|
||||
v := fiber.Params[T](ctx, key)
|
||||
@@ -12,58 +12,48 @@ func Path[T fiber.GenericType](key string) func(fiber.Ctx) (T, error) {
|
||||
}
|
||||
}
|
||||
|
||||
func URI[T any]() func(fiber.Ctx) (*T, error) {
|
||||
func URI[T any](name string) func(fiber.Ctx) (*T, error) {
|
||||
return func(ctx fiber.Ctx) (*T, error) {
|
||||
p := new(T)
|
||||
if err := ctx.Bind().URI(p); err != nil {
|
||||
return nil, err
|
||||
return nil, errors.Wrapf(err, "uri: %s", name)
|
||||
}
|
||||
|
||||
return p, nil
|
||||
}
|
||||
}
|
||||
|
||||
func Cookie[T any]() func(fiber.Ctx) (*T, error) {
|
||||
return func(ctx fiber.Ctx) (*T, error) {
|
||||
p := new(T)
|
||||
if err := ctx.Bind().Cookie(p); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return p, nil
|
||||
}
|
||||
}
|
||||
|
||||
func Body[T any]() func(fiber.Ctx) (*T, error) {
|
||||
func Body[T any](name string) func(fiber.Ctx) (*T, error) {
|
||||
return func(ctx fiber.Ctx) (*T, error) {
|
||||
p := new(T)
|
||||
if err := ctx.Bind().Body(p); err != nil {
|
||||
return nil, err
|
||||
return nil, errors.Wrapf(err, "body: %s", name)
|
||||
}
|
||||
|
||||
return p, nil
|
||||
}
|
||||
}
|
||||
|
||||
func Query[T any]() func(fiber.Ctx) (*T, error) {
|
||||
func Query[T any](name string) func(fiber.Ctx) (*T, error) {
|
||||
return func(ctx fiber.Ctx) (*T, error) {
|
||||
p := new(T)
|
||||
if err := ctx.Bind().Query(p); err != nil {
|
||||
return nil, err
|
||||
return nil, errors.Wrapf(err, "query: %s", name)
|
||||
}
|
||||
|
||||
return p, nil
|
||||
}
|
||||
}
|
||||
|
||||
func Header[T any]() func(fiber.Ctx) (*T, error) {
|
||||
func Header[T any](name string) func(fiber.Ctx) (*T, error) {
|
||||
return func(ctx fiber.Ctx) (*T, error) {
|
||||
p := new(T)
|
||||
err := ctx.Bind().Header(p)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
return nil, errors.Wrapf(err, "header: %s", name)
|
||||
}
|
||||
|
||||
return p, nil
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -18,11 +18,7 @@ func Func1[P1 any](
|
||||
return err
|
||||
}
|
||||
|
||||
err = f(ctx, p)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
return f(ctx, p)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,11 +38,7 @@ func Func2[P1 any, P2 any](
|
||||
return err
|
||||
}
|
||||
|
||||
err = f(ctx, p1, p2)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
return f(ctx, p1, p2)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,11 +62,7 @@ func Func3[P1 any, P2 any, P3 any](
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = f(ctx, p1, p2, p3)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
return f(ctx, p1, p2, p3)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,11 +94,7 @@ func Func4[P1 any, P2 any, P3 any, P4 any](
|
||||
return nil
|
||||
}
|
||||
|
||||
err = f(ctx, p1, p2, p3, p4)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
return f(ctx, p1, p2, p3, p4)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -143,11 +127,7 @@ func Func5[P1 any, P2 any, P3 any, P4 any, P5 any](
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = f(ctx, p1, p2, p3, p4, p5)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
return f(ctx, p1, p2, p3, p4, p5)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,10 +165,209 @@ func Func6[P1 any, P2 any, P3 any, P4 any, P5 any, P6 any](
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
err = f(ctx, p1, p2, p3, p4, p5, p6)
|
||||
return f(ctx, p1, p2, p3, p4, p5, p6)
|
||||
}
|
||||
}
|
||||
|
||||
func Func7[P1 any, P2 any, P3 any, P4 any, P5 any, P6 any, P7 any](
|
||||
f func(fiber.Ctx, P1, P2, P3, P4, P5, P6, P7) error,
|
||||
pf1 func(fiber.Ctx) (P1, error),
|
||||
pf2 func(fiber.Ctx) (P2, error),
|
||||
pf3 func(fiber.Ctx) (P3, error),
|
||||
pf4 func(fiber.Ctx) (P4, error),
|
||||
pf5 func(fiber.Ctx) (P5, error),
|
||||
pf6 func(fiber.Ctx) (P6, error),
|
||||
pf7 func(fiber.Ctx) (P7, error),
|
||||
) fiber.Handler {
|
||||
return func(ctx fiber.Ctx) error {
|
||||
p1, err := pf1(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
p2, err := pf2(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p3, err := pf3(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p4, err := pf4(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p5, err := pf5(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p6, err := pf6(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p7, err := pf7(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return f(ctx, p1, p2, p3, p4, p5, p6, p7)
|
||||
}
|
||||
}
|
||||
|
||||
func Func8[P1 any, P2 any, P3 any, P4 any, P5 any, P6 any, P7 any, P8 any](
|
||||
f func(fiber.Ctx, P1, P2, P3, P4, P5, P6, P7, P8) error,
|
||||
pf1 func(fiber.Ctx) (P1, error),
|
||||
pf2 func(fiber.Ctx) (P2, error),
|
||||
pf3 func(fiber.Ctx) (P3, error),
|
||||
pf4 func(fiber.Ctx) (P4, error),
|
||||
pf5 func(fiber.Ctx) (P5, error),
|
||||
pf6 func(fiber.Ctx) (P6, error),
|
||||
pf7 func(fiber.Ctx) (P7, error),
|
||||
pf8 func(fiber.Ctx) (P8, error),
|
||||
) fiber.Handler {
|
||||
return func(ctx fiber.Ctx) error {
|
||||
p1, err := pf1(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p2, err := pf2(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p3, err := pf3(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p4, err := pf4(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p5, err := pf5(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p6, err := pf6(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p7, err := pf7(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p8, err := pf8(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return f(ctx, p1, p2, p3, p4, p5, p6, p7, p8)
|
||||
}
|
||||
}
|
||||
|
||||
func Func9[P1 any, P2 any, P3 any, P4 any, P5 any, P6 any, P7 any, P8 any, P9 any](
|
||||
f func(fiber.Ctx, P1, P2, P3, P4, P5, P6, P7, P8, P9) error,
|
||||
pf1 func(fiber.Ctx) (P1, error),
|
||||
pf2 func(fiber.Ctx) (P2, error),
|
||||
pf3 func(fiber.Ctx) (P3, error),
|
||||
pf4 func(fiber.Ctx) (P4, error),
|
||||
pf5 func(fiber.Ctx) (P5, error),
|
||||
pf6 func(fiber.Ctx) (P6, error),
|
||||
pf7 func(fiber.Ctx) (P7, error),
|
||||
pf8 func(fiber.Ctx) (P8, error),
|
||||
pf9 func(fiber.Ctx) (P9, error),
|
||||
) fiber.Handler {
|
||||
return func(ctx fiber.Ctx) error {
|
||||
p1, err := pf1(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p2, err := pf2(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p3, err := pf3(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p4, err := pf4(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p5, err := pf5(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p6, err := pf6(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p7, err := pf7(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p8, err := pf8(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p9, err := pf9(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return f(ctx, p1, p2, p3, p4, p5, p6, p7, p8, p9)
|
||||
}
|
||||
}
|
||||
|
||||
func Func10[P1 any, P2 any, P3 any, P4 any, P5 any, P6 any, P7 any, P8 any, P9 any, P10 any](
|
||||
f func(fiber.Ctx, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) error,
|
||||
pf1 func(fiber.Ctx) (P1, error),
|
||||
pf2 func(fiber.Ctx) (P2, error),
|
||||
pf3 func(fiber.Ctx) (P3, error),
|
||||
pf4 func(fiber.Ctx) (P4, error),
|
||||
pf5 func(fiber.Ctx) (P5, error),
|
||||
pf6 func(fiber.Ctx) (P6, error),
|
||||
pf7 func(fiber.Ctx) (P7, error),
|
||||
pf8 func(fiber.Ctx) (P8, error),
|
||||
pf9 func(fiber.Ctx) (P9, error),
|
||||
pf10 func(fiber.Ctx) (P10, error),
|
||||
) fiber.Handler {
|
||||
return func(ctx fiber.Ctx) error {
|
||||
p1, err := pf1(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p2, err := pf2(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p3, err := pf3(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p4, err := pf4(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p5, err := pf5(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p6, err := pf6(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p7, err := pf7(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p8, err := pf8(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p9, err := pf9(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
p10, err := pf10(ctx)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return f(ctx, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user