@manuscripts/transform 2.1.0 → 2.1.1-LEAN-3094
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/jats-exporter.js +17 -37
- package/dist/cjs/schema/index.js +0 -1
- package/dist/cjs/schema/nodes/affiliation.js +4 -1
- package/dist/cjs/schema/nodes/contributor.js +3 -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/transformer/builders.js +1 -8
- package/dist/cjs/transformer/decode.js +8 -7
- package/dist/cjs/transformer/encode.js +8 -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/jats-exporter.js +17 -37
- package/dist/es/schema/index.js +0 -1
- package/dist/es/schema/nodes/affiliation.js +4 -1
- package/dist/es/schema/nodes/contributor.js +3 -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/transformer/builders.js +0 -6
- package/dist/es/transformer/decode.js +8 -7
- package/dist/es/transformer/encode.js +8 -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/schema/index.d.ts +0 -1
- package/dist/types/schema/nodes/affiliation.d.ts +2 -0
- package/dist/types/schema/nodes/contributor.d.ts +4 -2
- 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
|
},
|
|
@@ -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
|
}
|
|
@@ -686,22 +687,23 @@ class JATSExporter {
|
|
|
686
687
|
},
|
|
687
688
|
doc: () => '',
|
|
688
689
|
equation: (node) => {
|
|
689
|
-
const
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
690
|
+
const math = this.nodeFromJATS(node.attrs.contents);
|
|
691
|
+
const mathEl = math;
|
|
692
|
+
mathEl.setAttribute('id', normalizeID(node.attrs.id));
|
|
693
|
+
return mathEl;
|
|
694
|
+
},
|
|
695
|
+
inline_equation: (node) => {
|
|
696
|
+
const eqElement = this.document.createElement('inline-formula');
|
|
697
|
+
const math = this.nodeFromJATS(node.attrs.contents);
|
|
698
|
+
eqElement.append(math);
|
|
699
|
+
return eqElement;
|
|
700
|
+
},
|
|
701
|
+
equation_element: (node) => {
|
|
702
|
+
const eqElement = this.document.createElement('disp-formula');
|
|
703
|
+
eqElement.setAttribute('id', normalizeID(node.attrs.id));
|
|
704
|
+
processChildNodes(eqElement, node, schema_1.schema.nodes.equation);
|
|
705
|
+
return eqElement;
|
|
703
706
|
},
|
|
704
|
-
equation_element: (node) => createFigureElement(node, 'fig', node.type.schema.nodes.equation, 'equation'),
|
|
705
707
|
figcaption: (node) => {
|
|
706
708
|
if (!node.textContent) {
|
|
707
709
|
return '';
|
|
@@ -751,28 +753,6 @@ class JATSExporter {
|
|
|
751
753
|
},
|
|
752
754
|
hard_break: () => '',
|
|
753
755
|
highlight_marker: () => '',
|
|
754
|
-
inline_equation: (node) => {
|
|
755
|
-
const formula = this.document.createElement('inline-formula');
|
|
756
|
-
formula.setAttribute('id', normalizeID(node.attrs.id));
|
|
757
|
-
if (node.attrs.TeXRepresentation) {
|
|
758
|
-
const math = this.document.createElement('tex-math');
|
|
759
|
-
math.textContent = node.attrs.TeXRepresentation;
|
|
760
|
-
formula.appendChild(math);
|
|
761
|
-
}
|
|
762
|
-
else if (node.attrs.MathMLRepresentation) {
|
|
763
|
-
const math = this.nodeFromJATS(node.attrs.MathMLRepresentation);
|
|
764
|
-
if (math) {
|
|
765
|
-
formula.appendChild(math);
|
|
766
|
-
}
|
|
767
|
-
}
|
|
768
|
-
else if (node.attrs.SVGRepresentation) {
|
|
769
|
-
const math = this.nodeFromJATS(node.attrs.SVGRepresentation);
|
|
770
|
-
if (math) {
|
|
771
|
-
formula.appendChild(math);
|
|
772
|
-
}
|
|
773
|
-
}
|
|
774
|
-
return formula;
|
|
775
|
-
},
|
|
776
756
|
inline_footnote: (node) => {
|
|
777
757
|
const xref = this.document.createElement('xref');
|
|
778
758
|
xref.setAttribute('ref-type', 'fn');
|
package/dist/cjs/schema/index.js
CHANGED
|
@@ -117,7 +117,6 @@ __exportStar(require("./nodes/footnotes_section"), exports);
|
|
|
117
117
|
__exportStar(require("./nodes/graphical_abstract_section"), exports);
|
|
118
118
|
__exportStar(require("./nodes/hard_break"), exports);
|
|
119
119
|
__exportStar(require("./nodes/highlight_marker"), exports);
|
|
120
|
-
__exportStar(require("./nodes/inline_equation"), exports);
|
|
121
120
|
__exportStar(require("./nodes/inline_footnote"), exports);
|
|
122
121
|
__exportStar(require("./nodes/keyword"), exports);
|
|
123
122
|
__exportStar(require("./nodes/keywords_element"), exports);
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isAffiliationNode = exports.affiliation = void 0;
|
|
4
4
|
exports.affiliation = {
|
|
5
|
+
content: 'inline*',
|
|
5
6
|
attrs: {
|
|
6
7
|
id: { default: '' },
|
|
7
8
|
institution: { default: '' },
|
|
@@ -11,6 +12,8 @@ exports.affiliation = {
|
|
|
11
12
|
addressLine3: { default: '' },
|
|
12
13
|
postCode: { default: '' },
|
|
13
14
|
country: { default: '' },
|
|
15
|
+
county: { default: '' },
|
|
16
|
+
city: { default: '' },
|
|
14
17
|
priority: { default: undefined },
|
|
15
18
|
email: {
|
|
16
19
|
default: {
|
|
@@ -20,7 +23,7 @@ exports.affiliation = {
|
|
|
20
23
|
},
|
|
21
24
|
dataTracked: { default: null },
|
|
22
25
|
},
|
|
23
|
-
group: 'block
|
|
26
|
+
group: 'block',
|
|
24
27
|
parseDOM: [
|
|
25
28
|
{
|
|
26
29
|
tag: 'div.affiliation',
|
|
@@ -6,6 +6,7 @@ exports.contributor = {
|
|
|
6
6
|
attrs: {
|
|
7
7
|
id: { default: '' },
|
|
8
8
|
role: { default: '' },
|
|
9
|
+
email: { default: '' },
|
|
9
10
|
affiliations: { default: [] },
|
|
10
11
|
footnote: { default: undefined },
|
|
11
12
|
corresp: { default: undefined },
|
|
@@ -13,12 +14,13 @@ exports.contributor = {
|
|
|
13
14
|
userID: { default: undefined },
|
|
14
15
|
invitationID: { default: undefined },
|
|
15
16
|
isCorresponding: { default: undefined },
|
|
17
|
+
isJointContributor: { default: undefined },
|
|
16
18
|
ORCIDIdentifier: { default: undefined },
|
|
17
19
|
priority: { default: undefined },
|
|
18
20
|
dataTracked: { default: null },
|
|
19
21
|
contents: { default: '' },
|
|
20
22
|
},
|
|
21
|
-
group: 'block
|
|
23
|
+
group: 'block',
|
|
22
24
|
toDOM: (node) => {
|
|
23
25
|
const contributorNode = node;
|
|
24
26
|
return [
|
|
@@ -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
|
};
|
|
@@ -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,
|
|
@@ -281,9 +281,8 @@ class Decoder {
|
|
|
281
281
|
const model = data;
|
|
282
282
|
return schema_1.schema.nodes.equation.createChecked({
|
|
283
283
|
id: model._id,
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
TeXRepresentation: model.TeXRepresentation,
|
|
284
|
+
contents: model.contents,
|
|
285
|
+
format: model.format,
|
|
287
286
|
});
|
|
288
287
|
},
|
|
289
288
|
[json_schema_1.ObjectTypes.EquationElement]: (data) => {
|
|
@@ -302,12 +301,10 @@ class Decoder {
|
|
|
302
301
|
else {
|
|
303
302
|
throw new errors_1.MissingElement(model.containedObjectID);
|
|
304
303
|
}
|
|
305
|
-
const figcaption = this.getFigcaption(model);
|
|
306
304
|
return schema_1.schema.nodes.equation_element.createChecked({
|
|
307
305
|
id: model._id,
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
}, [equation, figcaption]);
|
|
306
|
+
label: model.label,
|
|
307
|
+
}, [equation]);
|
|
311
308
|
},
|
|
312
309
|
[json_schema_1.ObjectTypes.FootnotesElement]: (data) => {
|
|
313
310
|
const foonotesElementModel = data;
|
|
@@ -628,6 +625,8 @@ class Decoder {
|
|
|
628
625
|
addressLine3: model.addressLine3,
|
|
629
626
|
postCode: model.postCode,
|
|
630
627
|
country: model.country,
|
|
628
|
+
county: model.county,
|
|
629
|
+
city: model.city,
|
|
631
630
|
email: model.email,
|
|
632
631
|
department: model.department,
|
|
633
632
|
priority: model.priority,
|
|
@@ -639,6 +638,8 @@ class Decoder {
|
|
|
639
638
|
id: model._id,
|
|
640
639
|
role: model.role,
|
|
641
640
|
affiliations: model.affiliations,
|
|
641
|
+
email: model.email,
|
|
642
|
+
isJointContributor: model.isJointContributor,
|
|
642
643
|
bibliographicName: model.bibliographicName,
|
|
643
644
|
userID: model.userID,
|
|
644
645
|
invitationID: model.invitationID,
|
|
@@ -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),
|
|
@@ -508,8 +488,11 @@ const encoders = {
|
|
|
508
488
|
addressLine1: node.attrs.addressLine1,
|
|
509
489
|
addressLine2: node.attrs.addressLine2,
|
|
510
490
|
addressLine3: node.attrs.addressLine3,
|
|
491
|
+
department: node.attrs.department,
|
|
511
492
|
postCode: node.attrs.postCode,
|
|
512
493
|
country: node.attrs.country,
|
|
494
|
+
county: node.attrs.county,
|
|
495
|
+
city: node.attrs.city,
|
|
513
496
|
email: node.attrs.email,
|
|
514
497
|
priority: node.attrs.priority,
|
|
515
498
|
}),
|
|
@@ -520,6 +503,7 @@ const encoders = {
|
|
|
520
503
|
userID: node.attrs.userID,
|
|
521
504
|
invitationID: node.attrs.invitationID,
|
|
522
505
|
isCorresponding: node.attrs.isCorresponding,
|
|
506
|
+
isJointContributor: node.attrs.isJointContributor,
|
|
523
507
|
ORCIDIdentifier: node.attrs.ORCIDIdentifier,
|
|
524
508
|
footnote: node.attrs.footnote,
|
|
525
509
|
corresp: node.attrs.corresp,
|
|
@@ -588,8 +572,7 @@ const encode = (node) => {
|
|
|
588
572
|
if (placeholderTypes.includes(child.type)) {
|
|
589
573
|
return;
|
|
590
574
|
}
|
|
591
|
-
if (parent.type === schema_1.schema.nodes.paragraph
|
|
592
|
-
child.type !== schema_1.schema.nodes.inline_equation) {
|
|
575
|
+
if (parent.type === schema_1.schema.nodes.paragraph) {
|
|
593
576
|
return;
|
|
594
577
|
}
|
|
595
578
|
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) => {
|