mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-12 11:04:25 +00:00
43 lines
737 B
Go
43 lines
737 B
Go
|
package ui
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"net/http"
|
||
|
|
||
|
http_util "github.com/caos/zitadel/internal/api/http"
|
||
|
"github.com/caos/zitadel/internal/ui/console"
|
||
|
"github.com/caos/zitadel/internal/ui/login"
|
||
|
)
|
||
|
|
||
|
const (
|
||
|
LoginHandler = "/login"
|
||
|
ConsoleHandler = "/console"
|
||
|
uiname = "ui"
|
||
|
)
|
||
|
|
||
|
type Config struct {
|
||
|
Port string
|
||
|
Login login.Config
|
||
|
Console console.Config
|
||
|
}
|
||
|
|
||
|
type UI struct {
|
||
|
port string
|
||
|
mux *http.ServeMux
|
||
|
}
|
||
|
|
||
|
func Create(config Config) *UI {
|
||
|
return &UI{
|
||
|
port: config.Port,
|
||
|
mux: http.NewServeMux(),
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (u *UI) RegisterHandler(prefix string, handler http.Handler) {
|
||
|
http_util.RegisterHandler(u.mux, prefix, handler)
|
||
|
}
|
||
|
|
||
|
func (u *UI) Start(ctx context.Context) {
|
||
|
http_util.Serve(ctx, u.mux, u.port, uiname)
|
||
|
}
|