mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 18:17:35 +00:00
feat: SMS and email OTP texts (#6281)
* manage 2 custom texts proto * implement methods * default texts * console * improve translations * lint * test: fix e2e timeout * fix translations * add missing console translations * remove unused text parts --------- Co-authored-by: Livio Spring <livio.a@gmail.com>
This commit is contained in:
@@ -37,8 +37,8 @@
|
||||
[chips]="chips[currentType]"
|
||||
[disabled]="(canWrite$ | async) === false"
|
||||
label="one"
|
||||
[default$]="getDefaultInitMessageTextMap$"
|
||||
[current$]="getCustomInitMessageTextMap$"
|
||||
[default$]="getDefaultMessageTextMap$"
|
||||
[current$]="getCustomMessageTextMap$"
|
||||
(changedValues)="updateCurrentValues($event)"
|
||||
></cnsl-edit-text>
|
||||
</div>
|
||||
@@ -46,7 +46,7 @@
|
||||
<div class="message-text-actions">
|
||||
<button
|
||||
class="reset-button"
|
||||
*ngIf="(getCustomInitMessageTextMap$ | async) && (getCustomInitMessageTextMap$ | async)?.['isDefault'] === false"
|
||||
*ngIf="(getCustomMessageTextMap$ | async) && (getCustomMessageTextMap$ | async)?.['isDefault'] === false"
|
||||
[disabled]="(canWrite$ | async) === false"
|
||||
(click)="resetDefault()"
|
||||
color="message-text-warn"
|
||||
|
@@ -9,14 +9,18 @@ import {
|
||||
GetDefaultPasswordlessRegistrationMessageTextRequest as AdminGetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||
GetDefaultPasswordResetMessageTextRequest as AdminGetDefaultPasswordResetMessageTextRequest,
|
||||
GetDefaultVerifyEmailMessageTextRequest as AdminGetDefaultVerifyEmailMessageTextRequest,
|
||||
GetDefaultVerifyEmailOTPMessageTextRequest as AdminGetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
GetDefaultVerifyPhoneMessageTextRequest as AdminGetDefaultVerifyPhoneMessageTextRequest,
|
||||
GetDefaultVerifySMSOTPMessageTextRequest as AdminGetDefaultVerifySMSOTPMessageTextRequest,
|
||||
SetDefaultDomainClaimedMessageTextRequest,
|
||||
SetDefaultInitMessageTextRequest,
|
||||
SetDefaultPasswordChangeMessageTextRequest,
|
||||
SetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||
SetDefaultPasswordResetMessageTextRequest,
|
||||
SetDefaultVerifyEmailMessageTextRequest,
|
||||
SetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
SetDefaultVerifyPhoneMessageTextRequest,
|
||||
SetDefaultVerifySMSOTPMessageTextRequest,
|
||||
} from 'src/app/proto/generated/zitadel/admin_pb';
|
||||
import {
|
||||
GetCustomDomainClaimedMessageTextRequest,
|
||||
@@ -25,21 +29,27 @@ import {
|
||||
GetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
GetCustomPasswordResetMessageTextRequest,
|
||||
GetCustomVerifyEmailMessageTextRequest,
|
||||
GetCustomVerifyEmailOTPMessageTextRequest,
|
||||
GetCustomVerifyPhoneMessageTextRequest,
|
||||
GetCustomVerifySMSOTPMessageTextRequest,
|
||||
GetDefaultDomainClaimedMessageTextRequest,
|
||||
GetDefaultInitMessageTextRequest,
|
||||
GetDefaultPasswordChangeMessageTextRequest,
|
||||
GetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||
GetDefaultPasswordResetMessageTextRequest,
|
||||
GetDefaultVerifyEmailMessageTextRequest,
|
||||
GetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
GetDefaultVerifyPhoneMessageTextRequest,
|
||||
GetDefaultVerifySMSOTPMessageTextRequest,
|
||||
SetCustomDomainClaimedMessageTextRequest,
|
||||
SetCustomInitMessageTextRequest,
|
||||
SetCustomPasswordChangeMessageTextRequest,
|
||||
SetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
SetCustomPasswordResetMessageTextRequest,
|
||||
SetCustomVerifyEmailMessageTextRequest,
|
||||
SetCustomVerifyEmailOTPMessageTextRequest,
|
||||
SetCustomVerifyPhoneMessageTextRequest,
|
||||
SetCustomVerifySMSOTPMessageTextRequest,
|
||||
} from 'src/app/proto/generated/zitadel/management_pb';
|
||||
import { MessageCustomText } from 'src/app/proto/generated/zitadel/text_pb';
|
||||
import { AdminService } from 'src/app/services/admin.service';
|
||||
@@ -60,6 +70,8 @@ enum MESSAGETYPES {
|
||||
DOMAINCLAIMED = 'DC',
|
||||
PASSWORDLESS = 'PL',
|
||||
PASSWORDCHANGE = 'PC',
|
||||
VERIFYSMSOTP = 'VSO',
|
||||
VERIFYEMAILOTP = 'VEO',
|
||||
}
|
||||
|
||||
const REQUESTMAP = {
|
||||
@@ -132,6 +144,33 @@ const REQUESTMAP = {
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.VERIFYSMSOTP]: {
|
||||
get: new GetCustomVerifySMSOTPMessageTextRequest(),
|
||||
set: new SetCustomVerifySMSOTPMessageTextRequest(),
|
||||
getDefault: new GetDefaultVerifySMSOTPMessageTextRequest(),
|
||||
setFcn: (map: Partial<MessageCustomText.AsObject>): SetCustomVerifySMSOTPMessageTextRequest => {
|
||||
const req = new SetCustomVerifySMSOTPMessageTextRequest();
|
||||
req.setText(map.text ?? '');
|
||||
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.VERIFYEMAILOTP]: {
|
||||
get: new GetCustomVerifyEmailOTPMessageTextRequest(),
|
||||
set: new SetCustomVerifyEmailOTPMessageTextRequest(),
|
||||
getDefault: new GetDefaultVerifyEmailOTPMessageTextRequest(),
|
||||
setFcn: (map: Partial<MessageCustomText.AsObject>): SetCustomVerifyEmailOTPMessageTextRequest => {
|
||||
const req = new SetCustomVerifyEmailOTPMessageTextRequest();
|
||||
req.setFooterText(map.footerText ?? '');
|
||||
req.setGreeting(map.greeting ?? '');
|
||||
req.setPreHeader(map.preHeader ?? '');
|
||||
req.setSubject(map.subject ?? '');
|
||||
req.setText(map.text ?? '');
|
||||
req.setTitle(map.title ?? '');
|
||||
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.PASSWORDRESET]: {
|
||||
get: new GetCustomPasswordResetMessageTextRequest(),
|
||||
set: new SetCustomPasswordResetMessageTextRequest(),
|
||||
@@ -255,6 +294,31 @@ const REQUESTMAP = {
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.VERIFYSMSOTP]: {
|
||||
get: new AdminGetDefaultVerifySMSOTPMessageTextRequest(),
|
||||
set: new SetDefaultVerifySMSOTPMessageTextRequest(),
|
||||
setFcn: (map: Partial<MessageCustomText.AsObject>): SetDefaultVerifySMSOTPMessageTextRequest => {
|
||||
const req = new SetDefaultVerifySMSOTPMessageTextRequest();
|
||||
req.setText(map.text ?? '');
|
||||
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.VERIFYEMAILOTP]: {
|
||||
get: new AdminGetDefaultVerifyEmailOTPMessageTextRequest(),
|
||||
set: new SetDefaultVerifyEmailOTPMessageTextRequest(),
|
||||
setFcn: (map: Partial<MessageCustomText.AsObject>): SetDefaultVerifyEmailOTPMessageTextRequest => {
|
||||
const req = new SetDefaultVerifyEmailOTPMessageTextRequest();
|
||||
req.setFooterText(map.footerText ?? '');
|
||||
req.setGreeting(map.greeting ?? '');
|
||||
req.setPreHeader(map.preHeader ?? '');
|
||||
req.setSubject(map.subject ?? '');
|
||||
req.setText(map.text ?? '');
|
||||
req.setTitle(map.title ?? '');
|
||||
|
||||
return req;
|
||||
},
|
||||
},
|
||||
[MESSAGETYPES.PASSWORDRESET]: {
|
||||
get: new AdminGetDefaultPasswordResetMessageTextRequest(),
|
||||
set: new SetDefaultPasswordResetMessageTextRequest(),
|
||||
@@ -318,8 +382,8 @@ const REQUESTMAP = {
|
||||
})
|
||||
export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
public loading: boolean = false;
|
||||
public getDefaultInitMessageTextMap$: Observable<{ [key: string]: string }> = of({});
|
||||
public getCustomInitMessageTextMap$: BehaviorSubject<{ [key: string]: string | boolean }> = new BehaviorSubject({}); // boolean because of isDefault
|
||||
public getDefaultMessageTextMap$: Observable<{ [key: string]: string }> = of({});
|
||||
public getCustomMessageTextMap$: BehaviorSubject<{ [key: string]: string | boolean }> = new BehaviorSubject({}); // boolean because of isDefault
|
||||
|
||||
public currentType: MESSAGETYPES = MESSAGETYPES.INIT;
|
||||
|
||||
@@ -329,7 +393,7 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
|
||||
public MESSAGETYPES: any = MESSAGETYPES;
|
||||
|
||||
public updateRequest!: SetCustomInitMessageTextRequest | SetDefaultInitMessageTextRequest;
|
||||
public updateRequest!: any;
|
||||
|
||||
public InfoSectionType: any = InfoSectionType;
|
||||
public chips: {
|
||||
@@ -411,6 +475,38 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.loginnames', value: '{{.LoginNames}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.changedate', value: '{{.ChangeDate}}' },
|
||||
],
|
||||
[MESSAGETYPES.VERIFYSMSOTP]: [
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.otp', value: '{{.OTP}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifyUrl', value: '{{.VerifyURL}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.preferredLoginName', value: '{{.PreferredLoginName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.username', value: '{{.UserName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.firstname', value: '{{.FirstName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastname', value: '{{.Lastname}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.nickName', value: '{{.NickName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.displayName', value: '{{.DisplayName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastEmail', value: '{{.LastEmail}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifiedEmail', value: '{{.VerifiedEmail}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastPhone', value: '{{.LastPhone}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifiedPhone', value: '{{.VerifiedPhone}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.loginnames', value: '{{.LoginNames}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.changedate', value: '{{.ChangeDate}}' },
|
||||
],
|
||||
[MESSAGETYPES.VERIFYEMAILOTP]: [
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.otp', value: '{{.OTP}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifyUrl', value: '{{.VerifyURL}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.preferredLoginName', value: '{{.PreferredLoginName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.username', value: '{{.UserName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.firstname', value: '{{.FirstName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastname', value: '{{.Lastname}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.nickName', value: '{{.NickName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.displayName', value: '{{.DisplayName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastEmail', value: '{{.LastEmail}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifiedEmail', value: '{{.VerifiedEmail}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.lastPhone', value: '{{.LastPhone}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.verifiedPhone', value: '{{.VerifiedPhone}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.loginnames', value: '{{.LoginNames}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.changedate', value: '{{.ChangeDate}}' },
|
||||
],
|
||||
[MESSAGETYPES.PASSWORDLESS]: [
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.preferredLoginName', value: '{{.PreferredLoginName}}' },
|
||||
{ key: 'POLICY.MESSAGE_TEXTS.CHIPS.username', value: '{{.UserName}}' },
|
||||
@@ -481,64 +577,48 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
public getDefaultValues(type: MESSAGETYPES, req: any): Promise<any> {
|
||||
switch (type) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return this.stripDetails(this.service.getDefaultInitMessageText(req));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return this.stripDetails(this.service.getDefaultVerifyPhoneMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultInitMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return this.stripDetails(this.service.getDefaultVerifyEmailMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultVerifyEmailMessageText(req));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return this.stripSMS(this.service.getDefaultVerifyPhoneMessageText(req));
|
||||
case MESSAGETYPES.VERIFYSMSOTP:
|
||||
return this.stripSMS(this.service.getDefaultVerifySMSOTPMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAILOTP:
|
||||
return this.stripEmail(this.service.getDefaultVerifyEmailOTPMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return this.stripDetails(this.service.getDefaultPasswordResetMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultPasswordResetMessageText(req));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return this.stripDetails(this.service.getDefaultDomainClaimedMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultDomainClaimedMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDLESS:
|
||||
return this.stripDetails(this.service.getDefaultPasswordlessRegistrationMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultPasswordlessRegistrationMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return this.stripDetails(this.service.getDefaultPasswordChangeMessageText(req));
|
||||
return this.stripEmail(this.service.getDefaultPasswordChangeMessageText(req));
|
||||
}
|
||||
}
|
||||
|
||||
public getCurrentValues(type: MESSAGETYPES, req: any): Promise<any> | undefined {
|
||||
if (this.serviceType === PolicyComponentServiceType.MGMT) {
|
||||
switch (type) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomInitMessageText(req));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomVerifyPhoneMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomVerifyEmailMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomPasswordResetMessageText(req));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomDomainClaimedMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDLESS:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomPasswordlessRegistrationMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return this.stripDetails((this.service as ManagementService).getCustomPasswordChangeMessageText(req));
|
||||
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
} else if (this.serviceType === PolicyComponentServiceType.ADMIN) {
|
||||
switch (type) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return this.stripDetails((this.service as AdminService).getCustomInitMessageText(req));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return this.stripDetails((this.service as AdminService).getCustomVerifyPhoneMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return this.stripDetails((this.service as AdminService).getCustomVerifyEmailMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return this.stripDetails((this.service as AdminService).getCustomPasswordResetMessageText(req));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return this.stripDetails((this.service as AdminService).getCustomDomainClaimedMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDLESS:
|
||||
return this.stripDetails((this.service as AdminService).getCustomPasswordlessRegistrationMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return this.stripDetails((this.service as AdminService).getCustomPasswordChangeMessageText(req));
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
} else {
|
||||
return undefined;
|
||||
switch (type) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return this.stripEmail(this.service.getCustomInitMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return this.stripEmail(this.service.getCustomVerifyEmailMessageText(req));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return this.stripSMS(this.service.getCustomVerifyPhoneMessageText(req));
|
||||
case MESSAGETYPES.VERIFYSMSOTP:
|
||||
return this.stripSMS(this.service.getCustomVerifySMSOTPMessageText(req));
|
||||
case MESSAGETYPES.VERIFYEMAILOTP:
|
||||
return this.stripEmail(this.service.getCustomVerifyEmailOTPMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return this.stripEmail(this.service.getCustomPasswordResetMessageText(req));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return this.stripEmail(this.service.getCustomDomainClaimedMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDLESS:
|
||||
return this.stripEmail(this.service.getCustomPasswordlessRegistrationMessageText(req));
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return this.stripEmail(this.service.getCustomPasswordChangeMessageText(req));
|
||||
default:
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -552,7 +632,7 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
const reqDefaultInit = REQUESTMAP[this.serviceType][type].getDefault;
|
||||
|
||||
reqDefaultInit.setLanguage(this.locale);
|
||||
this.getDefaultInitMessageTextMap$ = from(this.getDefaultValues(type, reqDefaultInit));
|
||||
this.getDefaultMessageTextMap$ = from(this.getDefaultValues(type, reqDefaultInit));
|
||||
}
|
||||
|
||||
const reqCustomInit = REQUESTMAP[this.serviceType][type].get.setLanguage(this.locale);
|
||||
@@ -560,7 +640,7 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
return this.getCurrentValues(type, reqCustomInit)
|
||||
?.then((data) => {
|
||||
this.loading = false;
|
||||
this.getCustomInitMessageTextMap$.next(data);
|
||||
this.getCustomMessageTextMap$.next(data);
|
||||
})
|
||||
.catch((error) => {
|
||||
this.loading = false;
|
||||
@@ -587,10 +667,14 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
switch (this.currentType) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return handler((this.service as ManagementService).setCustomInitMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return handler((this.service as ManagementService).setCustomVerifyPhoneMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return handler((this.service as ManagementService).setCustomVerifyEmailMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return handler((this.service as ManagementService).setCustomVerifyPhoneMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYSMSOTP:
|
||||
return handler((this.service as ManagementService).setCustomVerifySMSOTPMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYEMAILOTP:
|
||||
return handler((this.service as ManagementService).setCustomVerifyEmailOTPMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return handler((this.service as ManagementService).setCustomPasswordResetMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
@@ -608,6 +692,10 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
return handler((this.service as AdminService).setDefaultInitMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return handler((this.service as AdminService).setDefaultVerifyPhoneMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYSMSOTP:
|
||||
return handler((this.service as AdminService).setDefaultVerifySMSOTPMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYEMAILOTP:
|
||||
return handler((this.service as AdminService).setDefaultVerifyEmailOTPMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return handler((this.service as AdminService).setDefaultVerifyEmailMessageText(this.updateRequest));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
@@ -635,55 +723,68 @@ export class MessageTextsComponent implements OnInit, OnDestroy {
|
||||
});
|
||||
|
||||
dialogRef.afterClosed().subscribe((resp) => {
|
||||
if (resp && this.serviceType === PolicyComponentServiceType.MGMT) {
|
||||
const handler = (prom: Promise<any>): Promise<any> => {
|
||||
return prom
|
||||
.then(() => {
|
||||
setTimeout(() => {
|
||||
this.loadData(this.currentType);
|
||||
}, 1000);
|
||||
})
|
||||
.catch((error) => {
|
||||
this.toast.showError(error);
|
||||
});
|
||||
};
|
||||
|
||||
switch (this.currentType) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return handler((this.service as ManagementService).resetCustomInitMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return handler((this.service as ManagementService).resetCustomVerifyPhoneMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return handler((this.service as ManagementService).resetCustomVerifyEmailMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return handler((this.service as ManagementService).resetCustomPasswordResetMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return handler((this.service as ManagementService).resetCustomDomainClaimedMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return handler(
|
||||
(this.service as ManagementService).resetCustomPasswordlessRegistrationMessageTextToDefault(this.locale),
|
||||
);
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return handler((this.service as ManagementService).resetCustomPasswordChangeMessageTextToDefault(this.locale));
|
||||
default:
|
||||
return Promise.reject();
|
||||
}
|
||||
} else {
|
||||
if (!resp) {
|
||||
return Promise.reject();
|
||||
}
|
||||
|
||||
const handler = (prom: Promise<any>): Promise<any> => {
|
||||
return prom
|
||||
.then(() => {
|
||||
setTimeout(() => {
|
||||
this.loadData(this.currentType);
|
||||
}, 1000);
|
||||
})
|
||||
.catch((error) => {
|
||||
this.toast.showError(error);
|
||||
});
|
||||
};
|
||||
|
||||
switch (this.currentType) {
|
||||
case MESSAGETYPES.INIT:
|
||||
return handler(this.service.resetCustomInitMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYPHONE:
|
||||
return handler(this.service.resetCustomVerifyPhoneMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYSMSOTP:
|
||||
return handler(this.service.resetCustomVerifySMSOTPMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYEMAILOTP:
|
||||
return handler(this.service.resetCustomVerifyEmailOTPMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.VERIFYEMAIL:
|
||||
return handler(this.service.resetCustomVerifyEmailMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.PASSWORDRESET:
|
||||
return handler(this.service.resetCustomPasswordResetMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.DOMAINCLAIMED:
|
||||
return handler(this.service.resetCustomDomainClaimedMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.PASSWORDLESS:
|
||||
return handler(this.service.resetCustomPasswordlessRegistrationMessageTextToDefault(this.locale));
|
||||
case MESSAGETYPES.PASSWORDCHANGE:
|
||||
return handler(this.service.resetCustomPasswordChangeMessageTextToDefault(this.locale));
|
||||
default:
|
||||
return Promise.reject();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private stripDetails(prom: Promise<any>): Promise<any> {
|
||||
private strip(prom: Promise<any>, properties: Array<string>): Promise<any> {
|
||||
return prom.then((res) => {
|
||||
if (res.customText) {
|
||||
delete res.customText.details;
|
||||
properties.forEach((property) => {
|
||||
delete res.customText[property];
|
||||
});
|
||||
return Object.assign({}, res.customText as unknown as { [key: string]: string });
|
||||
} else {
|
||||
return {};
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private stripEmail(prom: Promise<any>): Promise<any> {
|
||||
return this.strip(prom, ['details']);
|
||||
}
|
||||
|
||||
private stripSMS(prom: Promise<any>): Promise<any> {
|
||||
return this.strip(prom, ['details', 'buttonText', 'footerText', 'greeting', 'preHeader', 'subject', 'title']);
|
||||
}
|
||||
|
||||
public ngOnDestroy(): void {
|
||||
this.sub.unsubscribe();
|
||||
}
|
||||
|
@@ -66,8 +66,12 @@ import {
|
||||
GetCustomPasswordResetMessageTextResponse,
|
||||
GetCustomVerifyEmailMessageTextRequest,
|
||||
GetCustomVerifyEmailMessageTextResponse,
|
||||
GetCustomVerifyEmailOTPMessageTextRequest,
|
||||
GetCustomVerifyEmailOTPMessageTextResponse,
|
||||
GetCustomVerifyPhoneMessageTextRequest,
|
||||
GetCustomVerifyPhoneMessageTextResponse,
|
||||
GetCustomVerifySMSOTPMessageTextRequest,
|
||||
GetCustomVerifySMSOTPMessageTextResponse,
|
||||
GetDefaultDomainClaimedMessageTextRequest,
|
||||
GetDefaultDomainClaimedMessageTextResponse,
|
||||
GetDefaultInitMessageTextRequest,
|
||||
@@ -84,8 +88,12 @@ import {
|
||||
GetDefaultPasswordResetMessageTextResponse,
|
||||
GetDefaultVerifyEmailMessageTextRequest,
|
||||
GetDefaultVerifyEmailMessageTextResponse,
|
||||
GetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
GetDefaultVerifyEmailOTPMessageTextResponse,
|
||||
GetDefaultVerifyPhoneMessageTextRequest,
|
||||
GetDefaultVerifyPhoneMessageTextResponse,
|
||||
GetDefaultVerifySMSOTPMessageTextRequest,
|
||||
GetDefaultVerifySMSOTPMessageTextResponse,
|
||||
GetDomainPolicyRequest,
|
||||
GetDomainPolicyResponse,
|
||||
GetFileSystemNotificationProviderRequest,
|
||||
@@ -196,8 +204,12 @@ import {
|
||||
SetDefaultPasswordResetMessageTextResponse,
|
||||
SetDefaultVerifyEmailMessageTextRequest,
|
||||
SetDefaultVerifyEmailMessageTextResponse,
|
||||
SetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
SetDefaultVerifyEmailOTPMessageTextResponse,
|
||||
SetDefaultVerifyPhoneMessageTextRequest,
|
||||
SetDefaultVerifyPhoneMessageTextResponse,
|
||||
SetDefaultVerifySMSOTPMessageTextRequest,
|
||||
SetDefaultVerifySMSOTPMessageTextResponse,
|
||||
SetSecurityPolicyRequest,
|
||||
SetSecurityPolicyResponse,
|
||||
SetUpOrgRequest,
|
||||
@@ -256,6 +268,26 @@ import {
|
||||
UpdateSMTPConfigResponse,
|
||||
} from '../proto/generated/zitadel/admin_pb';
|
||||
import { Event } from '../proto/generated/zitadel/event_pb';
|
||||
import {
|
||||
ResetCustomDomainClaimedMessageTextToDefaultRequest,
|
||||
ResetCustomDomainClaimedMessageTextToDefaultResponse,
|
||||
ResetCustomInitMessageTextToDefaultRequest,
|
||||
ResetCustomInitMessageTextToDefaultResponse,
|
||||
ResetCustomPasswordChangeMessageTextToDefaultRequest,
|
||||
ResetCustomPasswordChangeMessageTextToDefaultResponse,
|
||||
ResetCustomPasswordlessRegistrationMessageTextToDefaultRequest,
|
||||
ResetCustomPasswordlessRegistrationMessageTextToDefaultResponse,
|
||||
ResetCustomPasswordResetMessageTextToDefaultRequest,
|
||||
ResetCustomPasswordResetMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyEmailMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyEmailMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyEmailOTPMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyEmailOTPMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyPhoneMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyPhoneMessageTextToDefaultResponse,
|
||||
ResetCustomVerifySMSOTPMessageTextToDefaultRequest,
|
||||
ResetCustomVerifySMSOTPMessageTextToDefaultResponse,
|
||||
} from '../proto/generated/zitadel/management_pb';
|
||||
import { SearchQuery } from '../proto/generated/zitadel/member_pb';
|
||||
import { ListQuery } from '../proto/generated/zitadel/object_pb';
|
||||
import { GrpcService } from './grpc.service';
|
||||
@@ -415,6 +447,12 @@ export class AdminService {
|
||||
return this.grpcService.admin.getCustomInitMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomInitMessageTextToDefault(lang: string): Promise<ResetCustomInitMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomInitMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomInitMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setDefaultInitMessageText(
|
||||
req: SetDefaultInitMessageTextRequest,
|
||||
): Promise<SetDefaultInitMessageTextResponse.AsObject> {
|
||||
@@ -439,6 +477,14 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultVerifyEmailMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifyEmailMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifyEmailMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifyEmailMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomVerifyEmailMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultVerifyPhoneMessageText(
|
||||
req: GetDefaultVerifyPhoneMessageTextRequest,
|
||||
): Promise<GetDefaultVerifyPhoneMessageTextResponse.AsObject> {
|
||||
@@ -457,6 +503,66 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultVerifyPhoneMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifyPhoneMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifyPhoneMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifyPhoneMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomVerifyPhoneMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultVerifySMSOTPMessageText(
|
||||
req: GetDefaultVerifySMSOTPMessageTextRequest,
|
||||
): Promise<GetDefaultVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.getDefaultVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomVerifySMSOTPMessageText(
|
||||
req: GetCustomVerifySMSOTPMessageTextRequest,
|
||||
): Promise<GetCustomVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.getCustomVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setDefaultVerifySMSOTPMessageText(
|
||||
req: SetDefaultVerifySMSOTPMessageTextRequest,
|
||||
): Promise<SetDefaultVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.setDefaultVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifySMSOTPMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifySMSOTPMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifySMSOTPMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomVerifySMSOTPMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultVerifyEmailOTPMessageText(
|
||||
req: GetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<GetDefaultVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.getDefaultVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomVerifyEmailOTPMessageText(
|
||||
req: GetCustomVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<GetCustomVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.getCustomVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setDefaultVerifyEmailOTPMessageText(
|
||||
req: SetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<SetDefaultVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.admin.setDefaultVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifyEmailOTPMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifyEmailOTPMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifyEmailOTPMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomVerifyEmailOTPMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultPasswordResetMessageText(
|
||||
req: GetDefaultPasswordResetMessageTextRequest,
|
||||
): Promise<GetDefaultPasswordResetMessageTextResponse.AsObject> {
|
||||
@@ -475,6 +581,14 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultPasswordResetMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomPasswordResetMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomPasswordResetMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomPasswordResetMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomPasswordResetMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultDomainClaimedMessageText(
|
||||
req: GetDefaultDomainClaimedMessageTextRequest,
|
||||
): Promise<GetDefaultDomainClaimedMessageTextResponse.AsObject> {
|
||||
@@ -493,6 +607,14 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultDomainClaimedMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomDomainClaimedMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomDomainClaimedMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomDomainClaimedMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomDomainClaimedMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultPasswordlessRegistrationMessageText(
|
||||
req: GetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||
): Promise<GetDefaultPasswordlessRegistrationMessageTextResponse.AsObject> {
|
||||
@@ -511,6 +633,16 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultPasswordlessRegistrationMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomPasswordlessRegistrationMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomPasswordlessRegistrationMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomPasswordlessRegistrationMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin
|
||||
.resetCustomPasswordlessRegistrationMessageTextToDefault(req, null)
|
||||
.then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultPasswordChangeMessageText(
|
||||
req: GetDefaultPasswordChangeMessageTextRequest,
|
||||
): Promise<GetDefaultPasswordChangeMessageTextResponse.AsObject> {
|
||||
@@ -529,6 +661,14 @@ export class AdminService {
|
||||
return this.grpcService.admin.setDefaultPasswordChangeMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomPasswordChangeMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomPasswordChangeMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomPasswordChangeMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.admin.resetCustomPasswordChangeMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public SetUpOrg(org: SetUpOrgRequest.Org, human: SetUpOrgRequest.Human): Promise<SetUpOrgResponse.AsObject> {
|
||||
const req = new SetUpOrgRequest();
|
||||
|
||||
|
@@ -135,8 +135,12 @@ import {
|
||||
GetCustomPasswordResetMessageTextResponse,
|
||||
GetCustomVerifyEmailMessageTextRequest,
|
||||
GetCustomVerifyEmailMessageTextResponse,
|
||||
GetCustomVerifyEmailOTPMessageTextRequest,
|
||||
GetCustomVerifyEmailOTPMessageTextResponse,
|
||||
GetCustomVerifyPhoneMessageTextRequest,
|
||||
GetCustomVerifyPhoneMessageTextResponse,
|
||||
GetCustomVerifySMSOTPMessageTextRequest,
|
||||
GetCustomVerifySMSOTPMessageTextResponse,
|
||||
GetDefaultDomainClaimedMessageTextRequest,
|
||||
GetDefaultDomainClaimedMessageTextResponse,
|
||||
GetDefaultInitMessageTextRequest,
|
||||
@@ -155,8 +159,12 @@ import {
|
||||
GetDefaultPasswordResetMessageTextResponse,
|
||||
GetDefaultVerifyEmailMessageTextRequest,
|
||||
GetDefaultVerifyEmailMessageTextResponse,
|
||||
GetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
GetDefaultVerifyEmailOTPMessageTextResponse,
|
||||
GetDefaultVerifyPhoneMessageTextRequest,
|
||||
GetDefaultVerifyPhoneMessageTextResponse,
|
||||
GetDefaultVerifySMSOTPMessageTextRequest,
|
||||
GetDefaultVerifySMSOTPMessageTextResponse,
|
||||
GetDomainPolicyRequest,
|
||||
GetDomainPolicyResponse,
|
||||
GetFlowRequest,
|
||||
@@ -375,8 +383,12 @@ import {
|
||||
ResetCustomPasswordResetMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyEmailMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyEmailMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyEmailOTPMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyEmailOTPMessageTextToDefaultResponse,
|
||||
ResetCustomVerifyPhoneMessageTextToDefaultRequest,
|
||||
ResetCustomVerifyPhoneMessageTextToDefaultResponse,
|
||||
ResetCustomVerifySMSOTPMessageTextToDefaultRequest,
|
||||
ResetCustomVerifySMSOTPMessageTextToDefaultResponse,
|
||||
ResetLabelPolicyToDefaultRequest,
|
||||
ResetLabelPolicyToDefaultResponse,
|
||||
ResetLockoutPolicyToDefaultRequest,
|
||||
@@ -408,8 +420,12 @@ import {
|
||||
SetCustomPasswordResetMessageTextResponse,
|
||||
SetCustomVerifyEmailMessageTextRequest,
|
||||
SetCustomVerifyEmailMessageTextResponse,
|
||||
SetCustomVerifyEmailOTPMessageTextRequest,
|
||||
SetCustomVerifyEmailOTPMessageTextResponse,
|
||||
SetCustomVerifyPhoneMessageTextRequest,
|
||||
SetCustomVerifyPhoneMessageTextResponse,
|
||||
SetCustomVerifySMSOTPMessageTextRequest,
|
||||
SetCustomVerifySMSOTPMessageTextResponse,
|
||||
SetHumanInitialPasswordRequest,
|
||||
SetOrgMetadataRequest,
|
||||
SetOrgMetadataResponse,
|
||||
@@ -620,6 +636,58 @@ export class ManagementService {
|
||||
return this.grpcService.mgmt.resetCustomVerifyPhoneMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultVerifySMSOTPMessageText(
|
||||
req: GetDefaultVerifySMSOTPMessageTextRequest,
|
||||
): Promise<GetDefaultVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getDefaultVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomVerifySMSOTPMessageText(
|
||||
req: GetCustomVerifySMSOTPMessageTextRequest,
|
||||
): Promise<GetCustomVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getCustomVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setCustomVerifySMSOTPMessageText(
|
||||
req: SetCustomVerifySMSOTPMessageTextRequest,
|
||||
): Promise<SetCustomVerifySMSOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.setCustomVerifySMSOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifySMSOTPMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifySMSOTPMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifySMSOTPMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.mgmt.resetCustomVerifySMSOTPMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultVerifyEmailOTPMessageText(
|
||||
req: GetDefaultVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<GetDefaultVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getDefaultVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomVerifyEmailOTPMessageText(
|
||||
req: GetCustomVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<GetCustomVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getCustomVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setCustomVerifyEmailOTPMessageText(
|
||||
req: SetCustomVerifyEmailOTPMessageTextRequest,
|
||||
): Promise<SetCustomVerifyEmailOTPMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.setCustomVerifyEmailOTPMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomVerifyEmailOTPMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomVerifyEmailOTPMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomVerifyEmailOTPMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.mgmt.resetCustomVerifyEmailOTPMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultPasswordResetMessageText(
|
||||
req: GetDefaultPasswordResetMessageTextRequest,
|
||||
): Promise<GetDefaultPasswordResetMessageTextResponse.AsObject> {
|
||||
@@ -678,6 +746,30 @@ export class ManagementService {
|
||||
return this.grpcService.mgmt.getDefaultPasswordlessRegistrationMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomPasswordlessRegistrationMessageText(
|
||||
req: GetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
): Promise<GetCustomPasswordlessRegistrationMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getCustomPasswordlessRegistrationMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setCustomPasswordlessRegistrationMessageCustomText(
|
||||
req: SetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
): Promise<SetCustomPasswordlessRegistrationMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt
|
||||
.setCustomPasswordlessRegistrationMessageCustomText(req, null)
|
||||
.then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomPasswordlessRegistrationMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomPasswordlessRegistrationMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomPasswordlessRegistrationMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.mgmt
|
||||
.resetCustomPasswordlessRegistrationMessageTextToDefault(req, null)
|
||||
.then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getDefaultPasswordChangeMessageText(
|
||||
req: GetDefaultPasswordChangeMessageTextRequest,
|
||||
): Promise<GetDefaultPasswordChangeMessageTextResponse.AsObject> {
|
||||
@@ -704,30 +796,6 @@ export class ManagementService {
|
||||
return this.grpcService.mgmt.resetCustomPasswordChangeMessageTextToDefault(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public getCustomPasswordlessRegistrationMessageText(
|
||||
req: GetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
): Promise<GetCustomPasswordlessRegistrationMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt.getCustomPasswordlessRegistrationMessageText(req, null).then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public setCustomPasswordlessRegistrationMessageCustomText(
|
||||
req: SetCustomPasswordlessRegistrationMessageTextRequest,
|
||||
): Promise<SetCustomPasswordlessRegistrationMessageTextResponse.AsObject> {
|
||||
return this.grpcService.mgmt
|
||||
.setCustomPasswordlessRegistrationMessageCustomText(req, null)
|
||||
.then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public resetCustomPasswordlessRegistrationMessageTextToDefault(
|
||||
lang: string,
|
||||
): Promise<ResetCustomPasswordlessRegistrationMessageTextToDefaultResponse.AsObject> {
|
||||
const req = new ResetCustomPasswordlessRegistrationMessageTextToDefaultRequest();
|
||||
req.setLanguage(lang);
|
||||
return this.grpcService.mgmt
|
||||
.resetCustomPasswordlessRegistrationMessageTextToDefault(req, null)
|
||||
.then((resp) => resp.toObject());
|
||||
}
|
||||
|
||||
public updateUserName(userId: string, username: string): Promise<UpdateUserNameResponse.AsObject> {
|
||||
const req = new UpdateUserNameRequest();
|
||||
req.setUserId(userId);
|
||||
|
@@ -1287,6 +1287,8 @@
|
||||
"INIT": "Инициализация",
|
||||
"VE": "Потвърди Имейл",
|
||||
"VP": "Потвърдете телефона",
|
||||
"VSO": "Проверка на SMS OTP",
|
||||
"VEO": "Проверка на електронна поща OTP",
|
||||
"PR": "Нулиране на парола",
|
||||
"DC": "Заявка за домейн",
|
||||
"PL": "Без парола",
|
||||
@@ -1307,7 +1309,9 @@
|
||||
"verifiedPhone": "Потвърден телефон",
|
||||
"changedate": "Промяна на датата",
|
||||
"username": "Потребителско име",
|
||||
"tempUsername": "Временно потребителско име"
|
||||
"tempUsername": "Временно потребителско име",
|
||||
"otp": "Еднократна парола",
|
||||
"verifyUrl": "URL за потвърждаване на еднократна парола"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Персонализираните текстове са запазени."
|
||||
|
@@ -1293,6 +1293,8 @@
|
||||
"INIT": "Initialisierung",
|
||||
"VE": "Emailverifikation",
|
||||
"VP": "Telefonnummerverifikation",
|
||||
"VSO": "SMS-OTP überprüfen",
|
||||
"VEO": "E-Mail-OTP überprüfen",
|
||||
"PR": "Passwort Wiederherstellung",
|
||||
"DC": "Domainbeanspruchung",
|
||||
"PL": "Passwortlos",
|
||||
@@ -1313,7 +1315,9 @@
|
||||
"verifiedPhone": "Verifizierte Telefonnummer",
|
||||
"changedate": "Änderungsdatum",
|
||||
"username": "Username",
|
||||
"tempUsername": "Temp. Username"
|
||||
"tempUsername": "Temp. Username",
|
||||
"otp": "Einmalpasswort",
|
||||
"verifyUrl": "URL zur Überprüfung des Einmalpassworts"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Benutzerdefinierte Texte gespeichert."
|
||||
|
@@ -1294,6 +1294,8 @@
|
||||
"INIT": "Initialization",
|
||||
"VE": "Verify Email",
|
||||
"VP": "Verify Phone",
|
||||
"VSO": "Verify SMS OTP",
|
||||
"VEO": "Verify Email OTP",
|
||||
"PR": "Password Reset",
|
||||
"DC": "Domain Claim",
|
||||
"PL": "Passwordless",
|
||||
@@ -1314,7 +1316,9 @@
|
||||
"verifiedPhone": "Verified phone",
|
||||
"changedate": "Change date",
|
||||
"username": "Username",
|
||||
"tempUsername": "Temp username"
|
||||
"tempUsername": "Temp username",
|
||||
"otp": "One-time password",
|
||||
"verifyUrl": "Verify One-time-password URL"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Custom Texts saved."
|
||||
|
@@ -1294,6 +1294,8 @@
|
||||
"INIT": "Inicialización",
|
||||
"VE": "Verificación de email",
|
||||
"VP": "Verificación de teléfono",
|
||||
"VSO": "Verificar OTP de SMS",
|
||||
"VEO": "Verificar OTP de correo electrónico",
|
||||
"PR": "Restablecimiento de contraseña",
|
||||
"DC": "Reclamar un dominio",
|
||||
"PL": "Acceso sin contraseña",
|
||||
@@ -1314,7 +1316,9 @@
|
||||
"verifiedPhone": "Teléfono verificado",
|
||||
"changedate": "Cambiar fecha",
|
||||
"username": "Nombre de usuario",
|
||||
"tempUsername": "Nombre de usuario temporal"
|
||||
"tempUsername": "Nombre de usuario temporal",
|
||||
"otp": "Contraseña de un solo uso",
|
||||
"verifyUrl": "URL para verificar la contraseña de un solo uso"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Textos personalizados guardados."
|
||||
|
@@ -1293,6 +1293,8 @@
|
||||
"INIT": "Initialisation",
|
||||
"VE": "Vérifier l'email",
|
||||
"VP": "Vérifier le téléphone",
|
||||
"VSO": "Vérifier SMS OTP",
|
||||
"VEO": "Vérifier l'OTP par courrier électronique",
|
||||
"PR": "Réinitialisation du mot de passe",
|
||||
"DC": "Réclamation de domaine",
|
||||
"PL": "Sans mot de passe",
|
||||
@@ -1313,7 +1315,9 @@
|
||||
"verifiedPhone": "Téléphone vérifié",
|
||||
"changedate": "Date de changement",
|
||||
"username": "Nom d'utilisateur",
|
||||
"tempUsername": "Nom d'utilisateur temporaire"
|
||||
"tempUsername": "Nom d'utilisateur temporaire",
|
||||
"otp": "Mot de passe à usage unique",
|
||||
"verifyUrl": "URL pour vérifier le mot de passe à usage unique"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Textes personnalisés enregistrés."
|
||||
|
@@ -1293,6 +1293,8 @@
|
||||
"INIT": "Inizializzazione",
|
||||
"VE": "Verificazione l'e-mail",
|
||||
"VP": "Verificazione del telefono",
|
||||
"VSO": "Verifica OTP SMS",
|
||||
"VEO": "Verifica OTP Email",
|
||||
"PR": "Ripristino della password",
|
||||
"DC": "Rivendicazione del dominio",
|
||||
"PL": "Autenticazione Passwordless",
|
||||
@@ -1313,7 +1315,9 @@
|
||||
"verifiedPhone": "Telefono verificato",
|
||||
"changedate": "Cambia data",
|
||||
"username": "Nome utente",
|
||||
"tempUsername": "Nome utente temporaneo"
|
||||
"tempUsername": "Nome utente temporaneo",
|
||||
"otp": "Password monouso",
|
||||
"verifyUrl": "URL per verificare la password monouso"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Testi personalizzati salvati."
|
||||
|
@@ -1289,6 +1289,8 @@
|
||||
"INIT": "初期セットアップ",
|
||||
"VE": "メールの認証",
|
||||
"VP": "電話番号の認証",
|
||||
"VSO": "SMS OTPを確認する",
|
||||
"VEO": "メールOTPを確認する",
|
||||
"PR": "パスワードのリセット",
|
||||
"DC": "ドメインクレーム",
|
||||
"PL": "パスワードレス",
|
||||
@@ -1309,7 +1311,9 @@
|
||||
"verifiedPhone": "認証済みの電話番号",
|
||||
"changedate": "変更日",
|
||||
"username": "ユーザー名",
|
||||
"tempUsername": "一時ユーザー名"
|
||||
"tempUsername": "一時ユーザー名",
|
||||
"otp": "ワンタイムパスワード",
|
||||
"verifyUrl": "ワンタイムパスワードを確認するURL"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "カスタムテキストが保存されました。"
|
||||
|
@@ -1294,6 +1294,8 @@
|
||||
"INIT": "Иницијализација",
|
||||
"VE": "Верификација на е-пошта",
|
||||
"VP": "Верификација на телефонски број",
|
||||
"VSO": "Провери SMS OTP",
|
||||
"VEO": "Провери Email OTP",
|
||||
"PR": "Ресетирање на лозинка",
|
||||
"DC": "Зафатница на домен",
|
||||
"PL": "Лозинка без лозинка",
|
||||
@@ -1314,7 +1316,9 @@
|
||||
"verifiedPhone": "Верифициран телефонски број",
|
||||
"changedate": "Датум на промена",
|
||||
"username": "Корисничко име",
|
||||
"tempUsername": "Привремено корисничко име"
|
||||
"tempUsername": "Привремено корисничко име",
|
||||
"otp": "Еднократна лозинка",
|
||||
"verifyUrl": "URL за потврдување на еднократна лозинка"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Прилагодените текстови се зачувани."
|
||||
|
@@ -1293,6 +1293,8 @@
|
||||
"INIT": "Inicjalizacja",
|
||||
"VE": "Weryfikacja e-mail",
|
||||
"VP": "Weryfikacja telefonu",
|
||||
"VSO": "Zweryfikuj SMS OTP",
|
||||
"VEO": "Zweryfikuj Email OTP",
|
||||
"PR": "Resetowanie hasła",
|
||||
"DC": "Rejestracja domeny",
|
||||
"PL": "Bez hasła",
|
||||
@@ -1313,7 +1315,9 @@
|
||||
"verifiedPhone": "Zweryfikowany telefon",
|
||||
"changedate": "Data zmiany",
|
||||
"username": "Nazwa użytkownika",
|
||||
"tempUsername": "Tymczasowa nazwa użytkownika"
|
||||
"tempUsername": "Tymczasowa nazwa użytkownika",
|
||||
"otp": "Hasło jednorazowe",
|
||||
"verifyUrl": "URL do weryfikacji hasła jednorazowego"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Teksty niestandardowe zapisane."
|
||||
|
@@ -1294,6 +1294,8 @@
|
||||
"INIT": "Inicialização",
|
||||
"VE": "Verificar Email",
|
||||
"VP": "Verificar Telefone",
|
||||
"VSO": "Verificar OTP de SMS",
|
||||
"VEO": "Verificar OTP de Email",
|
||||
"PR": "Redefinição de Senha",
|
||||
"DC": "Reivindicação de Domínio",
|
||||
"PL": "Sem senha",
|
||||
@@ -1314,7 +1316,9 @@
|
||||
"verifiedPhone": "Telefone verificado",
|
||||
"changedate": "Data de alteração",
|
||||
"username": "Nome de usuário",
|
||||
"tempUsername": "Nome de usuário temporário"
|
||||
"tempUsername": "Nome de usuário temporário",
|
||||
"otp": "Senha de uso único",
|
||||
"verifyUrl": "URL para verificar a senha de uso único"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "Textos personalizados salvos."
|
||||
|
@@ -1292,6 +1292,8 @@
|
||||
"INIT": "初始化",
|
||||
"VE": "验证电子邮箱",
|
||||
"VP": "验证手机号码",
|
||||
"VSO": "验证短信一次性密码",
|
||||
"VEO": "验证电子邮件一次性密码",
|
||||
"PR": "重置密码",
|
||||
"DC": "域名声明",
|
||||
"PL": "无密码身份验证",
|
||||
@@ -1312,7 +1314,9 @@
|
||||
"verifiedPhone": "已验证的手机号码",
|
||||
"changedate": "修改于",
|
||||
"username": "用户名",
|
||||
"tempUsername": "临时用户名"
|
||||
"tempUsername": "临时用户名",
|
||||
"otp": "一次性密码",
|
||||
"verifyUrl": "验证一次性密码的URL"
|
||||
},
|
||||
"TOAST": {
|
||||
"UPDATED": "自定义文本已保存。"
|
||||
|
Reference in New Issue
Block a user