Files
bjoern-m 601ffaae92 Introduce Flowpilot - integration (#1532)
This pull request introduces the new Flowpilot system along with several new features and various improvements. The key enhancements include configurable authorization, registration, and profile flows, as well as the ability to enable and disable user identifiers (e.g., email addresses and usernames) and login methods.

---------

Co-authored-by: Frederic Jahn <frederic.jahn@hanko.io>
Co-authored-by: Lennart Fleischmann <lennart.fleischmann@hanko.io>
Co-authored-by: lfleischmann <67686424+lfleischmann@users.noreply.github.com>
Co-authored-by: merlindru <hello@merlindru.com>
2024-08-06 16:07:29 +02:00

39 lines
1.2 KiB
Go

package shared
import (
"github.com/gobuffalo/pop/v6"
"github.com/labstack/echo/v4"
"github.com/sethvargo/go-limiter"
auditlog "github.com/teamhanko/hanko/backend/audit_log"
"github.com/teamhanko/hanko/backend/config"
"github.com/teamhanko/hanko/backend/ee/saml"
"github.com/teamhanko/hanko/backend/flow_api/services"
"github.com/teamhanko/hanko/backend/flowpilot"
"github.com/teamhanko/hanko/backend/mapper"
"github.com/teamhanko/hanko/backend/persistence"
"github.com/teamhanko/hanko/backend/session"
)
type Dependencies struct {
Cfg config.Config
HttpContext echo.Context
PasscodeService services.Passcode
PasswordService services.Password
WebauthnService services.WebauthnService
SamlService saml.Service
Persister persistence.Persister
SessionManager session.Manager
PasscodeRateLimiter limiter.Store
PasswordRateLimiter limiter.Store
TokenExchangeRateLimiter limiter.Store
Tx *pop.Connection
AuthenticatorMetadata mapper.AuthenticatorMetadata
AuditLogger auditlog.Logger
}
type Action struct{}
func (a *Action) GetDeps(c flowpilot.Context) *Dependencies {
return c.Get("deps").(*Dependencies)
}