@defra/forms-model 3.0.532 → 3.0.533

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.
@@ -132,6 +132,9 @@ export const messageSchema = Joi.object().keys({
132
132
  }, {
133
133
  is: Joi.string().trim().valid(AuditEventMessageType.ENTITLEMENT_CREATED),
134
134
  then: entitlementMessageData
135
+ }, {
136
+ is: Joi.string().trim().valid(AuditEventMessageType.FORM_DRAFT_DELETED),
137
+ then: formMessageDataBase
135
138
  }, {
136
139
  is: Joi.string().trim().valid(AuditEventMessageType.ENTITLEMENT_UPDATED),
137
140
  then: entitlementMessageData
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","idSchema","formMessageDataBase","object","formId","string","required","slug","payload","optional","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","filename","s3Key","formUpdatedMessageData","requestType","valid","Object","values","s3Meta","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formSupportEmailChanges","address","email","responseTime","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","entitlementMessageData","userId","displayName","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","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 { contactSchema, idSchema } 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 payload: Joi.object().optional()\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 formUpdatedMessageData =\n formMessageDataBase.append<FormUpdatedMessageData>({\n requestType: Joi.string()\n .valid(...Object.values(FormDefinitionRequestType))\n .required(),\n s3Meta: formDefinitionS3Meta\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 formSupportEmailChanges =\n Joi.object<FormSupportEmailChanges>().keys({\n address: Joi.string().email().required(),\n responseTime: Joi.string().required()\n })\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 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>().keys({\n id: Joi.string().uuid().required(),\n displayName: 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 messageSchema = Joi.object<AuditMessage>().keys({\n schemaVersion: Joi.string()\n .valid(...Object.values(AuditEventMessageSchemaVersion))\n .required(),\n category: Joi.string()\n .valid(...Object.values(AuditEventMessageCategory))\n .required(),\n source: Joi.string()\n .valid(...Object.values(AuditEventMessageSource))\n .required(),\n type: Joi.string().valid(...Object.values(AuditEventMessageType)),\n entityId: Joi.string().required(),\n traceId: Joi.string().optional(),\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 is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.ENTITLEMENT_CREATED),\n then: entitlementMessageData\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 }),\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 id: idSchema,\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","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","idSchema","formMessageDataBase","object","formId","string","required","slug","payload","optional","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","filename","s3Key","formUpdatedMessageData","requestType","valid","Object","values","s3Meta","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formSupportEmailChanges","address","email","responseTime","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","entitlementMessageData","userId","displayName","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 { contactSchema, idSchema } 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 payload: Joi.object().optional()\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 formUpdatedMessageData =\n formMessageDataBase.append<FormUpdatedMessageData>({\n requestType: Joi.string()\n .valid(...Object.values(FormDefinitionRequestType))\n .required(),\n s3Meta: formDefinitionS3Meta\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 formSupportEmailChanges =\n Joi.object<FormSupportEmailChanges>().keys({\n address: Joi.string().email().required(),\n responseTime: Joi.string().required()\n })\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 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>().keys({\n id: Joi.string().uuid().required(),\n displayName: 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 messageSchema = Joi.object<AuditMessage>().keys({\n schemaVersion: Joi.string()\n .valid(...Object.values(AuditEventMessageSchemaVersion))\n .required(),\n category: Joi.string()\n .valid(...Object.values(AuditEventMessageCategory))\n .required(),\n source: Joi.string()\n .valid(...Object.values(AuditEventMessageSource))\n .required(),\n type: Joi.string().valid(...Object.values(AuditEventMessageType)),\n entityId: Joi.string().required(),\n traceId: Joi.string().optional(),\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 is: Joi.string()\n .trim()\n .valid(AuditEventMessageType.ENTITLEMENT_CREATED),\n then: entitlementMessageData\n },\n {\n is: Joi.string().trim().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 }),\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 id: idSchema,\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":"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,EAEd,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;AAGvC,eAAO,MAAM,mBAAmB,uCAI9B,CAAA;AAEF,eAAO,MAAM,sBAAsB,0CAM/B,CAAA;AAEJ,eAAO,MAAM,oBAAoB,wCAI/B,CAAA;AAEF,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,uBAAuB,2CAIhC,CAAA;AAEJ,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,sBAAsB,0CAOlC,CAAA;AAED,eAAO,MAAM,eAAe,6BAG1B,CAAA;AAEF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,CAAC,SAAS,sBAAsB,EACxE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GACtB,YAAY,CAAC,CAAC,CAAC,CAOjB;AAED,eAAO,MAAM,aAAa,gCAuJxB,CAAA;AAEF,eAAO,MAAM,UAAU,8BAErB,CAAA;AAEF,eAAO,MAAM,WAAW,+BAKtB,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;AAS5C,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,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;AAGvC,eAAO,MAAM,mBAAmB,uCAI9B,CAAA;AAEF,eAAO,MAAM,sBAAsB,0CAM/B,CAAA;AAEJ,eAAO,MAAM,oBAAoB,wCAI/B,CAAA;AAEF,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,uBAAuB,2CAIhC,CAAA;AAEJ,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,sBAAsB,0CAOlC,CAAA;AAED,eAAO,MAAM,eAAe,6BAG1B,CAAA;AAEF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,CAAC,SAAS,sBAAsB,EACxE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GACtB,YAAY,CAAC,CAAC,CAAC,CAOjB;AAED,eAAO,MAAM,aAAa,gCA2JxB,CAAA;AAEF,eAAO,MAAM,UAAU,8BAErB,CAAA;AAEF,eAAO,MAAM,WAAW,+BAKtB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defra/forms-model",
3
- "version": "3.0.532",
3
+ "version": "3.0.533",
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",
@@ -309,6 +309,10 @@ export const messageSchema = Joi.object<AuditMessage>().keys({
309
309
  .valid(AuditEventMessageType.ENTITLEMENT_CREATED),
310
310
  then: entitlementMessageData
311
311
  },
312
+ {
313
+ is: Joi.string().trim().valid(AuditEventMessageType.FORM_DRAFT_DELETED),
314
+ then: formMessageDataBase
315
+ },
312
316
  {
313
317
  is: Joi.string()
314
318
  .trim()