From 8540fb5dd1148cb5c4d52b3c6c3b0caeadc68f41 Mon Sep 17 00:00:00 2001 From: Prad Nukala Date: Sun, 11 May 2025 11:04:30 -0400 Subject: [PATCH] feat/views (#8) * chore: relocate controller package to sink directory * refactor: adjust vault package to use updated credential location * feat: implement session-based context for request handling * refactor: relocate controllers to middleware directory * fix: correct file paths in templ error messages * refactor: adjust vault controller to new credential location --- cmd/front/main.go | 16 ++++---- cmd/vault/main.go | 7 +--- controller/controller.go | 37 ------------------- .../{default_initial.go => default_index.go} | 2 +- middleware/context.go | 22 +++++++---- .../controllers}/account/card.templ | 0 .../controllers}/account/card_templ.go | 12 +++--- .../controllers}/account/entity.go | 0 .../controllers}/account/list.templ | 0 .../controllers}/account/list_templ.go | 0 .../controllers}/account/queries.go | 0 .../controllers}/account/select.templ | 0 .../controllers}/account/select_templ.go | 0 .../controllers}/activity/card.templ | 0 .../controllers}/activity/card_templ.go | 12 +++--- .../controllers}/activity/entity.go | 0 .../controllers}/activity/list.templ | 0 .../controllers}/activity/list_templ.go | 0 .../controllers}/activity/queries.go | 0 .../controllers}/asset/entity.go | 0 .../controllers}/asset/queries.go | 0 .../controllers}/asset/select.templ | 0 .../controllers}/asset/select_templ.go | 0 .../controllers}/blockchain/entity.go | 0 .../controllers}/blockchain/queries.go | 0 .../controllers}/credential/descriptor.go | 0 .../controllers}/credential/entity.go | 0 .../controllers}/credential/inputs.templ | 0 .../controllers}/credential/inputs_templ.go | 0 .../controllers}/credential/queries.go | 0 .../controllers}/health/entity.go | 0 .../controllers}/health/queries.go | 0 .../controllers}/prices/entity.go | 0 .../controllers}/prices/queries.go | 0 .../controllers}/profile/entity.go | 0 .../controllers}/profile/inputs.templ | 0 .../controllers}/profile/inputs_templ.go | 0 .../controllers}/profile/queries.go | 0 .../controllers}/service/entity.go | 0 .../controllers}/service/queries.go | 0 .../controllers}/vault/entity.go | 0 .../controllers}/vault/forms.templ | 0 .../controllers}/vault/forms_templ.go | 0 .../controllers}/vault/options.go | 2 +- .../controllers}/vault/queries.go | 0 middleware/middleware.go | 14 ++++++- routes/routes.go | 29 ++++++++------- 47 files changed, 68 insertions(+), 85 deletions(-) delete mode 100644 controller/controller.go rename handlers/{default_initial.go => default_index.go} (79%) rename {controller => middleware/controllers}/account/card.templ (100%) rename {controller => middleware/controllers}/account/card_templ.go (91%) rename {controller => middleware/controllers}/account/entity.go (100%) rename {controller => middleware/controllers}/account/list.templ (100%) rename {controller => middleware/controllers}/account/list_templ.go (100%) rename {controller => middleware/controllers}/account/queries.go (100%) rename {controller => middleware/controllers}/account/select.templ (100%) rename {controller => middleware/controllers}/account/select_templ.go (100%) rename {controller => middleware/controllers}/activity/card.templ (100%) rename {controller => middleware/controllers}/activity/card_templ.go (91%) rename {controller => middleware/controllers}/activity/entity.go (100%) rename {controller => middleware/controllers}/activity/list.templ (100%) rename {controller => middleware/controllers}/activity/list_templ.go (100%) rename {controller => middleware/controllers}/activity/queries.go (100%) rename {controller => middleware/controllers}/asset/entity.go (100%) rename {controller => middleware/controllers}/asset/queries.go (100%) rename {controller => middleware/controllers}/asset/select.templ (100%) rename {controller => middleware/controllers}/asset/select_templ.go (100%) rename {controller => middleware/controllers}/blockchain/entity.go (100%) rename {controller => middleware/controllers}/blockchain/queries.go (100%) rename {controller => middleware/controllers}/credential/descriptor.go (100%) rename {controller => middleware/controllers}/credential/entity.go (100%) rename {controller => middleware/controllers}/credential/inputs.templ (100%) rename {controller => middleware/controllers}/credential/inputs_templ.go (100%) rename {controller => middleware/controllers}/credential/queries.go (100%) rename {controller => middleware/controllers}/health/entity.go (100%) rename {controller => middleware/controllers}/health/queries.go (100%) rename {controller => middleware/controllers}/prices/entity.go (100%) rename {controller => middleware/controllers}/prices/queries.go (100%) rename {controller => middleware/controllers}/profile/entity.go (100%) rename {controller => middleware/controllers}/profile/inputs.templ (100%) rename {controller => middleware/controllers}/profile/inputs_templ.go (100%) rename {controller => middleware/controllers}/profile/queries.go (100%) rename {controller => middleware/controllers}/service/entity.go (100%) rename {controller => middleware/controllers}/service/queries.go (100%) rename {controller => middleware/controllers}/vault/entity.go (100%) rename {controller => middleware/controllers}/vault/forms.templ (100%) rename {controller => middleware/controllers}/vault/forms_templ.go (100%) rename {controller => middleware/controllers}/vault/options.go (82%) rename {controller => middleware/controllers}/vault/queries.go (100%) diff --git a/cmd/front/main.go b/cmd/front/main.go index 0536f0c..13c8c30 100644 --- a/cmd/front/main.go +++ b/cmd/front/main.go @@ -5,7 +5,6 @@ package main import ( "github.com/sonr-io/motr/config" - "github.com/sonr-io/motr/controller" "github.com/sonr-io/motr/middleware" "github.com/sonr-io/motr/routes" ) @@ -13,11 +12,14 @@ import ( func main() { // Setup config e, c := config.New() - e.Use(middleware.UseSession(c), middleware.UseCloudflareCache(c)) - cn, err := controller.New(c, e) - if err != nil { - panic(err) - } - routes.SetupRoutes(cn) + + // Setup middleware + e.Use( + middleware.UseSession(c), + middleware.UseCloudflareCache(c), + ) + + // Setup routes + routes.SetupRoutes(e) e.Serve() } diff --git a/cmd/vault/main.go b/cmd/vault/main.go index 0536f0c..57c0db6 100644 --- a/cmd/vault/main.go +++ b/cmd/vault/main.go @@ -5,7 +5,6 @@ package main import ( "github.com/sonr-io/motr/config" - "github.com/sonr-io/motr/controller" "github.com/sonr-io/motr/middleware" "github.com/sonr-io/motr/routes" ) @@ -14,10 +13,6 @@ func main() { // Setup config e, c := config.New() e.Use(middleware.UseSession(c), middleware.UseCloudflareCache(c)) - cn, err := controller.New(c, e) - if err != nil { - panic(err) - } - routes.SetupRoutes(cn) + routes.SetupRoutes(e) e.Serve() } diff --git a/controller/controller.go b/controller/controller.go deleted file mode 100644 index 0721606..0000000 --- a/controller/controller.go +++ /dev/null @@ -1,37 +0,0 @@ -//go:build js && wasm -// +build js,wasm - -package controller - -import ( - "github.com/sonr-io/motr/config" - "github.com/sonr-io/motr/sink/models" - "github.com/syumai/workers/cloudflare/kv" -) - -type Controller struct { - DB models.Querier - Handles *kv.Namespace - Sessions *kv.Namespace - Server *config.Server -} - -func New(cfg config.Config, s *config.Server) (*Controller, error) { - q, err := cfg.DB.GetQuerier() - if err != nil { - return nil, err - } - hkv, err := cfg.KV.GetHandles() - if err != nil { - return nil, err - } - skv, err := cfg.KV.GetSessions() - if err != nil { - return nil, err - } - return create(q, hkv, skv, s), nil -} - -func create(q models.Querier, hkv *kv.Namespace, skv *kv.Namespace, srv *config.Server) *Controller { - return &Controller{DB: q, Handles: hkv, Sessions: skv, Server: srv} -} diff --git a/handlers/default_initial.go b/handlers/default_index.go similarity index 79% rename from handlers/default_initial.go rename to handlers/default_index.go index ef6bcdb..e9b48f0 100644 --- a/handlers/default_initial.go +++ b/handlers/default_index.go @@ -6,6 +6,6 @@ import ( "github.com/sonr-io/motr/middleware" ) -func HandleDefaultInitial(c echo.Context) error { +func HandleDefaultIndex(c echo.Context) error { return middleware.Render(c, views.HomeView()) } diff --git a/middleware/context.go b/middleware/context.go index 6be0ebc..589f4b6 100644 --- a/middleware/context.go +++ b/middleware/context.go @@ -10,21 +10,29 @@ import ( "github.com/segmentio/ksuid" "github.com/sonr-io/motr/config" "github.com/sonr-io/motr/sink" + "github.com/sonr-io/motr/sink/models" + "github.com/syumai/workers/cloudflare/kv" ) type SessionContext struct { echo.Context - ID string - Config config.Config - Status *sink.Status + ID string + DB models.Querier + Config config.Config + Handles *kv.Namespace + Sessions *kv.Namespace + Status *sink.Status } -func NewSession(c echo.Context, cfg config.Config) *SessionContext { +func NewSession(c echo.Context, cfg config.Config, q models.Querier, hkv *kv.Namespace, skv *kv.Namespace) *SessionContext { id := getOrCreateSessionID(c) return &SessionContext{ - Context: c, - ID: id, - Config: cfg, + Context: c, + ID: id, + Config: cfg, + DB: q, + Handles: hkv, + Sessions: skv, Status: &sink.Status{ SessionID: id, Expires: cfg.KV.GetSessionExpiry(time.Now()), diff --git a/controller/account/card.templ b/middleware/controllers/account/card.templ similarity index 100% rename from controller/account/card.templ rename to middleware/controllers/account/card.templ diff --git a/controller/account/card_templ.go b/middleware/controllers/account/card_templ.go similarity index 91% rename from controller/account/card_templ.go rename to middleware/controllers/account/card_templ.go index fe7006a..332b7e0 100644 --- a/controller/account/card_templ.go +++ b/middleware/controllers/account/card_templ.go @@ -38,7 +38,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var2 string templ_7745c5c3_Var2, templ_7745c5c3_Err = templ.JoinStringErrs(handle) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 11, Col: 43} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 11, Col: 43} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var2)) if templ_7745c5c3_Err != nil { @@ -51,7 +51,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var3 string templ_7745c5c3_Var3, templ_7745c5c3_Err = templ.JoinStringErrs(addr) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 18, Col: 42} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 18, Col: 42} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var3)) if templ_7745c5c3_Err != nil { @@ -64,7 +64,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var4 string templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs(block) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 23, Col: 47} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 23, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4)) if templ_7745c5c3_Err != nil { @@ -77,7 +77,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var5 string templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.JoinStringErrs(name) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 27, Col: 32} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 27, Col: 32} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var5)) if templ_7745c5c3_Err != nil { @@ -120,7 +120,7 @@ func optionComponent(account models.Account) templ.Component { var templ_7745c5c3_Var7 string templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(account.Address) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 37, Col: 19} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 37, Col: 19} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7)) if templ_7745c5c3_Err != nil { @@ -163,7 +163,7 @@ func rowComponent(account models.Account) templ.Component { var templ_7745c5c3_Var9 string templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(account.Address) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/account/card.templ`, Line: 45, Col: 19} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/account/card.templ`, Line: 45, Col: 19} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9)) if templ_7745c5c3_Err != nil { diff --git a/controller/account/entity.go b/middleware/controllers/account/entity.go similarity index 100% rename from controller/account/entity.go rename to middleware/controllers/account/entity.go diff --git a/controller/account/list.templ b/middleware/controllers/account/list.templ similarity index 100% rename from controller/account/list.templ rename to middleware/controllers/account/list.templ diff --git a/controller/account/list_templ.go b/middleware/controllers/account/list_templ.go similarity index 100% rename from controller/account/list_templ.go rename to middleware/controllers/account/list_templ.go diff --git a/controller/account/queries.go b/middleware/controllers/account/queries.go similarity index 100% rename from controller/account/queries.go rename to middleware/controllers/account/queries.go diff --git a/controller/account/select.templ b/middleware/controllers/account/select.templ similarity index 100% rename from controller/account/select.templ rename to middleware/controllers/account/select.templ diff --git a/controller/account/select_templ.go b/middleware/controllers/account/select_templ.go similarity index 100% rename from controller/account/select_templ.go rename to middleware/controllers/account/select_templ.go diff --git a/controller/activity/card.templ b/middleware/controllers/activity/card.templ similarity index 100% rename from controller/activity/card.templ rename to middleware/controllers/activity/card.templ diff --git a/controller/activity/card_templ.go b/middleware/controllers/activity/card_templ.go similarity index 91% rename from controller/activity/card_templ.go rename to middleware/controllers/activity/card_templ.go index 637d04e..a0a3036 100644 --- a/controller/activity/card_templ.go +++ b/middleware/controllers/activity/card_templ.go @@ -38,7 +38,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var2 string templ_7745c5c3_Var2, templ_7745c5c3_Err = templ.JoinStringErrs(handle) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 11, Col: 43} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 11, Col: 43} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var2)) if templ_7745c5c3_Err != nil { @@ -51,7 +51,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var3 string templ_7745c5c3_Var3, templ_7745c5c3_Err = templ.JoinStringErrs(addr) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 18, Col: 42} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 18, Col: 42} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var3)) if templ_7745c5c3_Err != nil { @@ -64,7 +64,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var4 string templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs(block) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 23, Col: 47} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 23, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4)) if templ_7745c5c3_Err != nil { @@ -77,7 +77,7 @@ func cardComponent(handle, addr, block, name string) templ.Component { var templ_7745c5c3_Var5 string templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.JoinStringErrs(name) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 27, Col: 32} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 27, Col: 32} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var5)) if templ_7745c5c3_Err != nil { @@ -120,7 +120,7 @@ func optionComponent(account models.Activity) templ.Component { var templ_7745c5c3_Var7 string templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(account.Status) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 37, Col: 18} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 37, Col: 18} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7)) if templ_7745c5c3_Err != nil { @@ -163,7 +163,7 @@ func rowComponent(account models.Activity) templ.Component { var templ_7745c5c3_Var9 string templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(account.Status) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `controller/activity/card.templ`, Line: 45, Col: 18} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `middleware/controllers/activity/card.templ`, Line: 45, Col: 18} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9)) if templ_7745c5c3_Err != nil { diff --git a/controller/activity/entity.go b/middleware/controllers/activity/entity.go similarity index 100% rename from controller/activity/entity.go rename to middleware/controllers/activity/entity.go diff --git a/controller/activity/list.templ b/middleware/controllers/activity/list.templ similarity index 100% rename from controller/activity/list.templ rename to middleware/controllers/activity/list.templ diff --git a/controller/activity/list_templ.go b/middleware/controllers/activity/list_templ.go similarity index 100% rename from controller/activity/list_templ.go rename to middleware/controllers/activity/list_templ.go diff --git a/controller/activity/queries.go b/middleware/controllers/activity/queries.go similarity index 100% rename from controller/activity/queries.go rename to middleware/controllers/activity/queries.go diff --git a/controller/asset/entity.go b/middleware/controllers/asset/entity.go similarity index 100% rename from controller/asset/entity.go rename to middleware/controllers/asset/entity.go diff --git a/controller/asset/queries.go b/middleware/controllers/asset/queries.go similarity index 100% rename from controller/asset/queries.go rename to middleware/controllers/asset/queries.go diff --git a/controller/asset/select.templ b/middleware/controllers/asset/select.templ similarity index 100% rename from controller/asset/select.templ rename to middleware/controllers/asset/select.templ diff --git a/controller/asset/select_templ.go b/middleware/controllers/asset/select_templ.go similarity index 100% rename from controller/asset/select_templ.go rename to middleware/controllers/asset/select_templ.go diff --git a/controller/blockchain/entity.go b/middleware/controllers/blockchain/entity.go similarity index 100% rename from controller/blockchain/entity.go rename to middleware/controllers/blockchain/entity.go diff --git a/controller/blockchain/queries.go b/middleware/controllers/blockchain/queries.go similarity index 100% rename from controller/blockchain/queries.go rename to middleware/controllers/blockchain/queries.go diff --git a/controller/credential/descriptor.go b/middleware/controllers/credential/descriptor.go similarity index 100% rename from controller/credential/descriptor.go rename to middleware/controllers/credential/descriptor.go diff --git a/controller/credential/entity.go b/middleware/controllers/credential/entity.go similarity index 100% rename from controller/credential/entity.go rename to middleware/controllers/credential/entity.go diff --git a/controller/credential/inputs.templ b/middleware/controllers/credential/inputs.templ similarity index 100% rename from controller/credential/inputs.templ rename to middleware/controllers/credential/inputs.templ diff --git a/controller/credential/inputs_templ.go b/middleware/controllers/credential/inputs_templ.go similarity index 100% rename from controller/credential/inputs_templ.go rename to middleware/controllers/credential/inputs_templ.go diff --git a/controller/credential/queries.go b/middleware/controllers/credential/queries.go similarity index 100% rename from controller/credential/queries.go rename to middleware/controllers/credential/queries.go diff --git a/controller/health/entity.go b/middleware/controllers/health/entity.go similarity index 100% rename from controller/health/entity.go rename to middleware/controllers/health/entity.go diff --git a/controller/health/queries.go b/middleware/controllers/health/queries.go similarity index 100% rename from controller/health/queries.go rename to middleware/controllers/health/queries.go diff --git a/controller/prices/entity.go b/middleware/controllers/prices/entity.go similarity index 100% rename from controller/prices/entity.go rename to middleware/controllers/prices/entity.go diff --git a/controller/prices/queries.go b/middleware/controllers/prices/queries.go similarity index 100% rename from controller/prices/queries.go rename to middleware/controllers/prices/queries.go diff --git a/controller/profile/entity.go b/middleware/controllers/profile/entity.go similarity index 100% rename from controller/profile/entity.go rename to middleware/controllers/profile/entity.go diff --git a/controller/profile/inputs.templ b/middleware/controllers/profile/inputs.templ similarity index 100% rename from controller/profile/inputs.templ rename to middleware/controllers/profile/inputs.templ diff --git a/controller/profile/inputs_templ.go b/middleware/controllers/profile/inputs_templ.go similarity index 100% rename from controller/profile/inputs_templ.go rename to middleware/controllers/profile/inputs_templ.go diff --git a/controller/profile/queries.go b/middleware/controllers/profile/queries.go similarity index 100% rename from controller/profile/queries.go rename to middleware/controllers/profile/queries.go diff --git a/controller/service/entity.go b/middleware/controllers/service/entity.go similarity index 100% rename from controller/service/entity.go rename to middleware/controllers/service/entity.go diff --git a/controller/service/queries.go b/middleware/controllers/service/queries.go similarity index 100% rename from controller/service/queries.go rename to middleware/controllers/service/queries.go diff --git a/controller/vault/entity.go b/middleware/controllers/vault/entity.go similarity index 100% rename from controller/vault/entity.go rename to middleware/controllers/vault/entity.go diff --git a/controller/vault/forms.templ b/middleware/controllers/vault/forms.templ similarity index 100% rename from controller/vault/forms.templ rename to middleware/controllers/vault/forms.templ diff --git a/controller/vault/forms_templ.go b/middleware/controllers/vault/forms_templ.go similarity index 100% rename from controller/vault/forms_templ.go rename to middleware/controllers/vault/forms_templ.go diff --git a/controller/vault/options.go b/middleware/controllers/vault/options.go similarity index 82% rename from controller/vault/options.go rename to middleware/controllers/vault/options.go index 4d456ca..12af4da 100644 --- a/controller/vault/options.go +++ b/middleware/controllers/vault/options.go @@ -1,6 +1,6 @@ package vault -import "github.com/sonr-io/motr/controller/credential" +import "github.com/sonr-io/motr/middleware/controllers/credential" type LoginOptions struct { Account string diff --git a/controller/vault/queries.go b/middleware/controllers/vault/queries.go similarity index 100% rename from controller/vault/queries.go rename to middleware/controllers/vault/queries.go diff --git a/middleware/middleware.go b/middleware/middleware.go index eca5a6a..f5d37f8 100644 --- a/middleware/middleware.go +++ b/middleware/middleware.go @@ -10,9 +10,21 @@ import ( // UseSession is a middleware that adds a new key to the context func UseSession(cnfg config.Config) echo.MiddlewareFunc { + q, err := cnfg.DB.GetQuerier() + if err != nil { + return nil + } + hkv, err := cnfg.KV.GetHandles() + if err != nil { + return nil + } + skv, err := cnfg.KV.GetSessions() + if err != nil { + return nil + } return func(next echo.HandlerFunc) echo.HandlerFunc { return func(c echo.Context) error { - ctx := NewSession(c, cnfg) + ctx := NewSession(c, cnfg, q, hkv, skv) return next(ctx) } } diff --git a/routes/routes.go b/routes/routes.go index fbb4dd7..a2413dc 100644 --- a/routes/routes.go +++ b/routes/routes.go @@ -4,22 +4,25 @@ package routes import ( - "github.com/sonr-io/motr/controller" + "github.com/sonr-io/motr/config" "github.com/sonr-io/motr/handlers" ) -func SetupRoutes(c *controller.Controller) { - c.Server.GET("/", handlers.HandleDefaultInitial) - c.Server.GET("/expired", handlers.HandleDefaultExpired) - c.Server.GET("/valid", handlers.HandleDefaultValid) +func SetupRoutes(c *config.Server) { + // Home + c.GET("/", handlers.HandleDefaultIndex) + c.GET("/expired", handlers.HandleDefaultExpired) + c.GET("/valid", handlers.HandleDefaultValid) - c.Server.GET("/login", handlers.HandleLoginInitial) - c.Server.GET("/login/:handle", handlers.HandleLoginStart) - c.Server.POST("/login/:handle/check", handlers.HandleLoginCheck) - c.Server.POST("/login/:handle/finish", handlers.HandleLoginFinish) + // Login + c.GET("/login", handlers.HandleLoginInitial) + c.GET("/login/:handle", handlers.HandleLoginStart) + c.POST("/login/:handle/check", handlers.HandleLoginCheck) + c.POST("/login/:handle/finish", handlers.HandleLoginFinish) - c.Server.GET("/register", handlers.HandleRegisterInitial) - c.Server.GET("/register/:handle", handlers.HandleRegisterStart) - c.Server.POST("/register/:handle/check", handlers.HandleRegisterCheck) - c.Server.POST("/register/:handle/finish", handlers.HandleRegisterFinish) + // Register + c.GET("/register", handlers.HandleRegisterInitial) + c.GET("/register/:handle", handlers.HandleRegisterStart) + c.POST("/register/:handle/check", handlers.HandleRegisterCheck) + c.POST("/register/:handle/finish", handlers.HandleRegisterFinish) }