mystmd 1.1.24__tar.gz → 1.1.26__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mystmd
3
- Version: 1.1.24
3
+ Version: 1.1.26
4
4
  Summary: Command line tools for MyST Markdown
5
5
  Home-page: https://github.com/executablebooks/mystmd
6
6
  Author: Franklin Koch
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mystmd
3
- Version: 1.1.24
3
+ Version: 1.1.26
4
4
  Summary: Command line tools for MyST Markdown
5
5
  Home-page: https://github.com/executablebooks/mystmd
6
6
  Author: Franklin Koch
@@ -18136,7 +18136,7 @@ var require_set_difference = __commonJS({
18136
18136
  var iterateSet = require_set_iterate();
18137
18137
  var iterateSimple = require_iterate_simple();
18138
18138
  var has2 = SetHelpers.has;
18139
- var remove2 = SetHelpers.remove;
18139
+ var remove3 = SetHelpers.remove;
18140
18140
  module2.exports = function difference(other) {
18141
18141
  var O = aSet(this);
18142
18142
  var otherRec = getSetRecord(other);
@@ -18144,12 +18144,12 @@ var require_set_difference = __commonJS({
18144
18144
  if (size(O) <= otherRec.size)
18145
18145
  iterateSet(O, function(e2) {
18146
18146
  if (otherRec.includes(e2))
18147
- remove2(result, e2);
18147
+ remove3(result, e2);
18148
18148
  });
18149
18149
  else
18150
18150
  iterateSimple(otherRec.getIterator(), function(e2) {
18151
18151
  if (has2(O, e2))
18152
- remove2(result, e2);
18152
+ remove3(result, e2);
18153
18153
  });
18154
18154
  return result;
18155
18155
  };
@@ -18401,14 +18401,14 @@ var require_set_symmetric_difference = __commonJS({
18401
18401
  var iterateSimple = require_iterate_simple();
18402
18402
  var add2 = SetHelpers.add;
18403
18403
  var has2 = SetHelpers.has;
18404
- var remove2 = SetHelpers.remove;
18404
+ var remove3 = SetHelpers.remove;
18405
18405
  module2.exports = function symmetricDifference(other) {
18406
18406
  var O = aSet(this);
18407
18407
  var keysIter = getSetRecord(other).getIterator();
18408
18408
  var result = clone3(O);
18409
18409
  iterateSimple(keysIter, function(e2) {
18410
18410
  if (has2(O, e2))
18411
- remove2(result, e2);
18411
+ remove3(result, e2);
18412
18412
  else
18413
18413
  add2(result, e2);
18414
18414
  });
@@ -59036,7 +59036,7 @@ var require_register2 = __commonJS({
59036
59036
  exports.get = get;
59037
59037
  exports.has = has2;
59038
59038
  exports.list = list6;
59039
- exports.remove = remove2;
59039
+ exports.remove = remove3;
59040
59040
  var _parser = require_parser2();
59041
59041
  var _type3 = require_type();
59042
59042
  var _data = require_data();
@@ -59064,7 +59064,7 @@ var require_register2 = __commonJS({
59064
59064
  function get(format) {
59065
59065
  return formats[format];
59066
59066
  }
59067
- function remove2(format) {
59067
+ function remove3(format) {
59068
59068
  const index4 = formats[format];
59069
59069
  if (!index4) {
59070
59070
  return;
@@ -59444,7 +59444,7 @@ var require_output2 = __commonJS({
59444
59444
  exports.has = has2;
59445
59445
  exports.list = list6;
59446
59446
  exports.register = void 0;
59447
- exports.remove = remove2;
59447
+ exports.remove = remove3;
59448
59448
  var _register = _interopRequireDefault(require_register());
59449
59449
  function _interopRequireDefault(obj) {
59450
59450
  return obj && obj.__esModule ? obj : { default: obj };
@@ -59462,7 +59462,7 @@ var require_output2 = __commonJS({
59462
59462
  validate4(name2, formatter);
59463
59463
  register.set(name2, formatter);
59464
59464
  }
59465
- function remove2(name2) {
59465
+ function remove3(name2) {
59466
59466
  register.remove(name2);
59467
59467
  }
59468
59468
  function has2(name2) {
@@ -59641,7 +59641,7 @@ var require_dict = __commonJS({
59641
59641
  exports.htmlDict = void 0;
59642
59642
  exports.list = list6;
59643
59643
  exports.register = void 0;
59644
- exports.remove = remove2;
59644
+ exports.remove = remove3;
59645
59645
  exports.textDict = void 0;
59646
59646
  var _register = _interopRequireDefault(require_register());
59647
59647
  function _interopRequireDefault(obj) {
@@ -59679,7 +59679,7 @@ var require_dict = __commonJS({
59679
59679
  validate4(name2, dict);
59680
59680
  register.set(name2, dict);
59681
59681
  }
59682
- function remove2(name2) {
59682
+ function remove3(name2) {
59683
59683
  register.remove(name2);
59684
59684
  }
59685
59685
  function has2(name2) {
@@ -59730,7 +59730,7 @@ var require_config = __commonJS({
59730
59730
  exports.get = get;
59731
59731
  exports.has = has2;
59732
59732
  exports.list = list6;
59733
- exports.remove = remove2;
59733
+ exports.remove = remove3;
59734
59734
  var configs = {};
59735
59735
  function add2(ref, config2) {
59736
59736
  configs[ref] = config2;
@@ -59741,7 +59741,7 @@ var require_config = __commonJS({
59741
59741
  function has2(ref) {
59742
59742
  return Object.prototype.hasOwnProperty.call(configs, ref);
59743
59743
  }
59744
- function remove2(ref) {
59744
+ function remove3(ref) {
59745
59745
  delete configs[ref];
59746
59746
  }
59747
59747
  function list6() {
@@ -59763,7 +59763,7 @@ var require_plugins = __commonJS({
59763
59763
  exports.input = void 0;
59764
59764
  exports.list = list6;
59765
59765
  exports.output = void 0;
59766
- exports.remove = remove2;
59766
+ exports.remove = remove3;
59767
59767
  var input3 = _interopRequireWildcard(require_input2());
59768
59768
  exports.input = input3;
59769
59769
  var output2 = _interopRequireWildcard(require_output2());
@@ -59836,7 +59836,7 @@ var require_plugins = __commonJS({
59836
59836
  }
59837
59837
  }
59838
59838
  }
59839
- function remove2(ref) {
59839
+ function remove3(ref) {
59840
59840
  const mainIndex = indices[ref];
59841
59841
  for (const type2 in mainIndex) {
59842
59842
  const typeIndex = mainIndex[type2];
@@ -134062,7 +134062,7 @@ var require_jinja_compat = __commonJS({
134062
134062
  append: function append(element5) {
134063
134063
  return this.push(element5);
134064
134064
  },
134065
- remove: function remove2(element5) {
134065
+ remove: function remove3(element5) {
134066
134066
  for (var i2 = 0; i2 < this.length; i2++) {
134067
134067
  if (this[i2] === element5) {
134068
134068
  return this.splice(i2, 1);
@@ -147289,14 +147289,14 @@ var require_remove = __commonJS({
147289
147289
  "use strict";
147290
147290
  var fs43 = require_graceful_fs2();
147291
147291
  var u3 = require_universalify().fromCallback;
147292
- function remove2(path36, callback) {
147292
+ function remove3(path36, callback) {
147293
147293
  fs43.rm(path36, { recursive: true, force: true }, callback);
147294
147294
  }
147295
147295
  function removeSync(path36) {
147296
147296
  fs43.rmSync(path36, { recursive: true, force: true });
147297
147297
  }
147298
147298
  module2.exports = {
147299
- remove: u3(remove2),
147299
+ remove: u3(remove3),
147300
147300
  removeSync
147301
147301
  };
147302
147302
  }
@@ -147310,7 +147310,7 @@ var require_empty2 = __commonJS({
147310
147310
  var fs43 = require_fs();
147311
147311
  var path36 = require("path");
147312
147312
  var mkdir = require_mkdirs();
147313
- var remove2 = require_remove();
147313
+ var remove3 = require_remove();
147314
147314
  var emptyDir = u3(async function emptyDir2(dir) {
147315
147315
  let items;
147316
147316
  try {
@@ -147318,7 +147318,7 @@ var require_empty2 = __commonJS({
147318
147318
  } catch {
147319
147319
  return mkdir.mkdirs(dir);
147320
147320
  }
147321
- return Promise.all(items.map((item) => remove2.remove(path36.join(dir, item))));
147321
+ return Promise.all(items.map((item) => remove3.remove(path36.join(dir, item))));
147322
147322
  });
147323
147323
  function emptyDirSync(dir) {
147324
147324
  let items;
@@ -147329,7 +147329,7 @@ var require_empty2 = __commonJS({
147329
147329
  }
147330
147330
  items.forEach((item) => {
147331
147331
  item = path36.join(dir, item);
147332
- remove2.removeSync(item);
147332
+ remove3.removeSync(item);
147333
147333
  });
147334
147334
  }
147335
147335
  module2.exports = {
@@ -147911,7 +147911,7 @@ var require_move = __commonJS({
147911
147911
  var fs43 = require_graceful_fs2();
147912
147912
  var path36 = require("path");
147913
147913
  var copy = require_copy2().copy;
147914
- var remove2 = require_remove().remove;
147914
+ var remove3 = require_remove().remove;
147915
147915
  var mkdirp = require_mkdirs().mkdirp;
147916
147916
  var pathExists = require_path_exists().pathExists;
147917
147917
  var stat2 = require_stat();
@@ -147948,7 +147948,7 @@ var require_move = __commonJS({
147948
147948
  if (isChangingCase)
147949
147949
  return rename(src, dest, overwrite, cb);
147950
147950
  if (overwrite) {
147951
- return remove2(dest, (err) => {
147951
+ return remove3(dest, (err) => {
147952
147952
  if (err)
147953
147953
  return cb(err);
147954
147954
  return rename(src, dest, overwrite, cb);
@@ -147980,7 +147980,7 @@ var require_move = __commonJS({
147980
147980
  copy(src, dest, opts, (err) => {
147981
147981
  if (err)
147982
147982
  return cb(err);
147983
- return remove2(src, cb);
147983
+ return remove3(src, cb);
147984
147984
  });
147985
147985
  }
147986
147986
  module2.exports = move;
@@ -155799,7 +155799,7 @@ var require_fromEvent = __commonJS({
155799
155799
  return function(handler) {
155800
155800
  return target[methodName](eventName, handler, options);
155801
155801
  };
155802
- }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add2 = _a6[0], remove2 = _a6[1];
155802
+ }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add2 = _a6[0], remove3 = _a6[1];
155803
155803
  if (!add2) {
155804
155804
  if (isArrayLike_1.isArrayLike(target)) {
155805
155805
  return mergeMap_1.mergeMap(function(subTarget) {
@@ -155820,7 +155820,7 @@ var require_fromEvent = __commonJS({
155820
155820
  };
155821
155821
  add2(handler);
155822
155822
  return function() {
155823
- return remove2(handler);
155823
+ return remove3(handler);
155824
155824
  };
155825
155825
  });
155826
155826
  }
@@ -161767,14 +161767,14 @@ var require_signal_exit = __commonJS({
161767
161767
  if (opts && opts.alwaysLast) {
161768
161768
  ev = "afterexit";
161769
161769
  }
161770
- var remove2 = function() {
161770
+ var remove3 = function() {
161771
161771
  emitter.removeListener(ev, cb);
161772
161772
  if (emitter.listeners("exit").length === 0 && emitter.listeners("afterexit").length === 0) {
161773
161773
  unload();
161774
161774
  }
161775
161775
  };
161776
161776
  emitter.on(ev, cb);
161777
- return remove2;
161777
+ return remove3;
161778
161778
  };
161779
161779
  unload = function unload2() {
161780
161780
  if (!loaded || !processOk(global.process)) {
@@ -199098,7 +199098,7 @@ var {
199098
199098
  } = import_index.default;
199099
199099
 
199100
199100
  // src/version.ts
199101
- var version = "1.1.24";
199101
+ var version = "1.1.26";
199102
199102
  var version_default = version;
199103
199103
 
199104
199104
  // ../myst-cli/dist/build/build.js
@@ -205426,7 +205426,7 @@ function addWarningForFile(session, file, message, kind = "warn", opts) {
205426
205426
  var import_check_node_version = __toESM(require_check_node_version(), 1);
205427
205427
 
205428
205428
  // ../myst-cli/dist/version.js
205429
- var version2 = "1.1.24";
205429
+ var version2 = "1.1.26";
205430
205430
  var version_default2 = version2;
205431
205431
 
205432
205432
  // ../myst-cli/dist/docs.js
@@ -242386,6 +242386,15 @@ var resolveReferencesTransform = (tree, file, opts) => {
242386
242386
  unnestCrossReferencesTransform(tree);
242387
242387
  };
242388
242388
 
242389
+ // ../myst-transforms/dist/removeUnicode.js
242390
+ var remove2 = ["\x07", "\b", ""];
242391
+ function removeUnicodeTransform(tree) {
242392
+ const textNodes = selectAll("text", tree);
242393
+ textNodes.forEach((text7) => {
242394
+ text7.value = remove2.reduce((p5, r2) => p5.replaceAll(r2, ""), text7.value);
242395
+ });
242396
+ }
242397
+
242389
242398
  // ../myst-transforms/dist/basic.js
242390
242399
  function basicTransformations(tree, file) {
242391
242400
  liftMystDirectivesAndRolesTransform(tree);
@@ -242403,6 +242412,7 @@ function basicTransformations(tree, file) {
242403
242412
  htmlIdsTransform(tree);
242404
242413
  imageAltTextTransform(tree);
242405
242414
  blockquoteTransform(tree);
242415
+ removeUnicodeTransform(tree);
242406
242416
  }
242407
242417
  var basicTransformationsPlugin = () => (tree, file) => {
242408
242418
  basicTransformations(tree, file);
@@ -288736,7 +288746,7 @@ ${content3}</pre></aside>
288736
288746
  var citationsPlugin = (md) => {
288737
288747
  const regexes = {
288738
288748
  citation: /^([^^-]|[^^].+?)?(-)?@([\w][\w:.#$%&\-+?<>~/]*)(.+)?$/,
288739
- inText: /^@([\w][\w:.#$%&\-+?<>~/]*)(\s*)(\[)?/,
288749
+ inText: /^@((?:[\w|{][\w:.#$%&\-+?<>~/]*[\w|}])|\w)(\s*)(\[)?/,
288740
288750
  allowedBefore: /^[^a-zA-Z.0-9]$/
288741
288751
  };
288742
288752
  md.inline.ruler.after("emphasis", "citation", (state, silent) => {
@@ -288745,7 +288755,7 @@ var citationsPlugin = (md) => {
288745
288755
  const match3 = state.src.slice(state.pos).match(regexes.inText);
288746
288756
  if (match3) {
288747
288757
  const citation = {
288748
- label: match3[1],
288758
+ label: trimBraces(match3[1]),
288749
288759
  kind: "narrative"
288750
288760
  };
288751
288761
  let token;
@@ -288762,8 +288772,10 @@ var citationsPlugin = (md) => {
288762
288772
  const suffix = state.src.slice(suffixStart, suffixEnd);
288763
288773
  citation.suffix = state.md.parseInline(suffix, state.env);
288764
288774
  state.pos += match3[0].length + suffixEnd - suffixStart + 1;
288765
- if (token)
288775
+ if (token) {
288766
288776
  token.content = match3[0] + suffix + "]";
288777
+ token.col.push(state.pos);
288778
+ }
288767
288779
  } else {
288768
288780
  state.pos += match3[0].length - match3[2].length - match3[3].length;
288769
288781
  if (token) {
@@ -288794,7 +288806,7 @@ var citationsPlugin = (md) => {
288794
288806
  const suffix = x2[4] ? x2[4].trim().replace(/^,[\s]*/, "") : void 0;
288795
288807
  const colEnd = curCol + x2[0].length;
288796
288808
  const meta2 = {
288797
- label: x2[3],
288809
+ label: trimBraces(x2[3]),
288798
288810
  kind: "parenthetical",
288799
288811
  prefix: ((_a6 = x2[1]) === null || _a6 === void 0 ? void 0 : _a6.trim()) ? state.md.parseInline((_b = x2[1]) === null || _b === void 0 ? void 0 : _b.trim(), state.env) : void 0,
288800
288812
  suffix: suffix ? state.md.parseInline(suffix, state.env) : void 0,
@@ -288827,6 +288839,9 @@ var citationsPlugin = (md) => {
288827
288839
  return false;
288828
288840
  });
288829
288841
  };
288842
+ function trimBraces(label) {
288843
+ return label.replace(/^\{(.*)\}$/, "$1");
288844
+ }
288830
288845
 
288831
288846
  // ../markdown-it-myst/dist/index.js
288832
288847
  function mystPlugin(md) {
@@ -290464,9 +290479,11 @@ var citeRole = {
290464
290479
  const content3 = data.body;
290465
290480
  const labels = content3.split(/[,;]/).map((s5) => s5.trim());
290466
290481
  const kind = data.name.startsWith("cite:p") || data.name.includes("par") ? "parenthetical" : "narrative";
290467
- const children = labels.map((l) => {
290468
- var _a6;
290469
- const { label, identifier } = (_a6 = normalizeLabel(l)) !== null && _a6 !== void 0 ? _a6 : {};
290482
+ const children = labels.map((c) => {
290483
+ var _a6, _b;
290484
+ const groups = /^(?:\{([^{]*)\})?([^{]*)(?:\{([^{]*)\})?$/;
290485
+ const [, prefix2, l, suffix] = (_a6 = c.match(groups)) !== null && _a6 !== void 0 ? _a6 : ["", "", c];
290486
+ const { label, identifier } = (_b = normalizeLabel(l)) !== null && _b !== void 0 ? _b : {};
290470
290487
  const cite3 = {
290471
290488
  type: "cite",
290472
290489
  kind,
@@ -290479,6 +290496,10 @@ var citeRole = {
290479
290496
  if (data.name.startsWith("cite:author") || data.name.startsWith("cite:cauthor")) {
290480
290497
  cite3.partial = "author";
290481
290498
  }
290499
+ if (prefix2)
290500
+ cite3.prefix = prefix2.trim();
290501
+ if (suffix)
290502
+ cite3.suffix = suffix.trim();
290482
290503
  return cite3;
290483
290504
  });
290484
290505
  if (data.name === "cite" && children.length === 1) {
@@ -292526,10 +292547,10 @@ async function saveImageInStaticFolder(session, urlSource, sourceFile, writeFold
292526
292547
  const url = resolveOutputPath(file, writeFolder, opts === null || opts === void 0 ? void 0 : opts.altOutputFolder);
292527
292548
  return { urlSource, url };
292528
292549
  }
292529
- async function transformImages(session, mdast2, file, writeFolder, opts) {
292550
+ function transformImagesToEmbed(mdast2) {
292530
292551
  const images = selectAll("image", mdast2);
292531
- return Promise.all(images.map(async (image6) => {
292532
- var _a6, _b;
292552
+ images.forEach((image6) => {
292553
+ var _a6;
292533
292554
  if (image6.url.startsWith("#")) {
292534
292555
  image6.type = "embed";
292535
292556
  image6.source = { label: image6.url.substring(1) };
@@ -292537,12 +292558,18 @@ async function transformImages(session, mdast2, file, writeFolder, opts) {
292537
292558
  delete image6.url;
292538
292559
  return;
292539
292560
  }
292561
+ });
292562
+ }
292563
+ function transformImagesWithoutExt(session, mdast2, file, opts) {
292564
+ const images = selectAll("image", mdast2);
292565
+ images.forEach((image6) => {
292566
+ var _a6;
292540
292567
  const wildcardRegex = /\.\*$/;
292541
292568
  const imagePath = import_node_path18.default.join(import_node_path18.default.dirname(file), image6.url).replace(wildcardRegex, "");
292542
292569
  if (!import_node_fs13.default.existsSync(imagePath)) {
292543
292570
  const sortedExtensions = [
292544
292571
  // Valid extensions
292545
- ...(_b = opts === null || opts === void 0 ? void 0 : opts.imageExtensions) !== null && _b !== void 0 ? _b : [],
292572
+ ...(_a6 = opts === null || opts === void 0 ? void 0 : opts.imageExtensions) !== null && _a6 !== void 0 ? _a6 : [],
292546
292573
  // Convertable extensions
292547
292574
  ...Object.keys(conversionFnLookup),
292548
292575
  // All known extensions
@@ -292556,6 +292583,11 @@ async function transformImages(session, mdast2, file, writeFolder, opts) {
292556
292583
  image6.urlSource = image6.url;
292557
292584
  }
292558
292585
  }
292586
+ });
292587
+ }
292588
+ async function transformImagesToDisk(session, mdast2, file, writeFolder, opts) {
292589
+ const images = selectAll("image", mdast2);
292590
+ await Promise.all(images.map(async (image6) => {
292559
292591
  const result = await saveImageInStaticFolder(session, image6.urlSource || image6.url, file, writeFolder, {
292560
292592
  altOutputFolder: opts === null || opts === void 0 ? void 0 : opts.altOutputFolder,
292561
292593
  position: image6.position
@@ -292769,9 +292801,10 @@ async function transformBanner(session, file, frontmatter, writeFolder, opts) {
292769
292801
  return { url };
292770
292802
  }
292771
292803
  async function transformWebp(session, opts) {
292804
+ var _a6;
292772
292805
  const { file, imageWriteFolder } = opts;
292773
292806
  const cache = castSession(session);
292774
- const postData = cache.$getMdast(opts.file).post;
292807
+ const postData = (_a6 = cache.$getMdast(opts.file)) === null || _a6 === void 0 ? void 0 : _a6.post;
292775
292808
  if (!postData)
292776
292809
  throw new Error(`Expected mdast to be processed and transformed for ${file}`);
292777
292810
  if (!import_node_fs13.default.existsSync(imageWriteFolder))
@@ -292798,18 +292831,18 @@ ${error === null || error === void 0 ? void 0 : error.stack}
292798
292831
  }
292799
292832
  }));
292800
292833
  await Promise.all(["thumbnail", "banner"].map(async (attr) => {
292801
- var _a6;
292834
+ var _a7;
292802
292835
  const attrOptimized = `${attr}Optimized`;
292803
292836
  if (frontmatter[attr]) {
292804
292837
  const fileMatch = writeFolderContents.find((item) => {
292805
- var _a7;
292806
- return (_a7 = frontmatter[attr]) === null || _a7 === void 0 ? void 0 : _a7.endsWith(item);
292838
+ var _a8;
292839
+ return (_a8 = frontmatter[attr]) === null || _a8 === void 0 ? void 0 : _a8.endsWith(item);
292807
292840
  });
292808
292841
  if (fileMatch) {
292809
292842
  try {
292810
292843
  const result = await imagemagick_exports.convertImageToWebp(session, import_node_path18.default.join(imageWriteFolder, fileMatch));
292811
292844
  if (result) {
292812
- frontmatter[attrOptimized] = (_a6 = frontmatter[attr]) === null || _a6 === void 0 ? void 0 : _a6.replace(fileMatch, result);
292845
+ frontmatter[attrOptimized] = (_a7 = frontmatter[attr]) === null || _a7 === void 0 ? void 0 : _a7.replace(fileMatch, result);
292813
292846
  session.store.dispatch(watch.actions.updateFileInfo({
292814
292847
  path: file,
292815
292848
  [attrOptimized]: frontmatter[attrOptimized]
@@ -292825,7 +292858,9 @@ ${error === null || error === void 0 ? void 0 : error.stack}
292825
292858
  }
292826
292859
  }
292827
292860
  }));
292828
- cache.$getMdast(file).post = { ...postData, mdast: mdast2, frontmatter };
292861
+ const cachedMdast = cache.$getMdast(file);
292862
+ if (cachedMdast)
292863
+ cachedMdast.post = { ...postData, mdast: mdast2, frontmatter };
292829
292864
  }
292830
292865
  function isValidImageNode(node3, validExts) {
292831
292866
  return node3.type === "image" && node3.url && validExts.includes(import_node_path18.default.extname(node3.url));
@@ -293082,6 +293117,7 @@ async function bibFilesInDir(session, dir, load2 = true) {
293082
293117
  return bibFiles.filter((f3) => Boolean(f3));
293083
293118
  }
293084
293119
  function selectFile(session, file) {
293120
+ var _a6;
293085
293121
  const cache = castSession(session);
293086
293122
  if (!cache.$getMdast(file)) {
293087
293123
  addWarningForFile(session, file, `Expected mdast to be processed`, "error", {
@@ -293089,7 +293125,7 @@ function selectFile(session, file) {
293089
293125
  });
293090
293126
  return void 0;
293091
293127
  }
293092
- const mdastPost = cache.$getMdast(file).post;
293128
+ const mdastPost = (_a6 = cache.$getMdast(file)) === null || _a6 === void 0 ? void 0 : _a6.post;
293093
293129
  if (!mdastPost) {
293094
293130
  addWarningForFile(session, file, `Expected mdast to be processed and transformed`, "error", {
293095
293131
  ruleId: RuleId.selectedFileIsProcessed
@@ -293460,8 +293496,8 @@ function checkMetaTags(vfile2, node3, tags, filter3) {
293460
293496
  });
293461
293497
  for (const target of ["cell", "input", "output"]) {
293462
293498
  const hide = metaTagsCounter.get(`hide-${target}`) > 0;
293463
- const remove2 = metaTagsCounter.get(`remove-${target}`) > 0;
293464
- if (hide && remove2) {
293499
+ const remove3 = metaTagsCounter.get(`remove-${target}`) > 0;
293500
+ if (hide && remove3) {
293465
293501
  fileWarn(vfile2, `'hide-${target}' and 'remove-${target}' both exist`, {
293466
293502
  node: node3,
293467
293503
  ruleId: RuleId.codeMetatagsValid
@@ -293469,7 +293505,7 @@ function checkMetaTags(vfile2, node3, tags, filter3) {
293469
293505
  validMetatags.push(`remove-${target}`);
293470
293506
  } else if (hide) {
293471
293507
  validMetatags.push(`hide-${target}`);
293472
- } else if (remove2) {
293508
+ } else if (remove3) {
293473
293509
  validMetatags.push(`remove-${target}`);
293474
293510
  }
293475
293511
  }
@@ -294124,15 +294160,15 @@ var htmlHandlers = {
294124
294160
  }
294125
294161
  };
294126
294162
  async function transformMdast(session, opts) {
294127
- var _a6, _b;
294128
- const { file, imageWriteFolder, projectPath, pageSlug, projectSlug, useExistingImages, imageAltOutputFolder, imageExtensions, extraTransforms, watchMode = false, minifyMaxCharacters, index: index4, simplifyFigures, processThumbnail } = opts;
294163
+ var _a6, _b, _c, _d2;
294164
+ const { file, projectPath, pageSlug, projectSlug, imageExtensions, extraTransforms, watchMode = false, minifyMaxCharacters, index: index4 } = opts;
294129
294165
  const toc = tic();
294130
294166
  const { store, log } = session;
294131
294167
  const cache = castSession(session);
294132
294168
  if (!cache.$getMdast(file))
294133
294169
  return;
294134
- const { mdast: mdastPre, kind, frontmatter: preFrontmatter, location: location4 } = cache.$getMdast(file).pre;
294135
- if (!mdastPre)
294170
+ const { mdast: mdastPre, kind, frontmatter: preFrontmatter, location: location4 } = (_b = (_a6 = cache.$getMdast(file)) === null || _a6 === void 0 ? void 0 : _a6.pre) !== null && _b !== void 0 ? _b : {};
294171
+ if (!mdastPre || !kind || !location4)
294136
294172
  throw new Error(`Expected mdast to be parsed for ${file}`);
294137
294173
  log.debug(`Processing "${file}"`);
294138
294174
  const vfile2 = new VFile();
@@ -294158,7 +294194,7 @@ async function transformMdast(session, opts) {
294158
294194
  await includeFilesTransform(session, file, mdast2, vfile2);
294159
294195
  liftCodeMetadataToBlock(session, vfile2, mdast2);
294160
294196
  const pipe = unified().use(reconstructHtmlPlugin).use(htmlPlugin, { htmlHandlers }).use(basicTransformationsPlugin).use(inlineExpressionsPlugin).use(mathPlugin, { macros: frontmatter.math }).use(glossaryPlugin, { state }).use(abbreviationPlugin, { abbreviations: frontmatter.abbreviations }).use(enumerateTargetsPlugin, { state }).use(joinGatesPlugin);
294161
- (_a6 = session.plugins) === null || _a6 === void 0 ? void 0 : _a6.transforms.forEach((t2) => {
294197
+ (_c = session.plugins) === null || _c === void 0 ? void 0 : _c.transforms.forEach((t2) => {
294162
294198
  if (t2.stage !== "document")
294163
294199
  return;
294164
294200
  pipe.use(t2.plugin, void 0, pluginUtils);
@@ -294185,37 +294221,9 @@ async function transformMdast(session, opts) {
294185
294221
  const fileCitationRenderer = combineCitationRenderers(cache, ...rendererFiles);
294186
294222
  await transformOutputsToCache(session, mdast2, kind, { minifyMaxCharacters });
294187
294223
  transformCitations(mdast2, fileCitationRenderer, references);
294188
- await unified().use(codePlugin, { lang: (_b = frontmatter === null || frontmatter === void 0 ? void 0 : frontmatter.kernelspec) === null || _b === void 0 ? void 0 : _b.language }).use(footnotesPlugin).run(mdast2, vfile2);
294189
- if (simplifyFigures) {
294190
- reduceOutputs(session, mdast2, file, imageWriteFolder, {
294191
- altOutputFolder: simplifyFigures ? void 0 : imageAltOutputFolder
294192
- });
294193
- }
294194
- transformOutputsToFile(session, mdast2, imageWriteFolder, {
294195
- altOutputFolder: simplifyFigures ? void 0 : imageAltOutputFolder,
294196
- vfile: vfile2
294197
- });
294198
- if (!useExistingImages) {
294199
- await transformImages(session, mdast2, file, imageWriteFolder, {
294200
- altOutputFolder: imageAltOutputFolder,
294201
- imageExtensions
294202
- });
294203
- await transformImageFormats(session, mdast2, file, imageWriteFolder, {
294204
- altOutputFolder: imageAltOutputFolder,
294205
- imageExtensions
294206
- });
294207
- if (processThumbnail) {
294208
- await transformThumbnail(session, mdast2, file, frontmatter, imageWriteFolder, {
294209
- altOutputFolder: imageAltOutputFolder,
294210
- webp: extraTransforms === null || extraTransforms === void 0 ? void 0 : extraTransforms.includes(transformWebp)
294211
- });
294212
- await transformBanner(session, file, frontmatter, imageWriteFolder, {
294213
- altOutputFolder: imageAltOutputFolder,
294214
- webp: extraTransforms === null || extraTransforms === void 0 ? void 0 : extraTransforms.includes(transformWebp)
294215
- });
294216
- }
294217
- }
294218
- await transformDeleteBase64UrlSource(mdast2);
294224
+ await unified().use(codePlugin, { lang: (_d2 = frontmatter === null || frontmatter === void 0 ? void 0 : frontmatter.kernelspec) === null || _d2 === void 0 ? void 0 : _d2.language }).use(footnotesPlugin).run(mdast2, vfile2);
294225
+ transformImagesToEmbed(mdast2);
294226
+ transformImagesWithoutExt(session, mdast2, file, { imageExtensions });
294219
294227
  const sha256 = selectors_exports.selectFileInfo(store.getState(), file).sha256;
294220
294228
  const useSlug = pageSlug !== index4;
294221
294229
  const url = projectSlug ? `/${projectSlug}/${useSlug ? pageSlug : ""}` : `/${useSlug ? pageSlug : ""}`;
@@ -294245,7 +294253,9 @@ async function transformMdast(session, opts) {
294245
294253
  mdast: mdast2,
294246
294254
  references
294247
294255
  };
294248
- cache.$getMdast(file).post = data;
294256
+ const cachedMdast = cache.$getMdast(file);
294257
+ if (cachedMdast)
294258
+ cachedMdast.post = data;
294249
294259
  if (extraTransforms) {
294250
294260
  await Promise.all(extraTransforms.map(async (transform2) => {
294251
294261
  await transform2(session, opts);
@@ -294255,7 +294265,7 @@ async function transformMdast(session, opts) {
294255
294265
  if (!watchMode)
294256
294266
  log.info(toc(`\u{1F4D6} Built ${file} in %s.`));
294257
294267
  }
294258
- async function postProcessMdast(session, { file, checkLinks, pageReferenceStates, extraLinkTransformers, simplifyFigures, imageExtensions }) {
294268
+ async function postProcessMdast(session, { file, checkLinks, pageReferenceStates, extraLinkTransformers }) {
294259
294269
  var _a6;
294260
294270
  const toc = tic();
294261
294271
  const { log } = session;
@@ -294279,9 +294289,6 @@ async function postProcessMdast(session, { file, checkLinks, pageReferenceStates
294279
294289
  });
294280
294290
  resolveReferencesTransform(mdast2, state.file, { state });
294281
294291
  embedTransform(session, mdast2, dependencies, state);
294282
- if (simplifyFigures) {
294283
- transformPlaceholderImages(mdast2, { imageExtensions });
294284
- }
294285
294292
  const pipe = unified();
294286
294293
  (_a6 = session.plugins) === null || _a6 === void 0 ? void 0 : _a6.transforms.forEach((t2) => {
294287
294294
  if (t2.stage !== "project")
@@ -294291,10 +294298,59 @@ async function postProcessMdast(session, { file, checkLinks, pageReferenceStates
294291
294298
  await pipe.run(mdast2, vfile2);
294292
294299
  keysTransform(mdast2);
294293
294300
  logMessagesFromVFile(session, fileState.file);
294301
+ logMessagesFromVFile(session, vfile2);
294294
294302
  log.debug(toc(`Transformed mdast cross references and links for "${file}" in %s`));
294295
294303
  if (checkLinks)
294296
294304
  await checkLinksTransform(session, file, mdastPost.mdast);
294297
294305
  }
294306
+ async function finalizeMdast(session, mdast2, frontmatter, file, { imageWriteFolder, useExistingImages, imageAltOutputFolder, imageExtensions, optimizeWebp, simplifyFigures, processThumbnail }) {
294307
+ var _a6;
294308
+ const vfile2 = new VFile();
294309
+ vfile2.path = file;
294310
+ if (simplifyFigures) {
294311
+ reduceOutputs(session, mdast2, file, imageWriteFolder, {
294312
+ altOutputFolder: simplifyFigures ? void 0 : imageAltOutputFolder
294313
+ });
294314
+ }
294315
+ transformOutputsToFile(session, mdast2, imageWriteFolder, {
294316
+ altOutputFolder: simplifyFigures ? void 0 : imageAltOutputFolder,
294317
+ vfile: vfile2
294318
+ });
294319
+ if (!useExistingImages) {
294320
+ await transformImagesToDisk(session, mdast2, file, imageWriteFolder, {
294321
+ altOutputFolder: imageAltOutputFolder,
294322
+ imageExtensions
294323
+ });
294324
+ await transformImageFormats(session, mdast2, file, imageWriteFolder, {
294325
+ altOutputFolder: imageAltOutputFolder,
294326
+ imageExtensions
294327
+ });
294328
+ if (optimizeWebp) {
294329
+ await transformWebp(session, { file, imageWriteFolder });
294330
+ }
294331
+ if (processThumbnail) {
294332
+ await transformThumbnail(session, mdast2, file, frontmatter, imageWriteFolder, {
294333
+ altOutputFolder: imageAltOutputFolder,
294334
+ webp: optimizeWebp
294335
+ });
294336
+ await transformBanner(session, file, frontmatter, imageWriteFolder, {
294337
+ altOutputFolder: imageAltOutputFolder,
294338
+ webp: optimizeWebp
294339
+ });
294340
+ }
294341
+ }
294342
+ await transformDeleteBase64UrlSource(mdast2);
294343
+ if (simplifyFigures) {
294344
+ transformPlaceholderImages(mdast2, { imageExtensions });
294345
+ }
294346
+ const cache = castSession(session);
294347
+ const postData = (_a6 = cache.$getMdast(file)) === null || _a6 === void 0 ? void 0 : _a6.post;
294348
+ if (postData) {
294349
+ postData.frontmatter = frontmatter;
294350
+ postData.mdast = mdast2;
294351
+ }
294352
+ logMessagesFromVFile(session, vfile2);
294353
+ }
294298
294354
 
294299
294355
  // ../myst-cli/dist/process/site.js
294300
294356
  var import_node_fs19 = __toESM(require("fs"), 1);
@@ -294440,29 +294496,36 @@ async function writeFile(session, { file, pageSlug, projectSlug }) {
294440
294496
  session.log.debug(toc(`Wrote "${file}" in %s`));
294441
294497
  }
294442
294498
  async function fastProcessFile(session, { file, pageSlug, projectPath, projectSlug, extraLinkTransformers, extraTransforms, defaultTemplate }) {
294499
+ var _a6, _b;
294443
294500
  const toc = tic();
294444
294501
  await loadFile(session, file, projectPath);
294445
294502
  const { project, pages } = await loadProject(session, projectPath);
294446
294503
  await transformMdast(session, {
294447
294504
  file,
294448
- imageWriteFolder: session.publicPath(),
294449
- imageAltOutputFolder: "/",
294450
294505
  imageExtensions: WEB_IMAGE_EXTENSIONS,
294451
294506
  projectPath,
294452
294507
  projectSlug,
294453
294508
  pageSlug,
294454
294509
  watchMode: true,
294455
- extraTransforms: [transformWebp, ...extraTransforms !== null && extraTransforms !== void 0 ? extraTransforms : []],
294456
- index: project.index,
294457
- processThumbnail: true
294510
+ extraTransforms,
294511
+ index: project.index
294458
294512
  });
294459
294513
  const pageReferenceStates = selectPageReferenceStates(session, pages);
294460
294514
  await postProcessMdast(session, {
294461
294515
  file,
294462
294516
  pageReferenceStates,
294463
- extraLinkTransformers,
294464
- imageExtensions: WEB_IMAGE_EXTENSIONS
294517
+ extraLinkTransformers
294465
294518
  });
294519
+ const { mdast: mdast2, frontmatter } = (_b = (_a6 = castSession(session).$getMdast(file)) === null || _a6 === void 0 ? void 0 : _a6.post) !== null && _b !== void 0 ? _b : {};
294520
+ if (mdast2 && frontmatter) {
294521
+ await finalizeMdast(session, mdast2, frontmatter, file, {
294522
+ imageWriteFolder: session.publicPath(),
294523
+ imageAltOutputFolder: "/",
294524
+ imageExtensions: WEB_IMAGE_EXTENSIONS,
294525
+ optimizeWebp: true,
294526
+ processThumbnail: true
294527
+ });
294528
+ }
294466
294529
  await writeFile(session, { file, pageSlug, projectSlug });
294467
294530
  session.log.info(toc(`\u{1F4D6} Built ${file} in %s.`));
294468
294531
  await writeSiteManifest(session, { defaultTemplate });
@@ -294495,40 +294558,42 @@ async function processProject(session, siteProject, opts) {
294495
294558
  }
294496
294559
  combineProjectCitationRenderers(session, siteProject.path);
294497
294560
  const usedImageExtensions = imageExtensions !== null && imageExtensions !== void 0 ? imageExtensions : WEB_IMAGE_EXTENSIONS;
294498
- const extraTransforms = [];
294499
- if (usedImageExtensions.includes(ImageExtensions.webp)) {
294500
- extraTransforms.push(transformWebp);
294501
- }
294502
- if (opts === null || opts === void 0 ? void 0 : opts.extraTransforms) {
294503
- extraTransforms.push(...opts.extraTransforms);
294504
- }
294505
294561
  await Promise.all(pages.map((page) => transformMdast(session, {
294506
294562
  file: page.file,
294507
- imageWriteFolder: imageWriteFolder !== null && imageWriteFolder !== void 0 ? imageWriteFolder : session.publicPath(),
294508
- imageAltOutputFolder,
294509
294563
  imageExtensions: usedImageExtensions,
294510
294564
  projectPath: project.path,
294511
294565
  projectSlug: siteProject.slug,
294512
294566
  pageSlug: page.slug,
294513
294567
  watchMode,
294514
- extraTransforms,
294515
- index: project.index,
294516
- processThumbnail: true
294568
+ extraTransforms: opts === null || opts === void 0 ? void 0 : opts.extraTransforms,
294569
+ index: project.index
294517
294570
  })));
294518
294571
  const pageReferenceStates = selectPageReferenceStates(session, pages);
294519
294572
  await Promise.all(pages.map((page) => postProcessMdast(session, {
294520
294573
  file: page.file,
294521
294574
  checkLinks: (opts === null || opts === void 0 ? void 0 : opts.checkLinks) || (opts === null || opts === void 0 ? void 0 : opts.strict),
294522
294575
  pageReferenceStates,
294523
- extraLinkTransformers,
294524
- imageExtensions: usedImageExtensions
294576
+ extraLinkTransformers
294525
294577
  })));
294526
294578
  if (writeFiles) {
294527
- await Promise.all(pages.map((page) => writeFile(session, {
294528
- file: page.file,
294529
- projectSlug: siteProject.slug,
294530
- pageSlug: page.slug
294531
- })));
294579
+ await Promise.all(pages.map(async (page) => {
294580
+ var _a7, _b;
294581
+ const { mdast: mdast2, frontmatter } = (_b = (_a7 = castSession(session).$getMdast(page.file)) === null || _a7 === void 0 ? void 0 : _a7.post) !== null && _b !== void 0 ? _b : {};
294582
+ if (mdast2 && frontmatter) {
294583
+ await finalizeMdast(session, mdast2, frontmatter, page.file, {
294584
+ imageWriteFolder: imageWriteFolder !== null && imageWriteFolder !== void 0 ? imageWriteFolder : session.publicPath(),
294585
+ imageAltOutputFolder,
294586
+ imageExtensions: usedImageExtensions,
294587
+ optimizeWebp: true,
294588
+ processThumbnail: true
294589
+ });
294590
+ }
294591
+ return writeFile(session, {
294592
+ file: page.file,
294593
+ projectSlug: siteProject.slug,
294594
+ pageSlug: page.slug
294595
+ });
294596
+ }));
294532
294597
  }
294533
294598
  log.info(toc(`\u{1F4DA} Built ${plural("%s page(s)", pages)} for ${(_a6 = siteProject.slug) !== null && _a6 !== void 0 ? _a6 : "project"} in %s.`));
294534
294599
  return project;
@@ -295382,7 +295447,7 @@ async function collectExportOptions(session, files, formats, opts) {
295382
295447
 
295383
295448
  // ../myst-cli/dist/build/utils/getFileContent.js
295384
295449
  var import_node_path31 = require("path");
295385
- async function getFileContent(session, files, imageWriteFolder, { projectPath, useExistingImages, imageAltOutputFolder, imageExtensions, extraLinkTransformers, simplifyFigures }) {
295450
+ async function getFileContent(session, files, { projectPath, imageExtensions, extraLinkTransformers }) {
295386
295451
  const toc = tic();
295387
295452
  files = files.map((file) => (0, import_node_path31.resolve)(file));
295388
295453
  projectPath = projectPath !== null && projectPath !== void 0 ? projectPath : (0, import_node_path31.resolve)(".");
@@ -295403,15 +295468,11 @@ async function getFileContent(session, files, imageWriteFolder, { projectPath, u
295403
295468
  const pageSlug = (_a6 = pages.find((page) => page.file === file)) === null || _a6 === void 0 ? void 0 : _a6.slug;
295404
295469
  await transformMdast(session, {
295405
295470
  file,
295406
- useExistingImages,
295407
- imageWriteFolder,
295408
- imageAltOutputFolder,
295409
295471
  imageExtensions,
295410
295472
  projectPath,
295411
295473
  pageSlug,
295412
295474
  minifyMaxCharacters: 0,
295413
- index: project.index,
295414
- simplifyFigures
295475
+ index: project.index
295415
295476
  });
295416
295477
  }));
295417
295478
  const pageReferenceStates = selectPageReferenceStates(session, allFiles.map((file) => {
@@ -295421,9 +295482,7 @@ async function getFileContent(session, files, imageWriteFolder, { projectPath, u
295421
295482
  await postProcessMdast(session, {
295422
295483
  file,
295423
295484
  extraLinkTransformers,
295424
- pageReferenceStates,
295425
- simplifyFigures,
295426
- imageExtensions
295485
+ pageReferenceStates
295427
295486
  });
295428
295487
  const selectedFile = selectFile(session, file);
295429
295488
  if (!selectedFile)
@@ -304112,11 +304171,15 @@ function extractTexPart(session, mdast2, references, partDefinition, frontmatter
304112
304171
  }
304113
304172
  async function localArticleToTexRaw(session, templateOptions, projectPath, extraLinkTransformers) {
304114
304173
  const { article, output: output2 } = templateOptions;
304115
- const [{ mdast: mdast2, frontmatter, references }] = await getFileContent(session, [article], import_node_path37.default.join(import_node_path37.default.dirname(output2), "files"), {
304174
+ const [{ mdast: mdast2, frontmatter, references }] = await getFileContent(session, [article], {
304116
304175
  projectPath,
304176
+ imageExtensions: TEX_IMAGE_EXTENSIONS,
304177
+ extraLinkTransformers
304178
+ });
304179
+ await finalizeMdast(session, mdast2, frontmatter, article, {
304180
+ imageWriteFolder: import_node_path37.default.join(import_node_path37.default.dirname(output2), "files"),
304117
304181
  imageAltOutputFolder: "files/",
304118
304182
  imageExtensions: TEX_IMAGE_EXTENSIONS,
304119
- extraLinkTransformers,
304120
304183
  simplifyFigures: true
304121
304184
  });
304122
304185
  const toc = tic();
@@ -304141,18 +304204,17 @@ function writeBibtexFromCitationRenderers(session, output2) {
304141
304204
  import_node_fs29.default.writeFileSync(output2, bibtexContent);
304142
304205
  }
304143
304206
  async function localArticleToTexTemplated(session, file, templateOptions, projectPath, force, extraLinkTransformers) {
304144
- const filesPath = import_node_path37.default.join(import_node_path37.default.dirname(templateOptions.output), "files");
304145
- const [{ frontmatter, mdast: mdast2, references }] = await getFileContent(session, [templateOptions.article], filesPath, {
304207
+ const { output: output2, article, template } = templateOptions;
304208
+ const filesPath = import_node_path37.default.join(import_node_path37.default.dirname(output2), "files");
304209
+ const [{ frontmatter, mdast: mdast2, references }] = await getFileContent(session, [article], {
304146
304210
  projectPath,
304147
- imageAltOutputFolder: "files/",
304148
304211
  imageExtensions: TEX_IMAGE_EXTENSIONS,
304149
- extraLinkTransformers,
304150
- simplifyFigures: true
304212
+ extraLinkTransformers
304151
304213
  });
304152
- writeBibtexFromCitationRenderers(session, import_node_path37.default.join(import_node_path37.default.dirname(templateOptions.output), DEFAULT_BIB_FILENAME));
304214
+ writeBibtexFromCitationRenderers(session, import_node_path37.default.join(import_node_path37.default.dirname(output2), DEFAULT_BIB_FILENAME));
304153
304215
  const mystTemplate = new dist_default4(session, {
304154
304216
  kind: TemplateKind.tex,
304155
- template: templateOptions.template || void 0,
304217
+ template: template || void 0,
304156
304218
  buildDir: session.buildPath(),
304157
304219
  errorLogFn: (message) => {
304158
304220
  addWarningForFile(session, file, message, "error", {
@@ -304168,6 +304230,12 @@ async function localArticleToTexTemplated(session, file, templateOptions, projec
304168
304230
  await mystTemplate.ensureTemplateExistsOnPath();
304169
304231
  const toc = tic();
304170
304232
  const templateYml = mystTemplate.getValidatedTemplateYml();
304233
+ await finalizeMdast(session, mdast2, frontmatter, article, {
304234
+ imageWriteFolder: filesPath,
304235
+ imageAltOutputFolder: "files/",
304236
+ imageExtensions: TEX_IMAGE_EXTENSIONS,
304237
+ simplifyFigures: true
304238
+ });
304171
304239
  const partDefinitions = (templateYml === null || templateYml === void 0 ? void 0 : templateYml.parts) || [];
304172
304240
  const parts = {};
304173
304241
  let collectedImports = { imports: [], commands: {} };
@@ -304180,10 +304248,10 @@ async function localArticleToTexTemplated(session, file, templateOptions, projec
304180
304248
  }
304181
304249
  });
304182
304250
  const result = mdastToTex(session, mdast2, references, frontmatter, templateYml, true);
304183
- session.log.info(toc(`\u{1F4D1} Exported TeX in %s, copying to ${templateOptions.output}`));
304251
+ session.log.info(toc(`\u{1F4D1} Exported TeX in %s, copying to ${output2}`));
304184
304252
  renderTex(mystTemplate, {
304185
304253
  contentOrPath: result.value,
304186
- outputPath: templateOptions.output,
304254
+ outputPath: output2,
304187
304255
  frontmatter,
304188
304256
  parts,
304189
304257
  options: templateOptions,
@@ -304955,11 +305023,10 @@ async function runWordExport(session, file, exportOptions, projectPath, clean3,
304955
305023
  const vfile2 = new VFile();
304956
305024
  vfile2.path = output2;
304957
305025
  const imageWriteFolder = createTempFolder(session);
304958
- const [data] = await getFileContent(session, [article], imageWriteFolder, {
305026
+ const [data] = await getFileContent(session, [article], {
304959
305027
  projectPath,
304960
305028
  imageExtensions: DOCX_IMAGE_EXTENSIONS,
304961
- extraLinkTransformers,
304962
- simplifyFigures: true
305029
+ extraLinkTransformers
304963
305030
  });
304964
305031
  const mystTemplate = new dist_default4(session, {
304965
305032
  kind: TemplateKind.docx,
@@ -304981,6 +305048,11 @@ async function runWordExport(session, file, exportOptions, projectPath, clean3,
304981
305048
  sourceFile: file
304982
305049
  });
304983
305050
  const renderer = (_a6 = exportOptions.renderer) !== null && _a6 !== void 0 ? _a6 : defaultWordRenderer;
305051
+ await finalizeMdast(session, data.mdast, data.frontmatter, article, {
305052
+ imageWriteFolder,
305053
+ imageExtensions: DOCX_IMAGE_EXTENSIONS,
305054
+ simplifyFigures: true
305055
+ });
304984
305056
  const docx = renderer(session, data, doc, options, mystTemplate.templatePath, vfile2);
304985
305057
  logMessagesFromVFile(session, vfile2);
304986
305058
  await writeDocx(docx, (buffer2) => writeFileToFolder(output2, buffer2));
@@ -307384,18 +307456,24 @@ async function runJatsExport(session, exportOptions, projectPath, clean3, extraL
307384
307456
  const { output: output2, article, sub_articles } = exportOptions;
307385
307457
  if (clean3)
307386
307458
  cleanOutput(session, output2);
307387
- const processedContents = (await getFileContent(session, [article, ...sub_articles !== null && sub_articles !== void 0 ? sub_articles : []], import_node_path39.default.join(import_node_path39.default.dirname(output2), "files"), {
307459
+ const processedContents = (await getFileContent(session, [article, ...sub_articles !== null && sub_articles !== void 0 ? sub_articles : []], {
307388
307460
  projectPath,
307389
- imageAltOutputFolder: "files/",
307390
307461
  imageExtensions: KNOWN_IMAGE_EXTENSIONS,
307391
- extraLinkTransformers,
307392
- simplifyFigures: false
307462
+ extraLinkTransformers
307393
307463
  })).map((content3) => {
307394
307464
  const { kind, file, mdast: mdast2, frontmatter, slug } = content3;
307395
307465
  const rendererFiles = projectPath ? [projectPath, file] : [file];
307396
307466
  const citations = combineCitationRenderers(castSession(session), ...rendererFiles);
307397
- return { mdast: mdast2, kind, frontmatter, citations, slug };
307467
+ return { mdast: mdast2, kind, frontmatter, citations, slug, file };
307398
307468
  });
307469
+ await Promise.all(processedContents.map(({ mdast: mdast2, frontmatter, file }) => {
307470
+ return finalizeMdast(session, mdast2, frontmatter, file, {
307471
+ imageWriteFolder: import_node_path39.default.join(import_node_path39.default.dirname(output2), "files"),
307472
+ imageAltOutputFolder: "files/",
307473
+ imageExtensions: KNOWN_IMAGE_EXTENSIONS,
307474
+ simplifyFigures: false
307475
+ });
307476
+ }));
307399
307477
  const [processedArticle, ...processedSubArticles] = processedContents;
307400
307478
  const vfile2 = new VFile();
307401
307479
  vfile2.path = output2;
@@ -312305,13 +312383,17 @@ async function runMdExport(session, exportOptions, projectPath, clean3, extraLin
312305
312383
  const { output: output2, article } = exportOptions;
312306
312384
  if (clean3)
312307
312385
  cleanOutput(session, output2);
312308
- const [{ mdast: mdast2, frontmatter }] = await getFileContent(session, [article], import_node_path43.default.join(import_node_path43.default.dirname(output2), "files"), {
312386
+ const [{ mdast: mdast2, frontmatter }] = await getFileContent(session, [article], {
312309
312387
  projectPath,
312310
- useExistingImages: true,
312388
+ imageExtensions: KNOWN_IMAGE_EXTENSIONS,
312389
+ extraLinkTransformers
312390
+ });
312391
+ await finalizeMdast(session, mdast2, frontmatter, article, {
312392
+ imageWriteFolder: import_node_path43.default.join(import_node_path43.default.dirname(output2), "files"),
312311
312393
  imageAltOutputFolder: "files/",
312312
312394
  imageExtensions: KNOWN_IMAGE_EXTENSIONS,
312313
- extraLinkTransformers,
312314
- simplifyFigures: false
312395
+ simplifyFigures: false,
312396
+ useExistingImages: true
312315
312397
  });
312316
312398
  const vfile2 = new VFile();
312317
312399
  vfile2.path = output2;
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = mystmd
3
- version = 1.1.24
3
+ version = 1.1.26
4
4
  description = Command line tools for MyST Markdown
5
5
  long_description = file: README.md
6
6
  long_description_content_type = text/markdown
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes