jats-cli 1.0.16 → 1.0.18
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/jats.cjs +62 -49
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +7 -7
package/dist/jats.cjs
CHANGED
|
@@ -48999,7 +48999,7 @@ var {
|
|
|
48999
48999
|
} = import_index.default;
|
|
49000
49000
|
|
|
49001
49001
|
// src/version.ts
|
|
49002
|
-
var version = "1.0.
|
|
49002
|
+
var version = "1.0.18";
|
|
49003
49003
|
var version_default = version;
|
|
49004
49004
|
|
|
49005
49005
|
// src/parse.ts
|
|
@@ -49645,7 +49645,7 @@ function writeFileToFolder(filename, data, opts) {
|
|
|
49645
49645
|
}
|
|
49646
49646
|
|
|
49647
49647
|
// ../../node_modules/doi-utils/dist/validatePart.js
|
|
49648
|
-
var DOI_VALIDATION_PATTERN = /^10
|
|
49648
|
+
var DOI_VALIDATION_PATTERN = /^10\.\d{4,9}\/[-._;()/:A-Z0-9]+$/i;
|
|
49649
49649
|
function validatePart(possibleDOI) {
|
|
49650
49650
|
if (!possibleDOI)
|
|
49651
49651
|
return false;
|
|
@@ -49663,10 +49663,10 @@ var doiOrg = {
|
|
|
49663
49663
|
};
|
|
49664
49664
|
var elife = {
|
|
49665
49665
|
test(url) {
|
|
49666
|
-
return url.hostname.endsWith("elifesciences.org") && url.pathname
|
|
49666
|
+
return url.hostname.endsWith("elifesciences.org") && /^\/(?:articles|reviewed-preprints)\/\d+$/.test(url.pathname);
|
|
49667
49667
|
},
|
|
49668
49668
|
parse(url) {
|
|
49669
|
-
return `10.7554/eLife.${url.pathname.replace(
|
|
49669
|
+
return `10.7554/eLife.${url.pathname.replace(/^\/(?:articles|reviewed-preprints)\//, "")}`;
|
|
49670
49670
|
}
|
|
49671
49671
|
};
|
|
49672
49672
|
var zenodo = {
|
|
@@ -49683,7 +49683,7 @@ var biorxiv = {
|
|
|
49683
49683
|
},
|
|
49684
49684
|
parse(url) {
|
|
49685
49685
|
var _a;
|
|
49686
|
-
return (_a = clumpParts(url).find(validatePart)) === null || _a === void 0 ? void 0 : _a.replace(/v([
|
|
49686
|
+
return (_a = clumpParts(url).find(validatePart)) === null || _a === void 0 ? void 0 : _a.replace(/v\d+(\.[a-zA-Z-]+)?$/, "");
|
|
49687
49687
|
}
|
|
49688
49688
|
};
|
|
49689
49689
|
function clumpParts(url) {
|
|
@@ -58125,7 +58125,7 @@ async function customResolveJatsUrlFromDoi(session, doiString, opts) {
|
|
|
58125
58125
|
}
|
|
58126
58126
|
|
|
58127
58127
|
// ../jats-fetch/dist/download.js
|
|
58128
|
-
async function
|
|
58128
|
+
async function downloadFromUrlOrThrow(session, jatsUrl, opts) {
|
|
58129
58129
|
var _a, _b;
|
|
58130
58130
|
const toc = tic();
|
|
58131
58131
|
session.log.debug(`Fetching JATS from ${jatsUrl}`);
|
|
@@ -58145,6 +58145,16 @@ async function downloadFromUrl(session, jatsUrl, opts) {
|
|
|
58145
58145
|
session.log.debug(toc(`Fetched document with content-type "${contentType}" in %s`));
|
|
58146
58146
|
return data;
|
|
58147
58147
|
}
|
|
58148
|
+
async function downloadFromUrl(session, jatsUrl, opts) {
|
|
58149
|
+
try {
|
|
58150
|
+
const data = await downloadFromUrlOrThrow(session, jatsUrl, opts);
|
|
58151
|
+
if (data)
|
|
58152
|
+
return { success: true, source: jatsUrl, data };
|
|
58153
|
+
} catch (error) {
|
|
58154
|
+
session.log.debug(error.message);
|
|
58155
|
+
}
|
|
58156
|
+
return { success: false, source: jatsUrl };
|
|
58157
|
+
}
|
|
58148
58158
|
async function getJatsUrlFromDoi(session, urlOrDoi, opts) {
|
|
58149
58159
|
var _a, _b, _c, _d, _e;
|
|
58150
58160
|
if (!doi.validate(urlOrDoi))
|
|
@@ -58172,48 +58182,50 @@ async function getJatsUrlFromDoi(session, urlOrDoi, opts) {
|
|
|
58172
58182
|
session.log.debug(`Could not find XML in DOI record ${doiUrl}`);
|
|
58173
58183
|
return void 0;
|
|
58174
58184
|
}
|
|
58175
|
-
async function downloadJatsFromUrl(session,
|
|
58176
|
-
|
|
58177
|
-
|
|
58178
|
-
|
|
58179
|
-
|
|
58180
|
-
|
|
58181
|
-
const expectedUrls = (await Promise.all([
|
|
58182
|
-
constructJatsUrlFromPubMedCentral(session, urlOrDoi, opts),
|
|
58183
|
-
getJatsUrlFromDoi(session, urlOrDoi, opts)
|
|
58184
|
-
])).filter((u2) => !!u2);
|
|
58185
|
-
if (expectedUrls.length > 0) {
|
|
58186
|
-
session.log.debug(["Trying URLs:\n", ...expectedUrls.map((url) => ` ${url}
|
|
58187
|
-
`)].join(" - "));
|
|
58188
|
-
for (let index2 = 0; index2 < expectedUrls.length; index2++) {
|
|
58189
|
-
const url = expectedUrls[index2];
|
|
58190
|
-
try {
|
|
58191
|
-
const data = await downloadFromUrl(session, url, opts);
|
|
58192
|
-
if (data)
|
|
58193
|
-
return { success: true, source: url, data };
|
|
58194
|
-
} catch (error) {
|
|
58195
|
-
session.log.debug(error.message);
|
|
58196
|
-
}
|
|
58197
|
-
}
|
|
58198
|
-
return { success: false, source: expectedUrls[0] };
|
|
58185
|
+
async function downloadJatsFromUrl(session, urlOrId, opts = {}) {
|
|
58186
|
+
let result = { success: false, source: urlOrId };
|
|
58187
|
+
if (import_node_fs5.default.existsSync(urlOrId)) {
|
|
58188
|
+
session.log.debug(`JATS returned from local file ${urlOrId}`);
|
|
58189
|
+
const data = import_node_fs5.default.readFileSync(urlOrId).toString();
|
|
58190
|
+
return { success: true, source: urlOrId, data };
|
|
58199
58191
|
}
|
|
58200
|
-
|
|
58201
|
-
|
|
58202
|
-
|
|
58203
|
-
|
|
58204
|
-
|
|
58192
|
+
if (doi.validate(urlOrId)) {
|
|
58193
|
+
let url;
|
|
58194
|
+
try {
|
|
58195
|
+
url = await customResolveJatsUrlFromDoi(session, urlOrId, opts);
|
|
58196
|
+
} catch (error) {
|
|
58197
|
+
session.log.debug(error.message);
|
|
58205
58198
|
}
|
|
58206
|
-
if (
|
|
58207
|
-
|
|
58208
|
-
|
|
58209
|
-
|
|
58199
|
+
if (url) {
|
|
58200
|
+
result = await downloadFromUrl(session, url, opts);
|
|
58201
|
+
if (result.success && result.data)
|
|
58202
|
+
return result;
|
|
58203
|
+
}
|
|
58204
|
+
url = await getJatsUrlFromDoi(session, urlOrId, opts);
|
|
58205
|
+
if (url) {
|
|
58206
|
+
result = await downloadFromUrl(session, url, opts);
|
|
58207
|
+
if (result.success && result.data)
|
|
58208
|
+
return result;
|
|
58210
58209
|
}
|
|
58211
|
-
} catch (error) {
|
|
58212
|
-
session.log.debug(error.message);
|
|
58213
|
-
return { success: false, source: urlOrDoi };
|
|
58214
58210
|
}
|
|
58215
|
-
|
|
58216
|
-
|
|
58211
|
+
if (urlOrId.startsWith("PMC")) {
|
|
58212
|
+
result = await getPubMedJatsFromS3(session, urlOrId);
|
|
58213
|
+
if (result.success && result.data)
|
|
58214
|
+
return result;
|
|
58215
|
+
}
|
|
58216
|
+
if (urlOrId.startsWith("PMC") || doi.validate(urlOrId)) {
|
|
58217
|
+
const url = await constructJatsUrlFromPubMedCentral(session, urlOrId, opts);
|
|
58218
|
+
if (url) {
|
|
58219
|
+
result = await downloadFromUrl(session, url, opts);
|
|
58220
|
+
}
|
|
58221
|
+
return result;
|
|
58222
|
+
}
|
|
58223
|
+
if (isUrl(urlOrId)) {
|
|
58224
|
+
result = await downloadFromUrl(session, urlOrId, opts);
|
|
58225
|
+
return result;
|
|
58226
|
+
}
|
|
58227
|
+
session.log.debug(`Could not find ${urlOrId} locally or resolve it to a valid JATS url`);
|
|
58228
|
+
return result;
|
|
58217
58229
|
}
|
|
58218
58230
|
async function jatsFetch(session, input, opts) {
|
|
58219
58231
|
var _a;
|
|
@@ -58228,6 +58240,7 @@ async function jatsFetch(session, input, opts) {
|
|
|
58228
58240
|
}
|
|
58229
58241
|
let output = opts.output;
|
|
58230
58242
|
let filename;
|
|
58243
|
+
let altInput;
|
|
58231
58244
|
if (input.endsWith(".tar.gz")) {
|
|
58232
58245
|
opts.data = true;
|
|
58233
58246
|
const foldername = input.split("/").slice(-1)[0].slice(0, -".tar.gz".length);
|
|
@@ -58247,7 +58260,7 @@ async function jatsFetch(session, input, opts) {
|
|
|
58247
58260
|
const pmcid = await convertDOI2PMCID(session, input);
|
|
58248
58261
|
if (pmcid) {
|
|
58249
58262
|
session.log.debug(`Resolved input ${input} to PMC ID: ${pmcid}`);
|
|
58250
|
-
|
|
58263
|
+
altInput = pmcid;
|
|
58251
58264
|
}
|
|
58252
58265
|
}
|
|
58253
58266
|
if (!output)
|
|
@@ -58263,12 +58276,12 @@ async function jatsFetch(session, input, opts) {
|
|
|
58263
58276
|
if (opts.data) {
|
|
58264
58277
|
result = await getPubMedJatsFromData(session, input, import_node_path4.default.dirname(output), opts.listing);
|
|
58265
58278
|
}
|
|
58266
|
-
if (!(result === null || result === void 0 ? void 0 : result.data) && input.startsWith("PMC")) {
|
|
58267
|
-
result = await getPubMedJatsFromS3(session, input);
|
|
58268
|
-
}
|
|
58269
58279
|
if (!(result === null || result === void 0 ? void 0 : result.data)) {
|
|
58270
58280
|
result = await downloadJatsFromUrl(session, input);
|
|
58271
58281
|
}
|
|
58282
|
+
if (!(result === null || result === void 0 ? void 0 : result.data) && altInput) {
|
|
58283
|
+
result = await downloadJatsFromUrl(session, altInput);
|
|
58284
|
+
}
|
|
58272
58285
|
if (!(result === null || result === void 0 ? void 0 : result.data) && input.startsWith("PMC")) {
|
|
58273
58286
|
result = await getPubMedJatsFromData(session, input, import_node_path4.default.dirname(output), opts.listing);
|
|
58274
58287
|
}
|
|
@@ -65610,7 +65623,7 @@ function journalTransforms(fullTree, body) {
|
|
|
65610
65623
|
}
|
|
65611
65624
|
|
|
65612
65625
|
// ../jats-convert/dist/version.js
|
|
65613
|
-
var version3 = "1.0.
|
|
65626
|
+
var version3 = "1.0.18";
|
|
65614
65627
|
var version_default3 = version3;
|
|
65615
65628
|
|
|
65616
65629
|
// ../jats-convert/dist/myst/inlineCitations.js
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const version = '1.0.
|
|
1
|
+
const version = '1.0.18';
|
|
2
2
|
export default version;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jats-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.18",
|
|
4
4
|
"description": "Typescript CLI for with JATS",
|
|
5
5
|
"author": "Rowan Cockett <rowan@continuous.foundation>",
|
|
6
6
|
"homepage": "https://github.com/continuous-foundation/jats",
|
|
@@ -43,13 +43,13 @@
|
|
|
43
43
|
"url": "https://github.com/continuous-foundation/jats/issues"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"doi-utils": "^2.0.
|
|
46
|
+
"doi-utils": "^2.0.6",
|
|
47
47
|
"fair-principles": "^2.0.0",
|
|
48
|
-
"jats-convert": "^1.0.
|
|
49
|
-
"jats-fetch": "^1.0.
|
|
50
|
-
"jats-tags": "^1.0.
|
|
51
|
-
"jats-utils": "^1.0.
|
|
52
|
-
"jats-xml": "^1.0.
|
|
48
|
+
"jats-convert": "^1.0.18",
|
|
49
|
+
"jats-fetch": "^1.0.18",
|
|
50
|
+
"jats-tags": "^1.0.18",
|
|
51
|
+
"jats-utils": "^1.0.18",
|
|
52
|
+
"jats-xml": "^1.0.18",
|
|
53
53
|
"js-yaml": "^4.1.0",
|
|
54
54
|
"unist-util-is": "^5.2.1",
|
|
55
55
|
"unist-util-select": "^4.0.0"
|