@canopycanopycanopy/b-ber-tasks 3.0.8-nav-memo.4 → 3.0.8-next.101
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 +34 -4
- package/dist/index.d.ts +144 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2109 -176
- package/dist/web/search.js +1 -1
- package/dist/web/worker.js +1 -1
- package/package.json +22 -23
- package/dist/clean/index.js +0 -25
- package/dist/container/index.js +0 -48
- package/dist/copy/index.js +0 -60
- package/dist/cover/index.js +0 -217
- package/dist/deploy/index.js +0 -188
- package/dist/epub/index.js +0 -24
- package/dist/footnotes/index.js +0 -56
- package/dist/generate/index.js +0 -79
- package/dist/init/index.js +0 -73
- package/dist/inject/index.js +0 -80
- package/dist/loi/index.js +0 -130
- package/dist/mobi/index.js +0 -39
- package/dist/mobi/mobi-css.js +0 -85
- package/dist/opf/ManifestAndMetadata.js +0 -96
- package/dist/opf/Navigation.js +0 -199
- package/dist/opf/Opf.js +0 -56
- package/dist/opf/helpers.js +0 -57
- package/dist/opf/index.js +0 -31
- package/dist/pdf/index.js +0 -59
- package/dist/reader/index.js +0 -205
- package/dist/render/index.js +0 -53
- package/dist/sample/index.js +0 -11
- package/dist/sass/index.js +0 -185
- package/dist/scripts/index.js +0 -54
- package/dist/serialize.js +0 -57
- package/dist/serve/index.js +0 -83
- package/dist/validate/index.js +0 -51
- package/dist/web/Template.js +0 -171
- package/dist/web/index.js +0 -371
- package/dist/xml/index.js +0 -57
package/dist/epub/index.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
10
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
11
|
-
var _epubZipper = _interopRequireDefault(require("epub-zipper"));
|
|
12
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
13
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
14
|
-
var _utils = require("@canopycanopycanopy/b-ber-lib/utils");
|
|
15
|
-
const epub = () => {
|
|
16
|
-
var _context;
|
|
17
|
-
return (0, _includes.default)(_context = process.argv).call(_context, '--no-compile') ? _promise.default.resolve() : _epubZipper.default.create({
|
|
18
|
-
input: _State.default.distDir,
|
|
19
|
-
output: process.cwd(),
|
|
20
|
-
clean: true,
|
|
21
|
-
fileName: (0, _utils.getBookMetadata)('identifier', _State.default)
|
|
22
|
-
}).catch(_bBerLogger.default.error);
|
|
23
|
-
};
|
|
24
|
-
var _default = exports.default = epub;
|
package/dist/footnotes/index.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _bind = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/bind"));
|
|
10
|
-
var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
|
|
11
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
12
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
13
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
14
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
15
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
16
|
-
var _bBerLib = require("@canopycanopycanopy/b-ber-lib");
|
|
17
|
-
var _Xhtml = _interopRequireDefault(require("@canopycanopycanopy/b-ber-templates/Xhtml"));
|
|
18
|
-
class Footnotes {
|
|
19
|
-
get file() {
|
|
20
|
-
return {
|
|
21
|
-
name: this.baseName,
|
|
22
|
-
path: _State.default.dist.text(`${this.baseName}.xhtml`)
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
constructor() {
|
|
26
|
-
var _context;
|
|
27
|
-
this.baseName = 'notes';
|
|
28
|
-
this.init = (0, _bind.default)(_context = this.init).call(_context, this);
|
|
29
|
-
}
|
|
30
|
-
async writeFootnotes() {
|
|
31
|
-
var _context2;
|
|
32
|
-
const notes = (0, _reduce.default)(_context2 = _State.default.footnotes).call(_context2, (acc, cur) => (0, _concat.default)(acc).call(acc, cur.notes), '');
|
|
33
|
-
const markup = _bBerLib.Template.render(notes, _Xhtml.default.body());
|
|
34
|
-
await _fsExtra.default.writeFile(this.file.path, markup, 'utf8');
|
|
35
|
-
const fileData = new _bBerLib.SpineItem({
|
|
36
|
-
fileName: this.file.name,
|
|
37
|
-
// eslint-disable-next-line camelcase
|
|
38
|
-
in_toc: false,
|
|
39
|
-
linear: false,
|
|
40
|
-
generated: true,
|
|
41
|
-
buildType: _State.default.build
|
|
42
|
-
});
|
|
43
|
-
_State.default.add('spine.flattened', fileData);
|
|
44
|
-
_bBerLogger.default.info(`create default footnotes page [${this.file.name}.xhtml]`);
|
|
45
|
-
}
|
|
46
|
-
init() {
|
|
47
|
-
if (!_State.default.footnotes.length) {
|
|
48
|
-
_bBerLogger.default.info('footnotes no footnotes found in source');
|
|
49
|
-
return _promise.default.resolve(_State.default.footnotes);
|
|
50
|
-
}
|
|
51
|
-
_bBerLogger.default.info('footnotes generating links');
|
|
52
|
-
return this.writeFootnotes().catch(_bBerLogger.default.error);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
const footnotes = new Footnotes();
|
|
56
|
-
var _default = exports.default = footnotes.init;
|
package/dist/generate/index.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _bind = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/bind"));
|
|
10
|
-
var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
|
|
11
|
-
var _entries = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/entries"));
|
|
12
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
13
|
-
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
14
|
-
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
15
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
16
|
-
var _path = _interopRequireDefault(require("path"));
|
|
17
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
18
|
-
var _YamlAdaptor = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/YamlAdaptor"));
|
|
19
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
20
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
21
|
-
var _sequences = _interopRequireDefault(require("@canopycanopycanopy/b-ber-shapes-sequences/sequences"));
|
|
22
|
-
/* eslint-disable class-methods-use-this */
|
|
23
|
-
|
|
24
|
-
// Generate new Markdown documents
|
|
25
|
-
class Generate {
|
|
26
|
-
constructor() {
|
|
27
|
-
var _context;
|
|
28
|
-
this.init = (0, _bind.default)(_context = this.init).call(_context, this);
|
|
29
|
-
}
|
|
30
|
-
createFile({
|
|
31
|
-
markdownDir,
|
|
32
|
-
metadata
|
|
33
|
-
}) {
|
|
34
|
-
var _context2;
|
|
35
|
-
const frontmatter = `---\n${(0, _reduce.default)(_context2 = (0, _entries.default)(metadata)).call(_context2, (acc, [k, v]) => v ? (0, _concat.default)(acc).call(acc, `${k}: ${v}\n`) : acc, '')}---\n`;
|
|
36
|
-
const {
|
|
37
|
-
title
|
|
38
|
-
} = metadata;
|
|
39
|
-
const fileName = `${title.replace(/[^a-z0-9_-]/gi, '-')}.md`;
|
|
40
|
-
const filePath = _path.default.join(markdownDir, fileName);
|
|
41
|
-
if (_fsExtra.default.existsSync(filePath)) _bBerLogger.default.error(`_markdown${_path.default.sep}${fileName} already exists, aborting`);
|
|
42
|
-
return _fsExtra.default.writeFile(filePath, frontmatter).then(() => ({
|
|
43
|
-
fileName
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
writePageMeta({
|
|
47
|
-
fileName
|
|
48
|
-
}) {
|
|
49
|
-
const tocFile = _State.default.src.root('toc.yml');
|
|
50
|
-
const pageMeta = _YamlAdaptor.default.load(tocFile) || [];
|
|
51
|
-
const index = (0, _indexOf.default)(pageMeta).call(pageMeta, fileName);
|
|
52
|
-
const content = `\n- ${_path.default.basename(fileName, '.md')}`;
|
|
53
|
-
if (index > -1) {
|
|
54
|
-
throw new Error(`${fileName} already exists in [${_path.default.basename(tocFile)}]. Aborting`);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
// Add entry to main toc.yml
|
|
58
|
-
const promises = [_fsExtra.default.appendFile(tocFile, content)];
|
|
59
|
-
|
|
60
|
-
// If overrides toc files exist then write to them too
|
|
61
|
-
const builds = (0, _keys.default)(_sequences.default);
|
|
62
|
-
(0, _reduce.default)(builds).call(builds, (acc, curr) => _fsExtra.default.existsSync(_State.default.src.root(`${curr}.yml`)) ? (0, _concat.default)(acc).call(acc, _fsExtra.default.appendFile(_State.default.src.root(`${curr}.yml`), content)) : acc, promises);
|
|
63
|
-
return _promise.default.all(promises).then(() => ({
|
|
64
|
-
fileName
|
|
65
|
-
}));
|
|
66
|
-
}
|
|
67
|
-
init(metadata) {
|
|
68
|
-
// TODO: ensure markdown dir
|
|
69
|
-
const markdownDir = _State.default.src.markdown();
|
|
70
|
-
return _fsExtra.default.mkdirp(markdownDir).then(() => this.createFile({
|
|
71
|
-
markdownDir,
|
|
72
|
-
metadata
|
|
73
|
-
})).then(resp => this.writePageMeta(resp)).then(({
|
|
74
|
-
fileName
|
|
75
|
-
}) => _bBerLogger.default.notice(`Generated new page [${fileName}]`)).catch(_bBerLogger.default.error);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
const generate = new Generate().init;
|
|
79
|
-
var _default = exports.default = generate;
|
package/dist/init/index.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
10
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
11
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
13
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
14
|
-
var _path = _interopRequireDefault(require("path"));
|
|
15
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
16
|
-
var _sequences = _interopRequireDefault(require("@canopycanopycanopy/b-ber-shapes-sequences/sequences"));
|
|
17
|
-
var _bBerResources = _interopRequireDefault(require("@canopycanopycanopy/b-ber-resources"));
|
|
18
|
-
var _Project = _interopRequireDefault(require("@canopycanopycanopy/b-ber-templates/Project"));
|
|
19
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
20
|
-
var _Theme = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/Theme"));
|
|
21
|
-
var _utils = require("@canopycanopycanopy/b-ber-lib/utils");
|
|
22
|
-
class Initializer {
|
|
23
|
-
constructor({
|
|
24
|
-
name = '',
|
|
25
|
-
config
|
|
26
|
-
}) {
|
|
27
|
-
(0, _defineProperty2.default)(this, "createAssets", () => {
|
|
28
|
-
const files = [_Project.default.tocYAML(this.path), _Project.default.configYAML(this.path, this.config), _Project.default.metadataYAML(this.path), ..._Project.default.javascripts(this.path), ..._Project.default.stylesheets(this.path), ..._Project.default.markdown(this.path), _Project.default.readme(this.path), _Project.default.gitignore(this.path)];
|
|
29
|
-
const dirs = _Project.default.directories(this.path);
|
|
30
|
-
return (0, _utils.ensure)({
|
|
31
|
-
files,
|
|
32
|
-
dirs,
|
|
33
|
-
prefix: this.name
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
this.src = '_project';
|
|
37
|
-
this.dist = 'project';
|
|
38
|
-
this.name = name;
|
|
39
|
-
this.config = config;
|
|
40
|
-
this.path = _path.default.join(name, this.src);
|
|
41
|
-
this.builds = (0, _keys.default)(_sequences.default);
|
|
42
|
-
if (_fsExtra.default.existsSync(this.path)) {
|
|
43
|
-
_bBerLogger.default.error(`Project [${name}] already exits, aborting`);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
copyImages() {
|
|
47
|
-
return (0, _bBerResources.default)().then(assets => {
|
|
48
|
-
const {
|
|
49
|
-
'b-ber-logo': bberLogo,
|
|
50
|
-
'default-publishers-logo': publishersLogo
|
|
51
|
-
} = assets;
|
|
52
|
-
const images = [bberLogo, publishersLogo];
|
|
53
|
-
_bBerLogger.default.info('Copying development assets');
|
|
54
|
-
const promises = (0, _map.default)(images).call(images, a => _fsExtra.default.copy(a, _path.default.join(this.path, '_images', _path.default.basename(a))));
|
|
55
|
-
return _promise.default.all(promises);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// eslint-disable-next-line class-methods-use-this
|
|
60
|
-
setTheme() {
|
|
61
|
-
const {
|
|
62
|
-
theme
|
|
63
|
-
} = _State.default.config;
|
|
64
|
-
process.chdir(this.name);
|
|
65
|
-
return _Theme.default.set(theme, true);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// Write default directories and files to the source directory
|
|
69
|
-
start() {
|
|
70
|
-
this.createAssets().then(() => this.copyImages()).then(() => this.setTheme()).then(() => _bBerLogger.default.notice(`Created new project [${this.name}]`)).catch(_bBerLogger.default.error);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
var _default = exports.default = Initializer;
|
package/dist/inject/index.js
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.getFileObjects = exports.default = void 0;
|
|
9
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
10
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
11
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
12
|
-
var _path = _interopRequireDefault(require("path"));
|
|
13
|
-
var _vinyl = _interopRequireDefault(require("vinyl"));
|
|
14
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
15
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
16
|
-
var _bBerLib = require("@canopycanopycanopy/b-ber-lib");
|
|
17
|
-
var _Xhtml = _interopRequireDefault(require("@canopycanopycanopy/b-ber-templates/Xhtml"));
|
|
18
|
-
const getRemoteAssets = type => _promise.default.resolve(_State.default.config[`remote_${type}`] || []);
|
|
19
|
-
const getAssets = type => _promise.default.all([_fsExtra.default.readdir(_State.default.dist.ops(type)), getRemoteAssets(type)]).then(([a, b]) => [...a, ...b]);
|
|
20
|
-
const getInlineScripts = () => [new _vinyl.default({
|
|
21
|
-
contents: Buffer.from(`window.bber = window.bber || {}; window.bber.env = '${_State.default.build}';`)
|
|
22
|
-
})];
|
|
23
|
-
const ensureString = objectOrString => objectOrString instanceof _vinyl.default ? objectOrString.contents.toString() : objectOrString;
|
|
24
|
-
const relative = (from, to) => _path.default.relative(_path.default.join(...from), _path.default.join(...to));
|
|
25
|
-
const render = ({
|
|
26
|
-
file,
|
|
27
|
-
basePath,
|
|
28
|
-
stylesheets,
|
|
29
|
-
javascripts,
|
|
30
|
-
inlineStylesheets,
|
|
31
|
-
inlineJavascripts,
|
|
32
|
-
metadata
|
|
33
|
-
}) => {
|
|
34
|
-
var _context, _context2, _context3, _context4, _context5;
|
|
35
|
-
const stylesheets_ = (0, _map.default)(_context = (0, _map.default)(stylesheets).call(stylesheets, ensureString)).call(_context, f => _bBerLib.Template.render(relative([basePath], ['stylesheets', f]), _Xhtml.default.stylesheet())).join('');
|
|
36
|
-
const inlineStylesheets_ = (0, _map.default)(_context2 = (0, _map.default)(inlineStylesheets).call(inlineStylesheets, ensureString)).call(_context2, f => _bBerLib.Template.render(f, _Xhtml.default.stylesheet(true))).join('');
|
|
37
|
-
const javascripts_ = (0, _map.default)(_context3 = (0, _map.default)(javascripts).call(javascripts, ensureString)).call(_context3, f => _bBerLib.Template.render(relative([basePath], ['javascripts', f]), _Xhtml.default.javascript())).join('');
|
|
38
|
-
const inlineJavascripts_ = (0, _map.default)(_context4 = (0, _map.default)(inlineJavascripts).call(inlineJavascripts, ensureString)).call(_context4, f => _bBerLib.Template.render(f, _Xhtml.default.javascript(true))).join('');
|
|
39
|
-
const metadata_ = (0, _map.default)(_context5 = (0, _map.default)(metadata).call(metadata, ensureString)).call(_context5, f => _bBerLib.Template.render(f, _Xhtml.default.jsonLD())).join('');
|
|
40
|
-
const head = _bBerLib.Template.render(`${stylesheets_}${inlineStylesheets_}`, _Xhtml.default.head());
|
|
41
|
-
const body = file instanceof _vinyl.default ? file.contents.toString() : _fsExtra.default.readFileSync(_State.default.dist.ops(basePath, file), 'utf8');
|
|
42
|
-
const tail = _bBerLib.Template.render(`${javascripts_}${inlineJavascripts_}${metadata_}`, _Xhtml.default.tail());
|
|
43
|
-
return `${head}${body}${tail}`;
|
|
44
|
-
};
|
|
45
|
-
const writeAll = files => _promise.default.all((0, _map.default)(files).call(files, file => _fsExtra.default.writeFile(_State.default.dist.text(file.fileName), file.contents)));
|
|
46
|
-
const getFileObjects = async (files, basePath = '') => {
|
|
47
|
-
const stylesheets = await getAssets('stylesheets');
|
|
48
|
-
const javascripts = await getAssets('javascripts');
|
|
49
|
-
const inlineStylesheets = [];
|
|
50
|
-
const inlineJavascripts = getInlineScripts();
|
|
51
|
-
|
|
52
|
-
// TODO:
|
|
53
|
-
// @issue: https://github.com/triplecanopy/b-ber/issues/226
|
|
54
|
-
const metadata = [];
|
|
55
|
-
const files_ = (0, _map.default)(files).call(files, file => ({
|
|
56
|
-
fileName: file.name,
|
|
57
|
-
contents: render({
|
|
58
|
-
file: file.data,
|
|
59
|
-
basePath,
|
|
60
|
-
stylesheets,
|
|
61
|
-
javascripts,
|
|
62
|
-
inlineStylesheets,
|
|
63
|
-
inlineJavascripts,
|
|
64
|
-
metadata
|
|
65
|
-
})
|
|
66
|
-
}));
|
|
67
|
-
return files_;
|
|
68
|
-
};
|
|
69
|
-
exports.getFileObjects = getFileObjects;
|
|
70
|
-
const inject = async () => {
|
|
71
|
-
var _context6;
|
|
72
|
-
const basePath = 'text';
|
|
73
|
-
const files = (0, _map.default)(_context6 = _fsExtra.default.readdirSync(_State.default.dist.ops(basePath))).call(_context6, file => ({
|
|
74
|
-
name: file,
|
|
75
|
-
data: file
|
|
76
|
-
}));
|
|
77
|
-
const fileObjects = await getFileObjects(files, basePath);
|
|
78
|
-
return writeAll(fileObjects).catch(_bBerLogger.default.error);
|
|
79
|
-
};
|
|
80
|
-
var _default = exports.default = inject;
|
package/dist/loi/index.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
|
4
|
-
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
|
5
|
-
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
|
6
|
-
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
-
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
|
8
|
-
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
|
9
|
-
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
|
10
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
11
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
12
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
13
|
-
value: true
|
|
14
|
-
});
|
|
15
|
-
exports.default = void 0;
|
|
16
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
17
|
-
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
18
|
-
var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
|
|
19
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
20
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
21
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
22
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
23
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
24
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
25
|
-
var _sortBy = _interopRequireDefault(require("lodash/sortBy"));
|
|
26
|
-
var _bBerLib = require("@canopycanopycanopy/b-ber-lib");
|
|
27
|
-
var _figures = _interopRequireDefault(require("@canopycanopycanopy/b-ber-templates/figures"));
|
|
28
|
-
var _Xhtml = _interopRequireDefault(require("@canopycanopycanopy/b-ber-templates/Xhtml"));
|
|
29
|
-
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
30
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context3 = ownKeys(Object(t), !0)).call(_context3, function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context4 = ownKeys(Object(t))).call(_context4, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } /* eslint-disable camelcase */
|
|
31
|
-
const createLOILeader = () => {
|
|
32
|
-
const baseName = 'figures-titlepage';
|
|
33
|
-
const fileName = `${baseName}.xhtml`;
|
|
34
|
-
|
|
35
|
-
// Create LOI page markup
|
|
36
|
-
const markup = _bBerLib.Template.render(_Xhtml.default.loi(), _Xhtml.default.body());
|
|
37
|
-
|
|
38
|
-
// Add guide item to content.opf
|
|
39
|
-
const guideItem = new _bBerLib.GuideItem({
|
|
40
|
-
fileName,
|
|
41
|
-
title: 'Figures',
|
|
42
|
-
type: 'loi'
|
|
43
|
-
});
|
|
44
|
-
_State.default.add('guide', guideItem);
|
|
45
|
-
|
|
46
|
-
// Check if the figures titlepage has been declared
|
|
47
|
-
const index = (0, _indexOf.default)(_State.default).call(_State.default, 'spine.flattened', item => item.fileName === baseName);
|
|
48
|
-
|
|
49
|
-
// If not, add it to state.spine so that it can be referenced
|
|
50
|
-
// in the content.opf
|
|
51
|
-
if (index < 0) {
|
|
52
|
-
const item = {
|
|
53
|
-
fileName: baseName,
|
|
54
|
-
in_toc: true,
|
|
55
|
-
ref: null,
|
|
56
|
-
pageOrder: -1,
|
|
57
|
-
generated: true
|
|
58
|
-
};
|
|
59
|
-
_State.default.add('spine.entries', baseName);
|
|
60
|
-
_State.default.add('spine.nested', new _bBerLib.SpineItem(item));
|
|
61
|
-
_State.default.add('spine.flattened', item);
|
|
62
|
-
}
|
|
63
|
-
_bBerLogger.default.info(`loi emit default figures titlepage [${fileName}]`);
|
|
64
|
-
return _fsExtra.default.writeFile(_State.default.dist.text(fileName), markup, 'utf8');
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
// only called in `reader` build
|
|
68
|
-
const createLOIAsSingleHTMLFile = () => {
|
|
69
|
-
var _context;
|
|
70
|
-
const classes = item => item.classes ? item.classes.replace(/small/g, 'inline') : '';
|
|
71
|
-
const figuresPage = (0, _reduce.default)(_context = _State.default.figures).call(_context, (acc, curr) => (0, _concat.default)(acc).call(acc, (0, _figures.default)(_objectSpread(_objectSpread({}, curr), {}, {
|
|
72
|
-
classes: classes(curr)
|
|
73
|
-
}), _State.default.build)), _Xhtml.default.loi());
|
|
74
|
-
const fileName = 'figures-titlepage.xhtml';
|
|
75
|
-
const markup = _bBerLib.Template.render(figuresPage, _Xhtml.default.body());
|
|
76
|
-
const guideItem = new _bBerLib.GuideItem({
|
|
77
|
-
fileName,
|
|
78
|
-
title: 'Figures',
|
|
79
|
-
type: 'loi'
|
|
80
|
-
});
|
|
81
|
-
_State.default.add('guide', guideItem);
|
|
82
|
-
_bBerLogger.default.info(`loi emit figures titlepage [${fileName}]`);
|
|
83
|
-
return _fsExtra.default.writeFile(_State.default.dist.text(fileName), markup, 'utf8');
|
|
84
|
-
};
|
|
85
|
-
const createLOIAsSeparateHTMLFiles = () => {
|
|
86
|
-
var _context2;
|
|
87
|
-
const promises = (0, _map.default)(_context2 = _State.default.figures).call(_context2, data => {
|
|
88
|
-
// Create image string based on dimensions of image
|
|
89
|
-
// returns square | landscape | portrait | portraitLong
|
|
90
|
-
const figures = (0, _figures.default)(data, _State.default.build);
|
|
91
|
-
const markup = _bBerLib.Template.render(figures, _Xhtml.default.body());
|
|
92
|
-
const {
|
|
93
|
-
page: fileName,
|
|
94
|
-
ref,
|
|
95
|
-
pageOrder
|
|
96
|
-
} = data;
|
|
97
|
-
const in_toc = false; //eslint-disable-line camelcase
|
|
98
|
-
const buildType = _State.default.build;
|
|
99
|
-
const spineItem = new _bBerLib.SpineItem({
|
|
100
|
-
fileName,
|
|
101
|
-
in_toc,
|
|
102
|
-
ref,
|
|
103
|
-
pageOrder,
|
|
104
|
-
buildType
|
|
105
|
-
});
|
|
106
|
-
_State.default.add('loi', spineItem);
|
|
107
|
-
_bBerLogger.default.info(`loi linking [${data.source}] to [${data.page}]`);
|
|
108
|
-
return _fsExtra.default.writeFile(_State.default.dist.text(data.page), markup, 'utf8');
|
|
109
|
-
});
|
|
110
|
-
return _promise.default.all(promises).then(() => _State.default.update('loi', (0, _sortBy.default)(_State.default.loi, 'pageOrder')));
|
|
111
|
-
};
|
|
112
|
-
const loi = () => {
|
|
113
|
-
if (!_State.default.figures.length) return _promise.default.resolve();
|
|
114
|
-
|
|
115
|
-
// For certain builds it may be preferable to have all figures on a
|
|
116
|
-
// single page (e.g., during the web or reader builds). We could set
|
|
117
|
-
// a flag for this, but current functionality is to always default
|
|
118
|
-
// to split the figures into separate files *unless* we're building
|
|
119
|
-
// for the reader.
|
|
120
|
-
|
|
121
|
-
// This branch concatentates all the figures, as well as the loi-leader
|
|
122
|
-
// (the 'Figures' header text) into a single document
|
|
123
|
-
if (_State.default.build === 'reader') {
|
|
124
|
-
return createLOIAsSingleHTMLFile().catch(_bBerLogger.default.error);
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
// create separate files
|
|
128
|
-
return createLOILeader().then(createLOIAsSeparateHTMLFiles).catch(_bBerLogger.default.error);
|
|
129
|
-
};
|
|
130
|
-
var _default = exports.default = loi;
|
package/dist/mobi/index.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
10
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
11
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
12
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
13
|
-
var _EbookConvert = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/EbookConvert"));
|
|
14
|
-
var _utils = require("@canopycanopycanopy/b-ber-lib/utils");
|
|
15
|
-
const pageBreakBeforeXPATH = () => [
|
|
16
|
-
// eslint-disable-next-line no-useless-escape
|
|
17
|
-
'//h:*\[@class="figure__large figure__inline"\]',
|
|
18
|
-
// prettier-ignore
|
|
19
|
-
// eslint-disable-next-line no-useless-escape
|
|
20
|
-
'//h:*\[@class="figure__large figure__inline"\]/following::h:p[1]',
|
|
21
|
-
// prettier-ignore
|
|
22
|
-
// eslint-disable-next-line no-useless-escape
|
|
23
|
-
'//h:*\[contains(@class, "break-before")\]',
|
|
24
|
-
// prettier-ignore
|
|
25
|
-
// eslint-disable-next-line no-useless-escape
|
|
26
|
-
'//h:*\[@data-gallery-item\]' // prettier-ignore
|
|
27
|
-
].join('|');
|
|
28
|
-
const mobi = () => {
|
|
29
|
-
var _context;
|
|
30
|
-
return (0, _includes.default)(_context = process.argv).call(_context, '--no-compile') ? _promise.default.resolve() : _EbookConvert.default.convert({
|
|
31
|
-
// https://manual.calibre-ebook.com/generated/en/ebook-convert.html#mobi-output-options
|
|
32
|
-
inputPath: _State.default.dist.ops('content.opf'),
|
|
33
|
-
outputPath: process.cwd(),
|
|
34
|
-
fileType: 'mobi',
|
|
35
|
-
fileName: (0, _utils.getBookMetadata)('identifier', _State.default),
|
|
36
|
-
flags: ['--mobi-file-type=both', '--disable-font-rescaling', '--no-inline-toc', '--chapter="/"', '--chapter-mark=none', '--disable-remove-fake-margins', `--page-breaks-before='${pageBreakBeforeXPATH()}'`]
|
|
37
|
-
}).catch(_bBerLogger.default.error);
|
|
38
|
-
};
|
|
39
|
-
var _default = exports.default = mobi;
|
package/dist/mobi/mobi-css.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
10
|
-
var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
|
|
11
|
-
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
12
|
-
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
13
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
14
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
15
|
-
var _css = _interopRequireDefault(require("css"));
|
|
16
|
-
var _path = _interopRequireDefault(require("path"));
|
|
17
|
-
var _bBerLogger = _interopRequireDefault(require("@canopycanopycanopy/b-ber-logger"));
|
|
18
|
-
var _State = _interopRequireDefault(require("@canopycanopycanopy/b-ber-lib/State"));
|
|
19
|
-
const blackListedPrefixes = ['epub|'];
|
|
20
|
-
const blackListedTypes = ['namespace'];
|
|
21
|
-
|
|
22
|
-
// CSS declarations that break mobi files
|
|
23
|
-
const blackListedProperties = ['line-height', '-webkit-hyphens', '-epub-hyphens', 'adobe-hyphenate', '-moz-hyphens', '-ms-hyphens', 'hyphens', 'word-break', 'word-break', 'widows', 'orphans', 'text-rendering', '-webkit-font-smoothing', '-moz-osx-font-smoothing', '-webkit-text-fill-color'];
|
|
24
|
-
const write = ({
|
|
25
|
-
file,
|
|
26
|
-
content
|
|
27
|
-
}) => _fsExtra.default.writeFile(file, content, 'utf8').then(() => _bBerLogger.default.info(`mobiCSS write [${_path.default.basename(file)}]`));
|
|
28
|
-
const process = file => _fsExtra.default.readFile(file, 'utf8').then(data => {
|
|
29
|
-
const ast = _css.default.parse(data);
|
|
30
|
-
let i = ast.stylesheet.rules.length - 1;
|
|
31
|
-
while (i >= 0) {
|
|
32
|
-
const rule = ast.stylesheet.rules[i];
|
|
33
|
-
if (rule.selectors) {
|
|
34
|
-
let j = rule.selectors.length - 1;
|
|
35
|
-
while (j >= 0) {
|
|
36
|
-
let jj = 0;
|
|
37
|
-
while (jj < blackListedPrefixes.length) {
|
|
38
|
-
var _context;
|
|
39
|
-
if ((0, _slice.default)(_context = rule.selectors[j]).call(_context, 0, blackListedPrefixes[jj].length) === blackListedPrefixes[jj]) {
|
|
40
|
-
var _context2;
|
|
41
|
-
_bBerLogger.default.info('mobiCSS remove selector', rule.selectors[j]);
|
|
42
|
-
(0, _splice.default)(_context2 = rule.selectors).call(_context2, j, 1);
|
|
43
|
-
}
|
|
44
|
-
jj++; // eslint-disable-line no-plusplus
|
|
45
|
-
}
|
|
46
|
-
j--; // eslint-disable-line no-plusplus
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
if ((0, _indexOf.default)(blackListedTypes).call(blackListedTypes, rule.type) > -1) {
|
|
50
|
-
var _context3;
|
|
51
|
-
_bBerLogger.default.info(`mobiCSS remove ${rule.type} [${rule[rule.type]}]`);
|
|
52
|
-
(0, _splice.default)(_context3 = ast.stylesheet.rules).call(_context3, i, 1);
|
|
53
|
-
}
|
|
54
|
-
if (ast.stylesheet.rules[i]) {
|
|
55
|
-
const {
|
|
56
|
-
declarations
|
|
57
|
-
} = ast.stylesheet.rules[i];
|
|
58
|
-
if (declarations) {
|
|
59
|
-
let a = declarations.length - 1;
|
|
60
|
-
while (a >= 0) {
|
|
61
|
-
if ((0, _indexOf.default)(blackListedProperties).call(blackListedProperties, declarations[a].property) > -1) {
|
|
62
|
-
_bBerLogger.default.info(`mobiCSS remove property [${declarations[a].property}]`);
|
|
63
|
-
(0, _splice.default)(declarations).call(declarations, a, 1);
|
|
64
|
-
}
|
|
65
|
-
a--; // eslint-disable-line no-plusplus
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
i--; // eslint-disable-line no-plusplus
|
|
70
|
-
}
|
|
71
|
-
const content = _css.default.stringify(ast);
|
|
72
|
-
return {
|
|
73
|
-
file,
|
|
74
|
-
content
|
|
75
|
-
};
|
|
76
|
-
});
|
|
77
|
-
const mobiCSS = () => {
|
|
78
|
-
const stylesheetsPath = _State.default.dist.stylesheets();
|
|
79
|
-
return _fsExtra.default.readdir(stylesheetsPath).then(files => _promise.default.all((0, _map.default)(files).call(files, stylesheet => {
|
|
80
|
-
const file = _State.default.dist.stylesheets(stylesheet);
|
|
81
|
-
_bBerLogger.default.info(`mobiCSS process [${_path.default.basename(file)}]`);
|
|
82
|
-
return process(file).then(write);
|
|
83
|
-
})).catch(_bBerLogger.default.error));
|
|
84
|
-
};
|
|
85
|
-
var _default = exports.default = mobiCSS;
|