Draft: feat(server): multiple isbn fields
feat(server): multiple isbn fields
Refactors 'Book.podMetadata':
- Drops 'Book.podMetadata.isbn'.
- Adds 'Book.podMetadata.isbns'; an array of ('label', 'isbn') pairs.
- Adds validation of 'Book.podMetadata.isbns'.
Implements migration for the 'Book.podMetadata' changes.
Refactors 'Book' GraphQL:
- Drops 'Book.podMetadata.isbn'.
- Adds 'Book.podMetadata.isbns'; an array of ('label', 'isbn') pairs.
- Makes 'label' and 'isbn', required inputs of 'Book.podMetadata.isbns'.
Adds temporary fixes for:
- controllers/helpers/EPUBPreparation.js
- controllers/helpers/htmlGenerators.js Functions in both of these files expect "podMetadata" to have the "isbn" field and not the new "isbns" field. For now, there is only one isbn per "isbns" array so the code has been updated to fetch the value of the first "isbns" item.
Depends on https://gitlab.coko.foundation/ketida/ketida/-/merge_requests/304 Related to https://gitlab.coko.foundation/ketida/ketida/-/issues/770