@fiduswriter/books-document 0.1.1
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.
- package/LICENSE +661 -0
- package/README.md +24 -0
- package/dist/exporter/bits/index.d.ts +42 -0
- package/dist/exporter/bits/index.d.ts.map +1 -0
- package/dist/exporter/bits/index.js +98 -0
- package/dist/exporter/bits/index.js.map +1 -0
- package/dist/exporter/bits/templates.d.ts +7 -0
- package/dist/exporter/bits/templates.d.ts.map +1 -0
- package/dist/exporter/bits/templates.js +78 -0
- package/dist/exporter/bits/templates.js.map +1 -0
- package/dist/exporter/docx/index.d.ts +27 -0
- package/dist/exporter/docx/index.d.ts.map +1 -0
- package/dist/exporter/docx/index.js +129 -0
- package/dist/exporter/docx/index.js.map +1 -0
- package/dist/exporter/docx/render.d.ts +14 -0
- package/dist/exporter/docx/render.d.ts.map +1 -0
- package/dist/exporter/docx/render.js +116 -0
- package/dist/exporter/docx/render.js.map +1 -0
- package/dist/exporter/epub/index.d.ts +65 -0
- package/dist/exporter/epub/index.d.ts.map +1 -0
- package/dist/exporter/epub/index.js +268 -0
- package/dist/exporter/epub/index.js.map +1 -0
- package/dist/exporter/epub/templates.d.ts +65 -0
- package/dist/exporter/epub/templates.d.ts.map +1 -0
- package/dist/exporter/epub/templates.js +223 -0
- package/dist/exporter/epub/templates.js.map +1 -0
- package/dist/exporter/epub/tools.d.ts +5 -0
- package/dist/exporter/epub/tools.d.ts.map +1 -0
- package/dist/exporter/epub/tools.js +59 -0
- package/dist/exporter/epub/tools.js.map +1 -0
- package/dist/exporter/html/index.d.ts +67 -0
- package/dist/exporter/html/index.d.ts.map +1 -0
- package/dist/exporter/html/index.js +300 -0
- package/dist/exporter/html/index.js.map +1 -0
- package/dist/exporter/html/templates.d.ts +40 -0
- package/dist/exporter/html/templates.d.ts.map +1 -0
- package/dist/exporter/html/templates.js +226 -0
- package/dist/exporter/html/templates.js.map +1 -0
- package/dist/exporter/html/tools.d.ts +2 -0
- package/dist/exporter/html/tools.d.ts.map +1 -0
- package/dist/exporter/html/tools.js +23 -0
- package/dist/exporter/html/tools.js.map +1 -0
- package/dist/exporter/latex/index.d.ts +32 -0
- package/dist/exporter/latex/index.d.ts.map +1 -0
- package/dist/exporter/latex/index.js +102 -0
- package/dist/exporter/latex/index.js.map +1 -0
- package/dist/exporter/latex/templates.d.ts +4 -0
- package/dist/exporter/latex/templates.d.ts.map +1 -0
- package/dist/exporter/latex/templates.js +26 -0
- package/dist/exporter/latex/templates.js.map +1 -0
- package/dist/exporter/native/index.d.ts +20 -0
- package/dist/exporter/native/index.d.ts.map +1 -0
- package/dist/exporter/native/index.js +109 -0
- package/dist/exporter/native/index.js.map +1 -0
- package/dist/exporter/odt/index.d.ts +27 -0
- package/dist/exporter/odt/index.d.ts.map +1 -0
- package/dist/exporter/odt/index.js +123 -0
- package/dist/exporter/odt/index.js.map +1 -0
- package/dist/exporter/odt/render.d.ts +15 -0
- package/dist/exporter/odt/render.d.ts.map +1 -0
- package/dist/exporter/odt/render.js +119 -0
- package/dist/exporter/odt/render.js.map +1 -0
- package/dist/exporter/print/index.d.ts +24 -0
- package/dist/exporter/print/index.d.ts.map +1 -0
- package/dist/exporter/print/index.js +60 -0
- package/dist/exporter/print/index.js.map +1 -0
- package/dist/exporter/print/templates.d.ts +2 -0
- package/dist/exporter/print/templates.d.ts.map +1 -0
- package/dist/exporter/print/templates.js +5 -0
- package/dist/exporter/print/templates.js.map +1 -0
- package/dist/exporter/tools.d.ts +29 -0
- package/dist/exporter/tools.d.ts.map +1 -0
- package/dist/exporter/tools.js +151 -0
- package/dist/exporter/tools.js.map +1 -0
- package/dist/i18n.d.ts +7 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +918 -0
- package/dist/i18n.js.map +1 -0
- package/dist/importer/native/index.d.ts +34 -0
- package/dist/importer/native/index.d.ts.map +1 -0
- package/dist/importer/native/index.js +152 -0
- package/dist/importer/native/index.js.map +1 -0
- package/dist/importer/native/reader.d.ts +26 -0
- package/dist/importer/native/reader.d.ts.map +1 -0
- package/dist/importer/native/reader.js +105 -0
- package/dist/importer/native/reader.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/schema/index.d.ts +4 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +4 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/types.d.ts +151 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +101 -0
- package/src/exporter/bits/index.ts +163 -0
- package/src/exporter/bits/templates.ts +107 -0
- package/src/exporter/docx/index.ts +239 -0
- package/src/exporter/docx/render.ts +142 -0
- package/src/exporter/epub/index.ts +426 -0
- package/src/exporter/epub/templates.ts +401 -0
- package/src/exporter/epub/tools.ts +68 -0
- package/src/exporter/html/index.ts +443 -0
- package/src/exporter/html/templates.ts +363 -0
- package/src/exporter/html/tools.ts +26 -0
- package/src/exporter/latex/index.ts +161 -0
- package/src/exporter/latex/templates.ts +35 -0
- package/src/exporter/native/index.ts +187 -0
- package/src/exporter/odt/index.ts +211 -0
- package/src/exporter/odt/render.ts +146 -0
- package/src/exporter/print/index.ts +92 -0
- package/src/exporter/print/templates.ts +8 -0
- package/src/exporter/tools.ts +233 -0
- package/src/global.d.ts +2 -0
- package/src/i18n.ts +936 -0
- package/src/importer/native/index.ts +233 -0
- package/src/importer/native/reader.ts +165 -0
- package/src/index.ts +19 -0
- package/src/modules.d.ts +11 -0
- package/src/schema/index.ts +4 -0
- package/src/types.ts +188 -0
package/dist/i18n.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native `.fidusbook` importer.
|
|
3
|
+
*
|
|
4
|
+
* Uses `NativeImporter` from `@fiduswriter/document/importer/native` for each
|
|
5
|
+
* chapter and delegates creation of the book record to a `BookImporterBackend`.
|
|
6
|
+
*/
|
|
7
|
+
import type { NativeImporterBackend } from "@fiduswriter/document";
|
|
8
|
+
import type { BookImporterBackend, User } from "../../types.js";
|
|
9
|
+
export { FIDUSBOOK_VERSION } from "./reader.js";
|
|
10
|
+
export { readFidusBookFile, FidusBookReader } from "./reader.js";
|
|
11
|
+
export declare class NativeBookImporter {
|
|
12
|
+
file: Blob;
|
|
13
|
+
user: User;
|
|
14
|
+
path: string;
|
|
15
|
+
nativeBackend: NativeImporterBackend;
|
|
16
|
+
bookBackend: BookImporterBackend;
|
|
17
|
+
ok: boolean;
|
|
18
|
+
statusText: string;
|
|
19
|
+
bookId: number | null;
|
|
20
|
+
constructor(file: Blob, user: User, nativeBackend: NativeImporterBackend, bookBackend: BookImporterBackend, path?: string);
|
|
21
|
+
/**
|
|
22
|
+
* Entry point. Validates the file is a ZIP, then delegates to the reader.
|
|
23
|
+
*/
|
|
24
|
+
init(): Promise<NativeBookImporter>;
|
|
25
|
+
readZip(): Promise<void>;
|
|
26
|
+
processFidusbookFile(textFiles: Array<{
|
|
27
|
+
filename: string;
|
|
28
|
+
content: string;
|
|
29
|
+
}>, binaryFiles: Array<{
|
|
30
|
+
filename: string;
|
|
31
|
+
content: Blob;
|
|
32
|
+
}>): Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/importer/native/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,uBAAuB,CAAA;AAIhE,OAAO,KAAK,EAAC,mBAAmB,EAAW,IAAI,EAAC,MAAM,gBAAgB,CAAA;AAGtE,OAAO,EAAC,iBAAiB,EAAC,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAC,iBAAiB,EAAE,eAAe,EAAC,MAAM,aAAa,CAAA;AAE9D,qBAAa,kBAAkB;IAC3B,IAAI,EAAE,IAAI,CAAA;IACV,IAAI,EAAE,IAAI,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,qBAAqB,CAAA;IACpC,WAAW,EAAE,mBAAmB,CAAA;IAEhC,EAAE,EAAE,OAAO,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;gBAGjB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,mBAAmB,EAChC,IAAI,SAAM;IAad;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAqB7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA6CxB,oBAAoB,CACtB,SAAS,EAAE,KAAK,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAC,CAAC,EACrD,WAAW,EAAE,KAAK,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,IAAI,CAAA;KAAC,CAAC,GACtD,OAAO,CAAC,IAAI,CAAC;CAkHnB"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native `.fidusbook` importer.
|
|
3
|
+
*
|
|
4
|
+
* Uses `NativeImporter` from `@fiduswriter/document/importer/native` for each
|
|
5
|
+
* chapter and delegates creation of the book record to a `BookImporterBackend`.
|
|
6
|
+
*/
|
|
7
|
+
import { NativeImporter } from "@fiduswriter/document/importer/native";
|
|
8
|
+
import { addAlert } from "fwtoolkit";
|
|
9
|
+
export { FIDUSBOOK_VERSION } from "./reader.js";
|
|
10
|
+
export { readFidusBookFile, FidusBookReader } from "./reader.js";
|
|
11
|
+
export class NativeBookImporter {
|
|
12
|
+
file;
|
|
13
|
+
user;
|
|
14
|
+
path;
|
|
15
|
+
nativeBackend;
|
|
16
|
+
bookBackend;
|
|
17
|
+
ok;
|
|
18
|
+
statusText;
|
|
19
|
+
bookId;
|
|
20
|
+
constructor(file, user, nativeBackend, bookBackend, path = "/") {
|
|
21
|
+
this.file = file;
|
|
22
|
+
this.user = user;
|
|
23
|
+
this.path = path.endsWith("/") ? path : path + "/";
|
|
24
|
+
this.nativeBackend = nativeBackend;
|
|
25
|
+
this.bookBackend = bookBackend;
|
|
26
|
+
this.ok = false;
|
|
27
|
+
this.statusText = "";
|
|
28
|
+
this.bookId = null;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Entry point. Validates the file is a ZIP, then delegates to the reader.
|
|
32
|
+
*/
|
|
33
|
+
init() {
|
|
34
|
+
return new Promise(resolve => {
|
|
35
|
+
const reader = new FileReader();
|
|
36
|
+
reader.onloadend = () => {
|
|
37
|
+
if (reader.result &&
|
|
38
|
+
reader.result.length > 60 &&
|
|
39
|
+
reader.result.substring(0, 2) === "PK") {
|
|
40
|
+
this.readZip().then(() => resolve(this));
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
this.statusText = gettext("The uploaded file does not appear to be a Fidusbook file.");
|
|
44
|
+
resolve(this);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
reader.readAsText(this.file.slice(0, 64));
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
async readZip() {
|
|
51
|
+
let textFiles = [];
|
|
52
|
+
let binaryFiles = [];
|
|
53
|
+
try {
|
|
54
|
+
const JSZip = (await import("jszip")).default;
|
|
55
|
+
const zipfs = await JSZip.loadAsync(this.file);
|
|
56
|
+
const filenames = [];
|
|
57
|
+
zipfs.forEach(filename => filenames.push(filename));
|
|
58
|
+
await Promise.all(filenames
|
|
59
|
+
.filter(f => !f.endsWith("/"))
|
|
60
|
+
.map(async (filename) => {
|
|
61
|
+
const isText = filename.endsWith(".json") ||
|
|
62
|
+
filename === "filetype-version" ||
|
|
63
|
+
filename === "mimetype";
|
|
64
|
+
const content = await zipfs.files[filename].async(isText ? "string" : "blob");
|
|
65
|
+
if (isText) {
|
|
66
|
+
textFiles.push({
|
|
67
|
+
filename,
|
|
68
|
+
content: content
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
binaryFiles.push({
|
|
73
|
+
filename,
|
|
74
|
+
content: content
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}));
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
this.statusText = gettext("The uploaded file does not appear to be a Fidusbook file.");
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
return this.processFidusbookFile(textFiles, binaryFiles);
|
|
84
|
+
}
|
|
85
|
+
async processFidusbookFile(textFiles, binaryFiles) {
|
|
86
|
+
const versionEntry = textFiles.find(f => f.filename === "filetype-version");
|
|
87
|
+
const filetypeVersion = Number.parseFloat(versionEntry?.content || "");
|
|
88
|
+
if (filetypeVersion < 1.0 ||
|
|
89
|
+
filetypeVersion > 1.0) {
|
|
90
|
+
this.statusText =
|
|
91
|
+
gettext("The Fidusbook file version is not supported by this server: ") + (versionEntry?.content || "");
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const mimetypeEntry = textFiles.find(f => f.filename === "mimetype");
|
|
95
|
+
if (mimetypeEntry &&
|
|
96
|
+
mimetypeEntry.content !== "application/fidusbook+zip") {
|
|
97
|
+
this.statusText = gettext("The uploaded file does not appear to be a Fidusbook file.");
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
const bookData = JSON.parse(textFiles.find(f => f.filename === "book.json")?.content || "{}");
|
|
101
|
+
const sortedChapters = [...bookData.chapters].sort((a, b) => a.chapter_index - b.chapter_index);
|
|
102
|
+
const importedDocIds = {};
|
|
103
|
+
for (const chapter of sortedChapters) {
|
|
104
|
+
const ci = chapter.chapter_index;
|
|
105
|
+
const docFile = textFiles.find(f => f.filename === `chapters/${ci}/document.json`);
|
|
106
|
+
const imagesFile = textFiles.find(f => f.filename === `chapters/${ci}/images.json`);
|
|
107
|
+
const bibFile = textFiles.find(f => f.filename === `chapters/${ci}/bibliography.json`);
|
|
108
|
+
if (!docFile || !imagesFile || !bibFile) {
|
|
109
|
+
addAlert("error", gettext("Fidusbook file is missing data for chapter ") +
|
|
110
|
+
(sortedChapters.indexOf(chapter) + 1));
|
|
111
|
+
throw new Error(`Missing chapter data for index ${ci}`);
|
|
112
|
+
}
|
|
113
|
+
const docJson = JSON.parse(docFile.content);
|
|
114
|
+
const imagesJson = JSON.parse(imagesFile.content);
|
|
115
|
+
const bibJson = JSON.parse(bibFile.content);
|
|
116
|
+
const chapterPrefix = `chapters/${ci}/images/`;
|
|
117
|
+
const chapterOtherFiles = binaryFiles
|
|
118
|
+
.filter(f => f.filename.startsWith(chapterPrefix))
|
|
119
|
+
.map(f => ({
|
|
120
|
+
filename: `images/${f.filename.slice(chapterPrefix.length)}`,
|
|
121
|
+
content: f.content
|
|
122
|
+
}));
|
|
123
|
+
const safeBookTitle = bookData.title || "Untitled";
|
|
124
|
+
const chapterPath = `${this.path}${safeBookTitle}/${docJson.title || "Untitled"}`;
|
|
125
|
+
const importer = new NativeImporter(docJson, bibJson, { db: imagesJson }, chapterOtherFiles, this.user, this.nativeBackend, {
|
|
126
|
+
requestedPath: chapterPath
|
|
127
|
+
});
|
|
128
|
+
let doc;
|
|
129
|
+
try {
|
|
130
|
+
;
|
|
131
|
+
({ doc } = await importer.init());
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
addAlert("error", gettext("Could not import chapter ") +
|
|
135
|
+
(docJson.title ||
|
|
136
|
+
sortedChapters.indexOf(chapter) + 1));
|
|
137
|
+
throw error;
|
|
138
|
+
}
|
|
139
|
+
importedDocIds[ci] = doc.id;
|
|
140
|
+
}
|
|
141
|
+
const chapters = sortedChapters.map(chapter => ({
|
|
142
|
+
text: importedDocIds[chapter.chapter_index],
|
|
143
|
+
number: chapter.number,
|
|
144
|
+
part: chapter.part || ""
|
|
145
|
+
}));
|
|
146
|
+
const book = await this.bookBackend.createBook(bookData, chapters, false);
|
|
147
|
+
this.bookId = book.id || null;
|
|
148
|
+
this.ok = true;
|
|
149
|
+
this.statusText = `"${bookData.title}" ${gettext("successfully imported.")}`;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/importer/native/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure reader for `.fidusbook` archives.
|
|
3
|
+
*
|
|
4
|
+
* Reads the ZIP file, validates the mimetype/version, and returns the raw
|
|
5
|
+
* book metadata plus a `documentList` shaped like the one used by the
|
|
6
|
+
* exporters. No server interaction.
|
|
7
|
+
*/
|
|
8
|
+
import type { DocumentListEntry } from "../../types.js";
|
|
9
|
+
export declare const FIDUSBOOK_VERSION = "1.0";
|
|
10
|
+
export declare const MIN_FIDUSBOOK_VERSION = 1;
|
|
11
|
+
export declare const MAX_FIDUSBOOK_VERSION = 1;
|
|
12
|
+
export interface FidusBookReaderResult {
|
|
13
|
+
book: Record<string, unknown>;
|
|
14
|
+
documentList: DocumentListEntry[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Read a `.fidusbook` archive and return its contents.
|
|
18
|
+
*
|
|
19
|
+
* @param file - A File/Blob/ArrayBuffer containing the archive.
|
|
20
|
+
* @returns The parsed book and document list.
|
|
21
|
+
*/
|
|
22
|
+
export declare function readFidusBookFile(file: Blob | ArrayBuffer): Promise<FidusBookReaderResult>;
|
|
23
|
+
export declare class FidusBookReader {
|
|
24
|
+
read(file: Blob | ArrayBuffer): Promise<FidusBookReaderResult>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../../src/importer/native/reader.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,gBAAgB,CAAA;AAErD,eAAO,MAAM,iBAAiB,QAAQ,CAAA;AACtC,eAAO,MAAM,qBAAqB,IAAM,CAAA;AACxC,eAAO,MAAM,qBAAqB,IAAM,CAAA;AAOxC,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,YAAY,EAAE,iBAAiB,EAAE,CAAA;CACpC;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACnC,IAAI,EAAE,IAAI,GAAG,WAAW,GACzB,OAAO,CAAC,qBAAqB,CAAC,CA8HhC;AAED,qBAAa,eAAe;IAClB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAGvE"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure reader for `.fidusbook` archives.
|
|
3
|
+
*
|
|
4
|
+
* Reads the ZIP file, validates the mimetype/version, and returns the raw
|
|
5
|
+
* book metadata plus a `documentList` shaped like the one used by the
|
|
6
|
+
* exporters. No server interaction.
|
|
7
|
+
*/
|
|
8
|
+
export const FIDUSBOOK_VERSION = "1.0";
|
|
9
|
+
export const MIN_FIDUSBOOK_VERSION = 1.0;
|
|
10
|
+
export const MAX_FIDUSBOOK_VERSION = 1.0;
|
|
11
|
+
/**
|
|
12
|
+
* Read a `.fidusbook` archive and return its contents.
|
|
13
|
+
*
|
|
14
|
+
* @param file - A File/Blob/ArrayBuffer containing the archive.
|
|
15
|
+
* @returns The parsed book and document list.
|
|
16
|
+
*/
|
|
17
|
+
export async function readFidusBookFile(file) {
|
|
18
|
+
const JSZip = (await import("jszip")).default;
|
|
19
|
+
const zipfs = await JSZip.loadAsync(file);
|
|
20
|
+
const filenames = [];
|
|
21
|
+
zipfs.forEach(filename => filenames.push(filename));
|
|
22
|
+
if (!filenames.includes("book.json") ||
|
|
23
|
+
!filenames.includes("filetype-version")) {
|
|
24
|
+
throw new Error("The file does not appear to be a Fidusbook file.");
|
|
25
|
+
}
|
|
26
|
+
const textFiles = [];
|
|
27
|
+
const binaryFiles = [];
|
|
28
|
+
await Promise.all(filenames
|
|
29
|
+
.filter(f => !f.endsWith("/"))
|
|
30
|
+
.map(async (filename) => {
|
|
31
|
+
const isText = filename.endsWith(".json") ||
|
|
32
|
+
filename === "filetype-version" ||
|
|
33
|
+
filename === "mimetype";
|
|
34
|
+
const content = await zipfs.files[filename].async(isText ? "string" : "blob");
|
|
35
|
+
const entry = { filename, content };
|
|
36
|
+
if (isText) {
|
|
37
|
+
textFiles.push(entry);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
binaryFiles.push(entry);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
const versionEntry = textFiles.find(f => f.filename === "filetype-version");
|
|
44
|
+
const filetypeVersion = Number.parseFloat(versionEntry?.content);
|
|
45
|
+
if (filetypeVersion < MIN_FIDUSBOOK_VERSION ||
|
|
46
|
+
filetypeVersion > MAX_FIDUSBOOK_VERSION) {
|
|
47
|
+
throw new Error(`The Fidusbook file version is not supported by this reader: ${String(versionEntry?.content)}`);
|
|
48
|
+
}
|
|
49
|
+
const mimetypeEntry = textFiles.find(f => f.filename === "mimetype");
|
|
50
|
+
if (mimetypeEntry &&
|
|
51
|
+
mimetypeEntry.content !== "application/fidusbook+zip") {
|
|
52
|
+
throw new Error("The file does not appear to be a Fidusbook file.");
|
|
53
|
+
}
|
|
54
|
+
const bookData = JSON.parse(textFiles.find(f => f.filename === "book.json")?.content);
|
|
55
|
+
const sortedChapters = [...bookData.chapters].sort((a, b) => a.chapter_index - b.chapter_index);
|
|
56
|
+
const documentList = [];
|
|
57
|
+
for (const chapter of sortedChapters) {
|
|
58
|
+
const ci = chapter.chapter_index;
|
|
59
|
+
const docFile = textFiles.find(f => f.filename === `chapters/${ci}/document.json`);
|
|
60
|
+
const imagesFile = textFiles.find(f => f.filename === `chapters/${ci}/images.json`);
|
|
61
|
+
const bibFile = textFiles.find(f => f.filename === `chapters/${ci}/bibliography.json`);
|
|
62
|
+
if (!docFile || !imagesFile || !bibFile) {
|
|
63
|
+
throw new Error(`Missing chapter data for index ${ci}`);
|
|
64
|
+
}
|
|
65
|
+
const docJson = JSON.parse(docFile.content);
|
|
66
|
+
const imagesJson = JSON.parse(imagesFile.content);
|
|
67
|
+
const bibJson = JSON.parse(bibFile.content);
|
|
68
|
+
const chapterPrefix = `chapters/${ci}/images/`;
|
|
69
|
+
const chapterImages = {};
|
|
70
|
+
binaryFiles
|
|
71
|
+
.filter(f => f.filename.startsWith(chapterPrefix))
|
|
72
|
+
.forEach(f => {
|
|
73
|
+
chapterImages[`images/${f.filename.slice(chapterPrefix.length)}`] = f.content;
|
|
74
|
+
});
|
|
75
|
+
Object.entries(imagesJson).forEach(([, image]) => {
|
|
76
|
+
if (chapterImages[image.image]) {
|
|
77
|
+
image.file = chapterImages[image.image];
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
documentList.push({
|
|
81
|
+
id: docJson.id || 0,
|
|
82
|
+
title: docJson.title || "",
|
|
83
|
+
path: docJson.path || "",
|
|
84
|
+
content: (docJson.content || {
|
|
85
|
+
type: "doc",
|
|
86
|
+
content: []
|
|
87
|
+
}),
|
|
88
|
+
settings: (docJson.settings || {}),
|
|
89
|
+
comments: (docJson.comments || {}),
|
|
90
|
+
images: imagesJson,
|
|
91
|
+
bibliography: bibJson,
|
|
92
|
+
rawContent: docJson.rawContent,
|
|
93
|
+
e2ee: docJson.e2ee,
|
|
94
|
+
e2ee_salt: docJson.e2ee_salt,
|
|
95
|
+
e2ee_iterations: docJson.e2ee_iterations
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return { book: bookData, documentList };
|
|
99
|
+
}
|
|
100
|
+
export class FidusBookReader {
|
|
101
|
+
async read(file) {
|
|
102
|
+
return readFidusBookFile(file);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reader.js","sourceRoot":"","sources":["../../../src/importer/native/reader.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { FIDUSBOOK_VERSION } from "./schema/index.js";
|
|
2
|
+
export type { Book, BookBaseMetadata, BookCoverImage, BookExporterOptions, BookImporterBackend, BookMetadata, BookSettings, BookStyle, BookStyles, BookTexTemplateParams, BitsTemplateParams, Chapter, DocumentListEntry, E2EEStrategy, ChapterLoader, FidusBookArchive } from "./types.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAA;AACnD,YAAY,EACR,IAAI,EACJ,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAClB,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,gBAAgB,EACnB,MAAM,YAAY,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA;AAE5C,qDAAqD;AACrD,eAAO,MAAM,iBAAiB,QAAQ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA;AAE5C,qDAAqD;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAA"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core types for the @fiduswriter/books-document package.
|
|
3
|
+
*/
|
|
4
|
+
import type { Schema } from "prosemirror-model";
|
|
5
|
+
import type { BibDB, CSL, ExportDoc, ExportMetadata, ImageDB, User } from "@fiduswriter/document";
|
|
6
|
+
export type { CSL, User } from "@fiduswriter/document";
|
|
7
|
+
/** A single chapter entry inside a book. */
|
|
8
|
+
export interface Chapter {
|
|
9
|
+
/** Document ID of the chapter. */
|
|
10
|
+
text: number;
|
|
11
|
+
/** Display number / order of the chapter. */
|
|
12
|
+
number: number;
|
|
13
|
+
/** Optional part title. */
|
|
14
|
+
part?: string;
|
|
15
|
+
/** Archive storage index (used by the native importer). */
|
|
16
|
+
chapter_index?: number;
|
|
17
|
+
}
|
|
18
|
+
/** Book metadata block. */
|
|
19
|
+
export interface BookMetadata {
|
|
20
|
+
subtitle?: string;
|
|
21
|
+
author?: string;
|
|
22
|
+
version?: string;
|
|
23
|
+
publisher?: string;
|
|
24
|
+
copyright?: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
isbn?: string;
|
|
27
|
+
publication_date?: string;
|
|
28
|
+
series_title?: string;
|
|
29
|
+
series_position?: string;
|
|
30
|
+
keywords?: string;
|
|
31
|
+
[key: string]: unknown;
|
|
32
|
+
}
|
|
33
|
+
/** Book settings block. */
|
|
34
|
+
export interface BookSettings {
|
|
35
|
+
language: string;
|
|
36
|
+
book_style?: string;
|
|
37
|
+
papersize?: string;
|
|
38
|
+
[key: string]: unknown;
|
|
39
|
+
}
|
|
40
|
+
/** A book record. */
|
|
41
|
+
export interface Book {
|
|
42
|
+
id?: number;
|
|
43
|
+
title: string;
|
|
44
|
+
path?: string;
|
|
45
|
+
metadata: BookMetadata;
|
|
46
|
+
settings: BookSettings;
|
|
47
|
+
chapters: Chapter[];
|
|
48
|
+
cover_image?: number;
|
|
49
|
+
cover_image_data?: BookCoverImage;
|
|
50
|
+
updated?: number;
|
|
51
|
+
added?: number;
|
|
52
|
+
docx_template?: string;
|
|
53
|
+
odt_template?: string;
|
|
54
|
+
rights?: string;
|
|
55
|
+
[key: string]: unknown;
|
|
56
|
+
}
|
|
57
|
+
/** Cover image description stored in a book. */
|
|
58
|
+
export interface BookCoverImage {
|
|
59
|
+
title?: string;
|
|
60
|
+
checksum?: string;
|
|
61
|
+
file_type?: string;
|
|
62
|
+
image?: string;
|
|
63
|
+
[key: string]: unknown;
|
|
64
|
+
}
|
|
65
|
+
/** A single book style with its associated media files. */
|
|
66
|
+
export interface BookStyle {
|
|
67
|
+
slug: string;
|
|
68
|
+
contents: string;
|
|
69
|
+
bookstylefile_set: Array<[string, string]>;
|
|
70
|
+
[key: string]: unknown;
|
|
71
|
+
}
|
|
72
|
+
export type BookStyles = BookStyle[];
|
|
73
|
+
/** A document entry as held in the book's document list. */
|
|
74
|
+
export interface DocumentListEntry extends ExportDoc {
|
|
75
|
+
/** Raw ProseMirror content (used by DOCX/ODT exporters). */
|
|
76
|
+
rawContent?: Record<string, unknown>;
|
|
77
|
+
/** Whether the document is end-to-end encrypted. */
|
|
78
|
+
e2ee?: boolean;
|
|
79
|
+
/** Base64-encoded salt for E2EE key derivation. */
|
|
80
|
+
e2ee_salt?: string;
|
|
81
|
+
/** PBKDF2 iterations for E2EE key derivation. */
|
|
82
|
+
e2ee_iterations?: number;
|
|
83
|
+
images?: ImageDB["db"];
|
|
84
|
+
bibliography?: BibDB["db"];
|
|
85
|
+
}
|
|
86
|
+
/** Options shared by book exporters. */
|
|
87
|
+
export interface BookExporterOptions {
|
|
88
|
+
/** ProseMirror schema used for E2EE decryption. */
|
|
89
|
+
schema?: Schema;
|
|
90
|
+
/** CSL engine provider. */
|
|
91
|
+
csl?: CSL;
|
|
92
|
+
/** Book styles data. */
|
|
93
|
+
bookStyles?: BookStyles;
|
|
94
|
+
/** Logged-in user. */
|
|
95
|
+
user?: User;
|
|
96
|
+
/** Document list entries for the book's chapters. */
|
|
97
|
+
documentList?: DocumentListEntry[];
|
|
98
|
+
/** Last-modified timestamp (seconds since epoch). */
|
|
99
|
+
updated?: number;
|
|
100
|
+
/** Whether to produce multiple HTML files (HTML exporter only). */
|
|
101
|
+
multiDoc?: boolean;
|
|
102
|
+
/** Use relative URLs for linked assets (HTML exporter only). */
|
|
103
|
+
relativeUrls?: boolean;
|
|
104
|
+
}
|
|
105
|
+
/** Strategy for loading missing chapter data before export. */
|
|
106
|
+
export interface ChapterLoader {
|
|
107
|
+
loadChapters(chapterIds: number[], documentList: DocumentListEntry[], schema?: Schema, rawContent?: boolean): Promise<void>;
|
|
108
|
+
}
|
|
109
|
+
/** Strategy for handling end-to-end encrypted chapters. */
|
|
110
|
+
export interface E2EEStrategy {
|
|
111
|
+
ensurePassphraseUnlocked(): Promise<boolean>;
|
|
112
|
+
getDocumentPassword(docId: number): Promise<string | null>;
|
|
113
|
+
resolvePasswordToKey(password: string, salt: Uint8Array, iterations: number): Promise<CryptoKey>;
|
|
114
|
+
decryptObject(encrypted: string, key: CryptoKey): Promise<unknown>;
|
|
115
|
+
decryptImageToUrl(encrypted: string, key: CryptoKey): Promise<string>;
|
|
116
|
+
storePasswordInSession?(docId: number, password: string): void;
|
|
117
|
+
}
|
|
118
|
+
/** Backend used by NativeBookImporter to create the book record. */
|
|
119
|
+
export interface BookImporterBackend {
|
|
120
|
+
/**
|
|
121
|
+
* Create a book record from the imported book data and chapter documents.
|
|
122
|
+
*
|
|
123
|
+
* @param bookData - The raw book object from book.json.
|
|
124
|
+
* @param chapters - The chapters with their final document IDs.
|
|
125
|
+
* @param coverImageId - ID of the imported cover image, or false.
|
|
126
|
+
* @returns A promise resolving to the created book record.
|
|
127
|
+
*/
|
|
128
|
+
createBook(bookData: Record<string, unknown>, chapters: Chapter[], coverImageId: number | false): Promise<Book>;
|
|
129
|
+
}
|
|
130
|
+
/** Raw archive content returned by FidusBookReader. */
|
|
131
|
+
export interface FidusBookArchive {
|
|
132
|
+
book: Record<string, unknown>;
|
|
133
|
+
documentList: DocumentListEntry[];
|
|
134
|
+
}
|
|
135
|
+
/** Parameters passed to the book.tex template. */
|
|
136
|
+
export interface BookTexTemplateParams {
|
|
137
|
+
book: Book;
|
|
138
|
+
preamble: string;
|
|
139
|
+
epilogue: string;
|
|
140
|
+
}
|
|
141
|
+
/** Parameters passed to the BITS book template. */
|
|
142
|
+
export interface BitsTemplateParams {
|
|
143
|
+
front: string;
|
|
144
|
+
body: string;
|
|
145
|
+
back: string;
|
|
146
|
+
}
|
|
147
|
+
/** Base metadata used by DOCX/ODT book exporters. */
|
|
148
|
+
export interface BookBaseMetadata extends ExportMetadata {
|
|
149
|
+
language: string;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|