1 | import html from "./components/html";
|
2 | import styles from "./components/styles";
|
3 | import frontMatter from "./components/front-matter";
|
4 | import bibliography from "./components/bibliography";
|
5 | import expandData from "./components/expand-data";
|
6 | import meta from "./components/meta";
|
7 | import header from "./components/header";
|
8 | import appendix from "./components/appendix";
|
9 | import footer from "./components/footer";
|
10 | import citation from "./components/citation";
|
11 | import markdown from "./components/markdown";
|
12 | import code from "./components/code";
|
13 | import generateCrossref from "./components/generate-crossref";
|
14 |
|
15 | function renderImmediately(dom) {
|
16 | html(dom);
|
17 | styles(dom);
|
18 | }
|
19 |
|
20 | function renderOnLoad(dom, data) {
|
21 | frontMatter(dom, data);
|
22 | bibliography(dom, data);
|
23 | expandData(dom, data);
|
24 | meta(dom, data);
|
25 | header(dom, data);
|
26 | appendix(dom, data);
|
27 | footer(dom, data);
|
28 | markdown(dom, data);
|
29 | code(dom, data);
|
30 | citation(dom, data);
|
31 | }
|
32 |
|
33 |
|
34 | if(window && window.document) {
|
35 | let data = data || {};
|
36 | renderImmediately(window.document);
|
37 | window.document.addEventListener("DOMContentLoaded", (event) => {
|
38 | renderOnLoad(window.document, data);
|
39 | console.log("final data:");
|
40 | for (var k in data) {console.log(" ", k, ": ", data[k])}
|
41 | });
|
42 | }
|
43 |
|
44 |
|
45 | function render(dom, data) {
|
46 | renderImmediately(dom);
|
47 | renderOnload(dom, data);
|
48 | }
|
49 |
|
50 | export {render as render};
|
51 | export {html as html};
|
52 | export {styles as styles};
|
53 | export {frontMatter as frontMatter};
|
54 | export {bibliography as bibliography};
|
55 | export {meta as meta};
|
56 | export {header as header};
|
57 | export {appendix as appendix};
|
58 | export {footer as footer};
|
59 | export {citation as citation};
|
60 | export {markdown as markdown};
|
61 | export {code as code};
|
62 | export {generateCrossref as generateCrossref};
|