@defra/forms-model 3.0.523 → 3.0.524
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 +17 -0
- package/dist/module/form/form-audit/enums.js.map +1 -1
- package/dist/module/form/form-audit/index.js +13 -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 +16 -0
- package/dist/types/form/form-audit/enums.d.ts.map +1 -1
- package/dist/types/form/form-audit/index.d.ts +3 -2
- package/dist/types/form/form-audit/index.d.ts.map +1 -1
- package/dist/types/form/form-audit/types.d.ts +12 -5
- package/dist/types/form/form-audit/types.d.ts.map +1 -1
- package/package.json +1 -2
- package/src/form/form-audit/enums.ts +17 -0
- package/src/form/form-audit/index.ts +35 -20
- package/src/form/form-audit/types.ts +14 -6
@@ -36,4 +36,21 @@ export let AuditEventMessageType = /*#__PURE__*/function (AuditEventMessageType)
|
|
36
36
|
AuditEventMessageType["FORM_UPDATED"] = "FORM_UPDATED";
|
37
37
|
return AuditEventMessageType;
|
38
38
|
}({});
|
39
|
+
export let FormDefinitionRequestType = /*#__PURE__*/function (FormDefinitionRequestType) {
|
40
|
+
FormDefinitionRequestType["CREATE_COMPONENT"] = "CREATE_COMPONENT";
|
41
|
+
FormDefinitionRequestType["UPDATE_COMPONENT"] = "UPDATE_COMPONENT";
|
42
|
+
FormDefinitionRequestType["DELETE_COMPONENT"] = "DELETE_COMPONENT";
|
43
|
+
FormDefinitionRequestType["ADD_CONDITION"] = "ADD_CONDITION";
|
44
|
+
FormDefinitionRequestType["UPDATE_CONDITION"] = "UPDATE_CONDITION";
|
45
|
+
FormDefinitionRequestType["REMOVE_CONDITION"] = "REMOVE_CONDITION";
|
46
|
+
FormDefinitionRequestType["REORDER_PAGES"] = "REORDER_PAGES";
|
47
|
+
FormDefinitionRequestType["REORDER_COMPONENTS"] = "REORDER_COMPONENTS";
|
48
|
+
FormDefinitionRequestType["ADD_LIST"] = "ADD_LIST";
|
49
|
+
FormDefinitionRequestType["UPDATE_LIST"] = "UPDATE_LIST";
|
50
|
+
FormDefinitionRequestType["REMOVE_LIST"] = "REMOVE_LIST";
|
51
|
+
FormDefinitionRequestType["CREATE_PAGE"] = "CREATE_PAGE";
|
52
|
+
FormDefinitionRequestType["UPDATE_PAGE_FIELDS"] = "UPDATE_PAGE_FIELDS";
|
53
|
+
FormDefinitionRequestType["DELETE_PAGE"] = "DELETE_PAGE";
|
54
|
+
return FormDefinitionRequestType;
|
55
|
+
}({});
|
39
56
|
//# sourceMappingURL=enums.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"enums.js","names":["AuditEventMessageSchemaVersion","AuditEventMessageCategory","AuditEventMessageSubCategory","AuditEventMessageType"],"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 AuditEventMessageSubCategory {\n FORM_METADATA = 'FORM_METADATA',\n FORM_DEFINITION = 'FORM_DEFINITION',\n FORM_SUBMISSION = 'FORM_SUBMISSION'\n}\n\nexport enum AuditEventMessageType {\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"],"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;AAKrC,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA;AAMxC,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;EAAA,OAArBA,qBAAqB;AAAA","ignoreList":[]}
|
1
|
+
{"version":3,"file":"enums.js","names":["AuditEventMessageSchemaVersion","AuditEventMessageCategory","AuditEventMessageSubCategory","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 AuditEventMessageSubCategory {\n FORM_METADATA = 'FORM_METADATA',\n FORM_DEFINITION = 'FORM_DEFINITION',\n FORM_SUBMISSION = 'FORM_SUBMISSION'\n}\n\nexport enum AuditEventMessageType {\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\nexport enum FormDefinitionRequestType {\n CREATE_COMPONENT = 'CREATE_COMPONENT',\n UPDATE_COMPONENT = 'UPDATE_COMPONENT',\n DELETE_COMPONENT = 'DELETE_COMPONENT',\n ADD_CONDITION = 'ADD_CONDITION',\n UPDATE_CONDITION = 'UPDATE_CONDITION',\n REMOVE_CONDITION = 'REMOVE_CONDITION',\n REORDER_PAGES = 'REORDER_PAGES',\n REORDER_COMPONENTS = 'REORDER_COMPONENTS',\n ADD_LIST = 'ADD_LIST',\n UPDATE_LIST = 'UPDATE_LIST',\n REMOVE_LIST = 'REMOVE_LIST',\n CREATE_PAGE = 'CREATE_PAGE',\n UPDATE_PAGE_FIELDS = 'UPDATE_PAGE_FIELDS',\n DELETE_PAGE = 'DELETE_PAGE'\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;AAKrC,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA;AAMxC,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;EAAA,OAArBA,qBAAqB;AAAA;AAuBjC,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;EAAA,OAAzBA,yBAAyB;AAAA","ignoreList":[]}
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import Joi from 'joi';
|
2
|
-
import {
|
3
|
-
import { AuditEventMessageCategory, AuditEventMessageSchemaVersion, AuditEventMessageType } from "./enums.js";
|
2
|
+
import { AuditEventMessageCategory, AuditEventMessageSchemaVersion, AuditEventMessageType, FormDefinitionRequestType } from "./enums.js";
|
4
3
|
import { contactSchema } from "../form-metadata/index.js";
|
5
4
|
export const formMessageDataBase = Joi.object({
|
6
5
|
formId: Joi.string().required(),
|
@@ -12,17 +11,18 @@ export const formCreatedMessageData = formMessageDataBase.append({
|
|
12
11
|
teamName: Joi.string().required(),
|
13
12
|
teamEmail: Joi.string().required()
|
14
13
|
});
|
15
|
-
const
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
export const formUpdatedMessageData =
|
25
|
-
|
14
|
+
export const formDefinitionS3Meta = Joi.object().keys({
|
15
|
+
fileId: Joi.string().required(),
|
16
|
+
filename: Joi.string().required(),
|
17
|
+
s3Key: Joi.string().required()
|
18
|
+
});
|
19
|
+
export const formDefinitionMessageBase = formMessageDataBase.append({
|
20
|
+
s3Meta: formDefinitionS3Meta.optional()
|
21
|
+
});
|
22
|
+
const allowedDefinitionRequestTypes = [FormDefinitionRequestType.CREATE_COMPONENT, FormDefinitionRequestType.UPDATE_COMPONENT, FormDefinitionRequestType.DELETE_COMPONENT, FormDefinitionRequestType.ADD_CONDITION, FormDefinitionRequestType.UPDATE_CONDITION, FormDefinitionRequestType.REMOVE_CONDITION, FormDefinitionRequestType.REORDER_PAGES, FormDefinitionRequestType.REORDER_COMPONENTS, FormDefinitionRequestType.ADD_LIST, FormDefinitionRequestType.UPDATE_LIST, FormDefinitionRequestType.REMOVE_LIST, FormDefinitionRequestType.CREATE_PAGE, FormDefinitionRequestType.UPDATE_PAGE_FIELDS, FormDefinitionRequestType.DELETE_PAGE];
|
23
|
+
export const formUpdatedMessageData = formDefinitionMessageBase.append({
|
24
|
+
payload: Joi.object().required(),
|
25
|
+
requestType: Joi.string().valid(...allowedDefinitionRequestTypes).required()
|
26
26
|
});
|
27
27
|
export const formTitleChanges = Joi.object().keys({
|
28
28
|
title: Joi.string().required()
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","names":["Joi","Operation","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageType","contactSchema","formMessageDataBase","object","formId","string","required","slug","formCreatedMessageData","append","title","organisation","teamName","teamEmail","allowedOperations","ADD","REMOVE","UPDATE","formChangeSet","array","items","keys","type","valid","key","embeddedKey","optional","value","any","oldValue","changes","link","id","formUpdatedMessageData","changeSet","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","formSupportEmailChanges","address","email","responseTime","formChangesMessageData","schema","previous","new","auditUserSchema","uuid","displayName","validCategories","FORM","ENTITLEMENT","validTypes","FORM_CREATED","FORM_PUBLISHED","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_UPDATED","FORM_JSON_UPLOADED","FORM_JSON_DOWNLOADED","FORM_DRAFT_CREATED_FROM_LIVE","FORM_LIVE_CREATED_FROM_DRAFT","FORM_DRAFT_DELETED","FORM_MIGRATED","validMessageSchemaVersions","V1","messageSchema","entityId","schemaVersion","category","createdAt","date","createdBy","data","when","switch","is","trim","then","messageCreatedAt","auditEvent","message","auditRecord","messageId","recordCreatedAt"],"sources":["../../../../src/form/form-audit/index.ts"],"sourcesContent":["import Joi, { type ObjectSchema } from 'joi'\nimport { Operation } from 'json-diff-ts'\n\nimport {\n AuditEventMessageCategory,\n AuditEventMessageSchemaVersion,\n AuditEventMessageType\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 FormChangeSet,\n type FormCreatedMessageData,\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 { contactSchema } from '~/src/form/form-metadata/index.js'\n\nexport const formMessageDataBase = Joi.object<FormMessageDataBase>({\n formId: Joi.string().required(),\n slug: Joi.string().required()\n})\n\nexport const formCreatedMessageData =\n formMessageDataBase.append<FormCreatedMessageData>({\n title: Joi.string().required(),\n organisation: Joi.string().required(),\n teamName: Joi.string().required(),\n teamEmail: Joi.string().required()\n })\n\nconst allowedOperations = [Operation.ADD, Operation.REMOVE, Operation.UPDATE]\n\nexport const formChangeSet = Joi.array().items(\n Joi.object<FormChangeSet>()\n .keys({\n type: Joi.string()\n .valid(...allowedOperations)\n .required(),\n key: Joi.string().required(),\n embeddedKey: Joi.string().optional(),\n value: Joi.any().optional(),\n oldValue: Joi.any().optional(),\n changes: Joi.array().items(Joi.link('#formChangeSet')).optional()\n })\n .id('formChangeSet')\n)\n\nexport const formUpdatedMessageData =\n formMessageDataBase.append<FormUpdatedMessageData>({\n changeSet: formChangeSet.required()\n })\n\nexport const formTitleChanges = Joi.object<FormTitleChanges>()\n .keys({\n title: Joi.string().required()\n })\n .required()\n\nexport const formOrganisationChanges = Joi.object<FormOrganisationChanges>()\n .keys({\n organisation: Joi.string().required()\n })\n .required()\n\nexport const formTeamNameChanges = Joi.object<FormTeamNameChanges>()\n .keys({\n teamName: Joi.string().required()\n })\n .required()\n\nexport const formTeamEmailChanges = Joi.object<FormTeamEmailChanges>()\n .keys({\n teamEmail: Joi.string().required()\n })\n .required()\n\nexport const formSupportContactChanges = Joi.object<FormSupportContactChanges>()\n .keys({\n contact: contactSchema\n })\n .required()\n\nexport const formSupportPhoneChanges = Joi.object<FormSupportPhoneChanges>()\n .keys({\n phone: Joi.string().required()\n })\n .required()\n\nexport const formSupportOnlineChanges = Joi.object<FormSupportOnlineChanges>()\n .keys({\n url: Joi.string().required(),\n text: Joi.string().required()\n })\n .required()\n\nexport const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()\n .keys({\n privacyNoticeUrl: Joi.string()\n })\n .required()\n\nexport const formNotificationEmailChanges =\n Joi.object<FormNotificationEmailChanges>()\n .keys({\n notificationEmail: Joi.string()\n })\n .required()\n\nexport const formSubmissionGuidanceChanges =\n Joi.object<FormSubmissionGuidanceChanges>()\n .keys({\n submissionGuidance: Joi.string()\n })\n .required()\n\nexport const formUploadedChanges = Joi.object<FormUploadedChanges>()\n .keys({\n value: Joi.string().required()\n })\n .required()\n\nexport const formSupportEmailChanges =\n Joi.object<FormSupportEmailChanges>().keys({\n address: Joi.string().email().required(),\n responseTime: Joi.string().required()\n })\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>>().keys({\n previous: schema,\n new: schema\n })\n })\n}\n\nexport const auditUserSchema = Joi.object<AuditUser>().keys({\n id: Joi.string().uuid().required(),\n displayName: Joi.string().required()\n})\n\nexport const validCategories = [\n AuditEventMessageCategory.FORM,\n AuditEventMessageCategory.ENTITLEMENT\n]\n\nexport const validTypes = [\n AuditEventMessageType.FORM_CREATED,\n AuditEventMessageType.FORM_PUBLISHED,\n AuditEventMessageType.FORM_TITLE_UPDATED,\n AuditEventMessageType.FORM_ORGANISATION_UPDATED,\n AuditEventMessageType.FORM_TEAM_NAME_UPDATED,\n AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED,\n AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED,\n AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED,\n AuditEventMessageType.FORM_UPDATED,\n AuditEventMessageType.FORM_JSON_UPLOADED,\n AuditEventMessageType.FORM_JSON_DOWNLOADED,\n AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE,\n AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT,\n AuditEventMessageType.FORM_DRAFT_DELETED,\n AuditEventMessageType.FORM_MIGRATED\n]\n\nexport const validMessageSchemaVersions = [AuditEventMessageSchemaVersion.V1]\n\nexport const messageSchema = Joi.object<AuditMessage>().keys({\n entityId: Joi.string().required(),\n schemaVersion: Joi.string()\n .valid(...validMessageSchemaVersions)\n .required(),\n type: Joi.string().valid(...validTypes),\n category: Joi.string()\n .valid(...validCategories)\n .required(),\n createdAt: Joi.date().required(),\n createdBy: auditUserSchema.required(),\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().trim().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().trim().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 }),\n messageCreatedAt: Joi.date().required()\n})\n\nexport const auditEvent = Joi.object<AuditEvent>().keys({\n message: messageSchema\n})\n\nexport const auditRecord = messageSchema.append<AuditRecord>({\n messageId: Joi.string().uuid().required(),\n entityId: Joi.string().required(),\n recordCreatedAt: Joi.date().required()\n})\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageType","FormDefinitionRequestType","contactSchema","formMessageDataBase","object","formId","string","required","slug","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","filename","s3Key","formDefinitionMessageBase","s3Meta","optional","allowedDefinitionRequestTypes","CREATE_COMPONENT","UPDATE_COMPONENT","DELETE_COMPONENT","ADD_CONDITION","UPDATE_CONDITION","REMOVE_CONDITION","REORDER_PAGES","REORDER_COMPONENTS","ADD_LIST","UPDATE_LIST","REMOVE_LIST","CREATE_PAGE","UPDATE_PAGE_FIELDS","DELETE_PAGE","formUpdatedMessageData","payload","requestType","valid","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","formSupportEmailChanges","address","email","responseTime","formChangesMessageData","schema","changes","previous","new","auditUserSchema","id","uuid","displayName","validCategories","FORM","ENTITLEMENT","validTypes","FORM_CREATED","FORM_PUBLISHED","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_UPDATED","FORM_JSON_UPLOADED","FORM_JSON_DOWNLOADED","FORM_DRAFT_CREATED_FROM_LIVE","FORM_LIVE_CREATED_FROM_DRAFT","FORM_DRAFT_DELETED","FORM_MIGRATED","validMessageSchemaVersions","V1","messageSchema","entityId","schemaVersion","type","category","createdAt","date","createdBy","data","when","switch","is","trim","then","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 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 FormCreatedMessageData,\n type FormDefinitionMessageBase,\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 { contactSchema } from '~/src/form/form-metadata/index.js'\n\nexport const formMessageDataBase = Joi.object<FormMessageDataBase>({\n formId: Joi.string().required(),\n slug: Joi.string().required()\n})\n\nexport const formCreatedMessageData =\n formMessageDataBase.append<FormCreatedMessageData>({\n title: Joi.string().required(),\n organisation: Joi.string().required(),\n teamName: Joi.string().required(),\n teamEmail: Joi.string().required()\n })\n\nexport const formDefinitionS3Meta = Joi.object<FormDefinitionS3Meta>().keys({\n fileId: Joi.string().required(),\n filename: Joi.string().required(),\n s3Key: Joi.string().required()\n})\n\nexport const formDefinitionMessageBase =\n formMessageDataBase.append<FormDefinitionMessageBase>({\n s3Meta: formDefinitionS3Meta.optional()\n })\n\nconst allowedDefinitionRequestTypes = [\n FormDefinitionRequestType.CREATE_COMPONENT,\n FormDefinitionRequestType.UPDATE_COMPONENT,\n FormDefinitionRequestType.DELETE_COMPONENT,\n FormDefinitionRequestType.ADD_CONDITION,\n FormDefinitionRequestType.UPDATE_CONDITION,\n FormDefinitionRequestType.REMOVE_CONDITION,\n FormDefinitionRequestType.REORDER_PAGES,\n FormDefinitionRequestType.REORDER_COMPONENTS,\n FormDefinitionRequestType.ADD_LIST,\n FormDefinitionRequestType.UPDATE_LIST,\n FormDefinitionRequestType.REMOVE_LIST,\n FormDefinitionRequestType.CREATE_PAGE,\n FormDefinitionRequestType.UPDATE_PAGE_FIELDS,\n FormDefinitionRequestType.DELETE_PAGE\n]\n\nexport const formUpdatedMessageData =\n formDefinitionMessageBase.append<FormUpdatedMessageData>({\n payload: Joi.object().required(),\n requestType: Joi.string()\n .valid(...allowedDefinitionRequestTypes)\n .required()\n })\n\nexport const formTitleChanges = Joi.object<FormTitleChanges>()\n .keys({\n title: Joi.string().required()\n })\n .required()\n\nexport const formOrganisationChanges = Joi.object<FormOrganisationChanges>()\n .keys({\n organisation: Joi.string().required()\n })\n .required()\n\nexport const formTeamNameChanges = Joi.object<FormTeamNameChanges>()\n .keys({\n teamName: Joi.string().required()\n })\n .required()\n\nexport const formTeamEmailChanges = Joi.object<FormTeamEmailChanges>()\n .keys({\n teamEmail: Joi.string().required()\n })\n .required()\n\nexport const formSupportContactChanges = Joi.object<FormSupportContactChanges>()\n .keys({\n contact: contactSchema\n })\n .required()\n\nexport const formSupportPhoneChanges = Joi.object<FormSupportPhoneChanges>()\n .keys({\n phone: Joi.string().required()\n })\n .required()\n\nexport const formSupportOnlineChanges = Joi.object<FormSupportOnlineChanges>()\n .keys({\n url: Joi.string().required(),\n text: Joi.string().required()\n })\n .required()\n\nexport const formPrivacyNoticeChanges = Joi.object<FormPrivacyNoticeChanges>()\n .keys({\n privacyNoticeUrl: Joi.string()\n })\n .required()\n\nexport const formNotificationEmailChanges =\n Joi.object<FormNotificationEmailChanges>()\n .keys({\n notificationEmail: Joi.string()\n })\n .required()\n\nexport const formSubmissionGuidanceChanges =\n Joi.object<FormSubmissionGuidanceChanges>()\n .keys({\n submissionGuidance: Joi.string()\n })\n .required()\n\nexport const formUploadedChanges = Joi.object<FormUploadedChanges>()\n .keys({\n value: Joi.string().required()\n })\n .required()\n\nexport const formSupportEmailChanges =\n Joi.object<FormSupportEmailChanges>().keys({\n address: Joi.string().email().required(),\n responseTime: Joi.string().required()\n })\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>>().keys({\n previous: schema,\n new: schema\n })\n })\n}\n\nexport const auditUserSchema = Joi.object<AuditUser>().keys({\n id: Joi.string().uuid().required(),\n displayName: Joi.string().required()\n})\n\nexport const validCategories = [\n AuditEventMessageCategory.FORM,\n AuditEventMessageCategory.ENTITLEMENT\n]\n\nexport const validTypes = [\n AuditEventMessageType.FORM_CREATED,\n AuditEventMessageType.FORM_PUBLISHED,\n AuditEventMessageType.FORM_TITLE_UPDATED,\n AuditEventMessageType.FORM_ORGANISATION_UPDATED,\n AuditEventMessageType.FORM_TEAM_NAME_UPDATED,\n AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED,\n AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED,\n AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED,\n AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED,\n AuditEventMessageType.FORM_UPDATED,\n AuditEventMessageType.FORM_JSON_UPLOADED,\n AuditEventMessageType.FORM_JSON_DOWNLOADED,\n AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE,\n AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT,\n AuditEventMessageType.FORM_DRAFT_DELETED,\n AuditEventMessageType.FORM_MIGRATED\n]\n\nexport const validMessageSchemaVersions = [AuditEventMessageSchemaVersion.V1]\n\nexport const messageSchema = Joi.object<AuditMessage>().keys({\n entityId: Joi.string().required(),\n schemaVersion: Joi.string()\n .valid(...validMessageSchemaVersions)\n .required(),\n type: Joi.string().valid(...validTypes),\n category: Joi.string()\n .valid(...validCategories)\n .required(),\n createdAt: Joi.date().required(),\n createdBy: auditUserSchema.required(),\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().trim().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().trim().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 }),\n messageCreatedAt: Joi.date().required()\n})\n\nexport const auditEvent = Joi.object<AuditEvent>().keys({\n message: messageSchema\n})\n\nexport const auditRecord = messageSchema.append<AuditRecord>({\n messageId: Joi.string().uuid().required(),\n entityId: Joi.string().required(),\n recordCreatedAt: Joi.date().required()\n})\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 {
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/form/form-audit/types.ts"],"sourcesContent":["import {\n type AuditEventMessageCategory,\n type AuditEventMessageSchemaVersion,\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}\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 FormDefinitionMessageBase extends FormMessageDataBase {\n s3Meta?: FormDefinitionS3Meta\n}\n\nexport interface FormUpdatedMessageData extends FormDefinitionMessageBase {\n payload: unknown\n requestType: FormDefinitionRequestType\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 type FormMessageChangeSetData = FormUpdatedMessageData\n\nexport interface AuditUser {\n id: string\n displayName: string\n}\n\nexport type MessageData =\n | FormMessageChangesData\n | FormMessageActivitiesData\n | FormMessageChangeSetData\n\nexport interface MessageBase {\n schemaVersion: AuditEventMessageSchemaVersion\n category: AuditEventMessageCategory\n type: AuditEventMessageType\n entityId: string\n createdAt: Date\n createdBy: AuditUser\n data?: MessageData\n messageCreatedAt: Date\n}\n\nexport interface FormCreatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_CREATED\n data: FormCreatedMessageData\n}\n\nexport interface FormTitleUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TITLE_UPDATED\n data: FormTitleUpdatedMessageData\n}\n\nexport interface FormOrganisationUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_ORGANISATION_UPDATED\n data: FormOrganisationUpdatedMessageData\n}\n\nexport interface FormTeamNameUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_NAME_UPDATED\n data: FormTeamNameUpdatedMessageData\n}\n\nexport interface FormTeamEmailUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED\n data: FormTeamEmailUpdatedMessageData\n}\n\nexport interface FormSupportContactUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED\n data: FormSupportContactUpdatedMessageData\n}\n\nexport interface FormSupportPhoneUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED\n data: FormSupportPhoneUpdatedMessageData\n}\n\nexport interface FormSupportEmailUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED\n data: FormSupportEmailUpdatedMessageData\n}\n\nexport interface FormSupportOnlineUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED\n data: FormSupportOnlineUpdatedMessageData\n}\n\nexport interface FormPrivacyNoticeUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED\n data: FormPrivacyNoticeUpdatedMessageData\n}\n\nexport interface FormNotificationEmailUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED\n data: FormNotificationEmailUpdatedMessageData\n}\n\nexport interface FormSubmissionGuidanceUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED\n data: FormSubmissionGuidanceUpdatedMessageData\n}\n\nexport interface FormUploadedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_UPLOADED\n data: FormUploadedMessageData\n}\n\nexport interface FormDownloadedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_JSON_DOWNLOADED\n}\n\nexport interface FormPublishedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_PUBLISHED\n}\n\nexport interface FormDraftCreatedFromLiveMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE\n}\n\nexport interface FormLiveCreatedFromDraftMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT\n}\n\nexport interface FormDraftDeletedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_DRAFT_DELETED\n}\n\nexport interface FormMigratedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_MIGRATED\n}\n\nexport interface FormUpdatedMessage extends MessageBase {\n category: AuditEventMessageCategory.FORM\n type: AuditEventMessageType.FORM_UPDATED\n data: FormUpdatedMessageData\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\nexport interface AuditEvent {\n message: AuditMessage\n}\n\nexport type AuditRecord = AuditMessage & {\n messageId: string\n recordCreatedAt: Date\n}\n\nexport interface MessageBody {\n Message: string\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -32,4 +32,20 @@ export declare enum AuditEventMessageType {
|
|
32
32
|
FORM_MIGRATED = "FORM_MIGRATED",
|
33
33
|
FORM_UPDATED = "FORM_UPDATED"
|
34
34
|
}
|
35
|
+
export declare enum FormDefinitionRequestType {
|
36
|
+
CREATE_COMPONENT = "CREATE_COMPONENT",
|
37
|
+
UPDATE_COMPONENT = "UPDATE_COMPONENT",
|
38
|
+
DELETE_COMPONENT = "DELETE_COMPONENT",
|
39
|
+
ADD_CONDITION = "ADD_CONDITION",
|
40
|
+
UPDATE_CONDITION = "UPDATE_CONDITION",
|
41
|
+
REMOVE_CONDITION = "REMOVE_CONDITION",
|
42
|
+
REORDER_PAGES = "REORDER_PAGES",
|
43
|
+
REORDER_COMPONENTS = "REORDER_COMPONENTS",
|
44
|
+
ADD_LIST = "ADD_LIST",
|
45
|
+
UPDATE_LIST = "UPDATE_LIST",
|
46
|
+
REMOVE_LIST = "REMOVE_LIST",
|
47
|
+
CREATE_PAGE = "CREATE_PAGE",
|
48
|
+
UPDATE_PAGE_FIELDS = "UPDATE_PAGE_FIELDS",
|
49
|
+
DELETE_PAGE = "DELETE_PAGE"
|
50
|
+
}
|
35
51
|
//# sourceMappingURL=enums.d.ts.map
|
@@ -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;CAC5B;AAED,oBAAY,4BAA4B;IACtC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;CACpC;AAED,oBAAY,qBAAqB;IAC/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;CAC9B"}
|
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;CAC5B;AAED,oBAAY,4BAA4B;IACtC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;CACpC;AAED,oBAAY,qBAAqB;IAC/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;CAC9B;AAED,oBAAY,yBAAyB;IACnC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,kBAAkB,uBAAuB;IACzC,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,kBAAkB,uBAAuB;IACzC,WAAW,gBAAgB;CAC5B"}
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import Joi, { type ObjectSchema } from 'joi';
|
2
2
|
import { AuditEventMessageCategory, AuditEventMessageSchemaVersion, AuditEventMessageType } from '../../form/form-audit/enums.js';
|
3
|
-
import { type AuditEvent, type AuditMessage, type AuditRecord, type AuditUser, type FormCreatedMessageData, 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
|
+
import { type AuditEvent, type AuditMessage, type AuditRecord, type AuditUser, type FormCreatedMessageData, type FormDefinitionMessageBase, 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';
|
4
4
|
export declare const formMessageDataBase: Joi.ObjectSchema<FormMessageDataBase>;
|
5
5
|
export declare const formCreatedMessageData: Joi.ObjectSchema<FormCreatedMessageData>;
|
6
|
-
export declare const
|
6
|
+
export declare const formDefinitionS3Meta: Joi.ObjectSchema<FormDefinitionS3Meta>;
|
7
|
+
export declare const formDefinitionMessageBase: Joi.ObjectSchema<FormDefinitionMessageBase>;
|
7
8
|
export declare const formUpdatedMessageData: Joi.ObjectSchema<FormUpdatedMessageData>;
|
8
9
|
export declare const formTitleChanges: Joi.ObjectSchema<FormTitleChanges>;
|
9
10
|
export declare const formOrganisationChanges: Joi.ObjectSchema<FormOrganisationChanges>;
|
@@ -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;
|
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;AAE5C,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,qBAAqB,EAEtB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,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;AAGvC,eAAO,MAAM,mBAAmB,uCAG9B,CAAA;AAEF,eAAO,MAAM,sBAAsB,0CAM/B,CAAA;AAEJ,eAAO,MAAM,oBAAoB,wCAI/B,CAAA;AAEF,eAAO,MAAM,yBAAyB,6CAGlC,CAAA;AAmBJ,eAAO,MAAM,sBAAsB,0CAM/B,CAAA;AAEJ,eAAO,MAAM,gBAAgB,oCAIhB,CAAA;AAEb,eAAO,MAAM,uBAAuB,2CAIvB,CAAA;AAEb,eAAO,MAAM,mBAAmB,uCAInB,CAAA;AAEb,eAAO,MAAM,oBAAoB,wCAIpB,CAAA;AAEb,eAAO,MAAM,yBAAyB,6CAIzB,CAAA;AAEb,eAAO,MAAM,uBAAuB,2CAIvB,CAAA;AAEb,eAAO,MAAM,wBAAwB,4CAKxB,CAAA;AAEb,eAAO,MAAM,wBAAwB,4CAIxB,CAAA;AAEb,eAAO,MAAM,4BAA4B,gDAK1B,CAAA;AAEf,eAAO,MAAM,6BAA6B,iDAK3B,CAAA;AAEf,eAAO,MAAM,mBAAmB,uCAInB,CAAA;AAEb,eAAO,MAAM,uBAAuB,2CAIhC,CAAA;AAEJ,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,CAAC,SAAS,sBAAsB,EACxE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GACtB,YAAY,CAAC,CAAC,CAAC,CAOjB;AAED,eAAO,MAAM,eAAe,6BAG1B,CAAA;AAEF,eAAO,MAAM,eAAe,6BAG3B,CAAA;AAED,eAAO,MAAM,UAAU,yBAqBtB,CAAA;AAED,eAAO,MAAM,0BAA0B,kCAAsC,CAAA;AAE7E,eAAO,MAAM,aAAa,gCAgIxB,CAAA;AAEF,eAAO,MAAM,UAAU,8BAErB,CAAA;AAEF,eAAO,MAAM,WAAW,+BAItB,CAAA"}
|
@@ -1,5 +1,4 @@
|
|
1
|
-
import { type
|
2
|
-
import { type AuditEventMessageCategory, type AuditEventMessageSchemaVersion, type AuditEventMessageType } from '../../form/form-audit/enums.js';
|
1
|
+
import { type AuditEventMessageCategory, type AuditEventMessageSchemaVersion, type AuditEventMessageType, type FormDefinitionRequestType } from '../../form/form-audit/enums.js';
|
3
2
|
import { type FormMetadataContact } from '../../form/form-metadata/types.js';
|
4
3
|
export interface FormMessageDataBase {
|
5
4
|
formId: string;
|
@@ -89,9 +88,17 @@ export interface FormSubmissionGuidanceUpdatedMessageData extends FormMessageDat
|
|
89
88
|
export interface FormUploadedMessageData extends FormMessageDataBase {
|
90
89
|
changes: ChangesMessageData<FormUploadedChanges>;
|
91
90
|
}
|
92
|
-
export
|
93
|
-
|
94
|
-
|
91
|
+
export interface FormDefinitionS3Meta {
|
92
|
+
fileId: string;
|
93
|
+
filename: string;
|
94
|
+
s3Key: string;
|
95
|
+
}
|
96
|
+
export interface FormDefinitionMessageBase extends FormMessageDataBase {
|
97
|
+
s3Meta?: FormDefinitionS3Meta;
|
98
|
+
}
|
99
|
+
export interface FormUpdatedMessageData extends FormDefinitionMessageBase {
|
100
|
+
payload: unknown;
|
101
|
+
requestType: FormDefinitionRequestType;
|
95
102
|
}
|
96
103
|
export type FormMessageChangesData = FormTitleUpdatedMessageData | FormOrganisationUpdatedMessageData | FormTeamNameUpdatedMessageData | FormTeamEmailUpdatedMessageData | FormSupportContactUpdatedMessageData | FormSupportPhoneUpdatedMessageData | FormSupportEmailUpdatedMessageData | FormSupportOnlineUpdatedMessageData | FormPrivacyNoticeUpdatedMessageData | FormNotificationEmailUpdatedMessageData | FormSubmissionGuidanceUpdatedMessageData | FormUploadedMessageData;
|
97
104
|
export type FormMessageActivitiesData = FormCreatedMessageData | FormMessageDataBase;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-audit/types.ts"],"names":[],"mappings":"AAAA,OAAO,
|
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
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@defra/forms-model",
|
3
|
-
"version": "3.0.
|
3
|
+
"version": "3.0.524",
|
4
4
|
"description": "A hapi plugin providing the model for Defra forms",
|
5
5
|
"homepage": "https://github.com/DEFRA/forms-designer/tree/main/model#readme",
|
6
6
|
"types": "dist/types/index.d.ts",
|
@@ -35,7 +35,6 @@
|
|
35
35
|
},
|
36
36
|
"dependencies": {
|
37
37
|
"@joi/date": "^2.1.1",
|
38
|
-
"json-diff-ts": "^4.8.1",
|
39
38
|
"marked": "^15.0.12",
|
40
39
|
"nanoid": "^5.0.7",
|
41
40
|
"slug": "^11.0.0",
|
@@ -35,3 +35,20 @@ export enum AuditEventMessageType {
|
|
35
35
|
FORM_MIGRATED = 'FORM_MIGRATED',
|
36
36
|
FORM_UPDATED = 'FORM_UPDATED'
|
37
37
|
}
|
38
|
+
|
39
|
+
export enum FormDefinitionRequestType {
|
40
|
+
CREATE_COMPONENT = 'CREATE_COMPONENT',
|
41
|
+
UPDATE_COMPONENT = 'UPDATE_COMPONENT',
|
42
|
+
DELETE_COMPONENT = 'DELETE_COMPONENT',
|
43
|
+
ADD_CONDITION = 'ADD_CONDITION',
|
44
|
+
UPDATE_CONDITION = 'UPDATE_CONDITION',
|
45
|
+
REMOVE_CONDITION = 'REMOVE_CONDITION',
|
46
|
+
REORDER_PAGES = 'REORDER_PAGES',
|
47
|
+
REORDER_COMPONENTS = 'REORDER_COMPONENTS',
|
48
|
+
ADD_LIST = 'ADD_LIST',
|
49
|
+
UPDATE_LIST = 'UPDATE_LIST',
|
50
|
+
REMOVE_LIST = 'REMOVE_LIST',
|
51
|
+
CREATE_PAGE = 'CREATE_PAGE',
|
52
|
+
UPDATE_PAGE_FIELDS = 'UPDATE_PAGE_FIELDS',
|
53
|
+
DELETE_PAGE = 'DELETE_PAGE'
|
54
|
+
}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import Joi, { type ObjectSchema } from 'joi'
|
2
|
-
import { Operation } from 'json-diff-ts'
|
3
2
|
|
4
3
|
import {
|
5
4
|
AuditEventMessageCategory,
|
6
5
|
AuditEventMessageSchemaVersion,
|
7
|
-
AuditEventMessageType
|
6
|
+
AuditEventMessageType,
|
7
|
+
FormDefinitionRequestType
|
8
8
|
} from '~/src/form/form-audit/enums.js'
|
9
9
|
import {
|
10
10
|
type AuditEvent,
|
@@ -12,8 +12,9 @@ import {
|
|
12
12
|
type AuditRecord,
|
13
13
|
type AuditUser,
|
14
14
|
type ChangesMessageData,
|
15
|
-
type FormChangeSet,
|
16
15
|
type FormCreatedMessageData,
|
16
|
+
type FormDefinitionMessageBase,
|
17
|
+
type FormDefinitionS3Meta,
|
17
18
|
type FormMessageChangesData,
|
18
19
|
type FormMessageDataBase,
|
19
20
|
type FormNotificationEmailChanges,
|
@@ -57,26 +58,40 @@ export const formCreatedMessageData =
|
|
57
58
|
teamEmail: Joi.string().required()
|
58
59
|
})
|
59
60
|
|
60
|
-
const
|
61
|
+
export const formDefinitionS3Meta = Joi.object<FormDefinitionS3Meta>().keys({
|
62
|
+
fileId: Joi.string().required(),
|
63
|
+
filename: Joi.string().required(),
|
64
|
+
s3Key: Joi.string().required()
|
65
|
+
})
|
61
66
|
|
62
|
-
export const
|
63
|
-
|
64
|
-
.
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
67
|
+
export const formDefinitionMessageBase =
|
68
|
+
formMessageDataBase.append<FormDefinitionMessageBase>({
|
69
|
+
s3Meta: formDefinitionS3Meta.optional()
|
70
|
+
})
|
71
|
+
|
72
|
+
const allowedDefinitionRequestTypes = [
|
73
|
+
FormDefinitionRequestType.CREATE_COMPONENT,
|
74
|
+
FormDefinitionRequestType.UPDATE_COMPONENT,
|
75
|
+
FormDefinitionRequestType.DELETE_COMPONENT,
|
76
|
+
FormDefinitionRequestType.ADD_CONDITION,
|
77
|
+
FormDefinitionRequestType.UPDATE_CONDITION,
|
78
|
+
FormDefinitionRequestType.REMOVE_CONDITION,
|
79
|
+
FormDefinitionRequestType.REORDER_PAGES,
|
80
|
+
FormDefinitionRequestType.REORDER_COMPONENTS,
|
81
|
+
FormDefinitionRequestType.ADD_LIST,
|
82
|
+
FormDefinitionRequestType.UPDATE_LIST,
|
83
|
+
FormDefinitionRequestType.REMOVE_LIST,
|
84
|
+
FormDefinitionRequestType.CREATE_PAGE,
|
85
|
+
FormDefinitionRequestType.UPDATE_PAGE_FIELDS,
|
86
|
+
FormDefinitionRequestType.DELETE_PAGE
|
87
|
+
]
|
76
88
|
|
77
89
|
export const formUpdatedMessageData =
|
78
|
-
|
79
|
-
|
90
|
+
formDefinitionMessageBase.append<FormUpdatedMessageData>({
|
91
|
+
payload: Joi.object().required(),
|
92
|
+
requestType: Joi.string()
|
93
|
+
.valid(...allowedDefinitionRequestTypes)
|
94
|
+
.required()
|
80
95
|
})
|
81
96
|
|
82
97
|
export const formTitleChanges = Joi.object<FormTitleChanges>()
|
@@ -1,9 +1,8 @@
|
|
1
|
-
import { type IChange } from 'json-diff-ts'
|
2
|
-
|
3
1
|
import {
|
4
2
|
type AuditEventMessageCategory,
|
5
3
|
type AuditEventMessageSchemaVersion,
|
6
|
-
type AuditEventMessageType
|
4
|
+
type AuditEventMessageType,
|
5
|
+
type FormDefinitionRequestType
|
7
6
|
} from '~/src/form/form-audit/enums.js'
|
8
7
|
import { type FormMetadataContact } from '~/src/form/form-metadata/types.js'
|
9
8
|
|
@@ -130,10 +129,19 @@ export interface FormUploadedMessageData extends FormMessageDataBase {
|
|
130
129
|
changes: ChangesMessageData<FormUploadedChanges>
|
131
130
|
}
|
132
131
|
|
133
|
-
export
|
132
|
+
export interface FormDefinitionS3Meta {
|
133
|
+
fileId: string
|
134
|
+
filename: string
|
135
|
+
s3Key: string
|
136
|
+
}
|
137
|
+
|
138
|
+
export interface FormDefinitionMessageBase extends FormMessageDataBase {
|
139
|
+
s3Meta?: FormDefinitionS3Meta
|
140
|
+
}
|
134
141
|
|
135
|
-
export interface FormUpdatedMessageData extends
|
136
|
-
|
142
|
+
export interface FormUpdatedMessageData extends FormDefinitionMessageBase {
|
143
|
+
payload: unknown
|
144
|
+
requestType: FormDefinitionRequestType
|
137
145
|
}
|
138
146
|
|
139
147
|
export type FormMessageChangesData =
|