@defra/forms-model 3.0.535 → 3.0.537
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/form/form-audit/enums.js +6 -0
- package/dist/module/form/form-audit/enums.js.map +1 -1
- package/dist/module/form/form-audit/index.js +14 -13
- package/dist/module/form/form-audit/index.js.map +1 -1
- package/dist/module/form/form-audit/types.js.map +1 -1
- package/dist/types/form/form-audit/enums.d.ts +9 -3
- package/dist/types/form/form-audit/enums.d.ts.map +1 -1
- package/dist/types/form/form-audit/index.d.ts +2 -1
- package/dist/types/form/form-audit/index.d.ts.map +1 -1
- package/dist/types/form/form-audit/types.d.ts +29 -2
- package/dist/types/form/form-audit/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/form/form-audit/enums.ts +11 -3
- package/src/form/form-audit/index.ts +26 -16
- package/src/form/form-audit/types.ts +41 -0
@@ -5,12 +5,14 @@ export let AuditEventMessageSchemaVersion = /*#__PURE__*/function (AuditEventMes
|
|
5
5
|
export let AuditEventMessageCategory = /*#__PURE__*/function (AuditEventMessageCategory) {
|
6
6
|
AuditEventMessageCategory["FORM"] = "FORM";
|
7
7
|
AuditEventMessageCategory["ENTITLEMENT"] = "ENTITLEMENT";
|
8
|
+
AuditEventMessageCategory["AUTHENTICATION"] = "AUTHENTICATION";
|
8
9
|
return AuditEventMessageCategory;
|
9
10
|
}({});
|
10
11
|
export let AuditEventMessageSource = /*#__PURE__*/function (AuditEventMessageSource) {
|
11
12
|
AuditEventMessageSource["FORMS_MANAGER"] = "FORMS_MANAGER";
|
12
13
|
AuditEventMessageSource["FORMS_DESIGNER"] = "FORMS_DESIGNER";
|
13
14
|
AuditEventMessageSource["ENTITLEMENT"] = "ENTITLEMENT";
|
15
|
+
AuditEventMessageSource["AUTHENTICATION"] = "AUTHENTICATION";
|
14
16
|
return AuditEventMessageSource;
|
15
17
|
}({});
|
16
18
|
export let AuditEventMessageType = /*#__PURE__*/function (AuditEventMessageType) {
|
@@ -37,6 +39,10 @@ export let AuditEventMessageType = /*#__PURE__*/function (AuditEventMessageType)
|
|
37
39
|
AuditEventMessageType["ENTITLEMENT_CREATED"] = "ENTITLEMENT_CREATED";
|
38
40
|
AuditEventMessageType["ENTITLEMENT_UPDATED"] = "ENTITLEMENT_UPDATED";
|
39
41
|
AuditEventMessageType["ENTITLEMENT_DELETED"] = "ENTITLEMENT_DELETED";
|
42
|
+
AuditEventMessageType["AUTHENTICATION_LOGIN"] = "AUTHENTICATION_LOGIN";
|
43
|
+
AuditEventMessageType["AUTHENTICATION_LOGOUT_MANUAL"] = "AUTHENTICATION_LOGOUT_MANUAL";
|
44
|
+
AuditEventMessageType["AUTHENTICATION_LOGOUT_AUTO"] = "AUTHENTICATION_LOGOUT_AUTO";
|
45
|
+
AuditEventMessageType["AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE"] = "AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE";
|
40
46
|
return AuditEventMessageType;
|
41
47
|
}({});
|
42
48
|
export let FormDefinitionRequestType = /*#__PURE__*/function (FormDefinitionRequestType) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"enums.js","names":["AuditEventMessageSchemaVersion","AuditEventMessageCategory","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType"],"sources":["../../../../src/form/form-audit/enums.ts"],"sourcesContent":["export enum AuditEventMessageSchemaVersion {\n V1 = 1\n}\n\nexport enum AuditEventMessageCategory {\n FORM = 'FORM',\n ENTITLEMENT = 'ENTITLEMENT'\n}\n\nexport enum AuditEventMessageSource {\n FORMS_MANAGER = 'FORMS_MANAGER',\n FORMS_DESIGNER = 'FORMS_DESIGNER',\n ENTITLEMENT = 'ENTITLEMENT'\n}\n\nexport enum AuditEventMessageType {\n // FORM message types\n FORM_CREATED = 'FORM_CREATED',\n FORM_PUBLISHED = 'FORM_PUBLISHED',\n FORM_TITLE_UPDATED = 'FORM_TITLE_UPDATED',\n FORM_ORGANISATION_UPDATED = 'FORM_ORGANISATION_UPDATED',\n FORM_TEAM_NAME_UPDATED = 'FORM_TEAM_NAME_UPDATED',\n FORM_TEAM_EMAIL_UPDATED = 'FORM_TEAM_EMAIL_UPDATED',\n FORM_SUPPORT_CONTACT_UPDATED = 'FORM_SUPPORT_CONTACT_UPDATED',\n FORM_SUPPORT_PHONE_UPDATED = 'FORM_SUPPORT_PHONE_UPDATED',\n FORM_SUPPORT_EMAIL_UPDATED = 'FORM_SUPPORT_EMAIL_UPDATED',\n FORM_SUPPORT_ONLINE_UPDATED = 'FORM_SUPPORT_ONLINE_UPDATED',\n FORM_PRIVACY_NOTICE_UPDATED = 'FORM_PRIVACY_NOTICE_UPDATED',\n FORM_NOTIFICATION_EMAIL_UPDATED = 'FORM_NOTIFICATION_EMAIL_UPDATED',\n FORM_SUBMISSION_GUIDANCE_UPDATED = 'FORM_SUBMISSION_GUIDANCE_UPDATED',\n FORM_JSON_UPLOADED = 'FORM_JSON_UPLOADED',\n FORM_JSON_DOWNLOADED = 'FORM_JSON_DOWNLOADED',\n FORM_DRAFT_CREATED_FROM_LIVE = 'FORM_DRAFT_CREATED_FROM_LIVE',\n FORM_LIVE_CREATED_FROM_DRAFT = 'FORM_LIVE_CREATED_FROM_DRAFT',\n FORM_DRAFT_DELETED = 'FORM_DRAFT_DELETED',\n FORM_MIGRATED = 'FORM_MIGRATED',\n FORM_UPDATED = 'FORM_UPDATED',\n\n // ENTITLEMENT message types\n ENTITLEMENT_CREATED = 'ENTITLEMENT_CREATED',\n ENTITLEMENT_UPDATED = 'ENTITLEMENT_UPDATED',\n ENTITLEMENT_DELETED = 'ENTITLEMENT_DELETED'\n}\n\nexport enum FormDefinitionRequestType {\n REPLACE_DRAFT = 'REPLACE_DRAFT',\n CREATE_COMPONENT = 'CREATE_COMPONENT',\n UPDATE_COMPONENT = 'UPDATE_COMPONENT',\n DELETE_COMPONENT = 'DELETE_COMPONENT',\n CREATE_CONDITION = 'CREATE_CONDITION',\n UPDATE_CONDITION = 'UPDATE_CONDITION',\n DELETE_CONDITION = 'DELETE_CONDITION',\n REORDER_PAGES = 'REORDER_PAGES',\n REORDER_COMPONENTS = 'REORDER_COMPONENTS',\n CREATE_LIST = 'CREATE_LIST',\n UPDATE_LIST = 'UPDATE_LIST',\n DELETE_LIST = 'DELETE_LIST',\n CREATE_PAGE = 'CREATE_PAGE',\n UPDATE_PAGE_FIELDS = 'UPDATE_PAGE_FIELDS',\n DELETE_PAGE = 'DELETE_PAGE',\n REPOSITION_SUMMARY = 'REPOSITION_SUMMARY'\n}\n"],"mappings":"AAAA,WAAYA,8BAA8B,0BAA9BA,8BAA8B;EAA9BA,8BAA8B,CAA9BA,8BAA8B;EAAA,OAA9BA,8BAA8B;AAAA;AAI1C,WAAYC,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;
|
1
|
+
{"version":3,"file":"enums.js","names":["AuditEventMessageSchemaVersion","AuditEventMessageCategory","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType"],"sources":["../../../../src/form/form-audit/enums.ts"],"sourcesContent":["export enum AuditEventMessageSchemaVersion {\n V1 = 1\n}\n\nexport enum AuditEventMessageCategory {\n FORM = 'FORM',\n ENTITLEMENT = 'ENTITLEMENT',\n AUTHENTICATION = 'AUTHENTICATION'\n}\n\nexport enum AuditEventMessageSource {\n FORMS_MANAGER = 'FORMS_MANAGER',\n FORMS_DESIGNER = 'FORMS_DESIGNER',\n ENTITLEMENT = 'ENTITLEMENT',\n AUTHENTICATION = 'AUTHENTICATION'\n}\n\nexport enum AuditEventMessageType {\n // FORM message types\n FORM_CREATED = 'FORM_CREATED',\n FORM_PUBLISHED = 'FORM_PUBLISHED',\n FORM_TITLE_UPDATED = 'FORM_TITLE_UPDATED',\n FORM_ORGANISATION_UPDATED = 'FORM_ORGANISATION_UPDATED',\n FORM_TEAM_NAME_UPDATED = 'FORM_TEAM_NAME_UPDATED',\n FORM_TEAM_EMAIL_UPDATED = 'FORM_TEAM_EMAIL_UPDATED',\n FORM_SUPPORT_CONTACT_UPDATED = 'FORM_SUPPORT_CONTACT_UPDATED',\n FORM_SUPPORT_PHONE_UPDATED = 'FORM_SUPPORT_PHONE_UPDATED',\n FORM_SUPPORT_EMAIL_UPDATED = 'FORM_SUPPORT_EMAIL_UPDATED',\n FORM_SUPPORT_ONLINE_UPDATED = 'FORM_SUPPORT_ONLINE_UPDATED',\n FORM_PRIVACY_NOTICE_UPDATED = 'FORM_PRIVACY_NOTICE_UPDATED',\n FORM_NOTIFICATION_EMAIL_UPDATED = 'FORM_NOTIFICATION_EMAIL_UPDATED',\n FORM_SUBMISSION_GUIDANCE_UPDATED = 'FORM_SUBMISSION_GUIDANCE_UPDATED',\n FORM_JSON_UPLOADED = 'FORM_JSON_UPLOADED',\n FORM_JSON_DOWNLOADED = 'FORM_JSON_DOWNLOADED',\n FORM_DRAFT_CREATED_FROM_LIVE = 'FORM_DRAFT_CREATED_FROM_LIVE',\n FORM_LIVE_CREATED_FROM_DRAFT = 'FORM_LIVE_CREATED_FROM_DRAFT',\n FORM_DRAFT_DELETED = 'FORM_DRAFT_DELETED',\n FORM_MIGRATED = 'FORM_MIGRATED',\n FORM_UPDATED = 'FORM_UPDATED',\n\n // ENTITLEMENT message types\n ENTITLEMENT_CREATED = 'ENTITLEMENT_CREATED',\n ENTITLEMENT_UPDATED = 'ENTITLEMENT_UPDATED',\n ENTITLEMENT_DELETED = 'ENTITLEMENT_DELETED',\n\n // AUTHENTICATION message types\n AUTHENTICATION_LOGIN = 'AUTHENTICATION_LOGIN',\n AUTHENTICATION_LOGOUT_MANUAL = 'AUTHENTICATION_LOGOUT_MANUAL',\n AUTHENTICATION_LOGOUT_AUTO = 'AUTHENTICATION_LOGOUT_AUTO',\n AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE = 'AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE'\n}\n\nexport enum FormDefinitionRequestType {\n REPLACE_DRAFT = 'REPLACE_DRAFT',\n CREATE_COMPONENT = 'CREATE_COMPONENT',\n UPDATE_COMPONENT = 'UPDATE_COMPONENT',\n DELETE_COMPONENT = 'DELETE_COMPONENT',\n CREATE_CONDITION = 'CREATE_CONDITION',\n UPDATE_CONDITION = 'UPDATE_CONDITION',\n DELETE_CONDITION = 'DELETE_CONDITION',\n REORDER_PAGES = 'REORDER_PAGES',\n REORDER_COMPONENTS = 'REORDER_COMPONENTS',\n CREATE_LIST = 'CREATE_LIST',\n UPDATE_LIST = 'UPDATE_LIST',\n DELETE_LIST = 'DELETE_LIST',\n CREATE_PAGE = 'CREATE_PAGE',\n UPDATE_PAGE_FIELDS = 'UPDATE_PAGE_FIELDS',\n DELETE_PAGE = 'DELETE_PAGE',\n REPOSITION_SUMMARY = 'REPOSITION_SUMMARY'\n}\n"],"mappings":"AAAA,WAAYA,8BAA8B,0BAA9BA,8BAA8B;EAA9BA,8BAA8B,CAA9BA,8BAA8B;EAAA,OAA9BA,8BAA8B;AAAA;AAI1C,WAAYC,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAMrC,WAAYC,uBAAuB,0BAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAA,OAAvBA,uBAAuB;AAAA;AAOnC,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAmCjC,WAAYC,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA","ignoreList":[]}
|
@@ -40,21 +40,21 @@ export const formSupportPhoneChanges = Joi.object().keys({
|
|
40
40
|
phone: phoneSchema
|
41
41
|
}).required().description('Changes schema for FORM_SUPPORT_PHONE_UPDATED event');
|
42
42
|
export const formSupportOnlineChanges = Joi.object().keys({
|
43
|
-
url: onlineUrlSchema,
|
44
|
-
text: onlineTextSchema
|
43
|
+
url: onlineUrlSchema.optional(),
|
44
|
+
text: onlineTextSchema.optional()
|
45
45
|
}).required().description('Changes schema for FORM_SUPPORT_ONLINE_UPDATED event');
|
46
46
|
export const formSupportEmailChanges = Joi.object().keys({
|
47
|
-
address: emailAddressSchema,
|
48
|
-
responseTime: emailResponseTimeSchema
|
47
|
+
address: emailAddressSchema.optional(),
|
48
|
+
responseTime: emailResponseTimeSchema.optional()
|
49
49
|
}).description('Changes schema for FORM_SUPPORT_EMAIL_UPDATED event');
|
50
50
|
export const formPrivacyNoticeChanges = Joi.object().keys({
|
51
|
-
privacyNoticeUrl: privacyNoticeUrlSchema
|
51
|
+
privacyNoticeUrl: privacyNoticeUrlSchema
|
52
52
|
}).required().description('Changes schema for FORM_PRIVACY_NOTICE_UPDATED event');
|
53
53
|
export const formNotificationEmailChanges = Joi.object().keys({
|
54
|
-
notificationEmail: notificationEmailAddressSchema
|
54
|
+
notificationEmail: notificationEmailAddressSchema
|
55
55
|
}).required().description('Changes schema for FORM_NOTIFICATION_EMAIL_UPDATED event');
|
56
56
|
export const formSubmissionGuidanceChanges = Joi.object().keys({
|
57
|
-
submissionGuidance: submissionGuidanceSchema
|
57
|
+
submissionGuidance: submissionGuidanceSchema
|
58
58
|
}).required().description('Changes schema for FORM_SUBMISSION_GUIDANCE_UPDATED event');
|
59
59
|
export const formUploadedChanges = Joi.object().keys({
|
60
60
|
value: Joi.string().required()
|
@@ -65,6 +65,10 @@ export const entitlementMessageData = Joi.object().keys({
|
|
65
65
|
email: Joi.string().email().required(),
|
66
66
|
roles: Joi.array().items(Joi.string())
|
67
67
|
});
|
68
|
+
export const authenticationMessageData = Joi.object().keys({
|
69
|
+
userId: Joi.string().required(),
|
70
|
+
displayName: Joi.string().required()
|
71
|
+
});
|
68
72
|
export const auditUserSchema = Joi.object().keys({
|
69
73
|
id: Joi.string().uuid().required(),
|
70
74
|
displayName: Joi.string().required()
|
@@ -130,17 +134,14 @@ export const messageSchema = Joi.object().keys({
|
|
130
134
|
is: Joi.string().trim().valid(AuditEventMessageType.FORM_UPDATED),
|
131
135
|
then: formUpdatedMessageData
|
132
136
|
}, {
|
133
|
-
is: Joi.string().trim().valid(AuditEventMessageType.ENTITLEMENT_CREATED),
|
137
|
+
is: Joi.string().trim().valid(AuditEventMessageType.ENTITLEMENT_CREATED, AuditEventMessageType.ENTITLEMENT_UPDATED, AuditEventMessageType.ENTITLEMENT_DELETED),
|
134
138
|
then: entitlementMessageData
|
135
139
|
}, {
|
136
140
|
is: Joi.string().trim().valid(AuditEventMessageType.FORM_DRAFT_DELETED),
|
137
141
|
then: formMessageDataBase
|
138
142
|
}, {
|
139
|
-
is: Joi.string().trim().valid(AuditEventMessageType.
|
140
|
-
then:
|
141
|
-
}, {
|
142
|
-
is: Joi.string().trim().valid(AuditEventMessageType.ENTITLEMENT_DELETED),
|
143
|
-
then: entitlementMessageData
|
143
|
+
is: Joi.string().trim().valid(AuditEventMessageType.AUTHENTICATION_LOGIN, AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL, AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO, AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE),
|
144
|
+
then: authenticationMessageData
|
144
145
|
}],
|
145
146
|
otherwise: Joi.forbidden()
|
146
147
|
}).description('The data/payload of the audit message'),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","emailAddressSchema","emailResponseTimeSchema","idSchema","notificationEmailAddressSchema","onlineTextSchema","onlineUrlSchema","organisationSchema","phoneSchema","privacyNoticeUrlSchema","slugSchema","submissionGuidanceSchema","teamEmailSchema","teamNameSchema","titleSchema","formMessageDataBase","object","formId","slug","payload","optional","required","description","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","string","filename","s3Key","formUpdatedMessageData","requestType","valid","Object","values","s3Meta","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formSupportEmailChanges","address","responseTime","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","entitlementMessageData","userId","displayName","email","roles","array","items","auditUserSchema","id","uuid","formChangesMessageData","schema","changes","previous","new","messageSchema","schemaVersion","category","source","type","entityId","traceId","createdAt","date","createdBy","data","when","switch","is","trim","FORM_CREATED","then","FORM_TITLE_UPDATED","FORM_ORGANISATION_UPDATED","FORM_TEAM_NAME_UPDATED","FORM_TEAM_EMAIL_UPDATED","FORM_SUPPORT_CONTACT_UPDATED","FORM_SUPPORT_PHONE_UPDATED","FORM_SUPPORT_EMAIL_UPDATED","FORM_SUPPORT_ONLINE_UPDATED","FORM_PRIVACY_NOTICE_UPDATED","FORM_NOTIFICATION_EMAIL_UPDATED","FORM_SUBMISSION_GUIDANCE_UPDATED","FORM_JSON_UPLOADED","FORM_UPDATED","ENTITLEMENT_CREATED","FORM_DRAFT_DELETED","ENTITLEMENT_UPDATED","ENTITLEMENT_DELETED","otherwise","forbidden","messageCreatedAt","auditEvent","message","auditRecord","messageId","recordCreatedAt"],"sources":["../../../../src/form/form-audit/index.ts"],"sourcesContent":["import Joi, { type ObjectSchema } from 'joi'\n\nimport {\n AuditEventMessageCategory,\n AuditEventMessageSchemaVersion,\n AuditEventMessageSource,\n AuditEventMessageType,\n FormDefinitionRequestType\n} from '~/src/form/form-audit/enums.js'\nimport {\n type AuditEvent,\n type AuditMessage,\n type AuditRecord,\n type AuditUser,\n type ChangesMessageData,\n type EntitlementMessageData,\n type FormCreatedMessageData,\n type FormDefinitionS3Meta,\n type FormMessageChangesData,\n type FormMessageDataBase,\n type FormNotificationEmailChanges,\n type FormNotificationEmailUpdatedMessageData,\n type FormOrganisationChanges,\n type FormOrganisationUpdatedMessageData,\n type FormPrivacyNoticeChanges,\n type FormPrivacyNoticeUpdatedMessageData,\n type FormSubmissionGuidanceChanges,\n type FormSubmissionGuidanceUpdatedMessageData,\n type FormSupportContactChanges,\n type FormSupportContactUpdatedMessageData,\n type FormSupportEmailChanges,\n type FormSupportEmailUpdatedMessageData,\n type FormSupportOnlineChanges,\n type FormSupportOnlineUpdatedMessageData,\n type FormSupportPhoneChanges,\n type FormSupportPhoneUpdatedMessageData,\n type FormTeamEmailChanges,\n type FormTeamEmailUpdatedMessageData,\n type FormTeamNameChanges,\n type FormTeamNameUpdatedMessageData,\n type FormTitleChanges,\n type FormTitleUpdatedMessageData,\n type FormUpdatedMessageData,\n type FormUploadedChanges,\n type FormUploadedMessageData\n} from '~/src/form/form-audit/types.js'\nimport {\n contactSchema,\n emailAddressSchema,\n emailResponseTimeSchema,\n idSchema,\n notificationEmailAddressSchema,\n onlineTextSchema,\n onlineUrlSchema,\n organisationSchema,\n phoneSchema,\n privacyNoticeUrlSchema,\n slugSchema,\n submissionGuidanceSchema,\n teamEmailSchema,\n teamNameSchema,\n titleSchema\n} from '~/src/form/form-metadata/index.js'\n\nexport const formMessageDataBase = Joi.object<FormMessageDataBase>({\n formId: idSchema,\n slug: slugSchema,\n payload: Joi.object().optional()\n})\n .required()\n .description('The base data object for Form Messages')\n\nexport const formCreatedMessageData = formMessageDataBase\n .append<FormCreatedMessageData>({\n title: titleSchema,\n organisation: organisationSchema,\n teamName: teamNameSchema,\n teamEmail: teamEmailSchema\n })\n .required()\n .description('Message data schema for when a form is created')\n\nexport const formDefinitionS3Meta = Joi.object<FormDefinitionS3Meta>()\n .keys({\n fileId: Joi.string().required(),\n filename: Joi.string().required(),\n s3Key: Joi.string().required()\n })\n .description('Schema for form data S3 object in message')\n\nexport const formUpdatedMessageData = formMessageDataBase\n .append<FormUpdatedMessageData>({\n requestType: Joi.string()\n .valid(...Object.values(FormDefinitionRequestType))\n .required(),\n s3Meta: formDefinitionS3Meta.optional()\n })\n .required()\n\nexport const formTitleChanges = Joi.object<FormTitleChanges>()\n .keys({\n title: titleSchema\n })\n .required()\n .description('Changes schema for FORM_TITLE_UPDATED event')\n\nexport const formOrganisationChanges = Joi.object<FormOrganisationChanges>()\n .keys({\n organisation: organisationSchema\n })\n .required()\n .description('Changes schema for FORM_ORGANISATION_UPDATED event')\n\nexport const formTeamNameChanges = Joi.object<FormTeamNameChanges>()\n .keys({\n teamName: teamNameSchema\n })\n .required()\n .description('Changes schema for FORM_TEAM_NAME_UPDATED event')\n\nexport const formTeamEmailChanges = Joi.object<FormTeamEmailChanges>()\n .keys({\n teamEmail: teamEmailSchema\n })\n .required()\n .description('Changes schema for FORM_TEAM_EMAIL_UPDATED event')\n\nexport const formSupportContactChanges = Joi.object<FormSupportContactChanges>()\n .keys({\n contact: contactSchema\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_CONTACT_UPDATED event')\n\nexport const formSupportPhoneChanges = Joi.object<FormSupportPhoneChanges>()\n .keys({\n phone: phoneSchema\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_PHONE_UPDATED event')\n\nexport const formSupportOnlineChanges = Joi.object<FormSupportOnlineChanges>()\n .keys({\n url: onlineUrlSchema,\n text: onlineTextSchema\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_ONLINE_UPDATED event')\n\nexport const formSupportEmailChanges = Joi.object<FormSupportEmailChanges>()\n .keys({\n address: emailAddressSchema,\n responseTime: emailResponseTimeSchema\n })\n .description('Changes schema for FORM_SUPPORT_EMAIL_UPDATED event')\n\nexport const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()\n .keys({\n privacyNoticeUrl: privacyNoticeUrlSchema.required()\n })\n .required()\n .description('Changes schema for FORM_PRIVACY_NOTICE_UPDATED event')\n\nexport const formNotificationEmailChanges =\n Joi.object<FormNotificationEmailChanges>()\n .keys({\n notificationEmail: notificationEmailAddressSchema.required()\n })\n .required()\n .description('Changes schema for FORM_NOTIFICATION_EMAIL_UPDATED event')\n\nexport const formSubmissionGuidanceChanges =\n Joi.object<FormSubmissionGuidanceChanges>()\n .keys({\n submissionGuidance: submissionGuidanceSchema.required()\n })\n .required()\n .description('Changes schema for FORM_SUBMISSION_GUIDANCE_UPDATED event')\n\nexport const formUploadedChanges = Joi.object<FormUploadedChanges>()\n .keys({\n value: Joi.string().required()\n })\n .required()\n .description('Changes schema for FORM_JSON_UPLOADED event')\n\nexport const entitlementMessageData = Joi.object<EntitlementMessageData>().keys(\n {\n userId: Joi.string().required(),\n displayName: Joi.string().required(),\n email: Joi.string().email().required(),\n roles: Joi.array().items(Joi.string())\n }\n)\n\nexport const auditUserSchema = Joi.object<AuditUser>()\n .keys({\n id: Joi.string().uuid().required(),\n displayName: Joi.string().required()\n })\n .description('Schema for CREATED_BY audit event')\n\nexport function formChangesMessageData<T, U extends FormMessageChangesData>(\n schema: ObjectSchema<T>\n): ObjectSchema<U> {\n return formMessageDataBase.append<U>({\n changes: Joi.object<ChangesMessageData<T>>()\n .keys({\n previous: schema,\n new: schema\n })\n .description('Changes schema')\n })\n}\n\nexport const messageSchema = Joi.object<AuditMessage>()\n .keys({\n schemaVersion: Joi.string()\n .valid(...Object.values(AuditEventMessageSchemaVersion))\n .required()\n .description(\n 'The version of the AuditMessage - bumped with breaking changes'\n ),\n category: Joi.string()\n .valid(...Object.values(AuditEventMessageCategory))\n .required()\n .description('The message category - what does the entityId represent?'),\n source: Joi.string()\n .valid(...Object.values(AuditEventMessageSource))\n .required()\n .description('Source of the message - which service?'),\n type: Joi.string()\n .valid(...Object.values(AuditEventMessageType))\n .description('Event type'),\n entityId: Joi.string()\n .required()\n .description('The id of the entity the category relates to'),\n traceId: Joi.string()\n .optional()\n .description(\n 'Trace id of the event - to link events across multiple services'\n ),\n createdAt: Joi.date()\n .required()\n .description(\n 'The ISO timestamp where the action took place - should be the same as updated_at field in DB'\n ),\n createdBy: auditUserSchema\n .required()\n .description('The user who performed the action being audited'),\n data: Joi.when('type', {\n switch: [\n {\n is: Joi.string().trim().valid(AuditEventMessageType.FORM_CREATED),\n then: formCreatedMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TITLE_UPDATED),\n then: formChangesMessageData<\n FormTitleChanges,\n FormTitleUpdatedMessageData\n >(formTitleChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_ORGANISATION_UPDATED),\n then: formChangesMessageData<\n FormOrganisationChanges,\n FormOrganisationUpdatedMessageData\n >(formOrganisationChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TEAM_NAME_UPDATED),\n then: formChangesMessageData<\n FormTeamNameChanges,\n FormTeamNameUpdatedMessageData\n >(formTeamNameChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormTeamEmailChanges,\n FormTeamEmailUpdatedMessageData\n >(formTeamEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED),\n then: formChangesMessageData<\n FormSupportContactChanges,\n FormSupportContactUpdatedMessageData\n >(formSupportContactChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED),\n then: formChangesMessageData<\n FormSupportPhoneChanges,\n FormSupportPhoneUpdatedMessageData\n >(formSupportPhoneChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormSupportEmailChanges,\n FormSupportEmailUpdatedMessageData\n >(formSupportEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED),\n then: formChangesMessageData<\n FormSupportOnlineChanges,\n FormSupportOnlineUpdatedMessageData\n >(formSupportOnlineChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED),\n then: formChangesMessageData<\n FormPrivacyNoticeChanges,\n FormPrivacyNoticeUpdatedMessageData\n >(formPrivacyNoticeChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormNotificationEmailChanges,\n FormNotificationEmailUpdatedMessageData\n >(formNotificationEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED),\n then: formChangesMessageData<\n FormSubmissionGuidanceChanges,\n FormSubmissionGuidanceUpdatedMessageData\n >(formSubmissionGuidanceChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_JSON_UPLOADED),\n then: formChangesMessageData<\n FormUploadedChanges,\n FormUploadedMessageData\n >(formUploadedChanges)\n },\n {\n is: Joi.string().trim().valid(AuditEventMessageType.FORM_UPDATED),\n then: formUpdatedMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.ENTITLEMENT_CREATED),\n then: entitlementMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_DRAFT_DELETED),\n then: formMessageDataBase\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.ENTITLEMENT_UPDATED),\n then: entitlementMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.ENTITLEMENT_DELETED),\n then: entitlementMessageData\n }\n ],\n otherwise: Joi.forbidden()\n }).description('The data/payload of the audit message'),\n messageCreatedAt: Joi.date()\n .required()\n .description('ISO timestamp when the message was published')\n })\n .required()\n .description('The audit message issued by the publishing service')\n\nexport const auditEvent = Joi.object<AuditEvent>()\n .keys({\n message: messageSchema\n })\n .description('The Body of the audit event')\n\nexport const auditRecord = messageSchema\n .append<AuditRecord>({\n id: idSchema,\n messageId: Joi.string().uuid().required(),\n entityId: Joi.string().required(),\n recordCreatedAt: Joi.date().required()\n })\n .description('The audit record persisted into the DB')\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","emailAddressSchema","emailResponseTimeSchema","idSchema","notificationEmailAddressSchema","onlineTextSchema","onlineUrlSchema","organisationSchema","phoneSchema","privacyNoticeUrlSchema","slugSchema","submissionGuidanceSchema","teamEmailSchema","teamNameSchema","titleSchema","formMessageDataBase","object","formId","slug","payload","optional","required","description","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","string","filename","s3Key","formUpdatedMessageData","requestType","valid","Object","values","s3Meta","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formSupportEmailChanges","address","responseTime","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","entitlementMessageData","userId","displayName","email","roles","array","items","authenticationMessageData","auditUserSchema","id","uuid","formChangesMessageData","schema","changes","previous","new","messageSchema","schemaVersion","category","source","type","entityId","traceId","createdAt","date","createdBy","data","when","switch","is","trim","FORM_CREATED","then","FORM_TITLE_UPDATED","FORM_ORGANISATION_UPDATED","FORM_TEAM_NAME_UPDATED","FORM_TEAM_EMAIL_UPDATED","FORM_SUPPORT_CONTACT_UPDATED","FORM_SUPPORT_PHONE_UPDATED","FORM_SUPPORT_EMAIL_UPDATED","FORM_SUPPORT_ONLINE_UPDATED","FORM_PRIVACY_NOTICE_UPDATED","FORM_NOTIFICATION_EMAIL_UPDATED","FORM_SUBMISSION_GUIDANCE_UPDATED","FORM_JSON_UPLOADED","FORM_UPDATED","ENTITLEMENT_CREATED","ENTITLEMENT_UPDATED","ENTITLEMENT_DELETED","FORM_DRAFT_DELETED","AUTHENTICATION_LOGIN","AUTHENTICATION_LOGOUT_MANUAL","AUTHENTICATION_LOGOUT_AUTO","AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE","otherwise","forbidden","messageCreatedAt","auditEvent","message","auditRecord","messageId","recordCreatedAt"],"sources":["../../../../src/form/form-audit/index.ts"],"sourcesContent":["import Joi, { type ObjectSchema } from 'joi'\n\nimport {\n AuditEventMessageCategory,\n AuditEventMessageSchemaVersion,\n AuditEventMessageSource,\n AuditEventMessageType,\n FormDefinitionRequestType\n} from '~/src/form/form-audit/enums.js'\nimport {\n type AuditEvent,\n type AuditMessage,\n type AuditRecord,\n type AuditUser,\n type AuthenticationMessageData,\n type ChangesMessageData,\n type EntitlementMessageData,\n type FormCreatedMessageData,\n type FormDefinitionS3Meta,\n type FormMessageChangesData,\n type FormMessageDataBase,\n type FormNotificationEmailChanges,\n type FormNotificationEmailUpdatedMessageData,\n type FormOrganisationChanges,\n type FormOrganisationUpdatedMessageData,\n type FormPrivacyNoticeChanges,\n type FormPrivacyNoticeUpdatedMessageData,\n type FormSubmissionGuidanceChanges,\n type FormSubmissionGuidanceUpdatedMessageData,\n type FormSupportContactChanges,\n type FormSupportContactUpdatedMessageData,\n type FormSupportEmailChanges,\n type FormSupportEmailUpdatedMessageData,\n type FormSupportOnlineChanges,\n type FormSupportOnlineUpdatedMessageData,\n type FormSupportPhoneChanges,\n type FormSupportPhoneUpdatedMessageData,\n type FormTeamEmailChanges,\n type FormTeamEmailUpdatedMessageData,\n type FormTeamNameChanges,\n type FormTeamNameUpdatedMessageData,\n type FormTitleChanges,\n type FormTitleUpdatedMessageData,\n type FormUpdatedMessageData,\n type FormUploadedChanges,\n type FormUploadedMessageData\n} from '~/src/form/form-audit/types.js'\nimport {\n contactSchema,\n emailAddressSchema,\n emailResponseTimeSchema,\n idSchema,\n notificationEmailAddressSchema,\n onlineTextSchema,\n onlineUrlSchema,\n organisationSchema,\n phoneSchema,\n privacyNoticeUrlSchema,\n slugSchema,\n submissionGuidanceSchema,\n teamEmailSchema,\n teamNameSchema,\n titleSchema\n} from '~/src/form/form-metadata/index.js'\n\nexport const formMessageDataBase = Joi.object<FormMessageDataBase>({\n formId: idSchema,\n slug: slugSchema,\n payload: Joi.object().optional()\n})\n .required()\n .description('The base data object for Form Messages')\n\nexport const formCreatedMessageData = formMessageDataBase\n .append<FormCreatedMessageData>({\n title: titleSchema,\n organisation: organisationSchema,\n teamName: teamNameSchema,\n teamEmail: teamEmailSchema\n })\n .required()\n .description('Message data schema for when a form is created')\n\nexport const formDefinitionS3Meta = Joi.object<FormDefinitionS3Meta>()\n .keys({\n fileId: Joi.string().required(),\n filename: Joi.string().required(),\n s3Key: Joi.string().required()\n })\n .description('Schema for form data S3 object in message')\n\nexport const formUpdatedMessageData = formMessageDataBase\n .append<FormUpdatedMessageData>({\n requestType: Joi.string()\n .valid(...Object.values(FormDefinitionRequestType))\n .required(),\n s3Meta: formDefinitionS3Meta.optional()\n })\n .required()\n\nexport const formTitleChanges = Joi.object<FormTitleChanges>()\n .keys({\n title: titleSchema\n })\n .required()\n .description('Changes schema for FORM_TITLE_UPDATED event')\n\nexport const formOrganisationChanges = Joi.object<FormOrganisationChanges>()\n .keys({\n organisation: organisationSchema\n })\n .required()\n .description('Changes schema for FORM_ORGANISATION_UPDATED event')\n\nexport const formTeamNameChanges = Joi.object<FormTeamNameChanges>()\n .keys({\n teamName: teamNameSchema\n })\n .required()\n .description('Changes schema for FORM_TEAM_NAME_UPDATED event')\n\nexport const formTeamEmailChanges = Joi.object<FormTeamEmailChanges>()\n .keys({\n teamEmail: teamEmailSchema\n })\n .required()\n .description('Changes schema for FORM_TEAM_EMAIL_UPDATED event')\n\nexport const formSupportContactChanges = Joi.object<FormSupportContactChanges>()\n .keys({\n contact: contactSchema\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_CONTACT_UPDATED event')\n\nexport const formSupportPhoneChanges = Joi.object<FormSupportPhoneChanges>()\n .keys({\n phone: phoneSchema\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_PHONE_UPDATED event')\n\nexport const formSupportOnlineChanges = Joi.object<FormSupportOnlineChanges>()\n .keys({\n url: onlineUrlSchema.optional(),\n text: onlineTextSchema.optional()\n })\n .required()\n .description('Changes schema for FORM_SUPPORT_ONLINE_UPDATED event')\n\nexport const formSupportEmailChanges = Joi.object<FormSupportEmailChanges>()\n .keys({\n address: emailAddressSchema.optional(),\n responseTime: emailResponseTimeSchema.optional()\n })\n .description('Changes schema for FORM_SUPPORT_EMAIL_UPDATED event')\n\nexport const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()\n .keys({\n privacyNoticeUrl: privacyNoticeUrlSchema\n })\n .required()\n .description('Changes schema for FORM_PRIVACY_NOTICE_UPDATED event')\n\nexport const formNotificationEmailChanges =\n Joi.object<FormNotificationEmailChanges>()\n .keys({\n notificationEmail: notificationEmailAddressSchema\n })\n .required()\n .description('Changes schema for FORM_NOTIFICATION_EMAIL_UPDATED event')\n\nexport const formSubmissionGuidanceChanges =\n Joi.object<FormSubmissionGuidanceChanges>()\n .keys({\n submissionGuidance: submissionGuidanceSchema\n })\n .required()\n .description('Changes schema for FORM_SUBMISSION_GUIDANCE_UPDATED event')\n\nexport const formUploadedChanges = Joi.object<FormUploadedChanges>()\n .keys({\n value: Joi.string().required()\n })\n .required()\n .description('Changes schema for FORM_JSON_UPLOADED event')\n\nexport const entitlementMessageData = Joi.object<EntitlementMessageData>().keys(\n {\n userId: Joi.string().required(),\n displayName: Joi.string().required(),\n email: Joi.string().email().required(),\n roles: Joi.array().items(Joi.string())\n }\n)\n\nexport const authenticationMessageData =\n Joi.object<AuthenticationMessageData>().keys({\n userId: Joi.string().required(),\n displayName: Joi.string().required()\n })\n\nexport const auditUserSchema = Joi.object<AuditUser>()\n .keys({\n id: Joi.string().uuid().required(),\n displayName: Joi.string().required()\n })\n .description('Schema for CREATED_BY audit event')\n\nexport function formChangesMessageData<T, U extends FormMessageChangesData>(\n schema: ObjectSchema<T>\n): ObjectSchema<U> {\n return formMessageDataBase.append<U>({\n changes: Joi.object<ChangesMessageData<T>>()\n .keys({\n previous: schema,\n new: schema\n })\n .description('Changes schema')\n })\n}\n\nexport const messageSchema = Joi.object<AuditMessage>()\n .keys({\n schemaVersion: Joi.string()\n .valid(...Object.values(AuditEventMessageSchemaVersion))\n .required()\n .description(\n 'The version of the AuditMessage - bumped with breaking changes'\n ),\n category: Joi.string()\n .valid(...Object.values(AuditEventMessageCategory))\n .required()\n .description('The message category - what does the entityId represent?'),\n source: Joi.string()\n .valid(...Object.values(AuditEventMessageSource))\n .required()\n .description('Source of the message - which service?'),\n type: Joi.string()\n .valid(...Object.values(AuditEventMessageType))\n .description('Event type'),\n entityId: Joi.string()\n .required()\n .description('The id of the entity the category relates to'),\n traceId: Joi.string()\n .optional()\n .description(\n 'Trace id of the event - to link events across multiple services'\n ),\n createdAt: Joi.date()\n .required()\n .description(\n 'The ISO timestamp where the action took place - should be the same as updated_at field in DB'\n ),\n createdBy: auditUserSchema\n .required()\n .description('The user who performed the action being audited'),\n data: Joi.when('type', {\n switch: [\n {\n is: Joi.string().trim().valid(AuditEventMessageType.FORM_CREATED),\n then: formCreatedMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TITLE_UPDATED),\n then: formChangesMessageData<\n FormTitleChanges,\n FormTitleUpdatedMessageData\n >(formTitleChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_ORGANISATION_UPDATED),\n then: formChangesMessageData<\n FormOrganisationChanges,\n FormOrganisationUpdatedMessageData\n >(formOrganisationChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TEAM_NAME_UPDATED),\n then: formChangesMessageData<\n FormTeamNameChanges,\n FormTeamNameUpdatedMessageData\n >(formTeamNameChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormTeamEmailChanges,\n FormTeamEmailUpdatedMessageData\n >(formTeamEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED),\n then: formChangesMessageData<\n FormSupportContactChanges,\n FormSupportContactUpdatedMessageData\n >(formSupportContactChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED),\n then: formChangesMessageData<\n FormSupportPhoneChanges,\n FormSupportPhoneUpdatedMessageData\n >(formSupportPhoneChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormSupportEmailChanges,\n FormSupportEmailUpdatedMessageData\n >(formSupportEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED),\n then: formChangesMessageData<\n FormSupportOnlineChanges,\n FormSupportOnlineUpdatedMessageData\n >(formSupportOnlineChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED),\n then: formChangesMessageData<\n FormPrivacyNoticeChanges,\n FormPrivacyNoticeUpdatedMessageData\n >(formPrivacyNoticeChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED),\n then: formChangesMessageData<\n FormNotificationEmailChanges,\n FormNotificationEmailUpdatedMessageData\n >(formNotificationEmailChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED),\n then: formChangesMessageData<\n FormSubmissionGuidanceChanges,\n FormSubmissionGuidanceUpdatedMessageData\n >(formSubmissionGuidanceChanges)\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_JSON_UPLOADED),\n then: formChangesMessageData<\n FormUploadedChanges,\n FormUploadedMessageData\n >(formUploadedChanges)\n },\n {\n is: Joi.string().trim().valid(AuditEventMessageType.FORM_UPDATED),\n then: formUpdatedMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(\n AuditEventMessageType.ENTITLEMENT_CREATED,\n AuditEventMessageType.ENTITLEMENT_UPDATED,\n AuditEventMessageType.ENTITLEMENT_DELETED\n ),\n then: entitlementMessageData\n },\n {\n is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.FORM_DRAFT_DELETED),\n then: formMessageDataBase\n },\n {\n is: Joi.string()\n .trim()\n .valid(\n AuditEventMessageType.AUTHENTICATION_LOGIN,\n AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL,\n AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO,\n AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE\n ),\n then: authenticationMessageData\n }\n ],\n otherwise: Joi.forbidden()\n }).description('The data/payload of the audit message'),\n messageCreatedAt: Joi.date()\n .required()\n .description('ISO timestamp when the message was published')\n })\n .required()\n .description('The audit message issued by the publishing service')\n\nexport const auditEvent = Joi.object<AuditEvent>()\n .keys({\n message: messageSchema\n })\n .description('The Body of the audit event')\n\nexport const auditRecord = messageSchema\n .append<AuditRecord>({\n id: idSchema,\n messageId: Joi.string().uuid().required(),\n entityId: Joi.string().required(),\n recordCreatedAt: Joi.date().required()\n })\n .description('The audit record persisted into the DB')\n"],"mappings":"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","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/form/form-audit/types.ts"],"sourcesContent":["import {\n type AuditEventMessageCategory,\n type AuditEventMessageSchemaVersion,\n type AuditEventMessageSource,\n type AuditEventMessageType,\n type FormDefinitionRequestType\n} from '~/src/form/form-audit/enums.js'\nimport { type FormMetadataContact } from '~/src/form/form-metadata/types.js'\n\nexport interface FormMessageDataBase {\n formId: string\n slug: string\n payload?: unknown\n}\n\nexport interface ChangesMessageData<T> {\n previous: T\n new: T\n}\n\nexport interface FormCreatedMessageData extends FormMessageDataBase {\n title: string\n organisation: string\n teamName: string\n teamEmail: string\n}\n\nexport interface FormTitleChanges {\n title: string\n}\n\nexport interface FormOrganisationChanges {\n organisation: string\n}\n\nexport interface FormTeamNameChanges {\n teamName: string\n}\n\nexport interface FormTeamEmailChanges {\n teamEmail: string\n}\n\nexport interface FormSupportContactChanges {\n contact?: FormMetadataContact\n}\n\nexport interface FormSupportPhoneChanges {\n phone?: string\n}\n\nexport interface FormSupportEmailChanges {\n address?: string\n responseTime?: string\n}\n\nexport interface FormSupportOnlineChanges {\n url?: string\n text?: string\n}\n\nexport interface FormPrivacyNoticeChanges {\n privacyNoticeUrl?: string\n}\n\nexport interface FormNotificationEmailChanges {\n notificationEmail?: string\n}\n\nexport interface FormSubmissionGuidanceChanges {\n submissionGuidance?: string\n}\n\nexport interface FormUploadedChanges {\n value: string\n}\n\nexport interface FormTitleUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTitleChanges>\n}\n\nexport interface FormOrganisationUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormOrganisationChanges>\n}\n\nexport interface FormTeamNameUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTeamNameChanges>\n}\n\nexport interface FormTeamEmailUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTeamEmailChanges>\n}\n\nexport interface FormSupportContactUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportContactChanges>\n}\n\nexport interface FormSupportPhoneUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportPhoneChanges>\n}\n\nexport interface FormSupportEmailUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportEmailChanges>\n}\n\nexport interface FormSupportOnlineUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportOnlineChanges>\n}\n\nexport interface FormPrivacyNoticeUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormPrivacyNoticeChanges>\n}\n\nexport interface FormNotificationEmailUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormNotificationEmailChanges>\n}\n\nexport interface FormSubmissionGuidanceUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSubmissionGuidanceChanges>\n}\n\nexport interface FormUploadedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormUploadedChanges>\n}\n\nexport interface FormDefinitionS3Meta {\n fileId: string\n filename: string\n s3Key: string\n}\n\nexport interface FormUpdatedMessageData extends FormMessageDataBase {\n requestType: FormDefinitionRequestType\n s3Meta?: FormDefinitionS3Meta\n}\n\nexport type FormMessageChangesData =\n | FormTitleUpdatedMessageData\n | FormOrganisationUpdatedMessageData\n | FormTeamNameUpdatedMessageData\n | FormTeamEmailUpdatedMessageData\n | FormSupportContactUpdatedMessageData\n | FormSupportPhoneUpdatedMessageData\n | FormSupportEmailUpdatedMessageData\n | FormSupportOnlineUpdatedMessageData\n | FormPrivacyNoticeUpdatedMessageData\n | FormNotificationEmailUpdatedMessageData\n | FormSubmissionGuidanceUpdatedMessageData\n | FormUploadedMessageData\n\nexport type FormMessageActivitiesData =\n | FormCreatedMessageData\n | FormMessageDataBase\n\nexport interface EntitlementMessageData {\n userId: string\n displayName: string\n email: string\n roles: string[]\n}\n\nexport interface AuditUser {\n id: string\n displayName: string\n}\n\nexport type MessageData =\n | FormMessageChangesData\n | FormMessageActivitiesData\n | FormUpdatedMessageData\n | EntitlementMessageData\n\nexport interface MessageBase {\n schemaVersion: AuditEventMessageSchemaVersion\n category: AuditEventMessageCategory\n source: AuditEventMessageSource\n type: AuditEventMessageType\n entityId: string\n traceId?: string\n createdAt: Date\n createdBy: AuditUser\n data?: MessageData\n messageCreatedAt: Date\n}\n\nexport interface ManagerMessageBase extends MessageBase {\n source: AuditEventMessageSource.FORMS_MANAGER\n}\nexport interface DesignerMessageBase extends MessageBase {\n source: AuditEventMessageSource.FORMS_DESIGNER\n}\n\nexport interface EntitlementMessageBase extends MessageBase {\n source: AuditEventMessageSource.ENTITLEMENT\n}\n\nexport interface FormCreatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_CREATED\n data: FormCreatedMessageData\n}\n\nexport interface FormTitleUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TITLE_UPDATED\n data: FormTitleUpdatedMessageData\n}\n\nexport interface FormOrganisationUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_ORGANISATION_UPDATED\n data: FormOrganisationUpdatedMessageData\n}\n\nexport interface FormTeamNameUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_NAME_UPDATED\n data: FormTeamNameUpdatedMessageData\n}\n\nexport interface FormTeamEmailUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED\n data: FormTeamEmailUpdatedMessageData\n}\n\nexport interface FormSupportContactUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED\n data: FormSupportContactUpdatedMessageData\n}\n\nexport interface FormSupportPhoneUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED\n data: FormSupportPhoneUpdatedMessageData\n}\n\nexport interface FormSupportEmailUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED\n data: FormSupportEmailUpdatedMessageData\n}\n\nexport interface FormSupportOnlineUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED\n data: FormSupportOnlineUpdatedMessageData\n}\n\nexport interface FormPrivacyNoticeUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormPrivacyNoticeUpdatedMessageData\n}\n\nexport interface FormNotificationEmailUpdatedMessage\n extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormNotificationEmailUpdatedMessageData\n}\n\nexport interface FormSubmissionGuidanceUpdatedMessage\n extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormSubmissionGuidanceUpdatedMessageData\n}\n\nexport interface FormUploadedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_UPLOADED\n data: FormUploadedMessageData\n}\n\nexport interface FormDownloadedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_DOWNLOADED\n}\n\nexport interface FormPublishedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PUBLISHED\n}\n\nexport interface FormDraftCreatedFromLiveMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE\n}\n\nexport interface FormLiveCreatedFromDraftMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT\n}\n\nexport interface FormDraftDeletedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_DELETED\n}\n\nexport interface FormMigratedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_MIGRATED\n}\n\nexport interface FormUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_UPDATED\n data: FormUpdatedMessageData\n}\n\nexport interface EntitlementCreatedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_CREATED\n data: EntitlementMessageData\n}\n\nexport interface EntitlementUpdatedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_UPDATED\n data: EntitlementMessageData\n}\n\nexport interface EntitlementDeletedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_DELETED\n data: EntitlementMessageData\n}\n\nexport type AuditMessage =\n | FormCreatedMessage\n | FormTitleUpdatedMessage\n | FormOrganisationUpdatedMessage\n | FormTeamNameUpdatedMessage\n | FormTeamEmailUpdatedMessage\n | FormSupportContactUpdatedMessage\n | FormSupportPhoneUpdatedMessage\n | FormSupportEmailUpdatedMessage\n | FormSupportOnlineUpdatedMessage\n | FormPrivacyNoticeUpdatedMessage\n | FormNotificationEmailUpdatedMessage\n | FormSubmissionGuidanceUpdatedMessage\n | FormUploadedMessage\n | FormDownloadedMessage\n | FormPublishedMessage\n | FormDraftCreatedFromLiveMessage\n | FormLiveCreatedFromDraftMessage\n | FormDraftDeletedMessage\n | FormMigratedMessage\n | FormUpdatedMessage\n | EntitlementCreatedMessage\n | EntitlementUpdatedMessage\n | EntitlementDeletedMessage\n\nexport interface AuditEvent {\n message: AuditMessage\n}\n\nexport interface AuditMetaBase {\n messageId: string\n recordCreatedAt: Date\n}\n\nexport interface AuditInputMeta extends AuditMetaBase {\n id: string\n}\n\nexport type AuditRecordInput = AuditMessage & AuditMetaBase\n\nexport type AuditRecord = AuditMessage & AuditInputMeta\n\nexport interface MessageBody {\n Message: string\n}\n"],"mappings":"","ignoreList":[]}
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/form/form-audit/types.ts"],"sourcesContent":["import {\n type AuditEventMessageCategory,\n type AuditEventMessageSchemaVersion,\n type AuditEventMessageSource,\n type AuditEventMessageType,\n type FormDefinitionRequestType\n} from '~/src/form/form-audit/enums.js'\nimport { type FormMetadataContact } from '~/src/form/form-metadata/types.js'\n\nexport interface FormMessageDataBase {\n formId: string\n slug: string\n payload?: unknown\n}\n\nexport interface ChangesMessageData<T> {\n previous: T\n new: T\n}\n\nexport interface FormCreatedMessageData extends FormMessageDataBase {\n title: string\n organisation: string\n teamName: string\n teamEmail: string\n}\n\nexport interface FormTitleChanges {\n title: string\n}\n\nexport interface FormOrganisationChanges {\n organisation: string\n}\n\nexport interface FormTeamNameChanges {\n teamName: string\n}\n\nexport interface FormTeamEmailChanges {\n teamEmail: string\n}\n\nexport interface FormSupportContactChanges {\n contact?: FormMetadataContact\n}\n\nexport interface FormSupportPhoneChanges {\n phone?: string\n}\n\nexport interface FormSupportEmailChanges {\n address?: string\n responseTime?: string\n}\n\nexport interface FormSupportOnlineChanges {\n url?: string\n text?: string\n}\n\nexport interface FormPrivacyNoticeChanges {\n privacyNoticeUrl?: string\n}\n\nexport interface FormNotificationEmailChanges {\n notificationEmail?: string\n}\n\nexport interface FormSubmissionGuidanceChanges {\n submissionGuidance?: string\n}\n\nexport interface FormUploadedChanges {\n value: string\n}\n\nexport interface FormTitleUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTitleChanges>\n}\n\nexport interface FormOrganisationUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormOrganisationChanges>\n}\n\nexport interface FormTeamNameUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTeamNameChanges>\n}\n\nexport interface FormTeamEmailUpdatedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormTeamEmailChanges>\n}\n\nexport interface FormSupportContactUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportContactChanges>\n}\n\nexport interface FormSupportPhoneUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportPhoneChanges>\n}\n\nexport interface FormSupportEmailUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportEmailChanges>\n}\n\nexport interface FormSupportOnlineUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSupportOnlineChanges>\n}\n\nexport interface FormPrivacyNoticeUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormPrivacyNoticeChanges>\n}\n\nexport interface FormNotificationEmailUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormNotificationEmailChanges>\n}\n\nexport interface FormSubmissionGuidanceUpdatedMessageData\n extends FormMessageDataBase {\n changes: ChangesMessageData<FormSubmissionGuidanceChanges>\n}\n\nexport interface FormUploadedMessageData extends FormMessageDataBase {\n changes: ChangesMessageData<FormUploadedChanges>\n}\n\nexport interface FormDefinitionS3Meta {\n fileId: string\n filename: string\n s3Key: string\n}\n\nexport interface FormUpdatedMessageData extends FormMessageDataBase {\n requestType: FormDefinitionRequestType\n s3Meta?: FormDefinitionS3Meta\n}\n\nexport type FormMessageChangesData =\n | FormTitleUpdatedMessageData\n | FormOrganisationUpdatedMessageData\n | FormTeamNameUpdatedMessageData\n | FormTeamEmailUpdatedMessageData\n | FormSupportContactUpdatedMessageData\n | FormSupportPhoneUpdatedMessageData\n | FormSupportEmailUpdatedMessageData\n | FormSupportOnlineUpdatedMessageData\n | FormPrivacyNoticeUpdatedMessageData\n | FormNotificationEmailUpdatedMessageData\n | FormSubmissionGuidanceUpdatedMessageData\n | FormUploadedMessageData\n\nexport type FormMessageActivitiesData =\n | FormCreatedMessageData\n | FormMessageDataBase\n\nexport interface EntitlementMessageData {\n userId: string\n displayName: string\n email: string\n roles: string[]\n}\n\nexport interface AuthenticationMessageData {\n userId: string\n displayName: string\n}\n\nexport interface AuditUser {\n id: string\n displayName: string\n}\n\nexport type MessageData =\n | FormMessageChangesData\n | FormMessageActivitiesData\n | FormUpdatedMessageData\n | EntitlementMessageData\n | AuthenticationMessageData\n\nexport interface MessageBase {\n schemaVersion: AuditEventMessageSchemaVersion\n category: AuditEventMessageCategory\n source: AuditEventMessageSource\n type: AuditEventMessageType\n entityId: string\n traceId?: string\n createdAt: Date\n createdBy: AuditUser\n data?: MessageData\n messageCreatedAt: Date\n}\n\nexport interface ManagerMessageBase extends MessageBase {\n source: AuditEventMessageSource.FORMS_MANAGER\n}\nexport interface DesignerMessageBase extends MessageBase {\n source: AuditEventMessageSource.FORMS_DESIGNER\n}\n\nexport interface EntitlementMessageBase extends MessageBase {\n source: AuditEventMessageSource.ENTITLEMENT\n}\n\nexport interface AuthenticationMessageBase extends MessageBase {\n source: AuditEventMessageSource.AUTHENTICATION\n}\n\nexport interface FormCreatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_CREATED\n data: FormCreatedMessageData\n}\n\nexport interface FormTitleUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TITLE_UPDATED\n data: FormTitleUpdatedMessageData\n}\n\nexport interface FormOrganisationUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_ORGANISATION_UPDATED\n data: FormOrganisationUpdatedMessageData\n}\n\nexport interface FormTeamNameUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_NAME_UPDATED\n data: FormTeamNameUpdatedMessageData\n}\n\nexport interface FormTeamEmailUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED\n data: FormTeamEmailUpdatedMessageData\n}\n\nexport interface FormSupportContactUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED\n data: FormSupportContactUpdatedMessageData\n}\n\nexport interface FormSupportPhoneUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED\n data: FormSupportPhoneUpdatedMessageData\n}\n\nexport interface FormSupportEmailUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED\n data: FormSupportEmailUpdatedMessageData\n}\n\nexport interface FormSupportOnlineUpdatedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED\n data: FormSupportOnlineUpdatedMessageData\n}\n\nexport interface FormPrivacyNoticeUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormPrivacyNoticeUpdatedMessageData\n}\n\nexport interface FormNotificationEmailUpdatedMessage\n extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormNotificationEmailUpdatedMessageData\n}\n\nexport interface FormSubmissionGuidanceUpdatedMessage\n extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED\n source: AuditEventMessageSource.FORMS_MANAGER\n data: FormSubmissionGuidanceUpdatedMessageData\n}\n\nexport interface FormUploadedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_UPLOADED\n data: FormUploadedMessageData\n}\n\nexport interface FormDownloadedMessage extends DesignerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_DOWNLOADED\n}\n\nexport interface FormPublishedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PUBLISHED\n}\n\nexport interface FormDraftCreatedFromLiveMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE\n}\n\nexport interface FormLiveCreatedFromDraftMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT\n}\n\nexport interface FormDraftDeletedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_DELETED\n}\n\nexport interface FormMigratedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_MIGRATED\n}\n\nexport interface FormUpdatedMessage extends ManagerMessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_UPDATED\n data: FormUpdatedMessageData\n}\n\nexport interface EntitlementCreatedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_CREATED\n data: EntitlementMessageData\n}\n\nexport interface EntitlementUpdatedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_UPDATED\n data: EntitlementMessageData\n}\n\nexport interface EntitlementDeletedMessage extends EntitlementMessageBase {\n category: AuditEventMessageCategory.ENTITLEMENT\n type: AuditEventMessageType.ENTITLEMENT_DELETED\n data: EntitlementMessageData\n}\n\nexport interface AuthenticationLoginMessage extends AuthenticationMessageBase {\n category: AuditEventMessageCategory.AUTHENTICATION\n type: AuditEventMessageType.AUTHENTICATION_LOGIN\n data: AuthenticationMessageData\n}\n\nexport interface AuthenticationLogoutManualMessage\n extends AuthenticationMessageBase {\n category: AuditEventMessageCategory.AUTHENTICATION\n type: AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL\n data: AuthenticationMessageData\n}\n\nexport interface AuthenticationLogoutAutoMessage\n extends AuthenticationMessageBase {\n category: AuditEventMessageCategory.AUTHENTICATION\n type: AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO\n data: AuthenticationMessageData\n}\n\nexport interface AuthenticationLogoutDifferentDeviceMessage\n extends AuthenticationMessageBase {\n category: AuditEventMessageCategory.AUTHENTICATION\n type: AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE\n data: AuthenticationMessageData\n}\n\nexport type AuditMessage =\n | FormCreatedMessage\n | FormTitleUpdatedMessage\n | FormOrganisationUpdatedMessage\n | FormTeamNameUpdatedMessage\n | FormTeamEmailUpdatedMessage\n | FormSupportContactUpdatedMessage\n | FormSupportPhoneUpdatedMessage\n | FormSupportEmailUpdatedMessage\n | FormSupportOnlineUpdatedMessage\n | FormPrivacyNoticeUpdatedMessage\n | FormNotificationEmailUpdatedMessage\n | FormSubmissionGuidanceUpdatedMessage\n | FormUploadedMessage\n | FormDownloadedMessage\n | FormPublishedMessage\n | FormDraftCreatedFromLiveMessage\n | FormLiveCreatedFromDraftMessage\n | FormDraftDeletedMessage\n | FormMigratedMessage\n | FormUpdatedMessage\n | EntitlementCreatedMessage\n | EntitlementUpdatedMessage\n | EntitlementDeletedMessage\n | AuthenticationLoginMessage\n | AuthenticationLogoutManualMessage\n | AuthenticationLogoutAutoMessage\n | AuthenticationLogoutDifferentDeviceMessage\n\nexport interface AuditEvent {\n message: AuditMessage\n}\n\nexport interface AuditMetaBase {\n messageId: string\n recordCreatedAt: Date\n}\n\nexport interface AuditInputMeta extends AuditMetaBase {\n id: string\n}\n\nexport type AuditRecordInput = AuditMessage & AuditMetaBase\n\nexport type AuditRecord = AuditMessage & AuditInputMeta\n\nexport interface MessageBody {\n Message: string\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -3,12 +3,14 @@ export declare enum AuditEventMessageSchemaVersion {
|
|
3
3
|
}
|
4
4
|
export declare enum AuditEventMessageCategory {
|
5
5
|
FORM = "FORM",
|
6
|
-
ENTITLEMENT = "ENTITLEMENT"
|
6
|
+
ENTITLEMENT = "ENTITLEMENT",
|
7
|
+
AUTHENTICATION = "AUTHENTICATION"
|
7
8
|
}
|
8
9
|
export declare enum AuditEventMessageSource {
|
9
10
|
FORMS_MANAGER = "FORMS_MANAGER",
|
10
11
|
FORMS_DESIGNER = "FORMS_DESIGNER",
|
11
|
-
ENTITLEMENT = "ENTITLEMENT"
|
12
|
+
ENTITLEMENT = "ENTITLEMENT",
|
13
|
+
AUTHENTICATION = "AUTHENTICATION"
|
12
14
|
}
|
13
15
|
export declare enum AuditEventMessageType {
|
14
16
|
FORM_CREATED = "FORM_CREATED",
|
@@ -33,7 +35,11 @@ export declare enum AuditEventMessageType {
|
|
33
35
|
FORM_UPDATED = "FORM_UPDATED",
|
34
36
|
ENTITLEMENT_CREATED = "ENTITLEMENT_CREATED",
|
35
37
|
ENTITLEMENT_UPDATED = "ENTITLEMENT_UPDATED",
|
36
|
-
ENTITLEMENT_DELETED = "ENTITLEMENT_DELETED"
|
38
|
+
ENTITLEMENT_DELETED = "ENTITLEMENT_DELETED",
|
39
|
+
AUTHENTICATION_LOGIN = "AUTHENTICATION_LOGIN",
|
40
|
+
AUTHENTICATION_LOGOUT_MANUAL = "AUTHENTICATION_LOGOUT_MANUAL",
|
41
|
+
AUTHENTICATION_LOGOUT_AUTO = "AUTHENTICATION_LOGOUT_AUTO",
|
42
|
+
AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE = "AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE"
|
37
43
|
}
|
38
44
|
export declare enum FormDefinitionRequestType {
|
39
45
|
REPLACE_DRAFT = "REPLACE_DRAFT",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,8BAA8B;IACxC,EAAE,IAAI;CACP;AAED,oBAAY,yBAAyB;IACnC,IAAI,SAAS;IACb,WAAW,gBAAgB;
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,8BAA8B;IACxC,EAAE,IAAI;CACP;AAED,oBAAY,yBAAyB;IACnC,IAAI,SAAS;IACb,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;CAClC;AAED,oBAAY,uBAAuB;IACjC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;CAClC;AAED,oBAAY,qBAAqB;IAE/B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,kBAAkB,uBAAuB;IACzC,yBAAyB,8BAA8B;IACvD,sBAAsB,2BAA2B;IACjD,uBAAuB,4BAA4B;IACnD,4BAA4B,iCAAiC;IAC7D,0BAA0B,+BAA+B;IACzD,0BAA0B,+BAA+B;IACzD,2BAA2B,gCAAgC;IAC3D,2BAA2B,gCAAgC;IAC3D,+BAA+B,oCAAoC;IACnE,gCAAgC,qCAAqC;IACrE,kBAAkB,uBAAuB;IACzC,oBAAoB,yBAAyB;IAC7C,4BAA4B,iCAAiC;IAC7D,4BAA4B,iCAAiC;IAC7D,kBAAkB,uBAAuB;IACzC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAG7B,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAG3C,oBAAoB,yBAAyB;IAC7C,4BAA4B,iCAAiC;IAC7D,0BAA0B,+BAA+B;IACzD,sCAAsC,2CAA2C;CAClF;AAED,oBAAY,yBAAyB;IACnC,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,kBAAkB,uBAAuB;IACzC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;IACzC,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;CAC1C"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import Joi, { type ObjectSchema } from 'joi';
|
2
|
-
import { type AuditEvent, type AuditMessage, type AuditRecord, type AuditUser, type EntitlementMessageData, type FormCreatedMessageData, type FormDefinitionS3Meta, type FormMessageChangesData, type FormMessageDataBase, type FormNotificationEmailChanges, type FormOrganisationChanges, type FormPrivacyNoticeChanges, type FormSubmissionGuidanceChanges, type FormSupportContactChanges, type FormSupportEmailChanges, type FormSupportOnlineChanges, type FormSupportPhoneChanges, type FormTeamEmailChanges, type FormTeamNameChanges, type FormTitleChanges, type FormUpdatedMessageData, type FormUploadedChanges } from '../../form/form-audit/types.js';
|
2
|
+
import { type AuditEvent, type AuditMessage, type AuditRecord, type AuditUser, type AuthenticationMessageData, type EntitlementMessageData, type FormCreatedMessageData, type FormDefinitionS3Meta, type FormMessageChangesData, type FormMessageDataBase, type FormNotificationEmailChanges, type FormOrganisationChanges, type FormPrivacyNoticeChanges, type FormSubmissionGuidanceChanges, type FormSupportContactChanges, type FormSupportEmailChanges, type FormSupportOnlineChanges, type FormSupportPhoneChanges, type FormTeamEmailChanges, type FormTeamNameChanges, type FormTitleChanges, type FormUpdatedMessageData, type FormUploadedChanges } from '../../form/form-audit/types.js';
|
3
3
|
export declare const formMessageDataBase: Joi.ObjectSchema<FormMessageDataBase>;
|
4
4
|
export declare const formCreatedMessageData: Joi.ObjectSchema<FormCreatedMessageData>;
|
5
5
|
export declare const formDefinitionS3Meta: Joi.ObjectSchema<FormDefinitionS3Meta>;
|
@@ -17,6 +17,7 @@ export declare const formNotificationEmailChanges: Joi.ObjectSchema<FormNotifica
|
|
17
17
|
export declare const formSubmissionGuidanceChanges: Joi.ObjectSchema<FormSubmissionGuidanceChanges>;
|
18
18
|
export declare const formUploadedChanges: Joi.ObjectSchema<FormUploadedChanges>;
|
19
19
|
export declare const entitlementMessageData: Joi.ObjectSchema<EntitlementMessageData>;
|
20
|
+
export declare const authenticationMessageData: Joi.ObjectSchema<AuthenticationMessageData>;
|
20
21
|
export declare const auditUserSchema: Joi.ObjectSchema<AuditUser>;
|
21
22
|
export declare function formChangesMessageData<T, U extends FormMessageChangesData>(schema: ObjectSchema<T>): ObjectSchema<U>;
|
22
23
|
export declare const messageSchema: Joi.ObjectSchema<AuditMessage>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AAS5C,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AAS5C,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,yBAAyB,EAE9B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,4BAA4B,EAEjC,KAAK,uBAAuB,EAE5B,KAAK,wBAAwB,EAE7B,KAAK,6BAA6B,EAElC,KAAK,yBAAyB,EAE9B,KAAK,uBAAuB,EAE5B,KAAK,wBAAwB,EAE7B,KAAK,uBAAuB,EAE5B,KAAK,oBAAoB,EAEzB,KAAK,mBAAmB,EAExB,KAAK,gBAAgB,EAErB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EAEzB,MAAM,gCAAgC,CAAA;AAmBvC,eAAO,MAAM,mBAAmB,uCAMwB,CAAA;AAExD,eAAO,MAAM,sBAAsB,0CAQ6B,CAAA;AAEhE,eAAO,MAAM,oBAAoB,wCAM0B,CAAA;AAE3D,eAAO,MAAM,sBAAsB,0CAOtB,CAAA;AAEb,eAAO,MAAM,gBAAgB,oCAKgC,CAAA;AAE7D,eAAO,MAAM,uBAAuB,2CAKgC,CAAA;AAEpE,eAAO,MAAM,mBAAmB,uCAKiC,CAAA;AAEjE,eAAO,MAAM,oBAAoB,wCAKiC,CAAA;AAElE,eAAO,MAAM,yBAAyB,6CAKiC,CAAA;AAEvE,eAAO,MAAM,uBAAuB,2CAKiC,CAAA;AAErE,eAAO,MAAM,wBAAwB,4CAMiC,CAAA;AAEtE,eAAO,MAAM,uBAAuB,2CAKiC,CAAA;AAErE,eAAO,MAAM,wBAAwB,4CAKiC,CAAA;AAEtE,eAAO,MAAM,4BAA4B,gDAMmC,CAAA;AAE5E,eAAO,MAAM,6BAA6B,iDAMmC,CAAA;AAE7E,eAAO,MAAM,mBAAmB,uCAK6B,CAAA;AAE7D,eAAO,MAAM,sBAAsB,0CAOlC,CAAA;AAED,eAAO,MAAM,yBAAyB,6CAIlC,CAAA;AAEJ,eAAO,MAAM,eAAe,6BAKuB,CAAA;AAEnD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,CAAC,SAAS,sBAAsB,EACxE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GACtB,YAAY,CAAC,CAAC,CAAC,CASjB;AAED,eAAO,MAAM,aAAa,gCA4L0C,CAAA;AAEpE,eAAO,MAAM,UAAU,8BAIsB,CAAA;AAE7C,eAAO,MAAM,WAAW,+BAOgC,CAAA"}
|
@@ -106,11 +106,15 @@ export interface EntitlementMessageData {
|
|
106
106
|
email: string;
|
107
107
|
roles: string[];
|
108
108
|
}
|
109
|
+
export interface AuthenticationMessageData {
|
110
|
+
userId: string;
|
111
|
+
displayName: string;
|
112
|
+
}
|
109
113
|
export interface AuditUser {
|
110
114
|
id: string;
|
111
115
|
displayName: string;
|
112
116
|
}
|
113
|
-
export type MessageData = FormMessageChangesData | FormMessageActivitiesData | FormUpdatedMessageData | EntitlementMessageData;
|
117
|
+
export type MessageData = FormMessageChangesData | FormMessageActivitiesData | FormUpdatedMessageData | EntitlementMessageData | AuthenticationMessageData;
|
114
118
|
export interface MessageBase {
|
115
119
|
schemaVersion: AuditEventMessageSchemaVersion;
|
116
120
|
category: AuditEventMessageCategory;
|
@@ -132,6 +136,9 @@ export interface DesignerMessageBase extends MessageBase {
|
|
132
136
|
export interface EntitlementMessageBase extends MessageBase {
|
133
137
|
source: AuditEventMessageSource.ENTITLEMENT;
|
134
138
|
}
|
139
|
+
export interface AuthenticationMessageBase extends MessageBase {
|
140
|
+
source: AuditEventMessageSource.AUTHENTICATION;
|
141
|
+
}
|
135
142
|
export interface FormCreatedMessage extends ManagerMessageBase {
|
136
143
|
category: AuditEventMessageCategory.FORM;
|
137
144
|
type: AuditEventMessageType.FORM_CREATED;
|
@@ -244,7 +251,27 @@ export interface EntitlementDeletedMessage extends EntitlementMessageBase {
|
|
244
251
|
type: AuditEventMessageType.ENTITLEMENT_DELETED;
|
245
252
|
data: EntitlementMessageData;
|
246
253
|
}
|
247
|
-
export
|
254
|
+
export interface AuthenticationLoginMessage extends AuthenticationMessageBase {
|
255
|
+
category: AuditEventMessageCategory.AUTHENTICATION;
|
256
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGIN;
|
257
|
+
data: AuthenticationMessageData;
|
258
|
+
}
|
259
|
+
export interface AuthenticationLogoutManualMessage extends AuthenticationMessageBase {
|
260
|
+
category: AuditEventMessageCategory.AUTHENTICATION;
|
261
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL;
|
262
|
+
data: AuthenticationMessageData;
|
263
|
+
}
|
264
|
+
export interface AuthenticationLogoutAutoMessage extends AuthenticationMessageBase {
|
265
|
+
category: AuditEventMessageCategory.AUTHENTICATION;
|
266
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO;
|
267
|
+
data: AuthenticationMessageData;
|
268
|
+
}
|
269
|
+
export interface AuthenticationLogoutDifferentDeviceMessage extends AuthenticationMessageBase {
|
270
|
+
category: AuditEventMessageCategory.AUTHENTICATION;
|
271
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE;
|
272
|
+
data: AuthenticationMessageData;
|
273
|
+
}
|
274
|
+
export type AuditMessage = FormCreatedMessage | FormTitleUpdatedMessage | FormOrganisationUpdatedMessage | FormTeamNameUpdatedMessage | FormTeamEmailUpdatedMessage | FormSupportContactUpdatedMessage | FormSupportPhoneUpdatedMessage | FormSupportEmailUpdatedMessage | FormSupportOnlineUpdatedMessage | FormPrivacyNoticeUpdatedMessage | FormNotificationEmailUpdatedMessage | FormSubmissionGuidanceUpdatedMessage | FormUploadedMessage | FormDownloadedMessage | FormPublishedMessage | FormDraftCreatedFromLiveMessage | FormLiveCreatedFromDraftMessage | FormDraftDeletedMessage | FormMigratedMessage | FormUpdatedMessage | EntitlementCreatedMessage | EntitlementUpdatedMessage | EntitlementDeletedMessage | AuthenticationLoginMessage | AuthenticationLogoutManualMessage | AuthenticationLogoutAutoMessage | AuthenticationLogoutDifferentDeviceMessage;
|
248
275
|
export interface AuditEvent {
|
249
276
|
message: AuditMessage;
|
250
277
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/types.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -4,13 +4,15 @@ export enum AuditEventMessageSchemaVersion {
|
|
4
4
|
|
5
5
|
export enum AuditEventMessageCategory {
|
6
6
|
FORM = 'FORM',
|
7
|
-
ENTITLEMENT = 'ENTITLEMENT'
|
7
|
+
ENTITLEMENT = 'ENTITLEMENT',
|
8
|
+
AUTHENTICATION = 'AUTHENTICATION'
|
8
9
|
}
|
9
10
|
|
10
11
|
export enum AuditEventMessageSource {
|
11
12
|
FORMS_MANAGER = 'FORMS_MANAGER',
|
12
13
|
FORMS_DESIGNER = 'FORMS_DESIGNER',
|
13
|
-
ENTITLEMENT = 'ENTITLEMENT'
|
14
|
+
ENTITLEMENT = 'ENTITLEMENT',
|
15
|
+
AUTHENTICATION = 'AUTHENTICATION'
|
14
16
|
}
|
15
17
|
|
16
18
|
export enum AuditEventMessageType {
|
@@ -39,7 +41,13 @@ export enum AuditEventMessageType {
|
|
39
41
|
// ENTITLEMENT message types
|
40
42
|
ENTITLEMENT_CREATED = 'ENTITLEMENT_CREATED',
|
41
43
|
ENTITLEMENT_UPDATED = 'ENTITLEMENT_UPDATED',
|
42
|
-
ENTITLEMENT_DELETED = 'ENTITLEMENT_DELETED'
|
44
|
+
ENTITLEMENT_DELETED = 'ENTITLEMENT_DELETED',
|
45
|
+
|
46
|
+
// AUTHENTICATION message types
|
47
|
+
AUTHENTICATION_LOGIN = 'AUTHENTICATION_LOGIN',
|
48
|
+
AUTHENTICATION_LOGOUT_MANUAL = 'AUTHENTICATION_LOGOUT_MANUAL',
|
49
|
+
AUTHENTICATION_LOGOUT_AUTO = 'AUTHENTICATION_LOGOUT_AUTO',
|
50
|
+
AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE = 'AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE'
|
43
51
|
}
|
44
52
|
|
45
53
|
export enum FormDefinitionRequestType {
|
@@ -12,6 +12,7 @@ import {
|
|
12
12
|
type AuditMessage,
|
13
13
|
type AuditRecord,
|
14
14
|
type AuditUser,
|
15
|
+
type AuthenticationMessageData,
|
15
16
|
type ChangesMessageData,
|
16
17
|
type EntitlementMessageData,
|
17
18
|
type FormCreatedMessageData,
|
@@ -141,22 +142,22 @@ export const formSupportPhoneChanges = Joi.object<FormSupportPhoneChanges>()
|
|
141
142
|
|
142
143
|
export const formSupportOnlineChanges = Joi.object<FormSupportOnlineChanges>()
|
143
144
|
.keys({
|
144
|
-
url: onlineUrlSchema,
|
145
|
-
text: onlineTextSchema
|
145
|
+
url: onlineUrlSchema.optional(),
|
146
|
+
text: onlineTextSchema.optional()
|
146
147
|
})
|
147
148
|
.required()
|
148
149
|
.description('Changes schema for FORM_SUPPORT_ONLINE_UPDATED event')
|
149
150
|
|
150
151
|
export const formSupportEmailChanges = Joi.object<FormSupportEmailChanges>()
|
151
152
|
.keys({
|
152
|
-
address: emailAddressSchema,
|
153
|
-
responseTime: emailResponseTimeSchema
|
153
|
+
address: emailAddressSchema.optional(),
|
154
|
+
responseTime: emailResponseTimeSchema.optional()
|
154
155
|
})
|
155
156
|
.description('Changes schema for FORM_SUPPORT_EMAIL_UPDATED event')
|
156
157
|
|
157
158
|
export const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()
|
158
159
|
.keys({
|
159
|
-
privacyNoticeUrl: privacyNoticeUrlSchema
|
160
|
+
privacyNoticeUrl: privacyNoticeUrlSchema
|
160
161
|
})
|
161
162
|
.required()
|
162
163
|
.description('Changes schema for FORM_PRIVACY_NOTICE_UPDATED event')
|
@@ -164,7 +165,7 @@ export const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()
|
|
164
165
|
export const formNotificationEmailChanges =
|
165
166
|
Joi.object<FormNotificationEmailChanges>()
|
166
167
|
.keys({
|
167
|
-
notificationEmail: notificationEmailAddressSchema
|
168
|
+
notificationEmail: notificationEmailAddressSchema
|
168
169
|
})
|
169
170
|
.required()
|
170
171
|
.description('Changes schema for FORM_NOTIFICATION_EMAIL_UPDATED event')
|
@@ -172,7 +173,7 @@ export const formNotificationEmailChanges =
|
|
172
173
|
export const formSubmissionGuidanceChanges =
|
173
174
|
Joi.object<FormSubmissionGuidanceChanges>()
|
174
175
|
.keys({
|
175
|
-
submissionGuidance: submissionGuidanceSchema
|
176
|
+
submissionGuidance: submissionGuidanceSchema
|
176
177
|
})
|
177
178
|
.required()
|
178
179
|
.description('Changes schema for FORM_SUBMISSION_GUIDANCE_UPDATED event')
|
@@ -193,6 +194,12 @@ export const entitlementMessageData = Joi.object<EntitlementMessageData>().keys(
|
|
193
194
|
}
|
194
195
|
)
|
195
196
|
|
197
|
+
export const authenticationMessageData =
|
198
|
+
Joi.object<AuthenticationMessageData>().keys({
|
199
|
+
userId: Joi.string().required(),
|
200
|
+
displayName: Joi.string().required()
|
201
|
+
})
|
202
|
+
|
196
203
|
export const auditUserSchema = Joi.object<AuditUser>()
|
197
204
|
.keys({
|
198
205
|
id: Joi.string().uuid().required(),
|
@@ -369,7 +376,11 @@ export const messageSchema = Joi.object<AuditMessage>()
|
|
369
376
|
{
|
370
377
|
is: Joi.string()
|
371
378
|
.trim()
|
372
|
-
.valid(
|
379
|
+
.valid(
|
380
|
+
AuditEventMessageType.ENTITLEMENT_CREATED,
|
381
|
+
AuditEventMessageType.ENTITLEMENT_UPDATED,
|
382
|
+
AuditEventMessageType.ENTITLEMENT_DELETED
|
383
|
+
),
|
373
384
|
then: entitlementMessageData
|
374
385
|
},
|
375
386
|
{
|
@@ -381,14 +392,13 @@ export const messageSchema = Joi.object<AuditMessage>()
|
|
381
392
|
{
|
382
393
|
is: Joi.string()
|
383
394
|
.trim()
|
384
|
-
.valid(
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
then: entitlementMessageData
|
395
|
+
.valid(
|
396
|
+
AuditEventMessageType.AUTHENTICATION_LOGIN,
|
397
|
+
AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL,
|
398
|
+
AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO,
|
399
|
+
AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE
|
400
|
+
),
|
401
|
+
then: authenticationMessageData
|
392
402
|
}
|
393
403
|
],
|
394
404
|
otherwise: Joi.forbidden()
|
@@ -167,6 +167,11 @@ export interface EntitlementMessageData {
|
|
167
167
|
roles: string[]
|
168
168
|
}
|
169
169
|
|
170
|
+
export interface AuthenticationMessageData {
|
171
|
+
userId: string
|
172
|
+
displayName: string
|
173
|
+
}
|
174
|
+
|
170
175
|
export interface AuditUser {
|
171
176
|
id: string
|
172
177
|
displayName: string
|
@@ -177,6 +182,7 @@ export type MessageData =
|
|
177
182
|
| FormMessageActivitiesData
|
178
183
|
| FormUpdatedMessageData
|
179
184
|
| EntitlementMessageData
|
185
|
+
| AuthenticationMessageData
|
180
186
|
|
181
187
|
export interface MessageBase {
|
182
188
|
schemaVersion: AuditEventMessageSchemaVersion
|
@@ -202,6 +208,10 @@ export interface EntitlementMessageBase extends MessageBase {
|
|
202
208
|
source: AuditEventMessageSource.ENTITLEMENT
|
203
209
|
}
|
204
210
|
|
211
|
+
export interface AuthenticationMessageBase extends MessageBase {
|
212
|
+
source: AuditEventMessageSource.AUTHENTICATION
|
213
|
+
}
|
214
|
+
|
205
215
|
export interface FormCreatedMessage extends ManagerMessageBase {
|
206
216
|
category: AuditEventMessageCategory.FORM
|
207
217
|
type: AuditEventMessageType.FORM_CREATED
|
@@ -339,6 +349,33 @@ export interface EntitlementDeletedMessage extends EntitlementMessageBase {
|
|
339
349
|
data: EntitlementMessageData
|
340
350
|
}
|
341
351
|
|
352
|
+
export interface AuthenticationLoginMessage extends AuthenticationMessageBase {
|
353
|
+
category: AuditEventMessageCategory.AUTHENTICATION
|
354
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGIN
|
355
|
+
data: AuthenticationMessageData
|
356
|
+
}
|
357
|
+
|
358
|
+
export interface AuthenticationLogoutManualMessage
|
359
|
+
extends AuthenticationMessageBase {
|
360
|
+
category: AuditEventMessageCategory.AUTHENTICATION
|
361
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_MANUAL
|
362
|
+
data: AuthenticationMessageData
|
363
|
+
}
|
364
|
+
|
365
|
+
export interface AuthenticationLogoutAutoMessage
|
366
|
+
extends AuthenticationMessageBase {
|
367
|
+
category: AuditEventMessageCategory.AUTHENTICATION
|
368
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_AUTO
|
369
|
+
data: AuthenticationMessageData
|
370
|
+
}
|
371
|
+
|
372
|
+
export interface AuthenticationLogoutDifferentDeviceMessage
|
373
|
+
extends AuthenticationMessageBase {
|
374
|
+
category: AuditEventMessageCategory.AUTHENTICATION
|
375
|
+
type: AuditEventMessageType.AUTHENTICATION_LOGOUT_DIFFERENT_DEVICE
|
376
|
+
data: AuthenticationMessageData
|
377
|
+
}
|
378
|
+
|
342
379
|
export type AuditMessage =
|
343
380
|
| FormCreatedMessage
|
344
381
|
| FormTitleUpdatedMessage
|
@@ -363,6 +400,10 @@ export type AuditMessage =
|
|
363
400
|
| EntitlementCreatedMessage
|
364
401
|
| EntitlementUpdatedMessage
|
365
402
|
| EntitlementDeletedMessage
|
403
|
+
| AuthenticationLoginMessage
|
404
|
+
| AuthenticationLogoutManualMessage
|
405
|
+
| AuthenticationLogoutAutoMessage
|
406
|
+
| AuthenticationLogoutDifferentDeviceMessage
|
366
407
|
|
367
408
|
export interface AuditEvent {
|
368
409
|
message: AuditMessage
|