mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 01:37:31 +00:00
fix: change to repository event types and removed unused code (#3386)
* fix: change to repository event types and removed unused code * some fixes * remove unused code
This commit is contained in:
@@ -4,9 +4,9 @@ import (
|
||||
"encoding/json"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type Address struct {
|
||||
@@ -39,28 +39,6 @@ func (a *Address) Changes(changed *Address) map[string]interface{} {
|
||||
return changes
|
||||
}
|
||||
|
||||
func AddressFromModel(address *model.Address) *Address {
|
||||
return &Address{
|
||||
ObjectRoot: address.ObjectRoot,
|
||||
Country: address.Country,
|
||||
Locality: address.Locality,
|
||||
PostalCode: address.PostalCode,
|
||||
Region: address.Region,
|
||||
StreetAddress: address.StreetAddress,
|
||||
}
|
||||
}
|
||||
|
||||
func AddressToModel(address *Address) *model.Address {
|
||||
return &model.Address{
|
||||
ObjectRoot: address.ObjectRoot,
|
||||
Country: address.Country,
|
||||
Locality: address.Locality,
|
||||
PostalCode: address.PostalCode,
|
||||
Region: address.Region,
|
||||
StreetAddress: address.StreetAddress,
|
||||
}
|
||||
}
|
||||
|
||||
func (u *Human) appendUserAddressChangedEvent(event *es_models.Event) error {
|
||||
if u.Address == nil {
|
||||
u.Address = new(Address)
|
||||
|
@@ -2,12 +2,12 @@ package model
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"github.com/caos/logging"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"net"
|
||||
|
||||
"github.com/caos/zitadel/internal/auth_request/model"
|
||||
"github.com/caos/logging"
|
||||
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
)
|
||||
|
||||
type AuthRequest struct {
|
||||
@@ -17,51 +17,12 @@ type AuthRequest struct {
|
||||
*BrowserInfo
|
||||
}
|
||||
|
||||
func AuthRequestFromModel(request *model.AuthRequest) *AuthRequest {
|
||||
req := &AuthRequest{
|
||||
ID: request.ID,
|
||||
UserAgentID: request.AgentID,
|
||||
SelectedIDPConfigID: request.SelectedIDPConfigID,
|
||||
}
|
||||
if request.BrowserInfo != nil {
|
||||
req.BrowserInfo = BrowserInfoFromModel(request.BrowserInfo)
|
||||
}
|
||||
return req
|
||||
}
|
||||
|
||||
func AuthRequestToModel(request *AuthRequest) *model.AuthRequest {
|
||||
req := &model.AuthRequest{
|
||||
ID: request.ID,
|
||||
AgentID: request.UserAgentID,
|
||||
SelectedIDPConfigID: request.SelectedIDPConfigID,
|
||||
}
|
||||
if request.BrowserInfo != nil {
|
||||
req.BrowserInfo = BrowserInfoToModel(request.BrowserInfo)
|
||||
}
|
||||
return req
|
||||
}
|
||||
|
||||
type BrowserInfo struct {
|
||||
UserAgent string `json:"userAgent,omitempty"`
|
||||
AcceptLanguage string `json:"acceptLanguage,omitempty"`
|
||||
RemoteIP net.IP `json:"remoteIP,omitempty"`
|
||||
}
|
||||
|
||||
func BrowserInfoFromModel(info *model.BrowserInfo) *BrowserInfo {
|
||||
return &BrowserInfo{
|
||||
UserAgent: info.UserAgent,
|
||||
AcceptLanguage: info.AcceptLanguage,
|
||||
RemoteIP: info.RemoteIP,
|
||||
}
|
||||
}
|
||||
|
||||
func BrowserInfoToModel(info *BrowserInfo) *model.BrowserInfo {
|
||||
return &model.BrowserInfo{
|
||||
UserAgent: info.UserAgent,
|
||||
AcceptLanguage: info.AcceptLanguage,
|
||||
RemoteIP: info.RemoteIP,
|
||||
}
|
||||
}
|
||||
func (a *AuthRequest) SetData(event *es_models.Event) error {
|
||||
if err := json.Unmarshal(event.Data, a); err != nil {
|
||||
logging.Log("EVEN-T5df6").WithError(err).Error("could not unmarshal event data")
|
||||
|
@@ -5,10 +5,10 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/crypto"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type Email struct {
|
||||
@@ -33,41 +33,6 @@ func (e *Email) Changes(changed *Email) map[string]interface{} {
|
||||
return changes
|
||||
}
|
||||
|
||||
func EmailFromModel(email *model.Email) *Email {
|
||||
return &Email{
|
||||
ObjectRoot: email.ObjectRoot,
|
||||
EmailAddress: email.EmailAddress,
|
||||
IsEmailVerified: email.IsEmailVerified,
|
||||
}
|
||||
}
|
||||
|
||||
func EmailToModel(email *Email) *model.Email {
|
||||
return &model.Email{
|
||||
ObjectRoot: email.ObjectRoot,
|
||||
EmailAddress: email.EmailAddress,
|
||||
IsEmailVerified: email.IsEmailVerified,
|
||||
}
|
||||
}
|
||||
|
||||
func EmailCodeFromModel(code *model.EmailCode) *EmailCode {
|
||||
if code == nil {
|
||||
return nil
|
||||
}
|
||||
return &EmailCode{
|
||||
ObjectRoot: code.ObjectRoot,
|
||||
Expiry: code.Expiry,
|
||||
Code: code.Code,
|
||||
}
|
||||
}
|
||||
|
||||
func EmailCodeToModel(code *EmailCode) *model.EmailCode {
|
||||
return &model.EmailCode{
|
||||
ObjectRoot: code.ObjectRoot,
|
||||
Expiry: code.Expiry,
|
||||
Code: code.Code,
|
||||
}
|
||||
}
|
||||
|
||||
func (u *Human) appendUserEmailChangedEvent(event *es_models.Event) error {
|
||||
u.Email = new(Email)
|
||||
return u.Email.setData(event)
|
||||
|
@@ -2,10 +2,11 @@ package model
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type ExternalIDP struct {
|
||||
@@ -24,43 +25,6 @@ func GetExternalIDP(idps []*ExternalIDP, id string) (int, *ExternalIDP) {
|
||||
}
|
||||
return -1, nil
|
||||
}
|
||||
|
||||
func ExternalIDPsToModel(externalIDPs []*ExternalIDP) []*model.ExternalIDP {
|
||||
convertedIDPs := make([]*model.ExternalIDP, len(externalIDPs))
|
||||
for i, m := range externalIDPs {
|
||||
convertedIDPs[i] = ExternalIDPToModel(m)
|
||||
}
|
||||
return convertedIDPs
|
||||
}
|
||||
|
||||
func ExternalIDPsFromModel(externalIDPs []*model.ExternalIDP) []*ExternalIDP {
|
||||
convertedIDPs := make([]*ExternalIDP, len(externalIDPs))
|
||||
for i, m := range externalIDPs {
|
||||
convertedIDPs[i] = ExternalIDPFromModel(m)
|
||||
}
|
||||
return convertedIDPs
|
||||
}
|
||||
|
||||
func ExternalIDPFromModel(idp *model.ExternalIDP) *ExternalIDP {
|
||||
if idp == nil {
|
||||
return nil
|
||||
}
|
||||
return &ExternalIDP{
|
||||
ObjectRoot: idp.ObjectRoot,
|
||||
IDPConfigID: idp.IDPConfigID,
|
||||
UserID: idp.UserID,
|
||||
DisplayName: idp.DisplayName,
|
||||
}
|
||||
}
|
||||
|
||||
func ExternalIDPToModel(idp *ExternalIDP) *model.ExternalIDP {
|
||||
return &model.ExternalIDP{
|
||||
ObjectRoot: idp.ObjectRoot,
|
||||
IDPConfigID: idp.IDPConfigID,
|
||||
UserID: idp.UserID,
|
||||
}
|
||||
}
|
||||
|
||||
func (u *Human) appendExternalIDPAddedEvent(event *es_models.Event) error {
|
||||
idp := new(ExternalIDP)
|
||||
err := idp.setData(event)
|
||||
|
@@ -5,10 +5,10 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/crypto"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type Password struct {
|
||||
@@ -31,42 +31,6 @@ type PasswordChange struct {
|
||||
UserAgentID string `json:"userAgentID,omitempty"`
|
||||
}
|
||||
|
||||
func PasswordFromModel(password *model.Password) *Password {
|
||||
return &Password{
|
||||
ObjectRoot: password.ObjectRoot,
|
||||
Secret: password.SecretCrypto,
|
||||
ChangeRequired: password.ChangeRequired,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordToModel(password *Password) *model.Password {
|
||||
return &model.Password{
|
||||
ObjectRoot: password.ObjectRoot,
|
||||
SecretCrypto: password.Secret,
|
||||
ChangeRequired: password.ChangeRequired,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordCodeToModel(code *PasswordCode) *model.PasswordCode {
|
||||
return &model.PasswordCode{
|
||||
ObjectRoot: code.ObjectRoot,
|
||||
Expiry: code.Expiry,
|
||||
Code: code.Code,
|
||||
NotificationType: model.NotificationType(code.NotificationType),
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordChangeFromModel(password *model.Password, userAgentID string) *PasswordChange {
|
||||
return &PasswordChange{
|
||||
Password: Password{
|
||||
ObjectRoot: password.ObjectRoot,
|
||||
Secret: password.SecretCrypto,
|
||||
ChangeRequired: password.ChangeRequired,
|
||||
},
|
||||
UserAgentID: userAgentID,
|
||||
}
|
||||
}
|
||||
|
||||
func (u *Human) appendUserPasswordChangedEvent(event *es_models.Event) error {
|
||||
u.Password = new(Password)
|
||||
err := u.Password.setData(event)
|
||||
|
@@ -5,10 +5,10 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/crypto"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type Phone struct {
|
||||
@@ -33,41 +33,6 @@ func (p *Phone) Changes(changed *Phone) map[string]interface{} {
|
||||
return changes
|
||||
}
|
||||
|
||||
func PhoneFromModel(phone *model.Phone) *Phone {
|
||||
return &Phone{
|
||||
ObjectRoot: phone.ObjectRoot,
|
||||
PhoneNumber: phone.PhoneNumber,
|
||||
IsPhoneVerified: phone.IsPhoneVerified,
|
||||
}
|
||||
}
|
||||
|
||||
func PhoneToModel(phone *Phone) *model.Phone {
|
||||
return &model.Phone{
|
||||
ObjectRoot: phone.ObjectRoot,
|
||||
PhoneNumber: phone.PhoneNumber,
|
||||
IsPhoneVerified: phone.IsPhoneVerified,
|
||||
}
|
||||
}
|
||||
|
||||
func PhoneCodeFromModel(code *model.PhoneCode) *PhoneCode {
|
||||
if code == nil {
|
||||
return nil
|
||||
}
|
||||
return &PhoneCode{
|
||||
ObjectRoot: code.ObjectRoot,
|
||||
Expiry: code.Expiry,
|
||||
Code: code.Code,
|
||||
}
|
||||
}
|
||||
|
||||
func PhoneCodeToModel(code *PhoneCode) *model.PhoneCode {
|
||||
return &model.PhoneCode{
|
||||
ObjectRoot: code.ObjectRoot,
|
||||
Expiry: code.Expiry,
|
||||
Code: code.Code,
|
||||
}
|
||||
}
|
||||
|
||||
func (u *Human) appendUserPhoneChangedEvent(event *es_models.Event) error {
|
||||
u.Phone = new(Phone)
|
||||
return u.Phone.setData(event)
|
||||
|
@@ -6,7 +6,6 @@ import (
|
||||
"golang.org/x/text/language"
|
||||
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
type Profile struct {
|
||||
@@ -43,30 +42,6 @@ func (p *Profile) Changes(changed *Profile) map[string]interface{} {
|
||||
return changes
|
||||
}
|
||||
|
||||
func ProfileFromModel(profile *model.Profile) *Profile {
|
||||
return &Profile{
|
||||
ObjectRoot: profile.ObjectRoot,
|
||||
FirstName: profile.FirstName,
|
||||
LastName: profile.LastName,
|
||||
NickName: profile.NickName,
|
||||
DisplayName: profile.DisplayName,
|
||||
PreferredLanguage: LanguageTag(profile.PreferredLanguage),
|
||||
Gender: int32(profile.Gender),
|
||||
}
|
||||
}
|
||||
|
||||
func ProfileToModel(profile *Profile) *model.Profile {
|
||||
return &model.Profile{
|
||||
ObjectRoot: profile.ObjectRoot,
|
||||
FirstName: profile.FirstName,
|
||||
LastName: profile.LastName,
|
||||
NickName: profile.NickName,
|
||||
DisplayName: profile.DisplayName,
|
||||
PreferredLanguage: language.Tag(profile.PreferredLanguage),
|
||||
Gender: model.Gender(profile.Gender),
|
||||
}
|
||||
}
|
||||
|
||||
type LanguageTag language.Tag
|
||||
|
||||
func (t *LanguageTag) UnmarshalJSON(data []byte) error {
|
||||
|
@@ -5,9 +5,11 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
"github.com/caos/zitadel/internal/eventstore"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
user_repo "github.com/caos/zitadel/internal/repository/user"
|
||||
)
|
||||
|
||||
type Token struct {
|
||||
@@ -22,32 +24,6 @@ type Token struct {
|
||||
PreferredLanguage string `json:"preferredLanguage" gorm:"column:preferred_language"`
|
||||
}
|
||||
|
||||
func TokenFromModel(token *model.Token) *Token {
|
||||
return &Token{
|
||||
ObjectRoot: token.ObjectRoot,
|
||||
TokenID: token.TokenID,
|
||||
ApplicationID: token.ApplicationID,
|
||||
UserAgentID: token.UserAgentID,
|
||||
Audience: token.Audience,
|
||||
Scopes: token.Scopes,
|
||||
Expiration: token.Expiration,
|
||||
PreferredLanguage: token.PreferredLanguage,
|
||||
}
|
||||
}
|
||||
|
||||
func TokenToModel(token *Token) *model.Token {
|
||||
return &model.Token{
|
||||
ObjectRoot: token.ObjectRoot,
|
||||
TokenID: token.TokenID,
|
||||
ApplicationID: token.ApplicationID,
|
||||
UserAgentID: token.UserAgentID,
|
||||
Audience: token.Audience,
|
||||
Scopes: token.Scopes,
|
||||
Expiration: token.Expiration,
|
||||
PreferredLanguage: token.PreferredLanguage,
|
||||
}
|
||||
}
|
||||
|
||||
func (t *Token) AppendEvents(events ...*es_models.Event) error {
|
||||
for _, event := range events {
|
||||
if err := t.AppendEvent(event); err != nil {
|
||||
@@ -59,8 +35,8 @@ func (t *Token) AppendEvents(events ...*es_models.Event) error {
|
||||
}
|
||||
|
||||
func (t *Token) AppendEvent(event *es_models.Event) error {
|
||||
switch event.Type {
|
||||
case UserTokenAdded:
|
||||
switch eventstore.EventType(event.Type) {
|
||||
case user_repo.UserTokenAddedType:
|
||||
err := t.setData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
|
@@ -1,154 +0,0 @@
|
||||
package model
|
||||
|
||||
import "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
|
||||
//aggregates
|
||||
const (
|
||||
UserAggregate models.AggregateType = "user"
|
||||
UserUserNameAggregate models.AggregateType = "user.username"
|
||||
UserExternalIDPAggregate models.AggregateType = "user.human.externalidp"
|
||||
)
|
||||
|
||||
// the following consts are for user v1 events
|
||||
const (
|
||||
UserAdded models.EventType = "user.added"
|
||||
UserRegistered models.EventType = "user.selfregistered"
|
||||
InitializedUserCodeAdded models.EventType = "user.initialization.code.added"
|
||||
InitializedUserCodeSent models.EventType = "user.initialization.code.sent"
|
||||
InitializedUserCheckSucceeded models.EventType = "user.initialization.check.succeeded"
|
||||
InitializedUserCheckFailed models.EventType = "user.initialization.check.failed"
|
||||
|
||||
UserUserNameReserved models.EventType = "user.username.reserved"
|
||||
UserUserNameReleased models.EventType = "user.username.released"
|
||||
|
||||
UserPasswordChanged models.EventType = "user.password.changed"
|
||||
UserPasswordCodeAdded models.EventType = "user.password.code.added"
|
||||
UserPasswordCodeSent models.EventType = "user.password.code.sent"
|
||||
UserPasswordCheckSucceeded models.EventType = "user.password.check.succeeded"
|
||||
UserPasswordCheckFailed models.EventType = "user.password.check.failed"
|
||||
|
||||
UserEmailChanged models.EventType = "user.email.changed"
|
||||
UserEmailVerified models.EventType = "user.email.verified"
|
||||
UserEmailVerificationFailed models.EventType = "user.email.verification.failed"
|
||||
UserEmailCodeAdded models.EventType = "user.email.code.added"
|
||||
UserEmailCodeSent models.EventType = "user.email.code.sent"
|
||||
|
||||
UserPhoneChanged models.EventType = "user.phone.changed"
|
||||
UserPhoneRemoved models.EventType = "user.phone.removed"
|
||||
UserPhoneVerified models.EventType = "user.phone.verified"
|
||||
UserPhoneVerificationFailed models.EventType = "user.phone.verification.failed"
|
||||
UserPhoneCodeAdded models.EventType = "user.phone.code.added"
|
||||
UserPhoneCodeSent models.EventType = "user.phone.code.sent"
|
||||
|
||||
UserProfileChanged models.EventType = "user.profile.changed"
|
||||
UserAddressChanged models.EventType = "user.address.changed"
|
||||
UserUserNameChanged models.EventType = "user.username.changed"
|
||||
|
||||
MFAOTPAdded models.EventType = "user.mfa.otp.added"
|
||||
MFAOTPVerified models.EventType = "user.mfa.otp.verified"
|
||||
MFAOTPRemoved models.EventType = "user.mfa.otp.removed"
|
||||
MFAOTPCheckSucceeded models.EventType = "user.mfa.otp.check.succeeded"
|
||||
MFAOTPCheckFailed models.EventType = "user.mfa.otp.check.failed"
|
||||
MFAInitSkipped models.EventType = "user.mfa.init.skipped"
|
||||
|
||||
SignedOut models.EventType = "user.signed.out"
|
||||
)
|
||||
|
||||
//the following consts are for user(v2)
|
||||
const (
|
||||
UserNameReserved models.EventType = "user.username.reserved"
|
||||
UserNameReleased models.EventType = "user.username.released"
|
||||
|
||||
UserLocked models.EventType = "user.locked"
|
||||
UserUnlocked models.EventType = "user.unlocked"
|
||||
UserDeactivated models.EventType = "user.deactivated"
|
||||
UserReactivated models.EventType = "user.reactivated"
|
||||
UserRemoved models.EventType = "user.removed"
|
||||
|
||||
UserTokenAdded models.EventType = "user.token.added"
|
||||
|
||||
DomainClaimed models.EventType = "user.domain.claimed"
|
||||
DomainClaimedSent models.EventType = "user.domain.claimed.sent"
|
||||
|
||||
UserMetadataSet models.EventType = "user.metadata.set"
|
||||
UserMetadataRemoved models.EventType = "user.metadata.removed"
|
||||
UserMetadataRemovedAll models.EventType = "user.metadata.removed.all"
|
||||
)
|
||||
|
||||
// the following consts are for user(v2).human
|
||||
const (
|
||||
HumanAdded models.EventType = "user.human.added"
|
||||
HumanRegistered models.EventType = "user.human.selfregistered"
|
||||
InitializedHumanCodeAdded models.EventType = "user.human.initialization.code.added"
|
||||
InitializedHumanCodeSent models.EventType = "user.human.initialization.code.sent"
|
||||
InitializedHumanCheckSucceeded models.EventType = "user.human.initialization.check.succeeded"
|
||||
InitializedHumanCheckFailed models.EventType = "user.human.initialization.check.failed"
|
||||
|
||||
HumanPasswordChanged models.EventType = "user.human.password.changed"
|
||||
HumanPasswordCodeAdded models.EventType = "user.human.password.code.added"
|
||||
HumanPasswordCodeSent models.EventType = "user.human.password.code.sent"
|
||||
HumanPasswordCheckSucceeded models.EventType = "user.human.password.check.succeeded"
|
||||
HumanPasswordCheckFailed models.EventType = "user.human.password.check.failed"
|
||||
|
||||
HumanExternalLoginCheckSucceeded models.EventType = "user.human.externallogin.check.succeeded"
|
||||
|
||||
HumanExternalIDPReserved models.EventType = "user.human.externalidp.reserved"
|
||||
HumanExternalIDPReleased models.EventType = "user.human.externalidp.released"
|
||||
|
||||
HumanExternalIDPAdded models.EventType = "user.human.externalidp.added"
|
||||
HumanExternalIDPRemoved models.EventType = "user.human.externalidp.removed"
|
||||
HumanExternalIDPCascadeRemoved models.EventType = "user.human.externalidp.cascade.removed"
|
||||
|
||||
HumanAvatarAdded models.EventType = "user.human.avatar.added"
|
||||
HumanAvatarRemoved models.EventType = "user.human.avatar.removed"
|
||||
|
||||
HumanEmailChanged models.EventType = "user.human.email.changed"
|
||||
HumanEmailVerified models.EventType = "user.human.email.verified"
|
||||
HumanEmailVerificationFailed models.EventType = "user.human.email.verification.failed"
|
||||
HumanEmailCodeAdded models.EventType = "user.human.email.code.added"
|
||||
HumanEmailCodeSent models.EventType = "user.human.email.code.sent"
|
||||
|
||||
HumanPhoneChanged models.EventType = "user.human.phone.changed"
|
||||
HumanPhoneRemoved models.EventType = "user.human.phone.removed"
|
||||
HumanPhoneVerified models.EventType = "user.human.phone.verified"
|
||||
HumanPhoneVerificationFailed models.EventType = "user.human.phone.verification.failed"
|
||||
HumanPhoneCodeAdded models.EventType = "user.human.phone.code.added"
|
||||
HumanPhoneCodeSent models.EventType = "user.human.phone.code.sent"
|
||||
|
||||
HumanProfileChanged models.EventType = "user.human.profile.changed"
|
||||
HumanAddressChanged models.EventType = "user.human.address.changed"
|
||||
|
||||
HumanMFAOTPAdded models.EventType = "user.human.mfa.otp.added"
|
||||
HumanMFAOTPVerified models.EventType = "user.human.mfa.otp.verified"
|
||||
HumanMFAOTPRemoved models.EventType = "user.human.mfa.otp.removed"
|
||||
HumanMFAOTPCheckSucceeded models.EventType = "user.human.mfa.otp.check.succeeded"
|
||||
HumanMFAOTPCheckFailed models.EventType = "user.human.mfa.otp.check.failed"
|
||||
HumanMFAInitSkipped models.EventType = "user.human.mfa.init.skipped"
|
||||
|
||||
HumanMFAU2FTokenAdded models.EventType = "user.human.mfa.u2f.token.added"
|
||||
HumanMFAU2FTokenVerified models.EventType = "user.human.mfa.u2f.token.verified"
|
||||
HumanMFAU2FTokenSignCountChanged models.EventType = "user.human.mfa.u2f.token.signcount.changed"
|
||||
HumanMFAU2FTokenRemoved models.EventType = "user.human.mfa.u2f.token.removed"
|
||||
HumanMFAU2FTokenBeginLogin models.EventType = "user.human.mfa.u2f.token.begin.login"
|
||||
HumanMFAU2FTokenCheckSucceeded models.EventType = "user.human.mfa.u2f.token.check.succeeded"
|
||||
HumanMFAU2FTokenCheckFailed models.EventType = "user.human.mfa.u2f.token.check.failed"
|
||||
|
||||
HumanPasswordlessTokenAdded models.EventType = "user.human.passwordless.token.added"
|
||||
HumanPasswordlessTokenVerified models.EventType = "user.human.passwordless.token.verified"
|
||||
HumanPasswordlessTokenChangeSignCount models.EventType = "user.human.passwordless.token.signcount.changed"
|
||||
HumanPasswordlessTokenRemoved models.EventType = "user.human.passwordless.token.removed"
|
||||
HumanPasswordlessTokenBeginLogin models.EventType = "user.human.passwordless.token.begin.login"
|
||||
HumanPasswordlessTokenCheckSucceeded models.EventType = "user.human.passwordless.token.check.succeeded"
|
||||
HumanPasswordlessTokenCheckFailed models.EventType = "user.human.passwordless.token.check.failed"
|
||||
|
||||
HumanSignedOut models.EventType = "user.human.signed.out"
|
||||
)
|
||||
|
||||
// the following consts are for user(v2).machines
|
||||
const (
|
||||
MachineAdded models.EventType = "user.machine.added"
|
||||
MachineChanged models.EventType = "user.machine.changed"
|
||||
|
||||
MachineKeyAdded models.EventType = "user.machine.key.added"
|
||||
MachineKeyRemoved models.EventType = "user.machine.key.removed"
|
||||
)
|
@@ -5,9 +5,12 @@ import (
|
||||
"strings"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/errors"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
"github.com/caos/zitadel/internal/eventstore"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/repository/user"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
@@ -37,28 +40,28 @@ func (u *User) AppendEvents(events ...*es_models.Event) error {
|
||||
func (u *User) AppendEvent(event *es_models.Event) error {
|
||||
u.ObjectRoot.AppendEvent(event)
|
||||
|
||||
switch event.Type {
|
||||
case UserAdded,
|
||||
HumanAdded,
|
||||
MachineAdded,
|
||||
UserRegistered,
|
||||
HumanRegistered,
|
||||
UserProfileChanged,
|
||||
DomainClaimed,
|
||||
UserUserNameChanged:
|
||||
switch eventstore.EventType(event.Type) {
|
||||
case user.UserV1AddedType,
|
||||
user.HumanAddedType,
|
||||
user.MachineAddedEventType,
|
||||
user.UserV1RegisteredType,
|
||||
user.HumanRegisteredType,
|
||||
user.UserV1ProfileChangedType,
|
||||
user.UserDomainClaimedType,
|
||||
user.UserUserNameChangedType:
|
||||
err := u.setData(event)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
case UserDeactivated:
|
||||
case user.UserDeactivatedType:
|
||||
u.appendDeactivatedEvent()
|
||||
case UserReactivated:
|
||||
case user.UserReactivatedType:
|
||||
u.appendReactivatedEvent()
|
||||
case UserLocked:
|
||||
case user.UserLockedType:
|
||||
u.appendLockedEvent()
|
||||
case UserUnlocked:
|
||||
case user.UserUnlockedType:
|
||||
u.appendUnlockedEvent()
|
||||
case UserRemoved:
|
||||
case user.UserRemovedType:
|
||||
u.appendRemovedEvent()
|
||||
}
|
||||
|
||||
|
@@ -5,9 +5,12 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/crypto"
|
||||
caos_errs "github.com/caos/zitadel/internal/errors"
|
||||
"github.com/caos/zitadel/internal/eventstore"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
"github.com/caos/zitadel/internal/repository/user"
|
||||
"github.com/caos/zitadel/internal/user/model"
|
||||
)
|
||||
|
||||
@@ -47,79 +50,79 @@ func (p *Human) AppendEvents(events ...*es_models.Event) error {
|
||||
}
|
||||
|
||||
func (h *Human) AppendEvent(event *es_models.Event) (err error) {
|
||||
switch event.Type {
|
||||
case UserAdded,
|
||||
UserRegistered,
|
||||
UserProfileChanged,
|
||||
HumanAdded,
|
||||
HumanRegistered,
|
||||
HumanProfileChanged:
|
||||
switch eventstore.EventType(event.Type) {
|
||||
case user.UserV1AddedType,
|
||||
user.UserV1RegisteredType,
|
||||
user.UserV1ProfileChangedType,
|
||||
user.HumanAddedType,
|
||||
user.HumanRegisteredType,
|
||||
user.HumanProfileChangedType:
|
||||
err = h.setData(event)
|
||||
case InitializedUserCodeAdded,
|
||||
InitializedHumanCodeAdded:
|
||||
case user.UserV1InitialCodeAddedType,
|
||||
user.HumanInitialCodeAddedType:
|
||||
err = h.appendInitUsercodeCreatedEvent(event)
|
||||
case UserPasswordChanged,
|
||||
HumanPasswordChanged:
|
||||
case user.UserV1PasswordChangedType,
|
||||
user.HumanPasswordChangedType:
|
||||
err = h.appendUserPasswordChangedEvent(event)
|
||||
case UserPasswordCodeAdded,
|
||||
HumanPasswordCodeAdded:
|
||||
case user.UserV1PasswordCodeAddedType,
|
||||
user.HumanPasswordCodeAddedType:
|
||||
err = h.appendPasswordSetRequestedEvent(event)
|
||||
case UserEmailChanged,
|
||||
HumanEmailChanged:
|
||||
case user.UserV1EmailChangedType,
|
||||
user.HumanEmailChangedType:
|
||||
err = h.appendUserEmailChangedEvent(event)
|
||||
case UserEmailCodeAdded,
|
||||
HumanEmailCodeAdded:
|
||||
case user.UserV1EmailCodeAddedType,
|
||||
user.HumanEmailCodeAddedType:
|
||||
err = h.appendUserEmailCodeAddedEvent(event)
|
||||
case UserEmailVerified,
|
||||
HumanEmailVerified:
|
||||
case user.UserV1EmailVerifiedType,
|
||||
user.HumanEmailVerifiedType:
|
||||
h.appendUserEmailVerifiedEvent()
|
||||
case UserPhoneChanged,
|
||||
HumanPhoneChanged:
|
||||
case user.UserV1PhoneChangedType,
|
||||
user.HumanPhoneChangedType:
|
||||
err = h.appendUserPhoneChangedEvent(event)
|
||||
case UserPhoneCodeAdded,
|
||||
HumanPhoneCodeAdded:
|
||||
case user.UserV1PhoneCodeAddedType,
|
||||
user.HumanPhoneCodeAddedType:
|
||||
err = h.appendUserPhoneCodeAddedEvent(event)
|
||||
case UserPhoneVerified,
|
||||
HumanPhoneVerified:
|
||||
case user.UserV1PhoneVerifiedType,
|
||||
user.HumanPhoneVerifiedType:
|
||||
h.appendUserPhoneVerifiedEvent()
|
||||
case UserPhoneRemoved,
|
||||
HumanPhoneRemoved:
|
||||
case user.UserV1PhoneRemovedType,
|
||||
user.HumanPhoneRemovedType:
|
||||
h.appendUserPhoneRemovedEvent()
|
||||
case UserAddressChanged,
|
||||
HumanAddressChanged:
|
||||
case user.UserV1AddressChangedType,
|
||||
user.HumanAddressChangedType:
|
||||
err = h.appendUserAddressChangedEvent(event)
|
||||
case MFAOTPAdded,
|
||||
HumanMFAOTPAdded:
|
||||
case user.UserV1MFAOTPAddedType,
|
||||
user.HumanMFAOTPAddedType:
|
||||
err = h.appendOTPAddedEvent(event)
|
||||
case MFAOTPVerified,
|
||||
HumanMFAOTPVerified:
|
||||
case user.UserV1MFAOTPVerifiedType,
|
||||
user.HumanMFAOTPVerifiedType:
|
||||
h.appendOTPVerifiedEvent()
|
||||
case MFAOTPRemoved,
|
||||
HumanMFAOTPRemoved:
|
||||
case user.UserV1MFAOTPRemovedType,
|
||||
user.HumanMFAOTPRemovedType:
|
||||
h.appendOTPRemovedEvent()
|
||||
case HumanExternalIDPAdded:
|
||||
case user.UserIDPLinkAddedType:
|
||||
err = h.appendExternalIDPAddedEvent(event)
|
||||
case HumanExternalIDPRemoved, HumanExternalIDPCascadeRemoved:
|
||||
case user.UserIDPLinkRemovedType, user.UserIDPLinkCascadeRemovedType:
|
||||
err = h.appendExternalIDPRemovedEvent(event)
|
||||
case HumanMFAU2FTokenAdded:
|
||||
case user.HumanU2FTokenAddedType:
|
||||
err = h.appendU2FAddedEvent(event)
|
||||
case HumanMFAU2FTokenVerified:
|
||||
case user.HumanU2FTokenVerifiedType:
|
||||
err = h.appendU2FVerifiedEvent(event)
|
||||
case HumanMFAU2FTokenSignCountChanged:
|
||||
case user.HumanU2FTokenSignCountChangedType:
|
||||
err = h.appendU2FChangeSignCountEvent(event)
|
||||
case HumanMFAU2FTokenRemoved:
|
||||
case user.HumanU2FTokenRemovedType:
|
||||
err = h.appendU2FRemovedEvent(event)
|
||||
case HumanPasswordlessTokenAdded:
|
||||
case user.HumanPasswordlessTokenAddedType:
|
||||
err = h.appendPasswordlessAddedEvent(event)
|
||||
case HumanPasswordlessTokenVerified:
|
||||
case user.HumanPasswordlessTokenVerifiedType:
|
||||
err = h.appendPasswordlessVerifiedEvent(event)
|
||||
case HumanPasswordlessTokenChangeSignCount:
|
||||
case user.HumanPasswordlessTokenSignCountChangedType:
|
||||
err = h.appendPasswordlessChangeSignCountEvent(event)
|
||||
case HumanPasswordlessTokenRemoved:
|
||||
case user.HumanPasswordlessTokenRemovedType:
|
||||
err = h.appendPasswordlessRemovedEvent(event)
|
||||
case HumanMFAU2FTokenBeginLogin:
|
||||
case user.HumanU2FTokenBeginLoginType:
|
||||
err = h.appendU2FLoginEvent(event)
|
||||
case HumanPasswordlessTokenBeginLogin:
|
||||
case user.HumanPasswordlessTokenBeginLoginType:
|
||||
err = h.appendPasswordlessLoginEvent(event)
|
||||
}
|
||||
if err != nil {
|
||||
|
@@ -5,8 +5,11 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/caos/logging"
|
||||
|
||||
"github.com/caos/zitadel/internal/errors"
|
||||
"github.com/caos/zitadel/internal/eventstore"
|
||||
es_models "github.com/caos/zitadel/internal/eventstore/v1/models"
|
||||
user_repo "github.com/caos/zitadel/internal/repository/user"
|
||||
)
|
||||
|
||||
type Machine struct {
|
||||
@@ -26,8 +29,8 @@ func (sa *Machine) AppendEvents(events ...*es_models.Event) error {
|
||||
}
|
||||
|
||||
func (sa *Machine) AppendEvent(event *es_models.Event) (err error) {
|
||||
switch event.Type {
|
||||
case MachineAdded, MachineChanged:
|
||||
switch eventstore.EventType(event.Type) {
|
||||
case user_repo.MachineAddedEventType, user_repo.MachineChangedEventType:
|
||||
err = sa.setData(event)
|
||||
}
|
||||
|
||||
@@ -63,13 +66,13 @@ func (key *MachineKey) AppendEvents(events ...*es_models.Event) error {
|
||||
|
||||
func (key *MachineKey) AppendEvent(event *es_models.Event) (err error) {
|
||||
key.ObjectRoot.AppendEvent(event)
|
||||
switch event.Type {
|
||||
case MachineKeyAdded:
|
||||
switch eventstore.EventType(event.Type) {
|
||||
case user_repo.MachineKeyAddedEventType:
|
||||
err = json.Unmarshal(event.Data, key)
|
||||
if err != nil {
|
||||
return errors.ThrowInternal(err, "MODEL-SjI4S", "Errors.Internal")
|
||||
}
|
||||
case MachineKeyRemoved:
|
||||
case user_repo.MachineKeyRemovedEventType:
|
||||
key.ExpirationDate = event.CreationDate
|
||||
}
|
||||
return err
|
||||
|
Reference in New Issue
Block a user