@pie-lib/math-rendering-accessible 3.22.2-next.11 → 3.22.2-next.171

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,95 +1,68 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.wrapMath = exports.unWrapMath = exports.BracketTypes = void 0;
9
-
10
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _PAIRS;
15
-
16
- var BracketTypes = {};
17
- exports.BracketTypes = BracketTypes;
10
+ var BracketTypes = exports.BracketTypes = {};
18
11
  BracketTypes.ROUND_BRACKETS = 'round_brackets';
19
12
  BracketTypes.SQUARE_BRACKETS = 'square_brackets';
20
13
  BracketTypes.DOLLAR = 'dollar';
21
14
  BracketTypes.DOUBLE_DOLLAR = 'double_dollar';
22
- var PAIRS = (_PAIRS = {}, (0, _defineProperty2["default"])(_PAIRS, BracketTypes.ROUND_BRACKETS, ['\\(', '\\)']), (0, _defineProperty2["default"])(_PAIRS, BracketTypes.SQUARE_BRACKETS, ['\\[', '\\]']), (0, _defineProperty2["default"])(_PAIRS, BracketTypes.DOLLAR, ['$', '$']), (0, _defineProperty2["default"])(_PAIRS, BracketTypes.DOUBLE_DOLLAR, ['$$', '$$']), _PAIRS);
23
-
24
- var wrapMath = function wrapMath(content, wrapType) {
15
+ var PAIRS = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, BracketTypes.ROUND_BRACKETS, ['\\(', '\\)']), BracketTypes.SQUARE_BRACKETS, ['\\[', '\\]']), BracketTypes.DOLLAR, ['$', '$']), BracketTypes.DOUBLE_DOLLAR, ['$$', '$$']);
16
+ var wrapMath = exports.wrapMath = function wrapMath(content, wrapType) {
25
17
  if (wrapType === BracketTypes.SQUARE_BRACKETS) {
26
18
  console.warn('\\[...\\] is not supported yet'); // eslint-disable-line
27
-
28
19
  wrapType = BracketTypes.ROUND_BRACKETS;
29
20
  }
30
-
31
21
  if (wrapType === BracketTypes.DOUBLE_DOLLAR) {
32
22
  console.warn('$$...$$ is not supported yet'); // eslint-disable-line
33
-
34
23
  wrapType = BracketTypes.DOLLAR;
35
24
  }
36
-
37
25
  var _ref = PAIRS[wrapType] || PAIRS[BracketTypes.ROUND_BRACKETS],
38
- _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
39
- start = _ref2[0],
40
- end = _ref2[1];
41
-
26
+ _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
27
+ start = _ref2[0],
28
+ end = _ref2[1];
42
29
  return "".concat(start).concat(content).concat(end);
43
30
  };
44
-
45
- exports.wrapMath = wrapMath;
46
-
47
- var unWrapMath = function unWrapMath(content) {
31
+ var unWrapMath = exports.unWrapMath = function unWrapMath(content) {
48
32
  var displayStyleIndex = content.indexOf('\\displaystyle');
49
-
50
33
  if (displayStyleIndex !== -1) {
51
34
  console.warn('\\displaystyle is not supported - removing'); // eslint-disable-line
52
-
53
35
  content = content.replace('\\displaystyle', '').trim();
54
36
  }
55
-
56
37
  if (content.startsWith('$$') && content.endsWith('$$')) {
57
38
  console.warn('$$ syntax is not yet supported'); // eslint-disable-line
58
-
59
39
  return {
60
40
  unwrapped: content.substring(2, content.length - 2),
61
41
  wrapType: BracketTypes.DOLLAR
62
42
  };
63
43
  }
64
-
65
44
  if (content.startsWith('$') && content.endsWith('$')) {
66
45
  return {
67
46
  unwrapped: content.substring(1, content.length - 1),
68
47
  wrapType: BracketTypes.DOLLAR
69
48
  };
70
49
  }
71
-
72
50
  if (content.startsWith('\\[') && content.endsWith('\\]')) {
73
51
  console.warn('\\[..\\] syntax is not yet supported'); // eslint-disable-line
74
-
75
52
  return {
76
53
  unwrapped: content.substring(2, content.length - 2),
77
54
  wrapType: BracketTypes.ROUND_BRACKETS
78
55
  };
79
56
  }
80
-
81
57
  if (content.startsWith('\\(') && content.endsWith('\\)')) {
82
58
  return {
83
59
  unwrapped: content.substring(2, content.length - 2),
84
60
  wrapType: BracketTypes.ROUND_BRACKETS
85
61
  };
86
62
  }
87
-
88
63
  return {
89
64
  unwrapped: content,
90
65
  wrapType: BracketTypes.ROUND_BRACKETS
91
66
  };
92
67
  };
93
-
94
- exports.unWrapMath = unWrapMath;
95
68
  //# sourceMappingURL=normalization.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/normalization.js"],"names":["BracketTypes","ROUND_BRACKETS","SQUARE_BRACKETS","DOLLAR","DOUBLE_DOLLAR","PAIRS","wrapMath","content","wrapType","console","warn","start","end","unWrapMath","displayStyleIndex","indexOf","replace","trim","startsWith","endsWith","unwrapped","substring","length"],"mappings":"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","sourcesContent":["export const BracketTypes = {};\n\nBracketTypes.ROUND_BRACKETS = 'round_brackets';\nBracketTypes.SQUARE_BRACKETS = 'square_brackets';\nBracketTypes.DOLLAR = 'dollar';\nBracketTypes.DOUBLE_DOLLAR = 'double_dollar';\n\nconst PAIRS = {\n [BracketTypes.ROUND_BRACKETS]: ['\\\\(', '\\\\)'],\n [BracketTypes.SQUARE_BRACKETS]: ['\\\\[', '\\\\]'],\n [BracketTypes.DOLLAR]: ['$', '$'],\n [BracketTypes.DOUBLE_DOLLAR]: ['$$', '$$'],\n};\n\nexport const wrapMath = (content, wrapType) => {\n if (wrapType === BracketTypes.SQUARE_BRACKETS) {\n console.warn('\\\\[...\\\\] is not supported yet'); // eslint-disable-line\n wrapType = BracketTypes.ROUND_BRACKETS;\n }\n if (wrapType === BracketTypes.DOUBLE_DOLLAR) {\n console.warn('$$...$$ is not supported yet'); // eslint-disable-line\n wrapType = BracketTypes.DOLLAR;\n }\n\n const [start, end] = PAIRS[wrapType] || PAIRS[BracketTypes.ROUND_BRACKETS];\n return `${start}${content}${end}`;\n};\n\nexport const unWrapMath = (content) => {\n const displayStyleIndex = content.indexOf('\\\\displaystyle');\n if (displayStyleIndex !== -1) {\n console.warn('\\\\displaystyle is not supported - removing'); // eslint-disable-line\n content = content.replace('\\\\displaystyle', '').trim();\n }\n\n if (content.startsWith('$$') && content.endsWith('$$')) {\n console.warn('$$ syntax is not yet supported'); // eslint-disable-line\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.DOLLAR,\n };\n }\n if (content.startsWith('$') && content.endsWith('$')) {\n return {\n unwrapped: content.substring(1, content.length - 1),\n wrapType: BracketTypes.DOLLAR,\n };\n }\n\n if (content.startsWith('\\\\[') && content.endsWith('\\\\]')) {\n console.warn('\\\\[..\\\\] syntax is not yet supported'); // eslint-disable-line\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n }\n\n if (content.startsWith('\\\\(') && content.endsWith('\\\\)')) {\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n }\n\n return {\n unwrapped: content,\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n};\n"],"file":"normalization.js"}
1
+ {"version":3,"file":"normalization.js","names":["BracketTypes","exports","ROUND_BRACKETS","SQUARE_BRACKETS","DOLLAR","DOUBLE_DOLLAR","PAIRS","_defineProperty2","wrapMath","content","wrapType","console","warn","_ref","_ref2","_slicedToArray2","start","end","concat","unWrapMath","displayStyleIndex","indexOf","replace","trim","startsWith","endsWith","unwrapped","substring","length"],"sources":["../src/normalization.js"],"sourcesContent":["export const BracketTypes = {};\n\nBracketTypes.ROUND_BRACKETS = 'round_brackets';\nBracketTypes.SQUARE_BRACKETS = 'square_brackets';\nBracketTypes.DOLLAR = 'dollar';\nBracketTypes.DOUBLE_DOLLAR = 'double_dollar';\n\nconst PAIRS = {\n [BracketTypes.ROUND_BRACKETS]: ['\\\\(', '\\\\)'],\n [BracketTypes.SQUARE_BRACKETS]: ['\\\\[', '\\\\]'],\n [BracketTypes.DOLLAR]: ['$', '$'],\n [BracketTypes.DOUBLE_DOLLAR]: ['$$', '$$'],\n};\n\nexport const wrapMath = (content, wrapType) => {\n if (wrapType === BracketTypes.SQUARE_BRACKETS) {\n console.warn('\\\\[...\\\\] is not supported yet'); // eslint-disable-line\n wrapType = BracketTypes.ROUND_BRACKETS;\n }\n if (wrapType === BracketTypes.DOUBLE_DOLLAR) {\n console.warn('$$...$$ is not supported yet'); // eslint-disable-line\n wrapType = BracketTypes.DOLLAR;\n }\n\n const [start, end] = PAIRS[wrapType] || PAIRS[BracketTypes.ROUND_BRACKETS];\n return `${start}${content}${end}`;\n};\n\nexport const unWrapMath = (content) => {\n const displayStyleIndex = content.indexOf('\\\\displaystyle');\n if (displayStyleIndex !== -1) {\n console.warn('\\\\displaystyle is not supported - removing'); // eslint-disable-line\n content = content.replace('\\\\displaystyle', '').trim();\n }\n\n if (content.startsWith('$$') && content.endsWith('$$')) {\n console.warn('$$ syntax is not yet supported'); // eslint-disable-line\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.DOLLAR,\n };\n }\n if (content.startsWith('$') && content.endsWith('$')) {\n return {\n unwrapped: content.substring(1, content.length - 1),\n wrapType: BracketTypes.DOLLAR,\n };\n }\n\n if (content.startsWith('\\\\[') && content.endsWith('\\\\]')) {\n console.warn('\\\\[..\\\\] syntax is not yet supported'); // eslint-disable-line\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n }\n\n if (content.startsWith('\\\\(') && content.endsWith('\\\\)')) {\n return {\n unwrapped: content.substring(2, content.length - 2),\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n }\n\n return {\n unwrapped: content,\n wrapType: BracketTypes.ROUND_BRACKETS,\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,34 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.initializeMathJax = exports.getGlobal = exports.fixMathElements = exports.fixMathElement = exports["default"] = exports.MathJaxVersion = void 0;
9
-
10
8
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
-
12
9
  var _normalization = require("./normalization");
13
-
14
10
  var _SerializedMmlVisitor = require("mathjax-full/js/core/MmlTree/SerializedMmlVisitor");
15
-
16
11
  var _TexError = _interopRequireDefault(require("mathjax-full/js/input/tex/TexError"));
12
+ /* global MathJax */
17
13
 
18
14
  var visitor = new _SerializedMmlVisitor.SerializedMmlVisitor();
19
-
20
15
  var toMMl = function toMMl(node) {
21
16
  return visitor.visitTree(node);
22
17
  };
23
-
24
18
  var NEWLINE_BLOCK_REGEX = /\\embed\{newLine\}\[\]/g;
25
19
  var NEWLINE_LATEX = '\\newline ';
26
20
  var mathRenderingKEY = '@pie-lib/math-rendering@2';
27
21
  var mathRenderingAccessibleKEY = '@pie-lib/math-rendering-accessible@1';
28
- var MathJaxVersion = '3.2.2';
29
- exports.MathJaxVersion = MathJaxVersion;
30
-
31
- var getGlobal = function getGlobal() {
22
+ var MathJaxVersion = exports.MathJaxVersion = '3.2.2';
23
+ var getGlobal = exports.getGlobal = function getGlobal() {
32
24
  // TODO does it make sense to use version?
33
25
  // const key = `${pkg.name}@${pkg.version.split('.')[0]}`;
34
26
  // It looks like Ed made this change when he switched from mathjax3 to mathjax-full
@@ -40,47 +32,34 @@ var getGlobal = function getGlobal() {
40
32
  if (!window[mathRenderingAccessibleKEY]) {
41
33
  window[mathRenderingAccessibleKEY] = {};
42
34
  }
43
-
44
35
  return window[mathRenderingAccessibleKEY];
45
36
  } else {
46
37
  return {};
47
38
  }
48
39
  };
49
-
50
- exports.getGlobal = getGlobal;
51
-
52
- var fixMathElement = function fixMathElement(element) {
40
+ var fixMathElement = exports.fixMathElement = function fixMathElement(element) {
53
41
  if (element.dataset.mathHandled) {
54
42
  return;
55
43
  }
56
-
57
44
  var property = 'innerText';
58
-
59
45
  if (element.textContent) {
60
46
  property = 'textContent';
61
47
  }
62
-
63
48
  if (element[property]) {
64
- element[property] = (0, _normalization.wrapMath)((0, _normalization.unWrapMath)(element[property]).unwrapped); // because mathquill doesn't understand line breaks, sometimes we end up with custom elements on prompts/rationale/etc.
49
+ element[property] = (0, _normalization.wrapMath)((0, _normalization.unWrapMath)(element[property]).unwrapped);
50
+ // because mathquill doesn't understand line breaks, sometimes we end up with custom elements on prompts/rationale/etc.
65
51
  // we need to replace the custom embedded elements with valid latex that Mathjax can understand
66
-
67
52
  element[property] = element[property].replace(NEWLINE_BLOCK_REGEX, NEWLINE_LATEX);
68
53
  element.dataset.mathHandled = true;
69
54
  }
70
55
  };
71
-
72
- exports.fixMathElement = fixMathElement;
73
-
74
- var fixMathElements = function fixMathElements() {
56
+ var fixMathElements = exports.fixMathElements = function fixMathElements() {
75
57
  var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;
76
58
  var mathElements = el.querySelectorAll('[data-latex]');
77
59
  mathElements.forEach(function (item) {
78
60
  return fixMathElement(item);
79
61
  });
80
62
  };
81
-
82
- exports.fixMathElements = fixMathElements;
83
-
84
63
  var adjustMathMLStyle = function adjustMathMLStyle() {
85
64
  var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;
86
65
  var nodes = el.querySelectorAll('math');
@@ -88,43 +67,36 @@ var adjustMathMLStyle = function adjustMathMLStyle() {
88
67
  return node.setAttribute('displaystyle', 'true');
89
68
  });
90
69
  };
91
-
92
70
  var createPlaceholder = function createPlaceholder(element) {
93
71
  var _element$previousSibl;
94
-
95
72
  if (!element.previousSibling || !((_element$previousSibl = element.previousSibling.classList) !== null && _element$previousSibl !== void 0 && _element$previousSibl.contains('math-placeholder'))) {
96
73
  var _element$parentNode;
97
-
98
74
  // Store the original display style before setting it to 'none'
99
75
  element.dataset.originalDisplay = element.style.display || '';
100
76
  element.style.display = 'none';
101
77
  var placeholder = document.createElement('span');
102
78
  placeholder.style.cssText = 'height: 10px; width: 50px; display: inline-block; vertical-align: middle; justify-content: center; background: #fafafa; border-radius: 4px;';
103
79
  placeholder.classList.add('math-placeholder');
104
- (_element$parentNode = element.parentNode) === null || _element$parentNode === void 0 ? void 0 : _element$parentNode.insertBefore(placeholder, element);
80
+ (_element$parentNode = element.parentNode) === null || _element$parentNode === void 0 || _element$parentNode.insertBefore(placeholder, element);
105
81
  }
106
82
  };
107
-
108
83
  var removePlaceholdersAndRestoreDisplay = function removePlaceholdersAndRestoreDisplay() {
109
84
  document.querySelectorAll('.math-placeholder').forEach(function (placeholder) {
110
85
  var _targetElement$datase;
111
-
112
86
  var targetElement = placeholder.nextElementSibling;
113
-
114
87
  if (targetElement && ((_targetElement$datase = targetElement.dataset) === null || _targetElement$datase === void 0 ? void 0 : _targetElement$datase.originalDisplay) !== undefined) {
115
88
  targetElement.style.display = targetElement.dataset.originalDisplay;
116
89
  delete targetElement.dataset.originalDisplay;
117
90
  }
118
-
119
91
  placeholder.remove();
120
92
  });
121
93
  };
122
-
123
94
  var removeExcessMjxContainers = function removeExcessMjxContainers(content) {
124
95
  var elements = content.querySelectorAll('[data-latex][data-math-handled="true"]');
125
96
  elements.forEach(function (element) {
126
- var mjxContainers = element.querySelectorAll('mjx-container'); // Check if there are more than one mjx-container children.
97
+ var mjxContainers = element.querySelectorAll('mjx-container');
127
98
 
99
+ // Check if there are more than one mjx-container children.
128
100
  if (mjxContainers.length > 1) {
129
101
  for (var i = 1; i < mjxContainers.length; i++) {
130
102
  mjxContainers[i].parentNode.removeChild(mjxContainers[i]);
@@ -132,7 +104,6 @@ var removeExcessMjxContainers = function removeExcessMjxContainers(content) {
132
104
  }
133
105
  });
134
106
  };
135
-
136
107
  var renderContentsWithMathJax = function renderContentsWithMathJax(el) {
137
108
  // el sometimes is an array
138
109
  // renderMath is used like that in pie-print-support and pie-element-extensions
@@ -145,52 +116,55 @@ var renderContentsWithMathJax = function renderContentsWithMathJax(el) {
145
116
  renderContentWithMathJax(el);
146
117
  }
147
118
  };
148
-
149
119
  var renderContentWithMathJax = function renderContentWithMathJax(executeOn) {
150
- executeOn = executeOn || document.body; // this happens for charting - mark-label; we receive a ref which is not yet ready ( el = { current: null })
151
- // we have to fix this in charting
120
+ executeOn = executeOn || document.body;
152
121
 
122
+ // this happens for charting - mark-label; we receive a ref which is not yet ready ( el = { current: null })
123
+ // we have to fix this in charting
153
124
  if (!(executeOn instanceof HTMLElement)) return;
154
125
  fixMathElements(executeOn);
155
126
  adjustMathMLStyle(executeOn);
156
127
  var mathJaxInstance = getGlobal().instance;
157
-
158
128
  if (mathJaxInstance) {
159
129
  // Reset and clear typesetting before processing the new content
160
130
  // Reset the tex labels (and automatic equation number).
161
- mathJaxInstance.texReset(); // Reset the typesetting system (font caches, etc.)
162
131
 
163
- mathJaxInstance.typesetClear(); // Use typesetPromise for asynchronous typesetting
132
+ mathJaxInstance.texReset();
133
+
134
+ // Reset the typesetting system (font caches, etc.)
135
+ mathJaxInstance.typesetClear();
136
+
137
+ // Use typesetPromise for asynchronous typesetting
164
138
  // Using MathJax.typesetPromise() for asynchronous typesetting to handle situations where additional code needs to be loaded (e.g., for certain TeX commands or characters).
165
139
  // This ensures typesetting waits for any needed resources to load and complete processing, unlike the synchronous MathJax.typeset() which can't handle such dynamic loading.
166
-
167
140
  mathJaxInstance.typesetPromise([executeOn]).then(function () {
168
141
  try {
169
142
  removePlaceholdersAndRestoreDisplay();
170
143
  removeExcessMjxContainers(executeOn);
171
144
  var updatedDocument = mathJaxInstance.startup.document;
172
145
  var list = updatedDocument.math.list;
173
-
174
146
  for (var item = list.next; (0, _typeof2["default"])(item.data) !== 'symbol'; item = item.next) {
175
147
  var mathMl = toMMl(item.data.root);
176
148
  var parsedMathMl = mathMl.replaceAll('\n', '');
177
149
  item.data.typesetRoot.setAttribute('data-mathml', parsedMathMl);
178
150
  item.data.typesetRoot.setAttribute('tabindex', '-1');
179
- } // If the original input was a string, return the parsed MathML
151
+ }
180
152
 
153
+ // If the original input was a string, return the parsed MathML
181
154
  } catch (e) {
155
+ // eslint-disable-next-line no-console
182
156
  console.error('Error post-processing MathJax typesetting:', e.toString());
183
- } // Clearing the document if needed
184
-
157
+ }
185
158
 
159
+ // Clearing the document if needed
186
160
  mathJaxInstance.startup.document.clear();
187
161
  })["catch"](function (error) {
188
162
  // If there was an internal error, put the message into the output instead
163
+ // eslint-disable-next-line no-console
189
164
  console.error('Error in typesetting with MathJax:', error);
190
165
  });
191
166
  }
192
167
  };
193
-
194
168
  var convertMathJax2ToMathJax3 = function convertMathJax2ToMathJax3() {
195
169
  // Make MathJax v2 compatible with v3
196
170
  // https://docs.mathjax.org/en/v3.2-latest/upgrading/v2.html#version-2-compatibility-example
@@ -202,24 +176,22 @@ var convertMathJax2ToMathJax3 = function convertMathJax2ToMathJax3() {
202
176
  var RequireMethods = {
203
177
  Require: function Require(parser, name) {
204
178
  var required = parser.GetArgument(name);
205
-
206
179
  if (required.match(/[^_a-zA-Z0-9]/) || required === '') {
207
180
  throw new _TexError["default"]('BadPackageName', 'Argument for %1 is not a valid package name', name);
208
181
  }
209
-
210
- if (requireMap.hasOwnProperty(required)) {
182
+ if (Object.prototype.hasOwnProperty.call(requireMap, required)) {
211
183
  required = requireMap[required];
212
184
  }
213
-
214
185
  RequireLoad(parser, required);
215
186
  }
216
187
  };
217
188
  new CommandMap('require', {
218
189
  require: 'Require'
219
- }, RequireMethods); //
190
+ }, RequireMethods);
191
+
192
+ //
220
193
  // Add a replacement for MathJax.Callback command
221
194
  //
222
-
223
195
  MathJax.Callback = function (args) {
224
196
  if (Array.isArray(args)) {
225
197
  if (args.length === 1 && typeof args[0] === 'function') {
@@ -234,53 +206,51 @@ var convertMathJax2ToMathJax3 = function convertMathJax2ToMathJax3() {
234
206
  } else if (typeof args === 'function') {
235
207
  return args;
236
208
  }
209
+ throw Error('Can\'t make callback from given data');
210
+ };
237
211
 
238
- throw Error("Can't make callback from given data");
239
- }; //
212
+ //
240
213
  // Add a replacement for MathJax.Hub commands
241
214
  //
242
-
243
-
244
215
  MathJax.Hub = {
245
216
  Queue: function Queue() {
246
217
  for (var i = 0, m = arguments.length; i < m; i++) {
247
218
  var fn = MathJax.Callback(arguments[i]);
248
219
  MathJax.startup.promise = MathJax.startup.promise.then(fn);
249
220
  }
250
-
251
221
  return MathJax.startup.promise;
252
222
  },
253
223
  Typeset: function Typeset(elements, callback) {
254
224
  var promise = MathJax.typesetPromise(elements);
255
-
256
225
  if (callback) {
257
226
  promise = promise.then(callback);
258
227
  }
259
-
260
228
  return promise;
261
229
  },
262
230
  Register: {
263
231
  MessageHook: function MessageHook() {
232
+ // eslint-disable-next-line no-console
264
233
  console.log('MessageHooks are not supported in version 3');
265
234
  },
266
235
  StartupHook: function StartupHook() {
236
+ // eslint-disable-next-line no-console
267
237
  console.log('StartupHooks are not supported in version 3');
268
238
  },
269
239
  LoadHook: function LoadHook() {
240
+ // eslint-disable-next-line no-console
270
241
  console.log('LoadHooks are not supported in version 3');
271
242
  }
272
243
  },
273
244
  Config: function Config() {
245
+ // eslint-disable-next-line no-console
274
246
  console.log('MathJax configurations should be converted for version 3');
275
247
  }
276
248
  };
277
249
  };
278
-
279
- var initializeMathJax = function initializeMathJax(callback) {
250
+ var initializeMathJax = exports.initializeMathJax = function initializeMathJax(callback) {
280
251
  if (window.mathjaxLoadedP) {
281
252
  return;
282
253
  }
283
-
284
254
  var PreviousMathJaxIsUsed = window.MathJax && window.MathJax.version && window.MathJax.version !== MathJaxVersion && window.MathJax.version[0] === '2';
285
255
  var texConfig = {
286
256
  macros: {
@@ -291,17 +261,15 @@ var initializeMathJax = function initializeMathJax(callback) {
291
261
  },
292
262
  displayMath: [['$$', '$$'], ['\\[', '\\]']]
293
263
  };
294
-
295
264
  if (PreviousMathJaxIsUsed) {
296
265
  texConfig.autoload = {
297
266
  color: [],
298
267
  // don't autoload the color extension
299
268
  colorv2: ['color'] // do autoload the colorv2 extension
300
-
301
269
  };
302
- } // Create a new promise that resolves when MathJax is ready
303
-
270
+ }
304
271
 
272
+ // Create a new promise that resolves when MathJax is ready
305
273
  window.mathjaxLoadedP = new Promise(function (resolve) {
306
274
  // Set up the MathJax configuration
307
275
  window.MathJax = {
@@ -322,34 +290,33 @@ var initializeMathJax = function initializeMathJax(callback) {
322
290
  if (PreviousMathJaxIsUsed) {
323
291
  convertMathJax2ToMathJax3();
324
292
  }
325
-
326
293
  var mathjax = MathJax._.mathjax.mathjax;
327
294
  var STATE = MathJax._.core.MathItem.STATE;
328
295
  var Menu = MathJax._.ui.menu.Menu.Menu;
329
296
  var rerender = Menu.prototype.rerender;
330
-
331
297
  Menu.prototype.rerender = function () {
332
298
  var _this = this;
333
-
334
299
  var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : STATE.TYPESET;
335
300
  mathjax.handleRetriesFor(function () {
336
301
  return rerender.call(_this, start);
337
302
  });
338
303
  };
339
-
340
- MathJax.startup.defaultReady(); // Set the MathJax instance in the global object
304
+ MathJax.startup.defaultReady();
305
+ // Set the MathJax instance in the global object
341
306
 
342
307
  var globalObj = getGlobal();
343
308
  globalObj.instance = MathJax;
344
309
  window.mathjaxLoadedComplete = true;
345
- console.log('MathJax has initialised!', new Date().toString()); // in this file, initializeMathJax is called with a callback that has to be executed when MathJax was loaded
310
+ // eslint-disable-next-line no-console
311
+ console.log('MathJax has initialised!', new Date().toString());
346
312
 
313
+ // in this file, initializeMathJax is called with a callback that has to be executed when MathJax was loaded
347
314
  if (callback) {
348
315
  callback();
349
- } // but previous versions of math-rendering-accessible they're expecting window.mathjaxLoadedP to be a Promise, so we also keep the
350
- // resolve here;
351
-
316
+ }
352
317
 
318
+ // but previous versions of math-rendering-accessible they're expecting window.mathjaxLoadedP to be a Promise, so we also keep the
319
+ // resolve here;
353
320
  resolve();
354
321
  }
355
322
  },
@@ -389,31 +356,27 @@ var initializeMathJax = function initializeMathJax(callback) {
389
356
  }
390
357
  }
391
358
  }
392
- }; // Load the MathJax script
393
-
359
+ };
360
+ // Load the MathJax script
394
361
  var script = document.createElement('script');
395
362
  script.type = 'text/javascript';
396
363
  script.src = "https://cdn.jsdelivr.net/npm/mathjax@".concat(MathJaxVersion, "/es5/tex-chtml-full.js");
397
364
  script.async = true;
398
- document.head.appendChild(script); // at this time of the execution, there's no document.body; setTimeout does the trick
365
+ document.head.appendChild(script);
399
366
 
367
+ // at this time of the execution, there's no document.body; setTimeout does the trick
400
368
  setTimeout(function () {
401
369
  if (!window.mathjaxLoadedComplete) {
402
- var _document, _document$body;
403
-
404
- var mathElements = (_document = document) === null || _document === void 0 ? void 0 : (_document$body = _document.body) === null || _document$body === void 0 ? void 0 : _document$body.querySelectorAll('[data-latex]');
370
+ var _document;
371
+ var mathElements = (_document = document) === null || _document === void 0 || (_document = _document.body) === null || _document === void 0 ? void 0 : _document.querySelectorAll('[data-latex]');
405
372
  (mathElements || []).forEach(createPlaceholder);
406
373
  }
407
374
  });
408
375
  });
409
376
  };
410
-
411
- exports.initializeMathJax = initializeMathJax;
412
-
413
- var renderMath = function renderMath(el, renderOpts) {
377
+ var renderMath = function renderMath(el) {
414
378
  var usedForMmlOutput = typeof el === 'string';
415
379
  var executeOn = document.body;
416
-
417
380
  if (!usedForMmlOutput) {
418
381
  // If math-rendering was not available, then:
419
382
  // If window.mathjaxLoadedComplete, it means that we initialised MathJax using the function from this file,
@@ -429,7 +392,8 @@ var renderMath = function renderMath(el, renderOpts) {
429
392
  window.mathjaxLoadedComplete = true;
430
393
  renderContentsWithMathJax(el);
431
394
  })["catch"](function (error) {
432
- return console.error('Error in initializing MathJax:', error);
395
+ // eslint-disable-next-line no-console
396
+ console.error('Error in initializing MathJax:', error);
433
397
  });
434
398
  }
435
399
  } else {
@@ -438,7 +402,6 @@ var renderMath = function renderMath(el, renderOpts) {
438
402
  var div = document.createElement('div');
439
403
  div.innerHTML = el;
440
404
  executeOn = div;
441
-
442
405
  try {
443
406
  MathJax.texReset();
444
407
  MathJax.typesetClear();
@@ -450,17 +413,16 @@ var renderMath = function renderMath(el, renderOpts) {
450
413
  var parsedMathMl = mathMl.replaceAll('\n', '');
451
414
  return parsedMathMl;
452
415
  } catch (error) {
416
+ // eslint-disable-next-line no-console
453
417
  console.error('Error rendering math:', error.message);
454
418
  }
455
-
456
419
  return el;
457
420
  }
458
-
459
421
  return el;
460
422
  }
461
- }; // this function calls itself
462
-
423
+ };
463
424
 
425
+ // this function calls itself
464
426
  (function () {
465
427
  initializeMathJax(renderContentWithMathJax);
466
428
  window[mathRenderingKEY] = {
@@ -469,7 +431,5 @@ var renderMath = function renderMath(el, renderOpts) {
469
431
  }
470
432
  };
471
433
  })();
472
-
473
- var _default = renderMath;
474
- exports["default"] = _default;
434
+ var _default = exports["default"] = renderMath;
475
435
  //# sourceMappingURL=render-math.js.map