From 7d2342a76eb42c5c801e50aea180e7de4fcff056 Mon Sep 17 00:00:00 2001 From: Brady Wied Date: Mon, 12 May 2025 15:34:12 -0600 Subject: [PATCH 1/2] new API field --- pkg/fusionauth/Domain.go | 47 +++++++++++++++++++-------- pkg/fusionauth/Domain_dynamic_test.go | 7 ++++ 2 files changed, 40 insertions(+), 14 deletions(-) diff --git a/pkg/fusionauth/Domain.go b/pkg/fusionauth/Domain.go index 2e27661..0dc4ad7 100644 --- a/pkg/fusionauth/Domain.go +++ b/pkg/fusionauth/Domain.go @@ -5363,13 +5363,14 @@ func (b *RegistrationReportResponse) SetStatus(status int) { */ type RegistrationRequest struct { BaseEventRequest - DisableDomainBlock bool `json:"disableDomainBlock"` - GenerateAuthenticationToken bool `json:"generateAuthenticationToken"` - Registration UserRegistration `json:"registration,omitempty"` - SendSetPasswordEmail bool `json:"sendSetPasswordEmail"` - SkipRegistrationVerification bool `json:"skipRegistrationVerification"` - SkipVerification bool `json:"skipVerification"` - User User `json:"user,omitempty"` + DisableDomainBlock bool `json:"disableDomainBlock"` + GenerateAuthenticationToken bool `json:"generateAuthenticationToken"` + Registration UserRegistration `json:"registration,omitempty"` + SendSetPasswordEmail bool `json:"sendSetPasswordEmail"` + SendSetPasswordIdentityType SendSetPasswordIdentityType `json:"sendSetPasswordIdentityType,omitempty"` + SkipRegistrationVerification bool `json:"skipRegistrationVerification"` + SkipVerification bool `json:"skipVerification"` + User User `json:"user,omitempty"` } /** @@ -5724,6 +5725,22 @@ type EmailTemplateErrors struct { RenderErrors map[string]string `json:"renderErrors,omitempty"` } +/** + * Used to indicate which identity type a password "request" might go to. It could be + * used for send set passwords or send password resets. + */ +type SendSetPasswordIdentityType string + +func (e SendSetPasswordIdentityType) String() string { + return string(e) +} + +const ( + SendSetPasswordIdentityType_Email SendSetPasswordIdentityType = "email" + SendSetPasswordIdentityType_Phone SendSetPasswordIdentityType = "phone" + SendSetPasswordIdentityType_DoNotSend SendSetPasswordIdentityType = "doNotSend" +) + /** * Theme object for values used in the css variables for simple themes. * @@ -6110,6 +6127,7 @@ type TenantPhoneConfiguration struct { ForgotPasswordTemplateId string `json:"forgotPasswordTemplateId,omitempty"` MessengerId string `json:"messengerId,omitempty"` PasswordlessTemplateId string `json:"passwordlessTemplateId,omitempty"` + SetPasswordTemplateId string `json:"setPasswordTemplateId,omitempty"` Unverified PhoneUnverifiedOptions `json:"unverified,omitempty"` VerificationCompleteTemplateId string `json:"verificationCompleteTemplateId,omitempty"` VerificationStrategy VerificationStrategy `json:"verificationStrategy,omitempty"` @@ -7483,13 +7501,14 @@ type UserRegistrationVerifiedEvent struct { */ type UserRequest struct { BaseEventRequest - ApplicationId string `json:"applicationId,omitempty"` - CurrentPassword string `json:"currentPassword,omitempty"` - DisableDomainBlock bool `json:"disableDomainBlock"` - SendSetPasswordEmail bool `json:"sendSetPasswordEmail"` - SkipVerification bool `json:"skipVerification"` - User User `json:"user,omitempty"` - VerificationIds []string `json:"verificationIds,omitempty"` + ApplicationId string `json:"applicationId,omitempty"` + CurrentPassword string `json:"currentPassword,omitempty"` + DisableDomainBlock bool `json:"disableDomainBlock"` + SendSetPasswordEmail bool `json:"sendSetPasswordEmail"` + SendSetPasswordIdentityType SendSetPasswordIdentityType `json:"sendSetPasswordIdentityType,omitempty"` + SkipVerification bool `json:"skipVerification"` + User User `json:"user,omitempty"` + VerificationIds []string `json:"verificationIds,omitempty"` } /** diff --git a/pkg/fusionauth/Domain_dynamic_test.go b/pkg/fusionauth/Domain_dynamic_test.go index 351e2ee..9a97ff0 100644 --- a/pkg/fusionauth/Domain_dynamic_test.go +++ b/pkg/fusionauth/Domain_dynamic_test.go @@ -511,6 +511,13 @@ func Test_SecureGeneratorTypeImplementsStringer(t *testing.T) { } } +func Test_SendSetPasswordIdentityTypeImplementsStringer(t *testing.T) { + var enum interface{} = SendSetPasswordIdentityType("Test") + if _, ok := enum.(fmt.Stringer); !ok { + t.Errorf("SendSetPasswordIdentityType does not implement stringer interface\n") + } +} + func Test_SortImplementsStringer(t *testing.T) { var enum interface{} = Sort("Test") if _, ok := enum.(fmt.Stringer); !ok { From dc55adacedea13bdc495db14a9485d083270a787 Mon Sep 17 00:00:00 2001 From: Brady Wied Date: Mon, 12 May 2025 15:59:21 -0600 Subject: [PATCH 2/2] fail builds if compiles fail --- build.savant | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.savant b/build.savant index 875f25b..b07445b 100644 --- a/build.savant +++ b/build.savant @@ -60,7 +60,7 @@ target(name: "compile", description: "Compiles the source code", dependsOn: ["fo def process = pb.start() process.consumeProcessOutput(System.out, System.err) - process.waitFor() + assert process.waitFor() == 0 } target(name: "test", description: "Runs the project's unit tests", dependsOn: ["compile"]) { @@ -70,7 +70,7 @@ target(name: "test", description: "Runs the project's unit tests", dependsOn: [" def process = pb.start() process.consumeProcessOutput(System.out, System.err) - process.waitFor() + assert process.waitFor() == 0 } target(name: "int", description: "Releases a local integration build of the project", dependsOn: ["compile"]) {