fix: template respone & ui
This commit is contained in:
parent
65803c3763
commit
7792cdbc5e
21
dashboard/package-lock.json
generated
21
dashboard/package-lock.json
generated
|
@ -2798,7 +2798,8 @@
|
||||||
"@chakra-ui/css-reset": {
|
"@chakra-ui/css-reset": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/@chakra-ui/css-reset/-/css-reset-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/@chakra-ui/css-reset/-/css-reset-1.1.1.tgz",
|
||||||
"integrity": "sha512-+KNNHL4OWqeKia5SL858K3Qbd8WxMij9mWIilBzLD4j2KFrl/+aWFw8syMKth3NmgIibrjsljo+PU3fy2o50dg=="
|
"integrity": "sha512-+KNNHL4OWqeKia5SL858K3Qbd8WxMij9mWIilBzLD4j2KFrl/+aWFw8syMKth3NmgIibrjsljo+PU3fy2o50dg==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"@chakra-ui/descendant": {
|
"@chakra-ui/descendant": {
|
||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
|
@ -3402,7 +3403,8 @@
|
||||||
"@graphql-typed-document-node/core": {
|
"@graphql-typed-document-node/core": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.1.tgz",
|
||||||
"integrity": "sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg=="
|
"integrity": "sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"@popperjs/core": {
|
"@popperjs/core": {
|
||||||
"version": "2.11.0",
|
"version": "2.11.0",
|
||||||
|
@ -3739,7 +3741,8 @@
|
||||||
"draft-js-utils": {
|
"draft-js-utils": {
|
||||||
"version": "1.4.1",
|
"version": "1.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/draft-js-utils/-/draft-js-utils-1.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/draft-js-utils/-/draft-js-utils-1.4.1.tgz",
|
||||||
"integrity": "sha512-xE81Y+z/muC5D5z9qWmKfxEW1XyXfsBzSbSBk2JRsoD0yzMGGHQm/0MtuqHl/EUDkaBJJLjJ2EACycoDMY/OOg=="
|
"integrity": "sha512-xE81Y+z/muC5D5z9qWmKfxEW1XyXfsBzSbSBk2JRsoD0yzMGGHQm/0MtuqHl/EUDkaBJJLjJ2EACycoDMY/OOg==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"draftjs-to-html": {
|
"draftjs-to-html": {
|
||||||
"version": "0.9.1",
|
"version": "0.9.1",
|
||||||
|
@ -3749,7 +3752,8 @@
|
||||||
"draftjs-utils": {
|
"draftjs-utils": {
|
||||||
"version": "0.10.2",
|
"version": "0.10.2",
|
||||||
"resolved": "https://registry.npmjs.org/draftjs-utils/-/draftjs-utils-0.10.2.tgz",
|
"resolved": "https://registry.npmjs.org/draftjs-utils/-/draftjs-utils-0.10.2.tgz",
|
||||||
"integrity": "sha512-EstHqr3R3JVcilJrBaO/A+01GvwwKmC7e4TCjC7S94ZeMh4IVmf60OuQXtHHpwItK8C2JCi3iljgN5KHkJboUg=="
|
"integrity": "sha512-EstHqr3R3JVcilJrBaO/A+01GvwwKmC7e4TCjC7S94ZeMh4IVmf60OuQXtHHpwItK8C2JCi3iljgN5KHkJboUg==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"error-ex": {
|
"error-ex": {
|
||||||
"version": "1.3.2",
|
"version": "1.3.2",
|
||||||
|
@ -4043,7 +4047,8 @@
|
||||||
"html-to-draftjs": {
|
"html-to-draftjs": {
|
||||||
"version": "1.5.0",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/html-to-draftjs/-/html-to-draftjs-1.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/html-to-draftjs/-/html-to-draftjs-1.5.0.tgz",
|
||||||
"integrity": "sha512-kggLXBNciKDwKf+KYsuE+V5gw4dZ7nHyGMX9m0wy7urzWjKGWyNFetmArRLvRV0VrxKN70WylFsJvMTJx02OBQ=="
|
"integrity": "sha512-kggLXBNciKDwKf+KYsuE+V5gw4dZ7nHyGMX9m0wy7urzWjKGWyNFetmArRLvRV0VrxKN70WylFsJvMTJx02OBQ==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"immutable": {
|
"immutable": {
|
||||||
"version": "3.7.6",
|
"version": "3.7.6",
|
||||||
|
@ -4272,7 +4277,8 @@
|
||||||
"react-icons": {
|
"react-icons": {
|
||||||
"version": "4.3.1",
|
"version": "4.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.3.1.tgz",
|
||||||
"integrity": "sha512-cB10MXLTs3gVuXimblAdI71jrJx8njrJZmNMEMC+sQu5B/BIOmlsAjskdqpn81y8UBVEGuHODd7/ci5DvoSzTQ=="
|
"integrity": "sha512-cB10MXLTs3gVuXimblAdI71jrJx8njrJZmNMEMC+sQu5B/BIOmlsAjskdqpn81y8UBVEGuHODd7/ci5DvoSzTQ==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"react-is": {
|
"react-is": {
|
||||||
"version": "16.13.1",
|
"version": "16.13.1",
|
||||||
|
@ -4483,7 +4489,8 @@
|
||||||
"use-callback-ref": {
|
"use-callback-ref": {
|
||||||
"version": "1.2.5",
|
"version": "1.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz",
|
"resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz",
|
||||||
"integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg=="
|
"integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==",
|
||||||
|
"requires": {}
|
||||||
},
|
},
|
||||||
"use-sidecar": {
|
"use-sidecar": {
|
||||||
"version": "1.0.5",
|
"version": "1.0.5",
|
||||||
|
|
|
@ -62,8 +62,7 @@ interface validatorDataType {
|
||||||
}
|
}
|
||||||
|
|
||||||
const initTemplateData: emailTemplateDataType = {
|
const initTemplateData: emailTemplateDataType = {
|
||||||
[EmailTemplateInputDataFields.EVENT_NAME]:
|
[EmailTemplateInputDataFields.EVENT_NAME]: emailTemplateEventNames.Signup,
|
||||||
emailTemplateEventNames.BASIC_AUTH_SIGNUP,
|
|
||||||
[EmailTemplateInputDataFields.SUBJECT]: '',
|
[EmailTemplateInputDataFields.SUBJECT]: '',
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -206,10 +205,10 @@ const UpdateEmailTemplate = ({
|
||||||
).reduce((acc, varData): any => {
|
).reduce((acc, varData): any => {
|
||||||
if (
|
if (
|
||||||
(templateData[EmailTemplateInputDataFields.EVENT_NAME] !==
|
(templateData[EmailTemplateInputDataFields.EVENT_NAME] !==
|
||||||
emailTemplateEventNames.VERIFY_OTP &&
|
emailTemplateEventNames['Verify Otp'] &&
|
||||||
varData[1] === emailTemplateVariables.otp) ||
|
varData[1] === emailTemplateVariables.otp) ||
|
||||||
(templateData[EmailTemplateInputDataFields.EVENT_NAME] ===
|
(templateData[EmailTemplateInputDataFields.EVENT_NAME] ===
|
||||||
emailTemplateEventNames.VERIFY_OTP &&
|
emailTemplateEventNames['Verify Otp'] &&
|
||||||
varData[1] === emailTemplateVariables.verification_url)
|
varData[1] === emailTemplateVariables.verification_url)
|
||||||
) {
|
) {
|
||||||
return acc;
|
return acc;
|
||||||
|
|
|
@ -94,7 +94,7 @@ interface validatorDataType {
|
||||||
}
|
}
|
||||||
|
|
||||||
const initWebhookData: webhookDataType = {
|
const initWebhookData: webhookDataType = {
|
||||||
[WebhookInputDataFields.EVENT_NAME]: webhookEventNames.USER_LOGIN,
|
[WebhookInputDataFields.EVENT_NAME]: webhookEventNames['User login'],
|
||||||
[WebhookInputDataFields.ENDPOINT]: '',
|
[WebhookInputDataFields.ENDPOINT]: '',
|
||||||
[WebhookInputDataFields.ENABLED]: true,
|
[WebhookInputDataFields.ENABLED]: true,
|
||||||
[WebhookInputDataFields.HEADERS]: [{ ...initHeadersData }],
|
[WebhookInputDataFields.HEADERS]: [{ ...initHeadersData }],
|
||||||
|
|
|
@ -183,20 +183,21 @@ export enum UpdateModalViews {
|
||||||
export const pageLimits: number[] = [5, 10, 15];
|
export const pageLimits: number[] = [5, 10, 15];
|
||||||
|
|
||||||
export const webhookEventNames = {
|
export const webhookEventNames = {
|
||||||
USER_SIGNUP: 'user.signup',
|
'User signup': 'user.signup',
|
||||||
USER_CREATED: 'user.created',
|
'User created': 'user.created',
|
||||||
USER_LOGIN: 'user.login',
|
'User login': 'user.login',
|
||||||
USER_DELETED: 'user.deleted',
|
'User deleted': 'user.deleted',
|
||||||
USER_ACCESS_ENABLED: 'user.access_enabled',
|
'User access enabled': 'user.access_enabled',
|
||||||
USER_ACCESS_REVOKED: 'user.access_revoked',
|
'User access revoked': 'user.access_revoked',
|
||||||
};
|
};
|
||||||
|
|
||||||
export const emailTemplateEventNames = {
|
export const emailTemplateEventNames = {
|
||||||
BASIC_AUTH_SIGNUP: 'basic_auth_signup',
|
Signup: 'basic_auth_signup',
|
||||||
MAGIC_LINK_LOGIN: 'magic_link_login',
|
'Magic Link Login': 'magic_link_login',
|
||||||
UPDATE_EMAIL: 'update_email',
|
'Update Email': 'update_email',
|
||||||
FORGOT_PASSWORD: 'forgot_password',
|
'Forgot Password': 'forgot_password',
|
||||||
VERIFY_OTP: 'verify_otp',
|
'Verify Otp': 'verify_otp',
|
||||||
|
'Invite member': 'invite_member',
|
||||||
};
|
};
|
||||||
|
|
||||||
export enum webhookVerifiedStatus {
|
export enum webhookVerifiedStatus {
|
||||||
|
|
|
@ -126,7 +126,7 @@ export const WebhooksDataQuery = `
|
||||||
export const EmailTemplatesQuery = `
|
export const EmailTemplatesQuery = `
|
||||||
query getEmailTemplates($params: PaginatedInput!) {
|
query getEmailTemplates($params: PaginatedInput!) {
|
||||||
_email_templates(params: $params) {
|
_email_templates(params: $params) {
|
||||||
EmailTemplates {
|
email_templates {
|
||||||
id
|
id
|
||||||
event_name
|
event_name
|
||||||
subject
|
subject
|
||||||
|
|
|
@ -40,7 +40,7 @@ import {
|
||||||
UpdateModalViews,
|
UpdateModalViews,
|
||||||
EmailTemplateInputDataFields,
|
EmailTemplateInputDataFields,
|
||||||
} from '../constants';
|
} from '../constants';
|
||||||
import { EmailTemplatesQuery, WebhooksDataQuery } from '../graphql/queries';
|
import { EmailTemplatesQuery } from '../graphql/queries';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
import DeleteEmailTemplateModal from '../components/DeleteEmailTemplateModal';
|
import DeleteEmailTemplateModal from '../components/DeleteEmailTemplateModal';
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ const EmailTemplates = () => {
|
||||||
})
|
})
|
||||||
.toPromise();
|
.toPromise();
|
||||||
if (res.data?._email_templates) {
|
if (res.data?._email_templates) {
|
||||||
const { pagination, EmailTemplates: emailTemplates } =
|
const { pagination, email_templates: emailTemplates } =
|
||||||
res.data?._email_templates;
|
res.data?._email_templates;
|
||||||
const maxPages = getMaxPages(pagination);
|
const maxPages = getMaxPages(pagination);
|
||||||
if (emailTemplates?.length) {
|
if (emailTemplates?.length) {
|
||||||
|
|
|
@ -441,7 +441,7 @@ func (e *executableSchema) Complexity(typeName, field string, childComplexity in
|
||||||
|
|
||||||
return e.complexity.EmailTemplate.UpdatedAt(childComplexity), true
|
return e.complexity.EmailTemplate.UpdatedAt(childComplexity), true
|
||||||
|
|
||||||
case "EmailTemplates.EmailTemplates":
|
case "EmailTemplates.email_templates":
|
||||||
if e.complexity.EmailTemplates.EmailTemplates == nil {
|
if e.complexity.EmailTemplates.EmailTemplates == nil {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
@ -2066,7 +2066,7 @@ type EmailTemplate {
|
||||||
|
|
||||||
type EmailTemplates {
|
type EmailTemplates {
|
||||||
pagination: Pagination!
|
pagination: Pagination!
|
||||||
EmailTemplates: [EmailTemplate!]!
|
email_templates: [EmailTemplate!]!
|
||||||
}
|
}
|
||||||
|
|
||||||
input UpdateEnvInput {
|
input UpdateEnvInput {
|
||||||
|
@ -3404,7 +3404,7 @@ func (ec *executionContext) _EmailTemplates_pagination(ctx context.Context, fiel
|
||||||
return ec.marshalNPagination2ᚖgithubᚗcomᚋauthorizerdevᚋauthorizerᚋserverᚋgraphᚋmodelᚐPagination(ctx, field.Selections, res)
|
return ec.marshalNPagination2ᚖgithubᚗcomᚋauthorizerdevᚋauthorizerᚋserverᚋgraphᚋmodelᚐPagination(ctx, field.Selections, res)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ec *executionContext) _EmailTemplates_EmailTemplates(ctx context.Context, field graphql.CollectedField, obj *model.EmailTemplates) (ret graphql.Marshaler) {
|
func (ec *executionContext) _EmailTemplates_email_templates(ctx context.Context, field graphql.CollectedField, obj *model.EmailTemplates) (ret graphql.Marshaler) {
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
ec.Error(ctx, ec.Recover(ctx, r))
|
ec.Error(ctx, ec.Recover(ctx, r))
|
||||||
|
@ -12198,8 +12198,8 @@ func (ec *executionContext) _EmailTemplates(ctx context.Context, sel ast.Selecti
|
||||||
if out.Values[i] == graphql.Null {
|
if out.Values[i] == graphql.Null {
|
||||||
invalids++
|
invalids++
|
||||||
}
|
}
|
||||||
case "EmailTemplates":
|
case "email_templates":
|
||||||
out.Values[i] = ec._EmailTemplates_EmailTemplates(ctx, field, obj)
|
out.Values[i] = ec._EmailTemplates_email_templates(ctx, field, obj)
|
||||||
if out.Values[i] == graphql.Null {
|
if out.Values[i] == graphql.Null {
|
||||||
invalids++
|
invalids++
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ type EmailTemplate struct {
|
||||||
|
|
||||||
type EmailTemplates struct {
|
type EmailTemplates struct {
|
||||||
Pagination *Pagination `json:"pagination"`
|
Pagination *Pagination `json:"pagination"`
|
||||||
EmailTemplates []*EmailTemplate `json:"EmailTemplates"`
|
EmailTemplates []*EmailTemplate `json:"email_templates"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type Env struct {
|
type Env struct {
|
||||||
|
|
|
@ -201,7 +201,7 @@ type EmailTemplate {
|
||||||
|
|
||||||
type EmailTemplates {
|
type EmailTemplates {
|
||||||
pagination: Pagination!
|
pagination: Pagination!
|
||||||
EmailTemplates: [EmailTemplate!]!
|
email_templates: [EmailTemplate!]!
|
||||||
}
|
}
|
||||||
|
|
||||||
input UpdateEnvInput {
|
input UpdateEnvInput {
|
||||||
|
|
|
@ -166,7 +166,7 @@ func InviteMembersResolver(ctx context.Context, params model.InviteMemberInput)
|
||||||
go emailservice.SendEmail([]string{user.Email}, constants.VerificationTypeInviteMember, map[string]interface{}{
|
go emailservice.SendEmail([]string{user.Email}, constants.VerificationTypeInviteMember, map[string]interface{}{
|
||||||
"user": user.ToMap(),
|
"user": user.ToMap(),
|
||||||
"organization": utils.GetOrganization(),
|
"organization": utils.GetOrganization(),
|
||||||
"verification_url": utils.GetInviteVerificationURL(verifyEmailURL, verificationToken, hostname),
|
"verification_url": utils.GetInviteVerificationURL(verifyEmailURL, verificationToken, redirectURL),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ import "github.com/authorizerdev/authorizer/server/constants"
|
||||||
|
|
||||||
// IsValidEmailTemplateEventName function to validate email template events
|
// IsValidEmailTemplateEventName function to validate email template events
|
||||||
func IsValidEmailTemplateEventName(eventName string) bool {
|
func IsValidEmailTemplateEventName(eventName string) bool {
|
||||||
if eventName != constants.VerificationTypeBasicAuthSignup && eventName != constants.VerificationTypeForgotPassword && eventName != constants.VerificationTypeMagicLinkLogin && eventName != constants.VerificationTypeUpdateEmail && eventName != constants.VerificationTypeOTP {
|
if eventName != constants.VerificationTypeBasicAuthSignup && eventName != constants.VerificationTypeForgotPassword && eventName != constants.VerificationTypeMagicLinkLogin && eventName != constants.VerificationTypeUpdateEmail && eventName != constants.VerificationTypeOTP && eventName != constants.VerificationTypeInviteMember {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user