mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-03 18:01:39 +00:00
* **refactor: remove nebula static file serving** * **feat: Add login, register, and authorize sections** * **feat: implement registration form UI** * **refactor: abstract template rendering to ctx module** * **feat: add deployment target for Highway gateway** * **feat: migrate Highway gateway to Cloudflare Workers** * **feat: refactor nebula routes to components** * **chore(deps): remove unused dependencies** * **chore(deps): remove unused dependencies** * **feat: add user and relaying party entities** * **refactor: remove unused imports** * * **feat: add motion scale-in and opacity-in animations** * **refactor: move dwn and orm packages to internal** * **refactor: update imports to use relative paths** * **refactor: rename build targets for clarity** * **feat: add RelayingPartyEntity model** * **refactor: rename creds templates to credentials** * **refactor: remove unused entity model** * **refactor: move models to internal package** * **refactor: move models package to internal/orm** * **feat: implement broadcast channel context** * **feat: remove config upload step** * **feat: remove unused configuration files** * **feat: migrate authentication logic to workers** * **feat: remove cloudflared dependency** * **refactor: move client related routes to 'routes/client.go'** * **feat: implement macaroon middleware** * **refactor: move fetch package to cmd/motr** * **feat: remove auth and grant endpoints** * **docs: add conceptual descriptions to did module** <sub><a href="https://huly.app/guest/sonrhq?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsaW5rSWQiOiI2NzA4MTIyNmM3ZDZhNTZhOGY4ZGFjOTciLCJndWVzdCI6InRydWUiLCJlbWFpbCI6IiNndWVzdEBoYy5lbmdpbmVlcmluZyIsIndvcmtzcGFjZSI6InctcHJhZC1zb25yaHEtNjVlZjcyZDQtY2UyOGQ0ODJjNi00ZWY4ZDAifQ.j-w5jk5Ji-0vCkaxVaK8pDMIOhRsXmG7o6oZictoHYE">Huly®: <b>ENG-1057</b></a></sub>
85 lines
3.0 KiB
Go
85 lines
3.0 KiB
Go
package handlers
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
|
|
"github.com/go-webauthn/webauthn/protocol"
|
|
"github.com/labstack/echo/v4"
|
|
)
|
|
|
|
// ╭───────────────────────────────────────────────────────────╮
|
|
// │ Login Handlers │
|
|
// ╰───────────────────────────────────────────────────────────╯
|
|
|
|
func LoginSubjectStart(e echo.Context) error {
|
|
return e.JSON(200, "HandleCredentialAssertion")
|
|
}
|
|
|
|
func LoginSubjectCheck(e echo.Context) error {
|
|
return e.JSON(200, "HandleCredentialAssertion")
|
|
}
|
|
|
|
func LoginSubjectFinish(e echo.Context) error {
|
|
return e.JSON(200, "HandleCredentialAssertion")
|
|
}
|
|
|
|
// ╭───────────────────────────────────────────────────────────╮
|
|
// │ Register Handlers │
|
|
// ╰───────────────────────────────────────────────────────────╯
|
|
|
|
func RegisterSubjectCheck(e echo.Context) error {
|
|
credentialID := e.FormValue("credentialID")
|
|
return e.JSON(200, credentialID)
|
|
}
|
|
|
|
func RegisterSubjectStart(e echo.Context) error {
|
|
// Get the serialized credential data from the form
|
|
credentialDataJSON := e.FormValue("credentialData")
|
|
|
|
// Deserialize the JSON into a temporary struct
|
|
var ccr protocol.CredentialCreationResponse
|
|
err := json.Unmarshal([]byte(credentialDataJSON), &ccr)
|
|
if err != nil {
|
|
return e.JSON(500, err.Error())
|
|
}
|
|
//
|
|
// // Parse the CredentialCreationResponse
|
|
// parsedData, err := ccr.Parse()
|
|
// if err != nil {
|
|
// return e.JSON(500, err.Error())
|
|
// }
|
|
//
|
|
// // Create the Credential
|
|
// // credential := orm.NewCredential(parsedData, e.Request().Host, "")
|
|
//
|
|
// // Set additional fields
|
|
// credential.Controller = "" // Set this to the appropriate controller value
|
|
return e.JSON(200, fmt.Sprintf("REGISTER: %s", string(ccr.ID)))
|
|
}
|
|
|
|
func RegisterSubjectFinish(e echo.Context) error {
|
|
// Get the serialized credential data from the form
|
|
credentialDataJSON := e.FormValue("credentialData")
|
|
|
|
// Deserialize the JSON into a temporary struct
|
|
var ccr protocol.CredentialCreationResponse
|
|
err := json.Unmarshal([]byte(credentialDataJSON), &ccr)
|
|
if err != nil {
|
|
return e.JSON(500, err.Error())
|
|
}
|
|
//
|
|
// // Parse the CredentialCreationResponse
|
|
// parsedData, err := ccr.Parse()
|
|
// if err != nil {
|
|
// return e.JSON(500, err.Error())
|
|
// }
|
|
//
|
|
// // Create the Credential
|
|
// // credential := orm.NewCredential(parsedData, e.Request().Host, "")
|
|
//
|
|
// // Set additional fields
|
|
// credential.Controller = "" // Set this to the appropriate controller value
|
|
return e.JSON(200, fmt.Sprintf("REGISTER: %s", string(ccr.ID)))
|
|
}
|