@manuscripts/transform 2.0.3 → 2.0.4-LEAN-3092
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/dist/cjs/index.js +0 -1
- package/dist/cjs/jats/importer/jats-body-dom-parser.js +24 -72
- package/dist/cjs/jats/importer/jats-body-transformations.js +0 -8
- package/dist/cjs/jats/importer/parse-jats-article.js +0 -1
- package/dist/cjs/jats/jats-exporter.js +17 -37
- package/dist/cjs/schema/index.js +0 -1
- package/dist/cjs/schema/nodes/equation.js +12 -14
- package/dist/cjs/schema/nodes/equation_element.js +4 -5
- package/dist/cjs/schema/nodes/inline_equation.js +12 -16
- package/dist/cjs/schema/nodes/table_element.js +1 -1
- package/dist/cjs/transformer/builders.js +1 -8
- package/dist/cjs/transformer/decode.js +5 -8
- package/dist/cjs/transformer/encode.js +4 -25
- package/dist/cjs/transformer/node-types.js +0 -1
- package/dist/cjs/transformer/object-types.js +0 -1
- package/dist/es/index.js +0 -1
- package/dist/es/jats/importer/jats-body-dom-parser.js +25 -73
- package/dist/es/jats/importer/jats-body-transformations.js +0 -8
- package/dist/es/jats/importer/parse-jats-article.js +0 -1
- package/dist/es/jats/jats-exporter.js +17 -37
- package/dist/es/schema/index.js +0 -1
- package/dist/es/schema/nodes/equation.js +12 -14
- package/dist/es/schema/nodes/equation_element.js +4 -5
- package/dist/es/schema/nodes/inline_equation.js +12 -16
- package/dist/es/schema/nodes/table_element.js +1 -1
- package/dist/es/transformer/builders.js +0 -6
- package/dist/es/transformer/decode.js +5 -8
- package/dist/es/transformer/encode.js +4 -25
- package/dist/es/transformer/node-types.js +0 -1
- package/dist/es/transformer/object-types.js +0 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/jats/importer/jats-body-transformations.d.ts +0 -1
- package/dist/types/schema/index.d.ts +0 -1
- package/dist/types/schema/nodes/equation.d.ts +3 -4
- package/dist/types/schema/nodes/equation_element.d.ts +1 -2
- package/dist/types/schema/nodes/inline_equation.d.ts +4 -4
- package/dist/types/transformer/builders.d.ts +1 -2
- package/package.json +3 -4
- package/dist/cjs/mathjax/index.js +0 -41
- package/dist/cjs/mathjax/mathjax-packages.js +0 -20
- package/dist/cjs/mathjax/mathml-to-svg.js +0 -70
- package/dist/cjs/mathjax/tex-to-mathml.js +0 -49
- package/dist/cjs/mathjax/tex-to-svg.js +0 -59
- package/dist/es/mathjax/index.js +0 -12
- package/dist/es/mathjax/mathjax-packages.js +0 -17
- package/dist/es/mathjax/mathml-to-svg.js +0 -66
- package/dist/es/mathjax/tex-to-mathml.js +0 -45
- package/dist/es/mathjax/tex-to-svg.js +0 -55
- package/dist/types/mathjax/index.d.ts +0 -3
- package/dist/types/mathjax/mathjax-packages.d.ts +0 -16
- package/dist/types/mathjax/mathml-to-svg.d.ts +0 -17
- package/dist/types/mathjax/tex-to-mathml.d.ts +0 -17
- package/dist/types/mathjax/tex-to-svg.d.ts +0 -17
package/dist/cjs/index.js
CHANGED
|
@@ -18,7 +18,6 @@ exports.isSectionLabelNode = void 0;
|
|
|
18
18
|
__exportStar(require("./lib/section-group-type"), exports);
|
|
19
19
|
__exportStar(require("./lib/table-cell-styles"), exports);
|
|
20
20
|
__exportStar(require("./lib/utils"), exports);
|
|
21
|
-
__exportStar(require("./mathjax"), exports);
|
|
22
21
|
__exportStar(require("./schema"), exports);
|
|
23
22
|
__exportStar(require("./transformer"), exports);
|
|
24
23
|
__exportStar(require("./jats"), exports);
|
|
@@ -21,8 +21,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
21
21
|
exports.jatsBodyDOMParser = void 0;
|
|
22
22
|
const mime_1 = __importDefault(require("mime"));
|
|
23
23
|
const prosemirror_model_1 = require("prosemirror-model");
|
|
24
|
-
const mathml_to_svg_1 = require("../../mathjax/mathml-to-svg");
|
|
25
|
-
const tex_to_svg_1 = require("../../mathjax/tex-to-svg");
|
|
26
24
|
const schema_1 = require("../../schema");
|
|
27
25
|
const transformer_1 = require("../../transformer");
|
|
28
26
|
const XLINK_NAMESPACE = 'http://www.w3.org/1999/xlink';
|
|
@@ -39,6 +37,24 @@ const chooseContentType = (graphicNode) => {
|
|
|
39
37
|
}
|
|
40
38
|
}
|
|
41
39
|
};
|
|
40
|
+
const getEquationContent = (p) => {
|
|
41
|
+
var _a;
|
|
42
|
+
const element = p;
|
|
43
|
+
const container = (_a = element.querySelector('alternatives')) !== null && _a !== void 0 ? _a : element;
|
|
44
|
+
let contents = '';
|
|
45
|
+
let format = '';
|
|
46
|
+
for (const child of container.childNodes) {
|
|
47
|
+
const nodeName = child.nodeName.replace(/^[a-z]:/, '');
|
|
48
|
+
switch (nodeName) {
|
|
49
|
+
case 'tex-math':
|
|
50
|
+
case 'mml:math':
|
|
51
|
+
contents = child.outerHTML;
|
|
52
|
+
format = nodeName === 'tex-math' ? 'tex' : 'mathml';
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return { format, contents };
|
|
57
|
+
};
|
|
42
58
|
const marks = [
|
|
43
59
|
{
|
|
44
60
|
tag: 'bold',
|
|
@@ -147,91 +163,27 @@ const nodes = [
|
|
|
147
163
|
tag: 'inline-formula',
|
|
148
164
|
node: 'inline_equation',
|
|
149
165
|
getAttrs: (node) => {
|
|
150
|
-
var _a, _b, _c, _d, _e;
|
|
151
166
|
const element = node;
|
|
152
|
-
|
|
153
|
-
id: element.getAttribute('id'),
|
|
154
|
-
MathMLRepresentation: '',
|
|
155
|
-
SVGRepresentation: '',
|
|
156
|
-
TeXRepresentation: '',
|
|
157
|
-
};
|
|
158
|
-
const container = (_a = element.querySelector('alternatives')) !== null && _a !== void 0 ? _a : element;
|
|
159
|
-
for (const child of container.childNodes) {
|
|
160
|
-
const nodeName = child.nodeName.replace(/^[a-z]:/, '');
|
|
161
|
-
switch (nodeName) {
|
|
162
|
-
case 'tex-math':
|
|
163
|
-
attrs.TeXRepresentation = (_c = (_b = child.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== null && _c !== void 0 ? _c : '';
|
|
164
|
-
if (attrs.TeXRepresentation) {
|
|
165
|
-
attrs.SVGRepresentation =
|
|
166
|
-
(_d = (0, tex_to_svg_1.convertTeXToSVG)(attrs.TeXRepresentation, true)) !== null && _d !== void 0 ? _d : '';
|
|
167
|
-
}
|
|
168
|
-
break;
|
|
169
|
-
case 'mml:math':
|
|
170
|
-
;
|
|
171
|
-
child.removeAttribute('id');
|
|
172
|
-
attrs.MathMLRepresentation = transformer_1.xmlSerializer.serializeToString(child);
|
|
173
|
-
if (attrs.MathMLRepresentation) {
|
|
174
|
-
attrs.SVGRepresentation =
|
|
175
|
-
(_e = (0, mathml_to_svg_1.convertMathMLToSVG)(attrs.MathMLRepresentation, true)) !== null && _e !== void 0 ? _e : '';
|
|
176
|
-
}
|
|
177
|
-
break;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
return attrs;
|
|
167
|
+
return getEquationContent(element);
|
|
181
168
|
},
|
|
182
169
|
},
|
|
183
170
|
{
|
|
184
171
|
tag: 'disp-formula',
|
|
185
172
|
node: 'equation_element',
|
|
186
173
|
getAttrs: (node) => {
|
|
174
|
+
var _a, _b;
|
|
187
175
|
const element = node;
|
|
188
|
-
const caption = element.querySelector('figcaption');
|
|
189
176
|
return {
|
|
190
177
|
id: element.getAttribute('id'),
|
|
191
|
-
|
|
178
|
+
label: (_b = (_a = element.querySelector('label')) === null || _a === void 0 ? void 0 : _a.textContent) !== null && _b !== void 0 ? _b : '',
|
|
192
179
|
};
|
|
193
180
|
},
|
|
194
181
|
getContent: (node, schema) => {
|
|
195
|
-
var _a, _b, _c, _d, _e;
|
|
196
182
|
const element = node;
|
|
197
|
-
const attrs =
|
|
198
|
-
|
|
199
|
-
SVGStringRepresentation: '',
|
|
200
|
-
TeXRepresentation: '',
|
|
201
|
-
};
|
|
202
|
-
const container = (_a = element.querySelector('alternatives')) !== null && _a !== void 0 ? _a : element;
|
|
203
|
-
for (const child of container.childNodes) {
|
|
204
|
-
const nodeName = child.nodeName.replace(/^[a-z]:/, '');
|
|
205
|
-
switch (nodeName) {
|
|
206
|
-
case 'tex-math':
|
|
207
|
-
attrs.TeXRepresentation = (_c = (_b = child.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== null && _c !== void 0 ? _c : '';
|
|
208
|
-
if (attrs.TeXRepresentation) {
|
|
209
|
-
attrs.SVGStringRepresentation =
|
|
210
|
-
(_d = (0, tex_to_svg_1.convertTeXToSVG)(attrs.TeXRepresentation, true)) !== null && _d !== void 0 ? _d : '';
|
|
211
|
-
}
|
|
212
|
-
break;
|
|
213
|
-
case 'mml:math':
|
|
214
|
-
;
|
|
215
|
-
child.removeAttribute('id');
|
|
216
|
-
attrs.MathMLStringRepresentation =
|
|
217
|
-
transformer_1.xmlSerializer.serializeToString(child);
|
|
218
|
-
if (attrs.MathMLStringRepresentation) {
|
|
219
|
-
attrs.SVGStringRepresentation =
|
|
220
|
-
(_e = (0, mathml_to_svg_1.convertMathMLToSVG)(attrs.MathMLStringRepresentation, true)) !== null && _e !== void 0 ? _e : '';
|
|
221
|
-
}
|
|
222
|
-
break;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
const caption = element.querySelector('figcaption');
|
|
226
|
-
const figcaption = schema.nodes.figcaption.create();
|
|
183
|
+
const attrs = getEquationContent(element);
|
|
184
|
+
const id = element.getAttribute('id');
|
|
227
185
|
return prosemirror_model_1.Fragment.from([
|
|
228
|
-
schema.nodes.equation.createChecked(attrs),
|
|
229
|
-
caption
|
|
230
|
-
?
|
|
231
|
-
exports.jatsBodyDOMParser.parse(caption, {
|
|
232
|
-
topNode: figcaption,
|
|
233
|
-
})
|
|
234
|
-
: figcaption,
|
|
186
|
+
schema.nodes.equation.createChecked(Object.assign({ id }, attrs)),
|
|
235
187
|
]);
|
|
236
188
|
},
|
|
237
189
|
},
|
|
@@ -265,14 +265,6 @@ exports.jatsBodyTransformations = {
|
|
|
265
265
|
}
|
|
266
266
|
});
|
|
267
267
|
},
|
|
268
|
-
moveTableFooterToEnd(body) {
|
|
269
|
-
const footers = body.querySelectorAll('table-wrap-foot');
|
|
270
|
-
for (const footer of footers) {
|
|
271
|
-
if (footer.parentNode) {
|
|
272
|
-
footer.parentNode.appendChild(footer);
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
},
|
|
276
268
|
moveFloatsGroupToBody(doc, body, createElement) {
|
|
277
269
|
const group = doc.querySelector('floats-group');
|
|
278
270
|
if (group) {
|
|
@@ -66,7 +66,6 @@ const parseJATSBody = (doc, body, references) => {
|
|
|
66
66
|
jats_body_transformations_1.jatsBodyTransformations.ensureSection(body, createElement);
|
|
67
67
|
jats_body_transformations_1.jatsBodyTransformations.moveCaptionsToEnd(body);
|
|
68
68
|
jats_body_transformations_1.jatsBodyTransformations.fixTables(body, createElement);
|
|
69
|
-
jats_body_transformations_1.jatsBodyTransformations.moveTableFooterToEnd(body);
|
|
70
69
|
jats_body_transformations_1.jatsBodyTransformations.createBody(doc, body, createElement);
|
|
71
70
|
jats_body_transformations_1.jatsBodyTransformations.createAbstracts(doc, body, createElement);
|
|
72
71
|
jats_body_transformations_1.jatsBodyTransformations.createBackmatter(doc, body, createElement);
|
|
@@ -164,6 +164,7 @@ class JATSExporter {
|
|
|
164
164
|
};
|
|
165
165
|
this.nodeFromJATS = (JATSFragment) => {
|
|
166
166
|
JATSFragment = JATSFragment.trim();
|
|
167
|
+
JATSFragment = JATSFragment.replace(' ', ' ');
|
|
167
168
|
if (!JATSFragment.length) {
|
|
168
169
|
return null;
|
|
169
170
|
}
|
|
@@ -684,22 +685,23 @@ class JATSExporter {
|
|
|
684
685
|
},
|
|
685
686
|
doc: () => '',
|
|
686
687
|
equation: (node) => {
|
|
687
|
-
const
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
688
|
+
const math = this.nodeFromJATS(node.attrs.contents);
|
|
689
|
+
const mathEl = math;
|
|
690
|
+
mathEl.setAttribute('id', normalizeID(node.attrs.id));
|
|
691
|
+
return mathEl;
|
|
692
|
+
},
|
|
693
|
+
inline_equation: (node) => {
|
|
694
|
+
const eqElement = this.document.createElement('inline-formula');
|
|
695
|
+
const math = this.nodeFromJATS(node.attrs.contents);
|
|
696
|
+
eqElement.append(math);
|
|
697
|
+
return eqElement;
|
|
698
|
+
},
|
|
699
|
+
equation_element: (node) => {
|
|
700
|
+
const eqElement = this.document.createElement('disp-formula');
|
|
701
|
+
eqElement.setAttribute('id', normalizeID(node.attrs.id));
|
|
702
|
+
processChildNodes(eqElement, node, schema_1.schema.nodes.equation);
|
|
703
|
+
return eqElement;
|
|
701
704
|
},
|
|
702
|
-
equation_element: (node) => createFigureElement(node, 'fig', node.type.schema.nodes.equation, 'equation'),
|
|
703
705
|
figcaption: (node) => {
|
|
704
706
|
if (!node.textContent) {
|
|
705
707
|
return '';
|
|
@@ -749,28 +751,6 @@ class JATSExporter {
|
|
|
749
751
|
},
|
|
750
752
|
hard_break: () => '',
|
|
751
753
|
highlight_marker: () => '',
|
|
752
|
-
inline_equation: (node) => {
|
|
753
|
-
const formula = this.document.createElement('inline-formula');
|
|
754
|
-
formula.setAttribute('id', normalizeID(node.attrs.id));
|
|
755
|
-
if (node.attrs.TeXRepresentation) {
|
|
756
|
-
const math = this.document.createElement('tex-math');
|
|
757
|
-
math.textContent = node.attrs.TeXRepresentation;
|
|
758
|
-
formula.appendChild(math);
|
|
759
|
-
}
|
|
760
|
-
else if (node.attrs.MathMLRepresentation) {
|
|
761
|
-
const math = this.nodeFromJATS(node.attrs.MathMLRepresentation);
|
|
762
|
-
if (math) {
|
|
763
|
-
formula.appendChild(math);
|
|
764
|
-
}
|
|
765
|
-
}
|
|
766
|
-
else if (node.attrs.SVGRepresentation) {
|
|
767
|
-
const math = this.nodeFromJATS(node.attrs.SVGRepresentation);
|
|
768
|
-
if (math) {
|
|
769
|
-
formula.appendChild(math);
|
|
770
|
-
}
|
|
771
|
-
}
|
|
772
|
-
return formula;
|
|
773
|
-
},
|
|
774
754
|
inline_footnote: (node) => {
|
|
775
755
|
const xref = this.document.createElement('xref');
|
|
776
756
|
xref.setAttribute('ref-type', 'fn');
|
package/dist/cjs/schema/index.js
CHANGED
|
@@ -115,7 +115,6 @@ __exportStar(require("./nodes/footnotes_section"), exports);
|
|
|
115
115
|
__exportStar(require("./nodes/graphical_abstract_section"), exports);
|
|
116
116
|
__exportStar(require("./nodes/hard_break"), exports);
|
|
117
117
|
__exportStar(require("./nodes/highlight_marker"), exports);
|
|
118
|
-
__exportStar(require("./nodes/inline_equation"), exports);
|
|
119
118
|
__exportStar(require("./nodes/inline_footnote"), exports);
|
|
120
119
|
__exportStar(require("./nodes/keyword"), exports);
|
|
121
120
|
__exportStar(require("./nodes/keywords_element"), exports);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*!
|
|
3
|
-
* ©
|
|
3
|
+
* © 2023 Atypon Systems LLC
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
6
|
* you may not use this file except in compliance with the License.
|
|
@@ -20,9 +20,8 @@ const json_schema_1 = require("@manuscripts/json-schema");
|
|
|
20
20
|
exports.equation = {
|
|
21
21
|
attrs: {
|
|
22
22
|
id: { default: '' },
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
TeXRepresentation: { default: '' },
|
|
23
|
+
contents: { default: '' },
|
|
24
|
+
format: { default: '' },
|
|
26
25
|
dataTracked: { default: null },
|
|
27
26
|
},
|
|
28
27
|
group: 'block',
|
|
@@ -30,26 +29,25 @@ exports.equation = {
|
|
|
30
29
|
{
|
|
31
30
|
tag: `div.${json_schema_1.ObjectTypes.Equation}`,
|
|
32
31
|
getAttrs: (p) => {
|
|
33
|
-
const
|
|
32
|
+
const htmlEl = p;
|
|
34
33
|
return {
|
|
35
|
-
id:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
TeXRepresentation: dom.getAttribute('data-tex-representation'),
|
|
34
|
+
id: htmlEl.getAttribute('id'),
|
|
35
|
+
format: htmlEl.getAttribute('data-equation-format'),
|
|
36
|
+
contents: htmlEl.innerHTML,
|
|
39
37
|
};
|
|
40
38
|
},
|
|
41
39
|
},
|
|
42
40
|
],
|
|
43
41
|
toDOM: (node) => {
|
|
44
42
|
const equationNode = node;
|
|
43
|
+
const { id, contents, format } = equationNode.attrs;
|
|
45
44
|
const dom = document.createElement('div');
|
|
46
|
-
dom.setAttribute('id', equationNode.attrs.id);
|
|
47
45
|
dom.classList.add(json_schema_1.ObjectTypes.Equation);
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
dom.setAttribute('id', id);
|
|
47
|
+
if (format) {
|
|
48
|
+
dom.setAttribute('data-equation-format', format);
|
|
50
49
|
}
|
|
51
|
-
dom.
|
|
52
|
-
dom.innerHTML = equationNode.attrs.SVGStringRepresentation;
|
|
50
|
+
dom.innerHTML = contents;
|
|
53
51
|
return dom;
|
|
54
52
|
},
|
|
55
53
|
};
|
|
@@ -17,11 +17,10 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.equationElement = void 0;
|
|
19
19
|
exports.equationElement = {
|
|
20
|
-
content: '(equation | placeholder)
|
|
20
|
+
content: '(equation | placeholder)',
|
|
21
21
|
attrs: {
|
|
22
22
|
id: { default: '' },
|
|
23
|
-
|
|
24
|
-
suppressTitle: { default: undefined },
|
|
23
|
+
label: { default: '' },
|
|
25
24
|
dataTracked: { default: null },
|
|
26
25
|
comments: { default: null },
|
|
27
26
|
},
|
|
@@ -29,7 +28,7 @@ exports.equationElement = {
|
|
|
29
28
|
group: 'block element',
|
|
30
29
|
parseDOM: [
|
|
31
30
|
{
|
|
32
|
-
tag: '
|
|
31
|
+
tag: 'div.equation',
|
|
33
32
|
getAttrs: (p) => {
|
|
34
33
|
const dom = p;
|
|
35
34
|
return {
|
|
@@ -41,7 +40,7 @@ exports.equationElement = {
|
|
|
41
40
|
toDOM: (node) => {
|
|
42
41
|
const equationElementNode = node;
|
|
43
42
|
return [
|
|
44
|
-
'
|
|
43
|
+
'div',
|
|
45
44
|
{
|
|
46
45
|
class: 'equation',
|
|
47
46
|
id: equationElementNode.attrs.id,
|
|
@@ -16,43 +16,39 @@
|
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.inlineEquation = void 0;
|
|
19
|
-
const json_schema_1 = require("@manuscripts/json-schema");
|
|
20
19
|
exports.inlineEquation = {
|
|
21
20
|
attrs: {
|
|
22
|
-
id: { default: '' },
|
|
23
|
-
MathMLRepresentation: { default: '' },
|
|
24
|
-
SVGRepresentation: { default: '' },
|
|
25
|
-
TeXRepresentation: { default: '' },
|
|
26
21
|
dataTracked: { default: null },
|
|
22
|
+
comments: { default: null },
|
|
23
|
+
contents: { default: '' },
|
|
24
|
+
format: { default: '' },
|
|
27
25
|
},
|
|
26
|
+
selectable: false,
|
|
28
27
|
atom: true,
|
|
29
28
|
inline: true,
|
|
30
29
|
draggable: true,
|
|
31
30
|
group: 'inline',
|
|
32
31
|
parseDOM: [
|
|
33
32
|
{
|
|
34
|
-
tag: `span
|
|
33
|
+
tag: `span.MPInlineMathFragment`,
|
|
35
34
|
getAttrs: (p) => {
|
|
36
35
|
const dom = p;
|
|
37
36
|
return {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
SVGRepresentation: dom.innerHTML || '',
|
|
41
|
-
TeXRepresentation: dom.getAttribute('data-tex-representation') || '',
|
|
37
|
+
format: dom.getAttribute('data-equation-format'),
|
|
38
|
+
contents: dom.innerHTML,
|
|
42
39
|
};
|
|
43
40
|
},
|
|
44
41
|
},
|
|
45
42
|
],
|
|
46
43
|
toDOM: (node) => {
|
|
47
44
|
const inlineEquationNode = node;
|
|
45
|
+
const { contents, format } = inlineEquationNode.attrs;
|
|
48
46
|
const dom = document.createElement('span');
|
|
49
|
-
dom.classList.add(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if (inlineEquationNode.attrs.MathMLRepresentation) {
|
|
53
|
-
dom.setAttribute('data-mathml-representation', inlineEquationNode.attrs.MathMLRepresentation);
|
|
47
|
+
dom.classList.add('MPInlineMathFragment');
|
|
48
|
+
if (format) {
|
|
49
|
+
dom.setAttribute('data-equation-format', format);
|
|
54
50
|
}
|
|
55
|
-
dom.innerHTML =
|
|
51
|
+
dom.innerHTML = contents;
|
|
56
52
|
return dom;
|
|
57
53
|
},
|
|
58
54
|
};
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.tableElement = void 0;
|
|
19
19
|
exports.tableElement = {
|
|
20
|
-
content: '(table | placeholder)
|
|
20
|
+
content: '(table | placeholder) table_element_footer? figcaption? (listing | placeholder)',
|
|
21
21
|
attrs: {
|
|
22
22
|
id: { default: '' },
|
|
23
23
|
paragraphStyle: { default: '' },
|
|
@@ -18,7 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
18
18
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
19
|
};
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.buildTitles = exports.buildElementsOrder = exports.auxiliaryObjectTypes = exports.buildJournal = exports.buildAttribution = exports.buildContributorRole = exports.buildContribution = exports.buildColor = exports.buildParagraph = exports.buildSection = exports.buildCorresp = exports.buildFootnotesOrder = exports.buildFootnote = exports.
|
|
21
|
+
exports.buildTitles = exports.buildElementsOrder = exports.auxiliaryObjectTypes = exports.buildJournal = exports.buildAttribution = exports.buildContributorRole = exports.buildContribution = exports.buildColor = exports.buildParagraph = exports.buildSection = exports.buildCorresp = exports.buildFootnotesOrder = exports.buildFootnote = exports.buildNote = exports.buildComment = exports.buildSupplementaryMaterial = exports.buildAffiliation = exports.buildFigure = exports.buildKeywordGroup = exports.buildKeyword = exports.buildBibliographyElement = exports.buildBibliographicDate = exports.buildBibliographicName = exports.buildBibliographyItem = exports.buildContributor = exports.buildManuscript = exports.buildProject = void 0;
|
|
22
22
|
const json_schema_1 = require("@manuscripts/json-schema");
|
|
23
23
|
const w3c_xmlserializer_1 = __importDefault(require("w3c-xmlserializer"));
|
|
24
24
|
const schema_1 = require("../schema");
|
|
@@ -115,13 +115,6 @@ const buildNote = (target, source, contents = '') => ({
|
|
|
115
115
|
contents,
|
|
116
116
|
});
|
|
117
117
|
exports.buildNote = buildNote;
|
|
118
|
-
const buildInlineMathFragment = (containingObject, TeXRepresentation) => ({
|
|
119
|
-
_id: (0, id_1.generateID)(json_schema_1.ObjectTypes.InlineMathFragment),
|
|
120
|
-
objectType: json_schema_1.ObjectTypes.InlineMathFragment,
|
|
121
|
-
containingObject: containingObject || undefined,
|
|
122
|
-
TeXRepresentation,
|
|
123
|
-
});
|
|
124
|
-
exports.buildInlineMathFragment = buildInlineMathFragment;
|
|
125
118
|
const buildFootnote = (containingObject, contents, kind = 'footnote') => ({
|
|
126
119
|
_id: (0, id_1.generateID)(json_schema_1.ObjectTypes.Footnote),
|
|
127
120
|
objectType: json_schema_1.ObjectTypes.Footnote,
|
|
@@ -271,9 +271,8 @@ class Decoder {
|
|
|
271
271
|
const model = data;
|
|
272
272
|
return schema_1.schema.nodes.equation.createChecked({
|
|
273
273
|
id: model._id,
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
TeXRepresentation: model.TeXRepresentation,
|
|
274
|
+
contents: model.contents,
|
|
275
|
+
format: model.format,
|
|
277
276
|
});
|
|
278
277
|
},
|
|
279
278
|
[json_schema_1.ObjectTypes.EquationElement]: (data) => {
|
|
@@ -292,12 +291,10 @@ class Decoder {
|
|
|
292
291
|
else {
|
|
293
292
|
throw new errors_1.MissingElement(model.containedObjectID);
|
|
294
293
|
}
|
|
295
|
-
const figcaption = this.getFigcaption(model);
|
|
296
294
|
return schema_1.schema.nodes.equation_element.createChecked({
|
|
297
295
|
id: model._id,
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
}, [equation, figcaption]);
|
|
296
|
+
label: model.label,
|
|
297
|
+
}, [equation]);
|
|
301
298
|
},
|
|
302
299
|
[json_schema_1.ObjectTypes.FootnotesElement]: (data) => {
|
|
303
300
|
const foonotesElementModel = data;
|
|
@@ -564,7 +561,7 @@ class Decoder {
|
|
|
564
561
|
const comments = this.createCommentNodes(model);
|
|
565
562
|
comments.forEach((c) => this.comments.set(c.attrs.id, c));
|
|
566
563
|
const content = tableElementFooter
|
|
567
|
-
? [table,
|
|
564
|
+
? [table, tableElementFooter, figcaption]
|
|
568
565
|
: [table, figcaption];
|
|
569
566
|
if (model.listingID) {
|
|
570
567
|
const listing = this.createListing(model.listingID);
|
|
@@ -62,12 +62,6 @@ const listContents = (node) => {
|
|
|
62
62
|
}
|
|
63
63
|
return (0, w3c_xmlserializer_1.default)(output);
|
|
64
64
|
};
|
|
65
|
-
const svgDefs = (svg) => {
|
|
66
|
-
const template = document.createElement('template');
|
|
67
|
-
template.innerHTML = svg.trim();
|
|
68
|
-
const defs = template.content.querySelector('defs');
|
|
69
|
-
return defs ? (0, w3c_xmlserializer_1.default)(defs) : undefined;
|
|
70
|
-
};
|
|
71
65
|
const tableRowDisplayStyle = (tagName, parent) => {
|
|
72
66
|
switch (tagName) {
|
|
73
67
|
case 'thead':
|
|
@@ -353,20 +347,12 @@ const encoders = {
|
|
|
353
347
|
: false,
|
|
354
348
|
}),
|
|
355
349
|
equation: (node) => ({
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
SVGStringRepresentation: node.attrs.SVGStringRepresentation,
|
|
350
|
+
contents: node.attrs.contents,
|
|
351
|
+
format: node.attrs.format,
|
|
359
352
|
}),
|
|
360
353
|
equation_element: (node) => ({
|
|
361
354
|
containedObjectID: attributeOfNodeType(node, 'equation', 'id'),
|
|
362
|
-
|
|
363
|
-
title: inlineContentOfChildNodeType(node, node.type.schema.nodes.figcaption, node.type.schema.nodes.caption_title, false),
|
|
364
|
-
elementType: 'p',
|
|
365
|
-
suppressCaption: Boolean(node.attrs.suppressCaption) || undefined,
|
|
366
|
-
suppressTitle: node.attrs.suppressTitle === undefined ||
|
|
367
|
-
node.attrs.suppressTitle === true
|
|
368
|
-
? undefined
|
|
369
|
-
: false,
|
|
355
|
+
label: node.attrs.label,
|
|
370
356
|
}),
|
|
371
357
|
figure: (node) => ({
|
|
372
358
|
contentType: node.attrs.contentType || undefined,
|
|
@@ -413,12 +399,6 @@ const encoders = {
|
|
|
413
399
|
.map((childNode) => childNode.attrs.id)
|
|
414
400
|
.filter((id) => id),
|
|
415
401
|
}),
|
|
416
|
-
inline_equation: (node, parent) => ({
|
|
417
|
-
containingObject: parent.attrs.id,
|
|
418
|
-
TeXRepresentation: node.attrs.TeXRepresentation,
|
|
419
|
-
SVGRepresentation: node.attrs.SVGRepresentation,
|
|
420
|
-
SVGGlyphs: svgDefs(node.attrs.SVGRepresentation),
|
|
421
|
-
}),
|
|
422
402
|
keyword: (node, parent) => ({
|
|
423
403
|
containedGroup: parent.attrs.id,
|
|
424
404
|
name: keywordContents(node),
|
|
@@ -580,8 +560,7 @@ const encode = (node) => {
|
|
|
580
560
|
if (placeholderTypes.includes(child.type)) {
|
|
581
561
|
return;
|
|
582
562
|
}
|
|
583
|
-
if (parent.type === schema_1.schema.nodes.paragraph
|
|
584
|
-
child.type !== schema_1.schema.nodes.inline_equation) {
|
|
563
|
+
if (parent.type === schema_1.schema.nodes.paragraph) {
|
|
585
564
|
return;
|
|
586
565
|
}
|
|
587
566
|
const { model, markers } = (0, exports.modelFromNode)(child, parent, path, priority);
|
|
@@ -39,7 +39,6 @@ exports.nodeTypesMap = new Map([
|
|
|
39
39
|
[schema_1.schema.nodes.footnotes_section, json_schema_1.ObjectTypes.Section],
|
|
40
40
|
[schema_1.schema.nodes.graphical_abstract_section, json_schema_1.ObjectTypes.Section],
|
|
41
41
|
[schema_1.schema.nodes.highlight_marker, json_schema_1.ObjectTypes.HighlightMarker],
|
|
42
|
-
[schema_1.schema.nodes.inline_equation, json_schema_1.ObjectTypes.InlineMathFragment],
|
|
43
42
|
[schema_1.schema.nodes.keyword, json_schema_1.ObjectTypes.Keyword],
|
|
44
43
|
[schema_1.schema.nodes.keywords_element, json_schema_1.ObjectTypes.KeywordsElement],
|
|
45
44
|
[schema_1.schema.nodes.keywords, json_schema_1.ObjectTypes.Section],
|
|
@@ -38,7 +38,6 @@ exports.manuscriptObjects = [
|
|
|
38
38
|
json_schema_1.ObjectTypes.CommentAnnotation,
|
|
39
39
|
json_schema_1.ObjectTypes.Contributor,
|
|
40
40
|
json_schema_1.ObjectTypes.Footnote,
|
|
41
|
-
json_schema_1.ObjectTypes.InlineMathFragment,
|
|
42
41
|
json_schema_1.ObjectTypes.Section,
|
|
43
42
|
].concat(exports.elementObjects);
|
|
44
43
|
const isManuscriptModel = (model) => {
|