@defra/forms-model 3.0.526 → 3.0.527

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.
@@ -17,9 +17,8 @@ export const formDefinitionS3Meta = Joi.object().keys({
17
17
  filename: Joi.string().required(),
18
18
  s3Key: Joi.string().required()
19
19
  });
20
- 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];
21
20
  export const formUpdatedMessageData = formMessageDataBase.append({
22
- requestType: Joi.string().valid(...allowedDefinitionRequestTypes).required(),
21
+ requestType: Joi.string().valid(...Object.values(FormDefinitionRequestType)).required(),
23
22
  s3Meta: formDefinitionS3Meta
24
23
  });
25
24
  export const formTitleChanges = Joi.object().keys({
@@ -72,15 +71,11 @@ export function formChangesMessageData(schema) {
72
71
  })
73
72
  });
74
73
  }
75
- export const validCategories = [AuditEventMessageCategory.FORM, AuditEventMessageCategory.ENTITLEMENT];
76
- export const validTypes = [AuditEventMessageType.FORM_CREATED, AuditEventMessageType.FORM_PUBLISHED, AuditEventMessageType.FORM_TITLE_UPDATED, AuditEventMessageType.FORM_ORGANISATION_UPDATED, AuditEventMessageType.FORM_TEAM_NAME_UPDATED, AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED, AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED, AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED, AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED, AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED, AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED, AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED, AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED, AuditEventMessageType.FORM_JSON_UPLOADED, AuditEventMessageType.FORM_JSON_DOWNLOADED, AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE, AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT, AuditEventMessageType.FORM_DRAFT_DELETED, AuditEventMessageType.FORM_MIGRATED, AuditEventMessageType.FORM_UPDATED];
77
- export const validMessageSchemaVersions = [AuditEventMessageSchemaVersion.V1];
78
- export const validMessageSource = [AuditEventMessageSource.FORMS_MANAGER, AuditEventMessageSource.FORMS_DESIGNER, AuditEventMessageSource.ENTITLEMENT];
79
74
  export const messageSchema = Joi.object().keys({
80
- schemaVersion: Joi.string().valid(...validMessageSchemaVersions).required(),
81
- category: Joi.string().valid(...validCategories).required(),
82
- source: Joi.string().valid(...validMessageSource).required(),
83
- type: Joi.string().valid(...validTypes),
75
+ schemaVersion: Joi.string().valid(...Object.values(AuditEventMessageSchemaVersion)).required(),
76
+ category: Joi.string().valid(...Object.values(AuditEventMessageCategory)).required(),
77
+ source: Joi.string().valid(...Object.values(AuditEventMessageSource)).required(),
78
+ type: Joi.string().valid(...Object.values(AuditEventMessageType)),
84
79
  entityId: Joi.string().required(),
85
80
  traceId: Joi.string().optional(),
86
81
  createdAt: Joi.date().required(),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","formMessageDataBase","object","formId","string","required","slug","payload","optional","formCreatedMessageData","append","title","organisation","teamName","teamEmail","formDefinitionS3Meta","keys","fileId","filename","s3Key","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","requestType","valid","s3Meta","formTitleChanges","formOrganisationChanges","formTeamNameChanges","formTeamEmailChanges","formSupportContactChanges","contact","formSupportPhoneChanges","phone","formSupportOnlineChanges","url","text","formSupportEmailChanges","address","email","responseTime","formPrivacyNoticeChanges","privacyNoticeUrl","formNotificationEmailChanges","notificationEmail","formSubmissionGuidanceChanges","submissionGuidance","formUploadedChanges","value","auditUserSchema","id","uuid","displayName","formChangesMessageData","schema","changes","previous","new","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_JSON_UPLOADED","FORM_JSON_DOWNLOADED","FORM_DRAFT_CREATED_FROM_LIVE","FORM_LIVE_CREATED_FROM_DRAFT","FORM_DRAFT_DELETED","FORM_MIGRATED","FORM_UPDATED","validMessageSchemaVersions","V1","validMessageSource","FORMS_MANAGER","FORMS_DESIGNER","messageSchema","schemaVersion","category","source","type","entityId","traceId","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 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 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 } 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\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 formMessageDataBase.append<FormUpdatedMessageData>({\n requestType: Joi.string()\n .valid(...allowedDefinitionRequestTypes)\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 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 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_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 AuditEventMessageType.FORM_UPDATED\n]\n\nexport const validMessageSchemaVersions = [AuditEventMessageSchemaVersion.V1]\nexport const validMessageSource = [\n AuditEventMessageSource.FORMS_MANAGER,\n AuditEventMessageSource.FORMS_DESIGNER,\n AuditEventMessageSource.ENTITLEMENT\n]\n\nexport const messageSchema = Joi.object<AuditMessage>().keys({\n schemaVersion: Joi.string()\n .valid(...validMessageSchemaVersions)\n .required(),\n category: Joi.string()\n .valid(...validCategories)\n .required(),\n source: Joi.string()\n .valid(...validMessageSource)\n .required(),\n type: Joi.string().valid(...validTypes),\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 }),\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":"AAAA,OAAOA,GAAG,MAA6B,KAAK;AAE5C,SACEC,yBAAyB,EACzBC,8BAA8B,EAC9BC,uBAAuB,EACvBC,qBAAqB,EACrBC,yBAAyB;AAsC3B,SAASC,aAAa;AAEtB,OAAO,MAAMC,mBAAmB,GAAGP,GAAG,CAACQ,MAAM,CAAsB;EACjEC,MAAM,EAAET,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/BC,IAAI,EAAEZ,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7BE,OAAO,EAAEb,GAAG,CAACQ,MAAM,CAAC,CAAC,CAACM,QAAQ,CAAC;AACjC,CAAC,CAAC;AAEF,OAAO,MAAMC,sBAAsB,GACjCR,mBAAmB,CAACS,MAAM,CAAyB;EACjDC,KAAK,EAAEjB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC9BO,YAAY,EAAElB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACrCQ,QAAQ,EAAEnB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCS,SAAS,EAAEpB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACnC,CAAC,CAAC;AAEJ,OAAO,MAAMU,oBAAoB,GAAGrB,GAAG,CAACQ,MAAM,CAAuB,CAAC,CAACc,IAAI,CAAC;EAC1EC,MAAM,EAAEvB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/Ba,QAAQ,EAAExB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCc,KAAK,EAAEzB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAMe,6BAA6B,GAAG,CACpCrB,yBAAyB,CAACsB,gBAAgB,EAC1CtB,yBAAyB,CAACuB,gBAAgB,EAC1CvB,yBAAyB,CAACwB,gBAAgB,EAC1CxB,yBAAyB,CAACyB,aAAa,EACvCzB,yBAAyB,CAAC0B,gBAAgB,EAC1C1B,yBAAyB,CAAC2B,gBAAgB,EAC1C3B,yBAAyB,CAAC4B,aAAa,EACvC5B,yBAAyB,CAAC6B,kBAAkB,EAC5C7B,yBAAyB,CAAC8B,QAAQ,EAClC9B,yBAAyB,CAAC+B,WAAW,EACrC/B,yBAAyB,CAACgC,WAAW,EACrChC,yBAAyB,CAACiC,WAAW,EACrCjC,yBAAyB,CAACkC,kBAAkB,EAC5ClC,yBAAyB,CAACmC,WAAW,CACtC;AAED,OAAO,MAAMC,sBAAsB,GACjClC,mBAAmB,CAACS,MAAM,CAAyB;EACjD0B,WAAW,EAAE1C,GAAG,CAACU,MAAM,CAAC,CAAC,CACtBiC,KAAK,CAAC,GAAGjB,6BAA6B,CAAC,CACvCf,QAAQ,CAAC,CAAC;EACbiC,MAAM,EAAEvB;AACV,CAAC,CAAC;AAEJ,OAAO,MAAMwB,gBAAgB,GAAG7C,GAAG,CAACQ,MAAM,CAAmB,CAAC,CAC3Dc,IAAI,CAAC;EACJL,KAAK,EAAEjB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMmC,uBAAuB,GAAG9C,GAAG,CAACQ,MAAM,CAA0B,CAAC,CACzEc,IAAI,CAAC;EACJJ,YAAY,EAAElB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACtC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMoC,mBAAmB,GAAG/C,GAAG,CAACQ,MAAM,CAAsB,CAAC,CACjEc,IAAI,CAAC;EACJH,QAAQ,EAAEnB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAClC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMqC,oBAAoB,GAAGhD,GAAG,CAACQ,MAAM,CAAuB,CAAC,CACnEc,IAAI,CAAC;EACJF,SAAS,EAAEpB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACnC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMsC,yBAAyB,GAAGjD,GAAG,CAACQ,MAAM,CAA4B,CAAC,CAC7Ec,IAAI,CAAC;EACJ4B,OAAO,EAAE5C;AACX,CAAC,CAAC,CACDK,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMwC,uBAAuB,GAAGnD,GAAG,CAACQ,MAAM,CAA0B,CAAC,CACzEc,IAAI,CAAC;EACJ8B,KAAK,EAAEpD,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAM0C,wBAAwB,GAAGrD,GAAG,CAACQ,MAAM,CAA2B,CAAC,CAC3Ec,IAAI,CAAC;EACJgC,GAAG,EAAEtD,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC5B4C,IAAI,EAAEvD,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC9B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAM6C,uBAAuB,GAClCxD,GAAG,CAACQ,MAAM,CAA0B,CAAC,CAACc,IAAI,CAAC;EACzCmC,OAAO,EAAEzD,GAAG,CAACU,MAAM,CAAC,CAAC,CAACgD,KAAK,CAAC,CAAC,CAAC/C,QAAQ,CAAC,CAAC;EACxCgD,YAAY,EAAE3D,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACtC,CAAC,CAAC;AAEJ,OAAO,MAAMiD,wBAAwB,GAAG5D,GAAG,CAACQ,MAAM,CAA2B,CAAC,CAC3Ec,IAAI,CAAC;EACJuC,gBAAgB,EAAE7D,GAAG,CAACU,MAAM,CAAC;AAC/B,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMmD,4BAA4B,GACvC9D,GAAG,CAACQ,MAAM,CAA+B,CAAC,CACvCc,IAAI,CAAC;EACJyC,iBAAiB,EAAE/D,GAAG,CAACU,MAAM,CAAC;AAChC,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEf,OAAO,MAAMqD,6BAA6B,GACxChE,GAAG,CAACQ,MAAM,CAAgC,CAAC,CACxCc,IAAI,CAAC;EACJ2C,kBAAkB,EAAEjE,GAAG,CAACU,MAAM,CAAC;AACjC,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEf,OAAO,MAAMuD,mBAAmB,GAAGlE,GAAG,CAACQ,MAAM,CAAsB,CAAC,CACjEc,IAAI,CAAC;EACJ6C,KAAK,EAAEnE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMyD,eAAe,GAAGpE,GAAG,CAACQ,MAAM,CAAY,CAAC,CAACc,IAAI,CAAC;EAC1D+C,EAAE,EAAErE,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC4D,IAAI,CAAC,CAAC,CAAC3D,QAAQ,CAAC,CAAC;EAClC4D,WAAW,EAAEvE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACrC,CAAC,CAAC;AAEF,OAAO,SAAS6D,sBAAsBA,CACpCC,MAAuB,EACN;EACjB,OAAOlE,mBAAmB,CAACS,MAAM,CAAI;IACnC0D,OAAO,EAAE1E,GAAG,CAACQ,MAAM,CAAwB,CAAC,CAACc,IAAI,CAAC;MAChDqD,QAAQ,EAAEF,MAAM;MAChBG,GAAG,EAAEH;IACP,CAAC;EACH,CAAC,CAAC;AACJ;AAEA,OAAO,MAAMI,eAAe,GAAG,CAC7B5E,yBAAyB,CAAC6E,IAAI,EAC9B7E,yBAAyB,CAAC8E,WAAW,CACtC;AAED,OAAO,MAAMC,UAAU,GAAG,CACxB5E,qBAAqB,CAAC6E,YAAY,EAClC7E,qBAAqB,CAAC8E,cAAc,EACpC9E,qBAAqB,CAAC+E,kBAAkB,EACxC/E,qBAAqB,CAACgF,yBAAyB,EAC/ChF,qBAAqB,CAACiF,sBAAsB,EAC5CjF,qBAAqB,CAACkF,uBAAuB,EAC7ClF,qBAAqB,CAACmF,4BAA4B,EAClDnF,qBAAqB,CAACoF,0BAA0B,EAChDpF,qBAAqB,CAACqF,0BAA0B,EAChDrF,qBAAqB,CAACsF,2BAA2B,EACjDtF,qBAAqB,CAACuF,2BAA2B,EACjDvF,qBAAqB,CAACwF,+BAA+B,EACrDxF,qBAAqB,CAACyF,gCAAgC,EACtDzF,qBAAqB,CAAC0F,kBAAkB,EACxC1F,qBAAqB,CAAC2F,oBAAoB,EAC1C3F,qBAAqB,CAAC4F,4BAA4B,EAClD5F,qBAAqB,CAAC6F,4BAA4B,EAClD7F,qBAAqB,CAAC8F,kBAAkB,EACxC9F,qBAAqB,CAAC+F,aAAa,EACnC/F,qBAAqB,CAACgG,YAAY,CACnC;AAED,OAAO,MAAMC,0BAA0B,GAAG,CAACnG,8BAA8B,CAACoG,EAAE,CAAC;AAC7E,OAAO,MAAMC,kBAAkB,GAAG,CAChCpG,uBAAuB,CAACqG,aAAa,EACrCrG,uBAAuB,CAACsG,cAAc,EACtCtG,uBAAuB,CAAC4E,WAAW,CACpC;AAED,OAAO,MAAM2B,aAAa,GAAG1G,GAAG,CAACQ,MAAM,CAAe,CAAC,CAACc,IAAI,CAAC;EAC3DqF,aAAa,EAAE3G,GAAG,CAACU,MAAM,CAAC,CAAC,CACxBiC,KAAK,CAAC,GAAG0D,0BAA0B,CAAC,CACpC1F,QAAQ,CAAC,CAAC;EACbiG,QAAQ,EAAE5G,GAAG,CAACU,MAAM,CAAC,CAAC,CACnBiC,KAAK,CAAC,GAAGkC,eAAe,CAAC,CACzBlE,QAAQ,CAAC,CAAC;EACbkG,MAAM,EAAE7G,GAAG,CAACU,MAAM,CAAC,CAAC,CACjBiC,KAAK,CAAC,GAAG4D,kBAAkB,CAAC,CAC5B5F,QAAQ,CAAC,CAAC;EACbmG,IAAI,EAAE9G,GAAG,CAACU,MAAM,CAAC,CAAC,CAACiC,KAAK,CAAC,GAAGqC,UAAU,CAAC;EACvC+B,QAAQ,EAAE/G,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCqG,OAAO,EAAEhH,GAAG,CAACU,MAAM,CAAC,CAAC,CAACI,QAAQ,CAAC,CAAC;EAChCmG,SAAS,EAAEjH,GAAG,CAACkH,IAAI,CAAC,CAAC,CAACvG,QAAQ,CAAC,CAAC;EAChCwG,SAAS,EAAE/C,eAAe,CAACzD,QAAQ,CAAC,CAAC;EACrCyG,IAAI,EAAEpH,GAAG,CAACqH,IAAI,CAAC,MAAM,EAAE;IACrBC,MAAM,EAAE,CACN;MACEC,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC8G,IAAI,CAAC,CAAC,CAAC7E,KAAK,CAACvC,qBAAqB,CAAC6E,YAAY,CAAC;MACjEwC,IAAI,EAAE1G;IACR,CAAC,EACD;MACEwG,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC8G,IAAI,CAAC,CAAC,CAAC7E,KAAK,CAACvC,qBAAqB,CAAC+E,kBAAkB,CAAC;MACvEsC,IAAI,EAAEjD,sBAAsB,CAG1B3B,gBAAgB;IACpB,CAAC,EACD;MACE0E,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACgF,yBAAyB,CAAC;MACzDqC,IAAI,EAAEjD,sBAAsB,CAG1B1B,uBAAuB;IAC3B,CAAC,EACD;MACEyE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACiF,sBAAsB,CAAC;MACtDoC,IAAI,EAAEjD,sBAAsB,CAG1BzB,mBAAmB;IACvB,CAAC,EACD;MACEwE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACkF,uBAAuB,CAAC;MACvDmC,IAAI,EAAEjD,sBAAsB,CAG1BxB,oBAAoB;IACxB,CAAC,EACD;MACEuE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACmF,4BAA4B,CAAC;MAC5DkC,IAAI,EAAEjD,sBAAsB,CAG1BvB,yBAAyB;IAC7B,CAAC,EACD;MACEsE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACoF,0BAA0B,CAAC;MAC1DiC,IAAI,EAAEjD,sBAAsB,CAG1BrB,uBAAuB;IAC3B,CAAC,EACD;MACEoE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACqF,0BAA0B,CAAC;MAC1DgC,IAAI,EAAEjD,sBAAsB,CAG1BhB,uBAAuB;IAC3B,CAAC,EACD;MACE+D,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACsF,2BAA2B,CAAC;MAC3D+B,IAAI,EAAEjD,sBAAsB,CAG1BnB,wBAAwB;IAC5B,CAAC,EACD;MACEkE,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACuF,2BAA2B,CAAC;MAC3D8B,IAAI,EAAEjD,sBAAsB,CAG1BZ,wBAAwB;IAC5B,CAAC,EACD;MACE2D,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACwF,+BAA+B,CAAC;MAC/D6B,IAAI,EAAEjD,sBAAsB,CAG1BV,4BAA4B;IAChC,CAAC,EACD;MACEyD,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CACb8G,IAAI,CAAC,CAAC,CACN7E,KAAK,CAACvC,qBAAqB,CAACyF,gCAAgC,CAAC;MAChE4B,IAAI,EAAEjD,sBAAsB,CAG1BR,6BAA6B;IACjC,CAAC,EACD;MACEuD,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC8G,IAAI,CAAC,CAAC,CAAC7E,KAAK,CAACvC,qBAAqB,CAAC0F,kBAAkB,CAAC;MACvE2B,IAAI,EAAEjD,sBAAsB,CAG1BN,mBAAmB;IACvB,CAAC,EACD;MACEqD,EAAE,EAAEvH,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC8G,IAAI,CAAC,CAAC,CAAC7E,KAAK,CAACvC,qBAAqB,CAACgG,YAAY,CAAC;MACjEqB,IAAI,EAAEhF;IACR,CAAC;EAEL,CAAC,CAAC;EACFiF,gBAAgB,EAAE1H,GAAG,CAACkH,IAAI,CAAC,CAAC,CAACvG,QAAQ,CAAC;AACxC,CAAC,CAAC;AAEF,OAAO,MAAMgH,UAAU,GAAG3H,GAAG,CAACQ,MAAM,CAAa,CAAC,CAACc,IAAI,CAAC;EACtDsG,OAAO,EAAElB;AACX,CAAC,CAAC;AAEF,OAAO,MAAMmB,WAAW,GAAGnB,aAAa,CAAC1F,MAAM,CAAc;EAC3D8G,SAAS,EAAE9H,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC4D,IAAI,CAAC,CAAC,CAAC3D,QAAQ,CAAC,CAAC;EACzCoG,QAAQ,EAAE/G,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCoH,eAAe,EAAE/H,GAAG,CAACkH,IAAI,CAAC,CAAC,CAACvG,QAAQ,CAAC;AACvC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Joi","AuditEventMessageCategory","AuditEventMessageSchemaVersion","AuditEventMessageSource","AuditEventMessageType","FormDefinitionRequestType","contactSchema","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","auditUserSchema","id","uuid","displayName","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","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 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 } 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 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 }),\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":"AAAA,OAAOA,GAAG,MAA6B,KAAK;AAE5C,SACEC,yBAAyB,EACzBC,8BAA8B,EAC9BC,uBAAuB,EACvBC,qBAAqB,EACrBC,yBAAyB;AAsC3B,SAASC,aAAa;AAEtB,OAAO,MAAMC,mBAAmB,GAAGP,GAAG,CAACQ,MAAM,CAAsB;EACjEC,MAAM,EAAET,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/BC,IAAI,EAAEZ,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7BE,OAAO,EAAEb,GAAG,CAACQ,MAAM,CAAC,CAAC,CAACM,QAAQ,CAAC;AACjC,CAAC,CAAC;AAEF,OAAO,MAAMC,sBAAsB,GACjCR,mBAAmB,CAACS,MAAM,CAAyB;EACjDC,KAAK,EAAEjB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC9BO,YAAY,EAAElB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACrCQ,QAAQ,EAAEnB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCS,SAAS,EAAEpB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACnC,CAAC,CAAC;AAEJ,OAAO,MAAMU,oBAAoB,GAAGrB,GAAG,CAACQ,MAAM,CAAuB,CAAC,CAACc,IAAI,CAAC;EAC1EC,MAAM,EAAEvB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/Ba,QAAQ,EAAExB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCc,KAAK,EAAEzB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,MAAMe,sBAAsB,GACjCnB,mBAAmB,CAACS,MAAM,CAAyB;EACjDW,WAAW,EAAE3B,GAAG,CAACU,MAAM,CAAC,CAAC,CACtBkB,KAAK,CAAC,GAAGC,MAAM,CAACC,MAAM,CAACzB,yBAAyB,CAAC,CAAC,CAClDM,QAAQ,CAAC,CAAC;EACboB,MAAM,EAAEV;AACV,CAAC,CAAC;AAEJ,OAAO,MAAMW,gBAAgB,GAAGhC,GAAG,CAACQ,MAAM,CAAmB,CAAC,CAC3Dc,IAAI,CAAC;EACJL,KAAK,EAAEjB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMsB,uBAAuB,GAAGjC,GAAG,CAACQ,MAAM,CAA0B,CAAC,CACzEc,IAAI,CAAC;EACJJ,YAAY,EAAElB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACtC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMuB,mBAAmB,GAAGlC,GAAG,CAACQ,MAAM,CAAsB,CAAC,CACjEc,IAAI,CAAC;EACJH,QAAQ,EAAEnB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAClC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMwB,oBAAoB,GAAGnC,GAAG,CAACQ,MAAM,CAAuB,CAAC,CACnEc,IAAI,CAAC;EACJF,SAAS,EAAEpB,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACnC,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMyB,yBAAyB,GAAGpC,GAAG,CAACQ,MAAM,CAA4B,CAAC,CAC7Ec,IAAI,CAAC;EACJe,OAAO,EAAE/B;AACX,CAAC,CAAC,CACDK,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAM2B,uBAAuB,GAAGtC,GAAG,CAACQ,MAAM,CAA0B,CAAC,CACzEc,IAAI,CAAC;EACJiB,KAAK,EAAEvC,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAM6B,wBAAwB,GAAGxC,GAAG,CAACQ,MAAM,CAA2B,CAAC,CAC3Ec,IAAI,CAAC;EACJmB,GAAG,EAAEzC,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC5B+B,IAAI,EAAE1C,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC9B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMgC,uBAAuB,GAClC3C,GAAG,CAACQ,MAAM,CAA0B,CAAC,CAACc,IAAI,CAAC;EACzCsB,OAAO,EAAE5C,GAAG,CAACU,MAAM,CAAC,CAAC,CAACmC,KAAK,CAAC,CAAC,CAAClC,QAAQ,CAAC,CAAC;EACxCmC,YAAY,EAAE9C,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACtC,CAAC,CAAC;AAEJ,OAAO,MAAMoC,wBAAwB,GAAG/C,GAAG,CAACQ,MAAM,CAA2B,CAAC,CAC3Ec,IAAI,CAAC;EACJ0B,gBAAgB,EAAEhD,GAAG,CAACU,MAAM,CAAC;AAC/B,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAMsC,4BAA4B,GACvCjD,GAAG,CAACQ,MAAM,CAA+B,CAAC,CACvCc,IAAI,CAAC;EACJ4B,iBAAiB,EAAElD,GAAG,CAACU,MAAM,CAAC;AAChC,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEf,OAAO,MAAMwC,6BAA6B,GACxCnD,GAAG,CAACQ,MAAM,CAAgC,CAAC,CACxCc,IAAI,CAAC;EACJ8B,kBAAkB,EAAEpD,GAAG,CAACU,MAAM,CAAC;AACjC,CAAC,CAAC,CACDC,QAAQ,CAAC,CAAC;AAEf,OAAO,MAAM0C,mBAAmB,GAAGrD,GAAG,CAACQ,MAAM,CAAsB,CAAC,CACjEc,IAAI,CAAC;EACJgC,KAAK,EAAEtD,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/B,CAAC,CAAC,CACDA,QAAQ,CAAC,CAAC;AAEb,OAAO,MAAM4C,eAAe,GAAGvD,GAAG,CAACQ,MAAM,CAAY,CAAC,CAACc,IAAI,CAAC;EAC1DkC,EAAE,EAAExD,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC+C,IAAI,CAAC,CAAC,CAAC9C,QAAQ,CAAC,CAAC;EAClC+C,WAAW,EAAE1D,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;AACrC,CAAC,CAAC;AAEF,OAAO,SAASgD,sBAAsBA,CACpCC,MAAuB,EACN;EACjB,OAAOrD,mBAAmB,CAACS,MAAM,CAAI;IACnC6C,OAAO,EAAE7D,GAAG,CAACQ,MAAM,CAAwB,CAAC,CAACc,IAAI,CAAC;MAChDwC,QAAQ,EAAEF,MAAM;MAChBG,GAAG,EAAEH;IACP,CAAC;EACH,CAAC,CAAC;AACJ;AAEA,OAAO,MAAMI,aAAa,GAAGhE,GAAG,CAACQ,MAAM,CAAe,CAAC,CAACc,IAAI,CAAC;EAC3D2C,aAAa,EAAEjE,GAAG,CAACU,MAAM,CAAC,CAAC,CACxBkB,KAAK,CAAC,GAAGC,MAAM,CAACC,MAAM,CAAC5B,8BAA8B,CAAC,CAAC,CACvDS,QAAQ,CAAC,CAAC;EACbuD,QAAQ,EAAElE,GAAG,CAACU,MAAM,CAAC,CAAC,CACnBkB,KAAK,CAAC,GAAGC,MAAM,CAACC,MAAM,CAAC7B,yBAAyB,CAAC,CAAC,CAClDU,QAAQ,CAAC,CAAC;EACbwD,MAAM,EAAEnE,GAAG,CAACU,MAAM,CAAC,CAAC,CACjBkB,KAAK,CAAC,GAAGC,MAAM,CAACC,MAAM,CAAC3B,uBAAuB,CAAC,CAAC,CAChDQ,QAAQ,CAAC,CAAC;EACbyD,IAAI,EAAEpE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACkB,KAAK,CAAC,GAAGC,MAAM,CAACC,MAAM,CAAC1B,qBAAqB,CAAC,CAAC;EACjEiE,QAAQ,EAAErE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjC2D,OAAO,EAAEtE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACI,QAAQ,CAAC,CAAC;EAChCyD,SAAS,EAAEvE,GAAG,CAACwE,IAAI,CAAC,CAAC,CAAC7D,QAAQ,CAAC,CAAC;EAChC8D,SAAS,EAAElB,eAAe,CAAC5C,QAAQ,CAAC,CAAC;EACrC+D,IAAI,EAAE1E,GAAG,CAAC2E,IAAI,CAAC,MAAM,EAAE;IACrBC,MAAM,EAAE,CACN;MACEC,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CAACoE,IAAI,CAAC,CAAC,CAAClD,KAAK,CAACxB,qBAAqB,CAAC2E,YAAY,CAAC;MACjEC,IAAI,EAAEjE;IACR,CAAC,EACD;MACE8D,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CAACoE,IAAI,CAAC,CAAC,CAAClD,KAAK,CAACxB,qBAAqB,CAAC6E,kBAAkB,CAAC;MACvED,IAAI,EAAErB,sBAAsB,CAG1B3B,gBAAgB;IACpB,CAAC,EACD;MACE6C,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAAC8E,yBAAyB,CAAC;MACzDF,IAAI,EAAErB,sBAAsB,CAG1B1B,uBAAuB;IAC3B,CAAC,EACD;MACE4C,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAAC+E,sBAAsB,CAAC;MACtDH,IAAI,EAAErB,sBAAsB,CAG1BzB,mBAAmB;IACvB,CAAC,EACD;MACE2C,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACgF,uBAAuB,CAAC;MACvDJ,IAAI,EAAErB,sBAAsB,CAG1BxB,oBAAoB;IACxB,CAAC,EACD;MACE0C,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACiF,4BAA4B,CAAC;MAC5DL,IAAI,EAAErB,sBAAsB,CAG1BvB,yBAAyB;IAC7B,CAAC,EACD;MACEyC,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACkF,0BAA0B,CAAC;MAC1DN,IAAI,EAAErB,sBAAsB,CAG1BrB,uBAAuB;IAC3B,CAAC,EACD;MACEuC,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACmF,0BAA0B,CAAC;MAC1DP,IAAI,EAAErB,sBAAsB,CAG1BhB,uBAAuB;IAC3B,CAAC,EACD;MACEkC,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACoF,2BAA2B,CAAC;MAC3DR,IAAI,EAAErB,sBAAsB,CAG1BnB,wBAAwB;IAC5B,CAAC,EACD;MACEqC,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACqF,2BAA2B,CAAC;MAC3DT,IAAI,EAAErB,sBAAsB,CAG1BZ,wBAAwB;IAC5B,CAAC,EACD;MACE8B,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACsF,+BAA+B,CAAC;MAC/DV,IAAI,EAAErB,sBAAsB,CAG1BV,4BAA4B;IAChC,CAAC,EACD;MACE4B,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CACboE,IAAI,CAAC,CAAC,CACNlD,KAAK,CAACxB,qBAAqB,CAACuF,gCAAgC,CAAC;MAChEX,IAAI,EAAErB,sBAAsB,CAG1BR,6BAA6B;IACjC,CAAC,EACD;MACE0B,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CAACoE,IAAI,CAAC,CAAC,CAAClD,KAAK,CAACxB,qBAAqB,CAACwF,kBAAkB,CAAC;MACvEZ,IAAI,EAAErB,sBAAsB,CAG1BN,mBAAmB;IACvB,CAAC,EACD;MACEwB,EAAE,EAAE7E,GAAG,CAACU,MAAM,CAAC,CAAC,CAACoE,IAAI,CAAC,CAAC,CAAClD,KAAK,CAACxB,qBAAqB,CAACyF,YAAY,CAAC;MACjEb,IAAI,EAAEtD;IACR,CAAC;EAEL,CAAC,CAAC;EACFoE,gBAAgB,EAAE9F,GAAG,CAACwE,IAAI,CAAC,CAAC,CAAC7D,QAAQ,CAAC;AACxC,CAAC,CAAC;AAEF,OAAO,MAAMoF,UAAU,GAAG/F,GAAG,CAACQ,MAAM,CAAa,CAAC,CAACc,IAAI,CAAC;EACtD0E,OAAO,EAAEhC;AACX,CAAC,CAAC;AAEF,OAAO,MAAMiC,WAAW,GAAGjC,aAAa,CAAChD,MAAM,CAAc;EAC3DkF,SAAS,EAAElG,GAAG,CAACU,MAAM,CAAC,CAAC,CAAC+C,IAAI,CAAC,CAAC,CAAC9C,QAAQ,CAAC,CAAC;EACzC0D,QAAQ,EAAErE,GAAG,CAACU,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACjCwF,eAAe,EAAEnG,GAAG,CAACwE,IAAI,CAAC,CAAC,CAAC7D,QAAQ,CAAC;AACvC,CAAC,CAAC","ignoreList":[]}
@@ -1,5 +1,4 @@
1
1
  import Joi, { type ObjectSchema } from 'joi';
2
- import { AuditEventMessageCategory, AuditEventMessageSchemaVersion, AuditEventMessageSource, AuditEventMessageType } from '../../form/form-audit/enums.js';
3
2
  import { type AuditEvent, type AuditMessage, type AuditRecord, type AuditUser, 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';
4
3
  export declare const formMessageDataBase: Joi.ObjectSchema<FormMessageDataBase>;
5
4
  export declare const formCreatedMessageData: Joi.ObjectSchema<FormCreatedMessageData>;
@@ -19,10 +18,6 @@ export declare const formSubmissionGuidanceChanges: Joi.ObjectSchema<FormSubmiss
19
18
  export declare const formUploadedChanges: Joi.ObjectSchema<FormUploadedChanges>;
20
19
  export declare const auditUserSchema: Joi.ObjectSchema<AuditUser>;
21
20
  export declare function formChangesMessageData<T, U extends FormMessageChangesData>(schema: ObjectSchema<T>): ObjectSchema<U>;
22
- export declare const validCategories: AuditEventMessageCategory[];
23
- export declare const validTypes: AuditEventMessageType[];
24
- export declare const validMessageSchemaVersions: AuditEventMessageSchemaVersion[];
25
- export declare const validMessageSource: AuditEventMessageSource[];
26
21
  export declare const messageSchema: Joi.ObjectSchema<AuditMessage>;
27
22
  export declare const auditEvent: Joi.ObjectSchema<AuditEvent>;
28
23
  export declare const auditRecord: Joi.ObjectSchema<AuditRecord>;
@@ -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;AAE5C,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EAEtB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,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;AAmBF,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,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,eAAe,6BAG3B,CAAA;AAED,eAAO,MAAM,UAAU,yBAqBtB,CAAA;AAED,eAAO,MAAM,0BAA0B,kCAAsC,CAAA;AAC7E,eAAO,MAAM,kBAAkB,2BAI9B,CAAA;AAED,eAAO,MAAM,aAAa,gCAoIxB,CAAA;AAEF,eAAO,MAAM,UAAU,8BAErB,CAAA;AAEF,eAAO,MAAM,WAAW,+BAItB,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,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,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,gCAoIxB,CAAA;AAEF,eAAO,MAAM,UAAU,8BAErB,CAAA;AAEF,eAAO,MAAM,WAAW,+BAItB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defra/forms-model",
3
- "version": "3.0.526",
3
+ "version": "3.0.527",
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",
@@ -65,27 +65,10 @@ export const formDefinitionS3Meta = Joi.object<FormDefinitionS3Meta>().keys({
65
65
  s3Key: Joi.string().required()
66
66
  })
67
67
 
68
- const allowedDefinitionRequestTypes = [
69
- FormDefinitionRequestType.CREATE_COMPONENT,
70
- FormDefinitionRequestType.UPDATE_COMPONENT,
71
- FormDefinitionRequestType.DELETE_COMPONENT,
72
- FormDefinitionRequestType.ADD_CONDITION,
73
- FormDefinitionRequestType.UPDATE_CONDITION,
74
- FormDefinitionRequestType.REMOVE_CONDITION,
75
- FormDefinitionRequestType.REORDER_PAGES,
76
- FormDefinitionRequestType.REORDER_COMPONENTS,
77
- FormDefinitionRequestType.ADD_LIST,
78
- FormDefinitionRequestType.UPDATE_LIST,
79
- FormDefinitionRequestType.REMOVE_LIST,
80
- FormDefinitionRequestType.CREATE_PAGE,
81
- FormDefinitionRequestType.UPDATE_PAGE_FIELDS,
82
- FormDefinitionRequestType.DELETE_PAGE
83
- ]
84
-
85
68
  export const formUpdatedMessageData =
86
69
  formMessageDataBase.append<FormUpdatedMessageData>({
87
70
  requestType: Joi.string()
88
- .valid(...allowedDefinitionRequestTypes)
71
+ .valid(...Object.values(FormDefinitionRequestType))
89
72
  .required(),
90
73
  s3Meta: formDefinitionS3Meta
91
74
  })
@@ -181,52 +164,17 @@ export function formChangesMessageData<T, U extends FormMessageChangesData>(
181
164
  })
182
165
  }
183
166
 
184
- export const validCategories = [
185
- AuditEventMessageCategory.FORM,
186
- AuditEventMessageCategory.ENTITLEMENT
187
- ]
188
-
189
- export const validTypes = [
190
- AuditEventMessageType.FORM_CREATED,
191
- AuditEventMessageType.FORM_PUBLISHED,
192
- AuditEventMessageType.FORM_TITLE_UPDATED,
193
- AuditEventMessageType.FORM_ORGANISATION_UPDATED,
194
- AuditEventMessageType.FORM_TEAM_NAME_UPDATED,
195
- AuditEventMessageType.FORM_TEAM_EMAIL_UPDATED,
196
- AuditEventMessageType.FORM_SUPPORT_CONTACT_UPDATED,
197
- AuditEventMessageType.FORM_SUPPORT_PHONE_UPDATED,
198
- AuditEventMessageType.FORM_SUPPORT_EMAIL_UPDATED,
199
- AuditEventMessageType.FORM_SUPPORT_ONLINE_UPDATED,
200
- AuditEventMessageType.FORM_PRIVACY_NOTICE_UPDATED,
201
- AuditEventMessageType.FORM_NOTIFICATION_EMAIL_UPDATED,
202
- AuditEventMessageType.FORM_SUBMISSION_GUIDANCE_UPDATED,
203
- AuditEventMessageType.FORM_JSON_UPLOADED,
204
- AuditEventMessageType.FORM_JSON_DOWNLOADED,
205
- AuditEventMessageType.FORM_DRAFT_CREATED_FROM_LIVE,
206
- AuditEventMessageType.FORM_LIVE_CREATED_FROM_DRAFT,
207
- AuditEventMessageType.FORM_DRAFT_DELETED,
208
- AuditEventMessageType.FORM_MIGRATED,
209
- AuditEventMessageType.FORM_UPDATED
210
- ]
211
-
212
- export const validMessageSchemaVersions = [AuditEventMessageSchemaVersion.V1]
213
- export const validMessageSource = [
214
- AuditEventMessageSource.FORMS_MANAGER,
215
- AuditEventMessageSource.FORMS_DESIGNER,
216
- AuditEventMessageSource.ENTITLEMENT
217
- ]
218
-
219
167
  export const messageSchema = Joi.object<AuditMessage>().keys({
220
168
  schemaVersion: Joi.string()
221
- .valid(...validMessageSchemaVersions)
169
+ .valid(...Object.values(AuditEventMessageSchemaVersion))
222
170
  .required(),
223
171
  category: Joi.string()
224
- .valid(...validCategories)
172
+ .valid(...Object.values(AuditEventMessageCategory))
225
173
  .required(),
226
174
  source: Joi.string()
227
- .valid(...validMessageSource)
175
+ .valid(...Object.values(AuditEventMessageSource))
228
176
  .required(),
229
- type: Joi.string().valid(...validTypes),
177
+ type: Joi.string().valid(...Object.values(AuditEventMessageType)),
230
178
  entityId: Joi.string().required(),
231
179
  traceId: Joi.string().optional(),
232
180
  createdAt: Joi.date().required(),