highmark-cli 1.3.200 → 1.3.201
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/README.md +0 -1
- package/lib/utilities/html.js +37 -0
- package/package.json +2 -2
- package/src/utilities/html.js +65 -0
- package/template/client.html +2 -0
- package/template/index.html +99 -0
- package/template/loading.html +17 -0
package/README.md
CHANGED
|
@@ -19,7 +19,6 @@ There are several packages in the distribution.
|
|
|
19
19
|
|
|
20
20
|
- [Highmark-CLI](https://github.com/djalbat/highmark-cli) Highmark's CLI tool.
|
|
21
21
|
- [Highmark Yapp](https://github.com/djalbat/highmark-yapp) Highmark with Yapp listings.
|
|
22
|
-
- [Highmark Fonts](https://github.com/djalbat/highmark-fonts) Computer Modern fonts for Highmark.
|
|
23
22
|
- [Highmark Client](https://github.com/djalbat/highmark-client) Highmark's bundled client for viewing HTML.
|
|
24
23
|
- [Highmark Markdown](https://github.com/djalbat/highmark-markdown) Highmark's Markdown and Markdown Style languages.
|
|
25
24
|
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var liveReloadSnippet = require("lively-cli").liveReloadSnippet, _require = require("highmark-fonts"), computerModernStyleCSS = _require.computerModernStyle, _require1 = require("necessary"), pathUtilities = _require1.pathUtilities, templateUtilities = _require1.templateUtilities, fileSystemUtilities = _require1.fileSystemUtilities;
|
|
3
|
+
var getSourceDirectoryPath = require("./utilities/directory").getSourceDirectoryPath, _require2 = require("./constants"), LOADING_CSS_FILE_PATH = _require2.LOADING_CSS_FILE_PATH, CLIENT_TEMPLATE_FILE_PATH = _require2.CLIENT_TEMPLATE_FILE_PATH, LOADING_TEMPLATE_FILE_PATH = _require2.LOADING_TEMPLATE_FILE_PATH, INDEX_TEMPLATE_FILE_PATH = _require2.INDEX_TEMPLATE_FILE_PATH;
|
|
4
|
+
var readFile = fileSystemUtilities.readFile, parseFile = templateUtilities.parseFile, concatenatePaths = pathUtilities.concatenatePaths;
|
|
5
|
+
function createIndexHTML(markdownHTML, markdownStylesCSS, client) {
|
|
6
|
+
var sourceDirectoryPath = getSourceDirectoryPath(), indexTemplateFilePath = concatenatePaths(sourceDirectoryPath, INDEX_TEMPLATE_FILE_PATH), args = {
|
|
7
|
+
markdownHTML: markdownHTML,
|
|
8
|
+
markdownStylesCSS: markdownStylesCSS,
|
|
9
|
+
liveReloadSnippet: liveReloadSnippet,
|
|
10
|
+
computerModernStyleCSS: computerModernStyleCSS
|
|
11
|
+
};
|
|
12
|
+
if (client) {
|
|
13
|
+
var clientHTML = createClientHTML(sourceDirectoryPath), loadingCSS = createLoadingCSS(sourceDirectoryPath), loadingHTML = createLoadingHTML(sourceDirectoryPath);
|
|
14
|
+
Object.assign(args, {
|
|
15
|
+
clientHTML: clientHTML,
|
|
16
|
+
loadingCSS: loadingCSS,
|
|
17
|
+
loadingHTML: loadingHTML
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
var indexHTML = parseFile(indexTemplateFilePath, args);
|
|
21
|
+
return indexHTML;
|
|
22
|
+
}
|
|
23
|
+
module.exports = createIndexHTML;
|
|
24
|
+
function createClientHTML(sourceDirectoryPath) {
|
|
25
|
+
var filePath = concatenatePaths(sourceDirectoryPath, CLIENT_TEMPLATE_FILE_PATH), content = parseFile(filePath), clientHTML = content; ///
|
|
26
|
+
return clientHTML;
|
|
27
|
+
}
|
|
28
|
+
function createLoadingCSS(sourceDirectoryPath) {
|
|
29
|
+
var filePath = concatenatePaths(sourceDirectoryPath, LOADING_CSS_FILE_PATH), content = readFile(filePath), loadingCSS = content; ///
|
|
30
|
+
return loadingCSS;
|
|
31
|
+
}
|
|
32
|
+
function createLoadingHTML(sourceDirectoryPath) {
|
|
33
|
+
var filePath = concatenatePaths(sourceDirectoryPath, LOADING_TEMPLATE_FILE_PATH), content = readFile(filePath), loadingHTML = content; ///
|
|
34
|
+
return loadingHTML;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvaHRtbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgeyBsaXZlUmVsb2FkU25pcHBldCB9ID0gcmVxdWlyZShcImxpdmVseS1jbGlcIiksXG4gICAgICB7IGNvbXB1dGVyTW9kZXJuU3R5bGU6IGNvbXB1dGVyTW9kZXJuU3R5bGVDU1MgfSA9IHJlcXVpcmUoXCJoaWdobWFyay1mb250c1wiKSxcbiAgICAgIHsgcGF0aFV0aWxpdGllcywgdGVtcGxhdGVVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSA9IHJlcXVpcmUoXCJuZWNlc3NhcnlcIik7XG5cbmNvbnN0IHsgZ2V0U291cmNlRGlyZWN0b3J5UGF0aCB9ID0gcmVxdWlyZShcIi4vdXRpbGl0aWVzL2RpcmVjdG9yeVwiKSxcbiAgICAgIHsgTE9BRElOR19DU1NfRklMRV9QQVRILCBDTElFTlRfVEVNUExBVEVfRklMRV9QQVRILCBMT0FESU5HX1RFTVBMQVRFX0ZJTEVfUEFUSCwgSU5ERVhfVEVNUExBVEVfRklMRV9QQVRIIH0gPSByZXF1aXJlKFwiLi9jb25zdGFudHNcIik7XG5cbmNvbnN0IHsgcmVhZEZpbGUgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXMsXG4gICAgICB7IHBhcnNlRmlsZSB9ID0gdGVtcGxhdGVVdGlsaXRpZXMsXG4gICAgICB7IGNvbmNhdGVuYXRlUGF0aHMgfSA9IHBhdGhVdGlsaXRpZXM7XG5cbmZ1bmN0aW9uIGNyZWF0ZUluZGV4SFRNTChtYXJrZG93bkhUTUwsIG1hcmtkb3duU3R5bGVzQ1NTLCBjbGllbnQpIHtcbiAgY29uc3Qgc291cmNlRGlyZWN0b3J5UGF0aCA9IGdldFNvdXJjZURpcmVjdG9yeVBhdGgoKSxcbiAgICAgICAgaW5kZXhUZW1wbGF0ZUZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhzb3VyY2VEaXJlY3RvcnlQYXRoLCBJTkRFWF9URU1QTEFURV9GSUxFX1BBVEgpLFxuICAgICAgICBhcmdzID0ge1xuICAgICAgICAgIG1hcmtkb3duSFRNTCxcbiAgICAgICAgICBtYXJrZG93blN0eWxlc0NTUyxcbiAgICAgICAgICBsaXZlUmVsb2FkU25pcHBldCxcbiAgICAgICAgICBjb21wdXRlck1vZGVyblN0eWxlQ1NTXG4gICAgICAgIH07XG5cbiAgaWYgKGNsaWVudCkge1xuICAgIGNvbnN0IGNsaWVudEhUTUwgPSBjcmVhdGVDbGllbnRIVE1MKHNvdXJjZURpcmVjdG9yeVBhdGgpLFxuICAgICAgICAgIGxvYWRpbmdDU1MgPSBjcmVhdGVMb2FkaW5nQ1NTKHNvdXJjZURpcmVjdG9yeVBhdGgpLFxuICAgICAgICAgIGxvYWRpbmdIVE1MID0gY3JlYXRlTG9hZGluZ0hUTUwoc291cmNlRGlyZWN0b3J5UGF0aCk7XG5cbiAgICBPYmplY3QuYXNzaWduKGFyZ3MsIHtcbiAgICAgIGNsaWVudEhUTUwsXG4gICAgICBsb2FkaW5nQ1NTLFxuICAgICAgbG9hZGluZ0hUTUxcbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IGluZGV4SFRNTCA9IHBhcnNlRmlsZShpbmRleFRlbXBsYXRlRmlsZVBhdGgsIGFyZ3MpO1xuXG4gIHJldHVybiBpbmRleEhUTUw7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY3JlYXRlSW5kZXhIVE1MO1xuXG5mdW5jdGlvbiBjcmVhdGVDbGllbnRIVE1MKHNvdXJjZURpcmVjdG9yeVBhdGgpIHtcbiAgY29uc3QgZmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHNvdXJjZURpcmVjdG9yeVBhdGgsIENMSUVOVF9URU1QTEFURV9GSUxFX1BBVEgpLFxuICAgICAgICBjb250ZW50ID0gcGFyc2VGaWxlKGZpbGVQYXRoKSxcbiAgICAgICAgY2xpZW50SFRNTCA9IGNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiBjbGllbnRIVE1MO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVMb2FkaW5nQ1NTKHNvdXJjZURpcmVjdG9yeVBhdGgpIHtcbiAgY29uc3QgZmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHNvdXJjZURpcmVjdG9yeVBhdGgsIExPQURJTkdfQ1NTX0ZJTEVfUEFUSCksXG4gICAgICAgIGNvbnRlbnQgPSByZWFkRmlsZShmaWxlUGF0aCksXG4gICAgICAgIGxvYWRpbmdDU1MgPSBjb250ZW50OyAvLy9cblxuICByZXR1cm4gbG9hZGluZ0NTUztcbn1cblxuZnVuY3Rpb24gY3JlYXRlTG9hZGluZ0hUTUwoc291cmNlRGlyZWN0b3J5UGF0aCkge1xuICBjb25zdCBmaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMoc291cmNlRGlyZWN0b3J5UGF0aCwgTE9BRElOR19URU1QTEFURV9GSUxFX1BBVEgpLFxuICAgICAgICBjb250ZW50ID0gcmVhZEZpbGUoZmlsZVBhdGgpLFxuICAgICAgICBsb2FkaW5nSFRNTCA9IGNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiBsb2FkaW5nSFRNTDtcbn1cbiJdLCJuYW1lcyI6WyJsaXZlUmVsb2FkU25pcHBldCIsInJlcXVpcmUiLCJjb21wdXRlck1vZGVyblN0eWxlIiwiY29tcHV0ZXJNb2Rlcm5TdHlsZUNTUyIsInBhdGhVdGlsaXRpZXMiLCJ0ZW1wbGF0ZVV0aWxpdGllcyIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJnZXRTb3VyY2VEaXJlY3RvcnlQYXRoIiwiTE9BRElOR19DU1NfRklMRV9QQVRIIiwiQ0xJRU5UX1RFTVBMQVRFX0ZJTEVfUEFUSCIsIkxPQURJTkdfVEVNUExBVEVfRklMRV9QQVRIIiwiSU5ERVhfVEVNUExBVEVfRklMRV9QQVRIIiwicmVhZEZpbGUiLCJwYXJzZUZpbGUiLCJjb25jYXRlbmF0ZVBhdGhzIiwiY3JlYXRlSW5kZXhIVE1MIiwibWFya2Rvd25IVE1MIiwibWFya2Rvd25TdHlsZXNDU1MiLCJjbGllbnQiLCJzb3VyY2VEaXJlY3RvcnlQYXRoIiwiaW5kZXhUZW1wbGF0ZUZpbGVQYXRoIiwiYXJncyIsImNsaWVudEhUTUwiLCJjcmVhdGVDbGllbnRIVE1MIiwibG9hZGluZ0NTUyIsImNyZWF0ZUxvYWRpbmdDU1MiLCJsb2FkaW5nSFRNTCIsImNyZWF0ZUxvYWRpbmdIVE1MIiwiT2JqZWN0IiwiYXNzaWduIiwiaW5kZXhIVE1MIiwibW9kdWxlIiwiZXhwb3J0cyIsImZpbGVQYXRoIiwiY29udGVudCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFFQSxJQUFNLEFBQUVBLG9CQUFzQkMsUUFBUSxjQUE5QkQsbUJBQ2dEQyxXQUFBQSxRQUFRLG1CQUF4REMsQUFBcUJDLHlCQUEyQkYsU0FBaERDLHFCQUMwREQsWUFBQUEsUUFBUSxjQUFsRUcsZ0JBQTBESCxVQUExREcsZUFBZUMsb0JBQTJDSixVQUEzQ0ksbUJBQW1CQyxzQkFBd0JMLFVBQXhCSztBQUUxQyxJQUFNLEFBQUVDLHlCQUEyQk4sUUFBUSx5QkFBbkNNLHdCQUMyR04sWUFBQUEsUUFBUSxnQkFBbkhPLHdCQUEyR1AsVUFBM0dPLHVCQUF1QkMsNEJBQW9GUixVQUFwRlEsMkJBQTJCQyw2QkFBeURULFVBQXpEUyw0QkFBNEJDLDJCQUE2QlYsVUFBN0JVO0FBRXRGLElBQU0sQUFBRUMsV0FBYU4sb0JBQWJNLFVBQ0YsQUFBRUMsWUFBY1Isa0JBQWRRLFdBQ0YsQUFBRUMsbUJBQXFCVixjQUFyQlU7QUFFUixTQUFTQyxnQkFBZ0JDLFlBQVksRUFBRUMsaUJBQWlCLEVBQUVDLE1BQU07SUFDOUQsSUFBTUMsc0JBQXNCWiwwQkFDdEJhLHdCQUF3Qk4saUJBQWlCSyxxQkFBcUJSLDJCQUM5RFUsT0FBTztRQUNMTCxjQUFBQTtRQUNBQyxtQkFBQUE7UUFDQWpCLG1CQUFBQTtRQUNBRyx3QkFBQUE7SUFDRjtJQUVOLElBQUllLFFBQVE7UUFDVixJQUFNSSxhQUFhQyxpQkFBaUJKLHNCQUM5QkssYUFBYUMsaUJBQWlCTixzQkFDOUJPLGNBQWNDLGtCQUFrQlI7UUFFdENTLE9BQU9DLE1BQU0sQ0FBQ1IsTUFBTTtZQUNsQkMsWUFBQUE7WUFDQUUsWUFBQUE7WUFDQUUsYUFBQUE7UUFDRjtJQUNGO0lBRUEsSUFBTUksWUFBWWpCLFVBQVVPLHVCQUF1QkM7SUFFbkQsT0FBT1M7QUFDVDtBQUVBQyxPQUFPQyxPQUFPLEdBQUdqQjtBQUVqQixTQUFTUSxpQkFBaUJKLG1CQUFtQjtJQUMzQyxJQUFNYyxXQUFXbkIsaUJBQWlCSyxxQkFBcUJWLDRCQUNqRHlCLFVBQVVyQixVQUFVb0IsV0FDcEJYLGFBQWFZLFNBQVMsR0FBRztJQUUvQixPQUFPWjtBQUNUO0FBRUEsU0FBU0csaUJBQWlCTixtQkFBbUI7SUFDM0MsSUFBTWMsV0FBV25CLGlCQUFpQksscUJBQXFCWCx3QkFDakQwQixVQUFVdEIsU0FBU3FCLFdBQ25CVCxhQUFhVSxTQUFTLEdBQUc7SUFFL0IsT0FBT1Y7QUFDVDtBQUVBLFNBQVNHLGtCQUFrQlIsbUJBQW1CO0lBQzVDLElBQU1jLFdBQVduQixpQkFBaUJLLHFCQUFxQlQsNkJBQ2pEd0IsVUFBVXRCLFNBQVNxQixXQUNuQlAsY0FBY1EsU0FBUyxHQUFHO0lBRWhDLE9BQU9SO0FBQ1QifQ==
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "highmark-cli",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "1.3.
|
|
4
|
+
"version": "1.3.201",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/highmark-cli",
|
|
7
7
|
"description": "Highmark's LIC tool.",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"argumentative": "^2.0.36",
|
|
14
14
|
"express": "^4.19.2",
|
|
15
15
|
"highmark-client": "^1.0.109",
|
|
16
|
-
"highmark-markdown": "^1.1.
|
|
16
|
+
"highmark-markdown": "^1.1.118",
|
|
17
17
|
"lively-cli": "^2.0.77",
|
|
18
18
|
"necessary": "^15.0.6"
|
|
19
19
|
},
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const { liveReloadSnippet } = require("lively-cli"),
|
|
4
|
+
{ computerModernStyle: computerModernStyleCSS } = require("highmark-fonts"),
|
|
5
|
+
{ pathUtilities, templateUtilities, fileSystemUtilities } = require("necessary");
|
|
6
|
+
|
|
7
|
+
const { getSourceDirectoryPath } = require("./utilities/directory"),
|
|
8
|
+
{ LOADING_CSS_FILE_PATH, CLIENT_TEMPLATE_FILE_PATH, LOADING_TEMPLATE_FILE_PATH, INDEX_TEMPLATE_FILE_PATH } = require("./constants");
|
|
9
|
+
|
|
10
|
+
const { readFile } = fileSystemUtilities,
|
|
11
|
+
{ parseFile } = templateUtilities,
|
|
12
|
+
{ concatenatePaths } = pathUtilities;
|
|
13
|
+
|
|
14
|
+
function createIndexHTML(markdownHTML, markdownStylesCSS, client) {
|
|
15
|
+
const sourceDirectoryPath = getSourceDirectoryPath(),
|
|
16
|
+
indexTemplateFilePath = concatenatePaths(sourceDirectoryPath, INDEX_TEMPLATE_FILE_PATH),
|
|
17
|
+
args = {
|
|
18
|
+
markdownHTML,
|
|
19
|
+
markdownStylesCSS,
|
|
20
|
+
liveReloadSnippet,
|
|
21
|
+
computerModernStyleCSS
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
if (client) {
|
|
25
|
+
const clientHTML = createClientHTML(sourceDirectoryPath),
|
|
26
|
+
loadingCSS = createLoadingCSS(sourceDirectoryPath),
|
|
27
|
+
loadingHTML = createLoadingHTML(sourceDirectoryPath);
|
|
28
|
+
|
|
29
|
+
Object.assign(args, {
|
|
30
|
+
clientHTML,
|
|
31
|
+
loadingCSS,
|
|
32
|
+
loadingHTML
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const indexHTML = parseFile(indexTemplateFilePath, args);
|
|
37
|
+
|
|
38
|
+
return indexHTML;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
module.exports = createIndexHTML;
|
|
42
|
+
|
|
43
|
+
function createClientHTML(sourceDirectoryPath) {
|
|
44
|
+
const filePath = concatenatePaths(sourceDirectoryPath, CLIENT_TEMPLATE_FILE_PATH),
|
|
45
|
+
content = parseFile(filePath),
|
|
46
|
+
clientHTML = content; ///
|
|
47
|
+
|
|
48
|
+
return clientHTML;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function createLoadingCSS(sourceDirectoryPath) {
|
|
52
|
+
const filePath = concatenatePaths(sourceDirectoryPath, LOADING_CSS_FILE_PATH),
|
|
53
|
+
content = readFile(filePath),
|
|
54
|
+
loadingCSS = content; ///
|
|
55
|
+
|
|
56
|
+
return loadingCSS;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function createLoadingHTML(sourceDirectoryPath) {
|
|
60
|
+
const filePath = concatenatePaths(sourceDirectoryPath, LOADING_TEMPLATE_FILE_PATH),
|
|
61
|
+
content = readFile(filePath),
|
|
62
|
+
loadingHTML = content; ///
|
|
63
|
+
|
|
64
|
+
return loadingHTML;
|
|
65
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Highmark Client</title>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
<link rel="preload" href="font/STIXTwoMath-Regular.woff2" as="font" type="font/woff2" crossorigin >
|
|
8
|
+
<link rel="preload" href="font/STIXTwoText-Regular.woff2" as="font" type="font/woff2" crossorigin >
|
|
9
|
+
<link rel="preload" href="font/STIXTwoText-Bold.woff2" as="font" type="font/woff2" crossorigin >
|
|
10
|
+
<link rel="preload" href="font/STIXTwoText-Italic.woff2" as="font" type="font/woff2" crossorigin >
|
|
11
|
+
<link rel="preload" href="font/STIXTwoText-BoldItalic.woff2" as="font" type="font/woff2" crossorigin >
|
|
12
|
+
<link rel="preload" href="font/Inconsolata-Regular.woff2" as="font" type="font/woff2" crossorigin >
|
|
13
|
+
<link rel="preload" href="font/Inconsolata-Bold.woff2" as="font" type="font/woff2" crossorigin >
|
|
14
|
+
|
|
15
|
+
<style>
|
|
16
|
+
|
|
17
|
+
*,
|
|
18
|
+
*::after,
|
|
19
|
+
*::before {
|
|
20
|
+
border: 0;
|
|
21
|
+
margin: 0;
|
|
22
|
+
padding: 0;
|
|
23
|
+
box-sizing: border-box;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
html,
|
|
27
|
+
body {
|
|
28
|
+
-webkit-text-size-adjust: none;
|
|
29
|
+
-moz-text-size-adjust: none;
|
|
30
|
+
-ms-text-size-adjust: none;
|
|
31
|
+
text-size-adjust: none;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
</style>
|
|
35
|
+
|
|
36
|
+
<style>
|
|
37
|
+
|
|
38
|
+
html,
|
|
39
|
+
body {
|
|
40
|
+
width: 100%;
|
|
41
|
+
height: 100%;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
</style>
|
|
45
|
+
|
|
46
|
+
<style>
|
|
47
|
+
|
|
48
|
+
${computerModernStyleCSS}
|
|
49
|
+
|
|
50
|
+
</style>
|
|
51
|
+
|
|
52
|
+
<style>
|
|
53
|
+
|
|
54
|
+
${markdownStylesCSS}
|
|
55
|
+
|
|
56
|
+
</style>
|
|
57
|
+
|
|
58
|
+
<style>
|
|
59
|
+
|
|
60
|
+
${loadingCSS}
|
|
61
|
+
|
|
62
|
+
</style>
|
|
63
|
+
|
|
64
|
+
</head>
|
|
65
|
+
<body>
|
|
66
|
+
|
|
67
|
+
${loadingHTML}
|
|
68
|
+
|
|
69
|
+
${markdownHTML}
|
|
70
|
+
|
|
71
|
+
${clientHTML}
|
|
72
|
+
|
|
73
|
+
${liveReloadSnippet}
|
|
74
|
+
|
|
75
|
+
</body>
|
|
76
|
+
</html>
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|