# Contributing
When updating the schema (links below), the tools need to be updated at the same time.
Schema links: EN10168 (opens new window) E-CoC (opens new window) CoA (opens new window) CDN (opens new window)
Process:
- Update the schema in question
- Generate the types (
certificate.ts
) using thecreate-schema-interfaces
CLI tool (npm run fixtures:interfaces
) in theschema-tools
repository - If necessary, make changes in
generateContent.ts
inschema-tools/packages/generate-coa-pdf-template/src/generateContent.ts
and runnpm run build
. IfgenerateContent.ts
has been changed and built, copy the contents ofdist/generateContent.js
to the schema repository and replace the contents ofgenerate-pdf.min.js
in the schema repository with the new minified code - For a new Release Candidate, add a new fixture (used for testing). See how to add fixtures here (opens new window)
- If there have been no changes in
certificate-model, certificate-summary, extract-emails, generate-html, generate-pdf, types, utils, validate
in theschema-tools
repository, there is no need to update theschema-tools
release. - If you need to edit the html generation:
- update
/packages/generate-html/src/index.ts
if necessary - new handlebars helpers go in the above file in the
handlebarsBaseOptions
function - add any new helpers to
template.hbs
in the schema repository if necessary - after making changes in a package in
schema-tools
, run thebuild
script, then the rootbootstrap
script
- update