@cd-z/epub-constructor
Version:
This is a react library that creates an epub structure. This library only provides the file structure. To get a valid epub file it is needed to to create files from the provided data and compress them to a epub file.
21 lines (20 loc) • 968 B
JavaScript
/**
* Generates metadata for an EPUB file based on the provided settings.
* If any setting is missing, default values will be used.
*
* @param epubSettings - The settings for the EPUB file.
* @returns The generated metadata string.
*/
export function createMetadata(epubSettings) {
return `
<dc:title>${epubSettings.title ?? 'Unnamed'}</dc:title>
<dc:creator>${epubSettings.author ?? 'Unnamed'}</dc:creator>
<dc:description>${epubSettings.description ?? 'None'}</dc:description>
<dc:language>${epubSettings.language ?? 'en'}</dc:language>
<dc:identifier id="BookId">${epubSettings.bookId}</dc:identifier>
<dc:rights id="rights">${epubSettings.rights ?? 'None'}</dc:rights>
<dc:source id="source">${epubSettings.source ?? 'None'}</dc:source>
<dc:date>${new Date().toISOString()}</dc:date>
<meta property="dcterms:modified">${new Date().toISOString().split('.')[0] + 'Z'}</meta>
<meta name="cover" content="cover"/>`;
}