@pie-element/venn-classification 0.1.7-next.20261016234357 → 0.1.7

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.
Files changed (27) hide show
  1. package/dist/author/index.js +332 -332
  2. package/dist/author/index.js.map +1 -1
  3. package/dist/browser/{VennClassification-CsXLwEPr.js → VennClassification-BYEE2loD.js} +55 -55
  4. package/dist/browser/{VennClassification-CsXLwEPr.js.map → VennClassification-BYEE2loD.js.map} +1 -1
  5. package/dist/browser/author/index.js +3 -3
  6. package/dist/browser/controller/index.js +1 -1
  7. package/dist/browser/{editor-runtime/controller-CbhEQES0.js → controller-De5tttno.js} +2 -2
  8. package/dist/browser/{controller-CbhEQES0.js.map → controller-De5tttno.js.map} +1 -1
  9. package/dist/browser/delivery/index.js +3 -3
  10. package/dist/browser/editor-runtime/{VennClassification-CsXLwEPr.js → VennClassification-BYEE2loD.js} +55 -55
  11. package/dist/browser/editor-runtime/{VennClassification-CsXLwEPr.js.map → VennClassification-BYEE2loD.js.map} +1 -1
  12. package/dist/browser/editor-runtime/author/index.js +3 -3
  13. package/dist/browser/editor-runtime/controller/index.js +1 -1
  14. package/dist/browser/{controller-CbhEQES0.js → editor-runtime/controller-De5tttno.js} +2 -2
  15. package/dist/browser/editor-runtime/{controller-CbhEQES0.js.map → controller-De5tttno.js.map} +1 -1
  16. package/dist/browser/editor-runtime/delivery/index.js +3 -3
  17. package/dist/browser/editor-runtime/{mathjax-CptWnMbQ-DV8h7p1z.js → mathjax-DqXi3q4c-DS0E0Esn.js} +3 -3
  18. package/dist/browser/editor-runtime/{mathjax-CptWnMbQ-DV8h7p1z.js.map → mathjax-DqXi3q4c-DS0E0Esn.js.map} +1 -1
  19. package/dist/browser/{mathjax-CptWnMbQ-DV8h7p1z.js → mathjax-DqXi3q4c-DS0E0Esn.js} +3 -3
  20. package/dist/browser/{mathjax-CptWnMbQ-DV8h7p1z.js.map → mathjax-DqXi3q4c-DS0E0Esn.js.map} +1 -1
  21. package/dist/delivery/index.js +332 -332
  22. package/dist/delivery/index.js.map +1 -1
  23. package/dist/index.iife.js +1 -1
  24. package/dist/schemas/configuration.schema.json +1 -1
  25. package/dist/schemas/model.schema.json +1 -1
  26. package/dist/schemas/session.schema.json +1 -1
  27. package/package.json +5 -5
@@ -8321,15 +8321,15 @@ function v(e) {
8321
8321
  }
8322
8322
  var y = "https://github.com/pie-framework/pie-players/blob/develop/docs/item-player/loading-strategies.md#one-mathjax-version-per-page";
8323
8323
  var ee = "pie-mathjax-version-conflict";
8324
- var b = Symbol.for("@pie-element/shared-math-rendering-mathjax/unsupported-page");
8325
- function te(e, t) {
8324
+ var te = Symbol.for("@pie-element/shared-math-rendering-mathjax/unsupported-page");
8325
+ function ne(e, t) {
8326
8326
  if (typeof window > "u") return;
8327
8327
  let n = globalThis;
8328
- n[b] ?? (n[b] = {
8328
+ n[te] ?? (n[te] = {
8329
8329
  logged: !1,
8330
8330
  conditions: []
8331
8331
  });
8332
- let r = n[b];
8332
+ let r = n[te];
8333
8333
  if (r.conditions.includes(e)) return;
8334
8334
  r.conditions.push(e);
8335
8335
  let i = `[math-rendering] Unsupported page (${e}): ${t}. PIE supports one MathJax major version per page; with MathJax 3 and 4 on one page, math rendering is best effort and may break. See ${y}`;
@@ -8339,14 +8339,14 @@ function te(e, t) {
8339
8339
  docsUrl: y
8340
8340
  } }));
8341
8341
  }
8342
- function ne() {
8342
+ function re() {
8343
8343
  let e = window.MathJax?.version;
8344
8344
  return typeof e == "string" && e.startsWith("3.") ? e : void 0;
8345
8345
  }
8346
- function x$1() {
8346
+ function b() {
8347
8347
  return window.MathJax;
8348
8348
  }
8349
- function re(t, { root: n, speechPath: r }) {
8349
+ function ie(t, { root: n, speechPath: r }) {
8350
8350
  n && (t.loader = {
8351
8351
  ...t.loader,
8352
8352
  paths: {
@@ -8362,94 +8362,94 @@ function re(t, { root: n, speechPath: r }) {
8362
8362
  }
8363
8363
  });
8364
8364
  }
8365
- function ie(e, t) {
8365
+ function ae(e, t) {
8366
8366
  let n = t.srcUrl || (t.root ? `${t.root}/mathjax@4.1.3/tex-mml-chtml.js` : void 0);
8367
- return n ? (re(e, t), new Promise((t, r) => {
8367
+ return n ? (ie(e, t), new Promise((t, r) => {
8368
8368
  window.MathJax = e;
8369
8369
  let i = document.createElement("script");
8370
8370
  i.src = n, i.async = !0, i.onload = () => t(!0), i.onerror = () => r(/* @__PURE__ */ Error("Failed to load MathJax")), document.head.appendChild(i);
8371
8371
  })) : (v("untypeset"), Promise.resolve(!1));
8372
8372
  }
8373
- var ae = globalThis;
8374
- var oe = "PIE-MJX-CHTML-styles";
8373
+ var oe = globalThis;
8374
+ var x$1 = "PIE-MJX-CHTML-styles";
8375
8375
  var se = ["MJX-CHTML-styles", "MJX-SVG-styles"];
8376
- var ce = ne;
8377
- var le = "http://www.w3.org/1998/Math/MathML";
8378
- var ue = /^([a-z_][\w.-]*):math$/;
8379
- var de = /^[a-z][a-z0-9-]*$/;
8380
- function fe(e) {
8376
+ var ce = re;
8377
+ var S$1 = "http://www.w3.org/1998/Math/MathML";
8378
+ var le = /^([a-z_][\w.-]*):math$/;
8379
+ var ue = /^[a-z][a-z0-9-]*$/;
8380
+ function de(e) {
8381
8381
  for (let t of e.querySelectorAll("*")) {
8382
- let n = ue.exec(t.tagName.toLowerCase())?.[1];
8383
- !n || !e.contains(t) || t.closest("mjx-container") || t.replaceWith(pe(t, `${n}:`));
8382
+ let n = le.exec(t.tagName.toLowerCase())?.[1];
8383
+ !n || !e.contains(t) || t.closest("mjx-container") || t.replaceWith(C(t, `${n}:`));
8384
8384
  }
8385
8385
  }
8386
- function pe(e, t) {
8386
+ function C(e, t) {
8387
8387
  let n = e.tagName.toLowerCase().slice(t.length);
8388
- if (!de.test(n)) return e;
8389
- let r = e.ownerDocument.createElementNS(le, n);
8388
+ if (!ue.test(n)) return e;
8389
+ let r = e.ownerDocument.createElementNS(S$1, n);
8390
8390
  for (let t of e.attributes) r.setAttribute(t.name, t.value);
8391
8391
  for (let n of [...e.childNodes]) {
8392
8392
  let e = n instanceof Element && n.tagName.toLowerCase().startsWith(t);
8393
- r.appendChild(e ? pe(n, t) : n);
8393
+ r.appendChild(e ? C(n, t) : n);
8394
8394
  }
8395
8395
  return r;
8396
8396
  }
8397
- var me = /* @__PURE__ */ new Set([
8397
+ var fe = /* @__PURE__ */ new Set([
8398
8398
  "updiagonalstrike",
8399
8399
  "downdiagonalstrike",
8400
8400
  "verticalstrike",
8401
8401
  "horizontalstrike"
8402
8402
  ]);
8403
- var he = {
8403
+ var pe = {
8404
8404
  thin: "0.035em",
8405
8405
  medium: "0.07em",
8406
8406
  thick: "0.14em"
8407
8407
  };
8408
- var S$1 = {
8408
+ var w = {
8409
8409
  tight: "0em",
8410
8410
  medium: "0.1em",
8411
8411
  loose: "0.2em"
8412
8412
  };
8413
- var C = /^(\d+(\.\d*)?|\.\d+)(em|ex|px|pt|pc|in|cm|mm)$/;
8414
- var ge = /^(#[0-9a-f]{3,8}|[a-z]+)$/i;
8415
- var _e$1 = /^(\d+(\.\d*)?|\.\d+)$/;
8416
- var ve = /* @__PURE__ */ new Set([
8413
+ var me = /^(\d+(\.\d*)?|\.\d+)(em|ex|px|pt|pc|in|cm|mm)$/;
8414
+ var he = /^(#[0-9a-f]{3,8}|[a-z]+)$/i;
8415
+ var ge = /^(\d+(\.\d*)?|\.\d+)$/;
8416
+ var _e$1 = /* @__PURE__ */ new Set([
8417
8417
  "mn",
8418
8418
  "mo",
8419
8419
  "mi",
8420
8420
  "mtext"
8421
8421
  ]);
8422
- var ye = /* @__PURE__ */ new Set([
8422
+ var ve = /* @__PURE__ */ new Set([
8423
8423
  "stackalign",
8424
8424
  "charalign",
8425
8425
  "charspacing",
8426
8426
  "longdivstyle"
8427
8427
  ]);
8428
- function w(e, t, n = [], r = {}) {
8429
- let i = e.createElementNS(le, t);
8428
+ function T(e, t, n = [], r = {}) {
8429
+ let i = e.createElementNS(S$1, t);
8430
8430
  for (let [e, t] of Object.entries(r)) i.setAttribute(e, t);
8431
8431
  for (let e of n) e && i.appendChild(e);
8432
8432
  return i;
8433
8433
  }
8434
- function T(e, t) {
8435
- let n = w(e.document, "mo");
8434
+ function E(e, t) {
8435
+ let n = T(e.document, "mo");
8436
8436
  return n.textContent = t, n;
8437
8437
  }
8438
- function be(e) {
8439
- let t = w(e.document, "mn");
8440
- return t.textContent = "0", w(e.document, "mphantom", [t]);
8438
+ function ye(e) {
8439
+ let t = T(e.document, "mn");
8440
+ return t.textContent = "0", T(e.document, "mphantom", [t]);
8441
8441
  }
8442
- function E(e, t) {
8442
+ function D(e, t) {
8443
8443
  return e.getAttribute(t)?.trim().toLowerCase() || void 0;
8444
8444
  }
8445
- function D(e, t) {
8445
+ function O(e, t) {
8446
8446
  let n = Number.parseInt(e.getAttribute(t) ?? "", 10);
8447
8447
  return Number.isFinite(n) ? n : 0;
8448
8448
  }
8449
- function O(e) {
8449
+ function k(e) {
8450
8450
  return e.localName === "none" || e.localName === "mrow" && e.children.length === 0 && !e.textContent?.trim();
8451
8451
  }
8452
- function k(e, t, n = e) {
8452
+ function A(e, t, n = e) {
8453
8453
  switch (t) {
8454
8454
  case "left": return 0;
8455
8455
  case "center": return Math.floor(e / 2);
@@ -8457,14 +8457,14 @@ function k(e, t, n = e) {
8457
8457
  default: return n;
8458
8458
  }
8459
8459
  }
8460
- function A(e, t, n) {
8460
+ function j(e, t, n) {
8461
8461
  let r = [], i, a, o = (e, t) => {
8462
8462
  let s = (e) => t.reduceRight((e, t) => {
8463
8463
  let n = t.cloneNode(!1);
8464
8464
  return n.appendChild(e), n;
8465
8465
  }, e);
8466
8466
  if (e.localName === "mstyle") for (let n of [...e.children]) o(n, [...t, e]);
8467
- else if (O(e)) r.push(null);
8467
+ else if (k(e)) r.push(null);
8468
8468
  else if (e.localName === "mn" && e.children.length === 0) {
8469
8469
  let t = [...(e.textContent ?? "").trim()];
8470
8470
  for (let a of t) {
@@ -8473,28 +8473,28 @@ function A(e, t, n) {
8473
8473
  t.textContent = a, r.push(s(t));
8474
8474
  }
8475
8475
  t.length && (a ?? (a = r.length));
8476
- } else ve.has(e.localName) && e.textContent?.trim() === n.decimalPoint && (i ?? (i = r.length)), r.push(s(e));
8476
+ } else _e$1.has(e.localName) && e.textContent?.trim() === n.decimalPoint && (i ?? (i = r.length)), r.push(s(e));
8477
8477
  };
8478
8478
  for (let t of e) o(t, []);
8479
8479
  return {
8480
8480
  kind: "digits",
8481
8481
  cells: r,
8482
- anchor: k(r.length, n.stackAlign, i ?? a),
8482
+ anchor: A(r.length, n.stackAlign, i ?? a),
8483
8483
  position: t
8484
8484
  };
8485
8485
  }
8486
- function xe(e) {
8487
- return (e ?? "").toLowerCase().split(/\s+/).filter((e) => me.has(e));
8486
+ function be(e) {
8487
+ return (e ?? "").toLowerCase().split(/\s+/).filter((e) => fe.has(e));
8488
8488
  }
8489
- function Se(e, t) {
8490
- let n = [...e.children].filter((e) => !O(e));
8491
- return n.length <= 1 ? n[0] ?? null : w(t.document, "mrow", n);
8489
+ function xe(e, t) {
8490
+ let n = [...e.children].filter((e) => !k(e));
8491
+ return n.length <= 1 ? n[0] ?? null : T(t.document, "mrow", n);
8492
8492
  }
8493
- function Ce(e, t, n) {
8494
- let r = E(e, "location") ?? "n", i = xe(e.getAttribute("crossout")), a = [...e.children].map((e) => O(e) ? null : e.localName === "mscarry" ? {
8495
- content: Se(e, n),
8496
- location: E(e, "location") ?? r,
8497
- crossout: e.hasAttribute("crossout") ? xe(e.getAttribute("crossout")) : i
8493
+ function Se(e, t, n) {
8494
+ let r = D(e, "location") ?? "n", i = be(e.getAttribute("crossout")), a = [...e.children].map((e) => k(e) ? null : e.localName === "mscarry" ? {
8495
+ content: xe(e, n),
8496
+ location: D(e, "location") ?? r,
8497
+ crossout: e.hasAttribute("crossout") ? be(e.getAttribute("crossout")) : i
8498
8498
  } : {
8499
8499
  content: e,
8500
8500
  location: r,
@@ -8503,60 +8503,60 @@ function Ce(e, t, n) {
8503
8503
  return {
8504
8504
  kind: "carries",
8505
8505
  carries: a,
8506
- anchor: k(a.length, n.stackAlign),
8506
+ anchor: A(a.length, n.stackAlign),
8507
8507
  position: t,
8508
- scale: _e$1.test(o) ? o : "0.6"
8508
+ scale: ge.test(o) ? o : "0.6"
8509
8509
  };
8510
8510
  }
8511
- function we(e) {
8512
- let t = E(e, "mslinethickness") ?? "medium", n = he[t] ?? (C.test(t) ? t : "0.07em"), r = e.getAttribute("mathcolor")?.trim() ?? "";
8513
- return `${n} solid ${ge.test(r) ? r : "currentColor"}`;
8511
+ function Ce(e) {
8512
+ let t = D(e, "mslinethickness") ?? "medium", n = pe[t] ?? (me.test(t) ? t : "0.07em"), r = e.getAttribute("mathcolor")?.trim() ?? "";
8513
+ return `${n} solid ${he.test(r) ? r : "currentColor"}`;
8514
8514
  }
8515
- function Te(e, t, n) {
8516
- let r = Math.max(0, D(e, "length"));
8515
+ function we(e, t, n) {
8516
+ let r = Math.max(0, O(e, "length"));
8517
8517
  return {
8518
8518
  kind: "line",
8519
8519
  length: r,
8520
- anchor: k(r, n.stackAlign),
8520
+ anchor: A(r, n.stackAlign),
8521
8521
  position: t,
8522
- border: we(e)
8522
+ border: Ce(e)
8523
8523
  };
8524
8524
  }
8525
- function j(e, t, n, r, i) {
8525
+ function M(e, t, n, r, i) {
8526
8526
  e.forEach((e, a) => {
8527
- let o = t + a * n + D(e, "position");
8527
+ let o = t + a * n + O(e, "position");
8528
8528
  switch (e.localName) {
8529
8529
  case "msgroup":
8530
- j([...e.children], o, D(e, "shift"), r, i);
8530
+ M([...e.children], o, O(e, "shift"), r, i);
8531
8531
  break;
8532
8532
  case "msline":
8533
- i.push(Te(e, o, r));
8533
+ i.push(we(e, o, r));
8534
8534
  break;
8535
8535
  case "mscarries":
8536
- i.push(Ce(e, o, r));
8536
+ i.push(Se(e, o, r));
8537
8537
  break;
8538
8538
  case "msrow":
8539
8539
  case "mrow":
8540
- i.push(A([...e.children], o, r));
8540
+ i.push(j([...e.children], o, r));
8541
8541
  break;
8542
- default: i.push(A([e], o, r));
8542
+ default: i.push(j([e], o, r));
8543
8543
  }
8544
8544
  });
8545
8545
  }
8546
- function M(e) {
8546
+ function N(e) {
8547
8547
  return -e.anchor - e.position;
8548
8548
  }
8549
- function N(e) {
8549
+ function Te(e) {
8550
8550
  return e.kind === "digits" ? e.cells.length : e.kind === "carries" ? e.carries.length : e.length;
8551
8551
  }
8552
- function P(e) {
8553
- return M(e) + N(e) - 1;
8552
+ function Ee(e) {
8553
+ return N(e) + Te(e) - 1;
8554
8554
  }
8555
- function Ee(e, t, n, r) {
8556
- let i = (e) => w(r.document, "mpadded", [t], {
8555
+ function De(e, t, n, r) {
8556
+ let i = (e) => T(r.document, "mpadded", [t], {
8557
8557
  width: "0",
8558
8558
  ...e ? { lspace: e } : {}
8559
- }), a = (e, t) => w(r.document, e, t);
8559
+ }), a = (e, t) => T(r.document, e, t);
8560
8560
  switch (n) {
8561
8561
  case "s": return a("munder", [e, i("-0.5width")]);
8562
8562
  case "ne": return a("msup", [e, i()]);
@@ -8578,49 +8578,49 @@ function Ee(e, t, n, r) {
8578
8578
  default: return a("mover", [e, i("-0.5width")]);
8579
8579
  }
8580
8580
  }
8581
- function De(e, t, n) {
8582
- let r = w(n.document, "menclose", [e], {
8581
+ function Oe(e, t, n) {
8582
+ let r = T(n.document, "menclose", [e], {
8583
8583
  notation: t.join(" "),
8584
8584
  "data-padding": "0.1em",
8585
8585
  "data-thickness": "0.067em"
8586
8586
  }), i = t.some((e) => e.endsWith("diagonalstrike")) ? .167 : t.includes("horizontalstrike") ? .1 : 0;
8587
- return i ? w(n.document, "mpadded", [r], {
8587
+ return i ? T(n.document, "mpadded", [r], {
8588
8588
  lspace: `-${i}em`,
8589
8589
  width: `-${2 * i}em`
8590
8590
  }) : r;
8591
8591
  }
8592
- function Oe(e, t, n, r, i) {
8593
- let a = e && t.crossout.length ? De(e, t.crossout, i) : e;
8592
+ function ke(e, t, n, r, i) {
8593
+ let a = e && t.crossout.length ? Oe(e, t.crossout, i) : e;
8594
8594
  if (!t.content) return a;
8595
- let o = w(i.document, "mstyle", [t.content], { scriptsizemultiplier: r });
8596
- return Ee(a ?? be(i), o, n, i);
8595
+ let o = T(i.document, "mstyle", [t.content], { scriptsizemultiplier: r });
8596
+ return De(a ?? ye(i), o, n, i);
8597
8597
  }
8598
- function ke(e, t) {
8599
- return e.carries[t - M(e)] ?? null;
8598
+ function Ae(e, t) {
8599
+ return e.carries[t - N(e)] ?? null;
8600
8600
  }
8601
- function Ae(e, t, n, r) {
8601
+ function je(e, t, n, r) {
8602
8602
  let i = e.content;
8603
8603
  n.forEach((e, a) => {
8604
- let o = n.length - 1 - a, s = n[o], c = ke(s, t), l = n.slice(0, o).some((e) => ke(e, t));
8604
+ let o = n.length - 1 - a, s = n[o], c = Ae(s, t), l = n.slice(0, o).some((e) => Ae(e, t));
8605
8605
  if (!c && !l) return;
8606
8606
  let u = c ?? {
8607
- content: be(r),
8607
+ content: ye(r),
8608
8608
  location: "n",
8609
8609
  crossout: []
8610
8610
  }, d = a === 0 ? u.location : "n";
8611
- i = Oe(i, u, d, s.scale, r);
8611
+ i = ke(i, u, d, s.scale, r);
8612
8612
  }), e.content = i;
8613
8613
  }
8614
- function je(e, t) {
8615
- let n = e.filter((e) => N(e) > 0), r = Math.min(0, ...n.map(M)), i = Math.max(r, ...n.map(P)) - r + 1, a = -r, o = [], s = /* @__PURE__ */ new Map(), c = () => Array.from({ length: i }, () => ({
8614
+ function Me(e, t) {
8615
+ let n = e.filter((e) => Te(e) > 0), r = Math.min(0, ...n.map(N)), i = Math.max(r, ...n.map(Ee)) - r + 1, a = -r, o = [], s = /* @__PURE__ */ new Map(), c = () => Array.from({ length: i }, () => ({
8616
8616
  content: null,
8617
8617
  borders: {}
8618
- })), l = (e) => e.length === 0 ? Array.from({ length: i }, (e, t) => t) : Array.from({ length: e.length }, (t, n) => a + M(e) + n), u = [], d = [], f = (e) => {
8618
+ })), l = (e) => e.length === 0 ? Array.from({ length: i }, (e, t) => t) : Array.from({ length: e.length }, (t, n) => a + N(e) + n), u = [], d = [], f = (e) => {
8619
8619
  let n = c();
8620
8620
  e.cells.forEach((t, r) => {
8621
- n[a + M(e) + r].content = t;
8621
+ n[a + N(e) + r].content = t;
8622
8622
  }), u.length && n.forEach((e, n) => {
8623
- Ae(e, n - a, u, t);
8623
+ je(e, n - a, u, t);
8624
8624
  });
8625
8625
  for (let e of d) for (let t of l(e)) n[t].borders.top = e.border;
8626
8626
  u = [], d = [], s.set(e, o.length), o.push(n);
@@ -8640,44 +8640,44 @@ function je(e, t) {
8640
8640
  origin: a
8641
8641
  };
8642
8642
  }
8643
- function Me(e, { rows: t }, n) {
8644
- let r = w(n.document, "mtable", t.map((e) => w(n.document, "mtr", e.map((e) => {
8643
+ function Ne(e, { rows: t }, n) {
8644
+ let r = T(n.document, "mtable", t.map((e) => T(n.document, "mtr", e.map((e) => {
8645
8645
  let t = Object.entries(e.borders).map(([e, t]) => `border-${e}:${t}`).join(";");
8646
- return w(n.document, "mtd", [e.content], {
8646
+ return T(n.document, "mtd", [e.content], {
8647
8647
  ...t ? { style: t } : {},
8648
8648
  ...e.align ? { columnalign: e.align } : {}
8649
8649
  });
8650
8650
  }))));
8651
- for (let { name: t, value: n } of [...e.attributes]) ye.has(t) || r.setAttribute(t, n);
8652
- let i = E(e, "charspacing") ?? "medium", a = E(e, "charalign");
8653
- return r.setAttribute("columnspacing", S$1[i] ?? (C.test(i) ? i : S$1.medium)), r.setAttribute("columnalign", a === "left" || a === "center" ? a : "right"), r.setAttribute("rowspacing", "0"), r.setAttribute("align", e.getAttribute("align") ?? "baseline"), r;
8651
+ for (let { name: t, value: n } of [...e.attributes]) ve.has(t) || r.setAttribute(t, n);
8652
+ let i = D(e, "charspacing") ?? "medium", a = D(e, "charalign");
8653
+ return r.setAttribute("columnspacing", w[i] ?? (me.test(i) ? i : w.medium)), r.setAttribute("columnalign", a === "left" || a === "center" ? a : "right"), r.setAttribute("rowspacing", "0"), r.setAttribute("align", e.getAttribute("align") ?? "baseline"), r;
8654
8654
  }
8655
- function Ne(e) {
8655
+ function Pe(e) {
8656
8656
  return {
8657
8657
  document: e.ownerDocument,
8658
- stackAlign: E(e, "stackalign") ?? "decimalpoint",
8658
+ stackAlign: D(e, "stackalign") ?? "decimalpoint",
8659
8659
  decimalPoint: e.closest("[decimalpoint]")?.getAttribute("decimalpoint")?.trim().charAt(0) || "."
8660
8660
  };
8661
8661
  }
8662
- function Pe(e) {
8663
- let t = Ne(e), n = [];
8664
- return j([...e.children], 0, 0, t, n), Me(e, je(n, t), t);
8662
+ function Fe(e) {
8663
+ let t = Pe(e), n = [];
8664
+ return M([...e.children], 0, 0, t, n), Ne(e, Me(n, t), t);
8665
8665
  }
8666
- function F(e, t, n, r, i, a) {
8666
+ function P(e, t, n, r, i, a) {
8667
8667
  for (let o = n; o <= r; o++) e[t][o].borders[i] = a;
8668
8668
  }
8669
- function Fe(e, t) {
8670
- let n = T(t, ")");
8671
- return n.setAttribute("minsize", "1.2em"), [w(t.document, "mrow", [e, w(t.document, "mspace", [], { width: "0.2em" })]), w(t.document, "mpadded", [n], {
8669
+ function Ie(e, t) {
8670
+ let n = E(t, ")");
8671
+ return n.setAttribute("minsize", "1.2em"), [T(t.document, "mrow", [e, T(t.document, "mspace", [], { width: "0.2em" })]), T(t.document, "mpadded", [n], {
8672
8672
  voffset: "0.1em",
8673
8673
  lspace: "-0.15em",
8674
8674
  depth: "-0.2em",
8675
8675
  height: "-0.2em"
8676
8676
  })];
8677
8677
  }
8678
- function Ie(e) {
8679
- let t = Ne(e), [n, r, ...i] = [...e.children], a = n && !O(n) ? n : null, o = r && !O(r) ? r : null, s = E(e, "longdivstyle") ?? "lefttop", c = we(e), l = [];
8680
- j(i, 0, 0, t, l);
8678
+ function Le(e) {
8679
+ let t = Pe(e), [n, r, ...i] = [...e.children], a = n && !k(n) ? n : null, o = r && !k(r) ? r : null, s = D(e, "longdivstyle") ?? "lefttop", c = Ce(e), l = [];
8680
+ M(i, 0, 0, t, l);
8681
8681
  let u = l.find((e) => e.kind === "digits");
8682
8682
  u || (u = {
8683
8683
  kind: "digits",
@@ -8689,51 +8689,51 @@ function Ie(e) {
8689
8689
  u.cells.unshift(...e), u.anchor += e.length;
8690
8690
  }, p = (...e) => {
8691
8691
  let n = e.flatMap((e) => e ? e.localName === "mrow" ? [...e.children] : [e] : []);
8692
- u.cells.push(...A(n, 0, t).cells);
8692
+ u.cells.push(...j(n, 0, t).cells);
8693
8693
  };
8694
8694
  switch (s) {
8695
8695
  case "left/\\right":
8696
- f(a, T(t, "/")), p(T(t, "\\"), o);
8696
+ f(a, E(t, "/")), p(E(t, "\\"), o);
8697
8697
  break;
8698
8698
  case "left)(right":
8699
- f(a, T(t, ")")), p(T(t, "("), o);
8699
+ f(a, E(t, ")")), p(E(t, "("), o);
8700
8700
  break;
8701
8701
  case ":right=right":
8702
- p(T(t, ":"), a, T(t, "="), o);
8702
+ p(E(t, ":"), a, E(t, "="), o);
8703
8703
  break;
8704
8704
  case "righttop":
8705
8705
  case "stackedleftlinetop":
8706
8706
  case "lefttop":
8707
- o && j([o], 0, 0, t, d), l.splice(l.indexOf(u), 0, ...d), s === "righttop" ? p(a) : s === "stackedleftlinetop" ? f(a) : f(...Fe(a, t));
8707
+ o && M([o], 0, 0, t, d), l.splice(l.indexOf(u), 0, ...d), s === "righttop" ? p(a) : s === "stackedleftlinetop" ? f(a) : f(...Ie(a, t));
8708
8708
  break;
8709
8709
  }
8710
- let m = je(l, t), h = m.rows, g = m.rowOf.get(u) ?? 0, _ = (e) => m.origin + M(u) + e, v = Math.max(_(u.cells.length - 1), ...d.map((e) => m.origin + P(e)));
8710
+ let m = Me(l, t), h = m.rows, g = m.rowOf.get(u) ?? 0, _ = (e) => m.origin + N(u) + e, v = Math.max(_(u.cells.length - 1), ...d.map((e) => m.origin + Ee(e)));
8711
8711
  switch (s) {
8712
8712
  case "left/\\right":
8713
8713
  case "left)(right":
8714
8714
  case ":right=right": break;
8715
8715
  case "righttop": {
8716
8716
  let e = h[g][_(u.cells.length - 1)];
8717
- e.borders.left = c, e.borders.bottom = c, F(h, g, _(0), _(u.cells.length - 1), "top", c);
8717
+ e.borders.left = c, e.borders.bottom = c, P(h, g, _(0), _(u.cells.length - 1), "top", c);
8718
8718
  break;
8719
8719
  }
8720
8720
  case "stackedleftlinetop": {
8721
8721
  let e = h[g][_(0)];
8722
- e.borders.right = c, e.borders.bottom = c, F(h, g, _(1), v, "top", c);
8722
+ e.borders.right = c, e.borders.bottom = c, P(h, g, _(1), v, "top", c);
8723
8723
  break;
8724
8724
  }
8725
8725
  case "stackedrightright":
8726
8726
  case "mediumstackedrightright":
8727
8727
  case "shortstackedrightright":
8728
8728
  case "stackedleftleft":
8729
- Le(h, g, s, a, o, c, t);
8729
+ Re(h, g, s, a, o, c, t);
8730
8730
  break;
8731
- default: F(h, g, _(1), v, "top", c);
8731
+ default: P(h, g, _(1), v, "top", c);
8732
8732
  }
8733
- return Me(e, m, t);
8733
+ return Ne(e, m, t);
8734
8734
  }
8735
- function Le(e, t, n, r, i, a, o) {
8736
- let s = n === "stackedleftleft", c = s ? "right" : "left", l = (e) => e && w(o.document, "mpadded", [e], {
8735
+ function Re(e, t, n, r, i, a, o) {
8736
+ let s = n === "stackedleftleft", c = s ? "right" : "left", l = (e) => e && T(o.document, "mpadded", [e], {
8737
8737
  lspace: "0.2em",
8738
8738
  width: "+0.4em"
8739
8739
  });
@@ -8752,65 +8752,65 @@ function Le(e, t, n, r, i, a, o) {
8752
8752
  }) : o === t + 1 ? (u.content = l(i), n !== "shortstackedrightright" && (u.borders[c] = a)) : o > t + 1 && (n === "stackedrightright" || s) && (u.borders[c] = a), s ? e.unshift(u) : e.push(u);
8753
8753
  });
8754
8754
  }
8755
- function Re(e) {
8756
- for (let t of [...e.querySelectorAll("mstack, mlongdiv")]) !t.closest("math") || t.closest("mjx-container") || t.replaceWith(t.localName === "mstack" ? Pe(t) : Ie(t));
8755
+ function ze(e) {
8756
+ for (let t of [...e.querySelectorAll("mstack, mlongdiv")]) !t.closest("math") || t.closest("mjx-container") || t.replaceWith(t.localName === "mstack" ? Fe(t) : Le(t));
8757
8757
  }
8758
- var ze = "PIE-MJX-explorer-styles";
8759
- var I = "var(--pie-text, black)";
8760
- var Be = "var(--pie-background, #ffffff)";
8761
- var Ve = "var(--pie-border-dark, #66686A)";
8762
- var L = "var(--pie-focus-outline, var(--pie-button-focus-outline, var(--pie-focus-checked-border, #1565C0)))";
8763
- var R = `color-mix(in srgb, ${L} 15%, transparent)`;
8764
- var He = `
8758
+ var Be = "PIE-MJX-explorer-styles";
8759
+ var F = "var(--pie-text, black)";
8760
+ var Ve = "var(--pie-background, #ffffff)";
8761
+ var He = "var(--pie-border-dark, #66686A)";
8762
+ var I = "var(--pie-focus-outline, var(--pie-button-focus-outline, var(--pie-focus-checked-border, #1565C0)))";
8763
+ var L = `color-mix(in srgb, ${I} 15%, transparent)`;
8764
+ var Ue = `
8765
8765
  :root mjx-container [data-sre-highlight-1]:not([data-mjx-collapsed], rect) {
8766
- color: ${I} !important;
8767
- fill: ${I} !important;
8766
+ color: ${F} !important;
8767
+ fill: ${F} !important;
8768
8768
  }
8769
8769
  :root mjx-container:not([data-mjx-clone-container]) [data-sre-highlight-1]:not([data-sre-enclosed], rect) {
8770
- background-color: ${R} !important;
8770
+ background-color: ${L} !important;
8771
8771
  }
8772
8772
  :root mjx-container rect[data-sre-highlight-1]:not([data-sre-enclosed]) {
8773
- fill: ${R} !important;
8773
+ fill: ${L} !important;
8774
8774
  }
8775
8775
  :root mjx-container .mjx-selected {
8776
- outline: 2px solid ${L} !important;
8776
+ outline: 2px solid ${I} !important;
8777
8777
  }
8778
8778
  :root mjx-container [data-sre-highlight-2] {
8779
- color: ${I} !important;
8779
+ color: ${F} !important;
8780
8780
  background-color: transparent !important;
8781
- fill: ${I} !important;
8782
- outline: 2px dashed ${L} !important;
8781
+ fill: ${F} !important;
8782
+ outline: 2px dashed ${I} !important;
8783
8783
  }
8784
8784
  :root mjx-container rect[data-sre-highlight-2] {
8785
8785
  fill: transparent !important;
8786
- stroke: ${L} !important;
8786
+ stroke: ${I} !important;
8787
8787
  stroke-width: 2px !important;
8788
8788
  vector-effect: non-scaling-stroke;
8789
8789
  }
8790
8790
  :root .MJX_LiveRegion, :root .MJX_HoverRegion, :root .MJX_ToolTip {
8791
- color: ${I} !important;
8792
- background-color: ${Be} !important;
8793
- border-color: ${Ve} !important;
8791
+ color: ${F} !important;
8792
+ background-color: ${Ve} !important;
8793
+ border-color: ${He} !important;
8794
8794
  }
8795
8795
  :root .MJX_LiveRegion > div, :root .MJX_HoverRegion > div {
8796
- color: ${I} !important;
8797
- background-color: ${R} !important;
8796
+ color: ${F} !important;
8797
+ background-color: ${L} !important;
8798
8798
  }
8799
8799
  `;
8800
- function Ue(e = document) {
8800
+ function We(e = document) {
8801
8801
  if (e.getElementById("PIE-MJX-explorer-styles")) return;
8802
8802
  let t = e.createElement("style");
8803
- t.id = ze, t.textContent = He, e.head.appendChild(t);
8803
+ t.id = Be, t.textContent = Ue, e.head.appendChild(t);
8804
8804
  }
8805
- var We = /[⁡-⁤]/g;
8806
- var z = {
8805
+ var Ge = /[⁡-⁤]/g;
8806
+ var R = {
8807
8807
  "+": "positive",
8808
8808
  "-": "negative",
8809
8809
  "−": "negative",
8810
8810
  "±": "plus or minus",
8811
8811
  "∓": "minus or plus"
8812
8812
  };
8813
- var Ge = {
8813
+ var Ke = {
8814
8814
  "(": "open parenthesis",
8815
8815
  "[": "open bracket",
8816
8816
  "{": "open brace",
@@ -8818,7 +8818,7 @@ var Ge = {
8818
8818
  "⌊": "open floor",
8819
8819
  "⌈": "open ceiling"
8820
8820
  };
8821
- var B = {
8821
+ var z = {
8822
8822
  ")": "close parenthesis",
8823
8823
  "]": "close bracket",
8824
8824
  "}": "close brace",
@@ -8826,14 +8826,14 @@ var B = {
8826
8826
  "⌋": "close floor",
8827
8827
  "⌉": "close ceiling"
8828
8828
  };
8829
- var V = {
8829
+ var B = {
8830
8830
  "!": "factorial",
8831
8831
  "%": "percent",
8832
8832
  "°": "degrees",
8833
8833
  "′": "prime",
8834
8834
  "″": "double prime"
8835
8835
  };
8836
- var Ke = {
8836
+ var qe = {
8837
8837
  "+": "plus",
8838
8838
  "-": "minus",
8839
8839
  "−": "minus",
@@ -8877,19 +8877,19 @@ var Ke = {
8877
8877
  ":": "colon",
8878
8878
  "|": "vertical bar",
8879
8879
  "‖": "double vertical bar",
8880
- ...Ge,
8881
- ...B,
8882
- ...V
8880
+ ...Ke,
8881
+ ...z,
8882
+ ...B
8883
8883
  };
8884
- var qe = /* @__PURE__ */ new Set(["|", "‖"]);
8885
- var Je = /* @__PURE__ */ new Set([
8884
+ var Je = /* @__PURE__ */ new Set(["|", "‖"]);
8885
+ var Ye = /* @__PURE__ */ new Set([
8886
8886
  "∑",
8887
8887
  "∏",
8888
8888
  "∫",
8889
8889
  "∪",
8890
8890
  "∩"
8891
8891
  ]);
8892
- var Ye = {
8892
+ var Xe = {
8893
8893
  α: "alpha",
8894
8894
  β: "beta",
8895
8895
  γ: "gamma",
@@ -8917,7 +8917,7 @@ var Ye = {
8917
8917
  ln: "natural log",
8918
8918
  lim: "limit"
8919
8919
  };
8920
- var Xe = {
8920
+ var Ze = {
8921
8921
  "¯": "bar",
8922
8922
  "‾": "bar",
8923
8923
  "―": "bar",
@@ -8929,139 +8929,139 @@ var Xe = {
8929
8929
  "⃗": "vector",
8930
8930
  "˙": "dot"
8931
8931
  };
8932
- var H = (e) => (e.textContent ?? "").replace(We, "").replace(/\s+/g, " ").trim();
8933
- var U = (e) => e.replace(/\s+/g, " ").trim();
8934
- var W = (e) => [...e.children];
8935
- function G(e) {
8932
+ var V = (e) => (e.textContent ?? "").replace(Ge, "").replace(/\s+/g, " ").trim();
8933
+ var H = (e) => e.replace(/\s+/g, " ").trim();
8934
+ var U = (e) => [...e.children];
8935
+ function W(e) {
8936
8936
  return !e || [
8937
8937
  "mn",
8938
8938
  "mi",
8939
8939
  "mtext",
8940
8940
  "mo"
8941
- ].includes(e.localName) ? !0 : ["mrow", "mstyle"].includes(e.localName) && e.children.length === 1 ? G(e.children[0]) : !1;
8941
+ ].includes(e.localName) ? !0 : ["mrow", "mstyle"].includes(e.localName) && e.children.length === 1 ? W(e.children[0]) : !1;
8942
8942
  }
8943
- function Ze(e) {
8944
- let t = e ? H(e) : "";
8943
+ function Qe(e) {
8944
+ let t = e ? V(e) : "";
8945
8945
  return /^\d{1,3}$/.test(t) ? Number(t) : void 0;
8946
8946
  }
8947
- function Qe(e) {
8947
+ function $e(e) {
8948
8948
  return `${e}${e % 100 >= 11 && e % 100 <= 13 ? "th" : {
8949
8949
  1: "st",
8950
8950
  2: "nd",
8951
8951
  3: "rd"
8952
8952
  }[e % 10] ?? "th"}`;
8953
8953
  }
8954
- function $e(e) {
8955
- return Ye[e] ?? e;
8954
+ function et(e) {
8955
+ return Xe[e] ?? e;
8956
8956
  }
8957
- function K(e) {
8958
- return Ke[e] ?? e;
8957
+ function G(e) {
8958
+ return qe[e] ?? e;
8959
8959
  }
8960
- function q(e) {
8960
+ function K(e) {
8961
8961
  let t = [], n = !1;
8962
8962
  for (let r of e) {
8963
8963
  if (r.localName !== "mo") {
8964
- t.push(J(r)), n = !0;
8964
+ t.push(q(r)), n = !0;
8965
8965
  continue;
8966
8966
  }
8967
- let e = H(r);
8968
- e && (!n && z[e] ? t.push(z[e]) : e in V ? t.push(V[e]) : (t.push(K(e)), n = e in B || qe.has(e) && n));
8967
+ let e = V(r);
8968
+ e && (!n && R[e] ? t.push(R[e]) : e in B ? t.push(B[e]) : (t.push(G(e)), n = e in z || Je.has(e) && n));
8969
8969
  }
8970
8970
  return t.filter(Boolean).join(" ");
8971
8971
  }
8972
- function et(e) {
8973
- let [t, ...n] = e, r = n[n.length - 1], i = (e) => e?.localName === "mo" && ["|", "‖"].includes(H(e)), a = n.slice(0, -1);
8974
- if (a.length && i(t) && i(r) && H(t) === H(r) && !a.some(i)) {
8975
- let e = U(q(a));
8976
- return H(t) === "|" ? `absolute value of ${e} end absolute value` : `norm of ${e} end norm`;
8972
+ function tt(e) {
8973
+ let [t, ...n] = e, r = n[n.length - 1], i = (e) => e?.localName === "mo" && ["|", "‖"].includes(V(e)), a = n.slice(0, -1);
8974
+ if (a.length && i(t) && i(r) && V(t) === V(r) && !a.some(i)) {
8975
+ let e = H(K(a));
8976
+ return V(t) === "|" ? `absolute value of ${e} end absolute value` : `norm of ${e} end norm`;
8977
8977
  }
8978
- return q(e);
8978
+ return K(e);
8979
8979
  }
8980
- function tt(e, t) {
8981
- let n = e ? J(e) : "", r = t ? J(t) : "";
8982
- return G(e) && G(t) ? `${n} over ${r}` : `the fraction with numerator ${n} and denominator ${r}`;
8980
+ function nt(e, t) {
8981
+ let n = e ? q(e) : "", r = t ? q(t) : "";
8982
+ return W(e) && W(t) ? `${n} over ${r}` : `the fraction with numerator ${n} and denominator ${r}`;
8983
8983
  }
8984
- function nt(e, t, n) {
8984
+ function rt(e, t, n) {
8985
8985
  return n ? `${t} of ${e}` : `${t} of ${e} end root`;
8986
8986
  }
8987
- function rt(e, t) {
8988
- let n = t ? H(t) : "";
8989
- if (t && G(t)) {
8987
+ function it(e, t) {
8988
+ let n = t ? V(t) : "";
8989
+ if (t && W(t)) {
8990
8990
  if (n === "2") return `${e} squared`;
8991
8991
  if (n === "3") return `${e} cubed`;
8992
- if (n in V) return `${e} ${V[n]}`;
8992
+ if (n in B) return `${e} ${B[n]}`;
8993
8993
  }
8994
- let r = t ? J(t) : "";
8995
- return G(t) ? `${e} to the power of ${r}` : `${e} to the power of ${r} end power`;
8994
+ let r = t ? q(t) : "";
8995
+ return W(t) ? `${e} to the power of ${r}` : `${e} to the power of ${r} end power`;
8996
8996
  }
8997
- function it(e, t) {
8998
- let n = t ? J(t) : "";
8999
- return G(t) ? `${e} sub ${n}` : `${e} sub ${n} end sub`;
9000
- }
9001
- function at(e, t, n) {
9002
- let r = H(e);
9003
- if (r === "lim") return `limit as ${t ? J(t) : ""} of`;
9004
- if (!Je.has(r)) return;
9005
- let i = t ? `from ${J(t)}` : "", a = n ? `to ${J(n)}` : "";
9006
- return `${K(r)} ${i} ${a} of`;
9007
- }
9008
- function ot(e) {
9009
- let t = W(e).filter((e) => ["mtr", "mlabeledtr"].includes(e.localName)), n = t.map((e) => W(e).filter((e) => e.localName === "mtd")), r = Math.max(0, ...n.map((e) => e.length)), i = n.map((e, t) => `row ${t + 1}: ${e.map((e) => U(q(W(e)))).join(", ")}`);
9010
- return `table with ${t.length} ${t.length === 1 ? "row" : "rows"} and ${r} ${r === 1 ? "column" : "columns"}. ${i.join(". ")}`;
8997
+ function at(e, t) {
8998
+ let n = t ? q(t) : "";
8999
+ return W(t) ? `${e} sub ${n}` : `${e} sub ${n} end sub`;
9000
+ }
9001
+ function ot(e, t, n) {
9002
+ let r = V(e);
9003
+ if (r === "lim") return `limit as ${t ? q(t) : ""} of`;
9004
+ if (!Ye.has(r)) return;
9005
+ let i = t ? `from ${q(t)}` : "", a = n ? `to ${q(n)}` : "";
9006
+ return `${G(r)} ${i} ${a} of`;
9011
9007
  }
9012
9008
  function st(e) {
9013
- let t = e.getAttribute("open") ?? "(", n = e.getAttribute("close") ?? ")", r = (e.getAttribute("separators") ?? ",").replace(/\s+/g, "").split(""), i = W(e).map((e, t, n) => t < n.length - 1 ? `${J(e)} ${K(r[Math.min(t, r.length - 1)] ?? ",")}` : J(e));
9009
+ let t = U(e).filter((e) => ["mtr", "mlabeledtr"].includes(e.localName)), n = t.map((e) => U(e).filter((e) => e.localName === "mtd")), r = Math.max(0, ...n.map((e) => e.length)), i = n.map((e, t) => `row ${t + 1}: ${e.map((e) => H(K(U(e)))).join(", ")}`);
9010
+ return `table with ${t.length} ${t.length === 1 ? "row" : "rows"} and ${r} ${r === 1 ? "column" : "columns"}. ${i.join(". ")}`;
9011
+ }
9012
+ function ct(e) {
9013
+ let t = e.getAttribute("open") ?? "(", n = e.getAttribute("close") ?? ")", r = (e.getAttribute("separators") ?? ",").replace(/\s+/g, "").split(""), i = U(e).map((e, t, n) => t < n.length - 1 ? `${q(e)} ${G(r[Math.min(t, r.length - 1)] ?? ",")}` : q(e));
9014
9014
  return [
9015
- K(t),
9015
+ G(t),
9016
9016
  ...i,
9017
- K(n)
9017
+ G(n)
9018
9018
  ].filter(Boolean).join(" ");
9019
9019
  }
9020
- function J(e) {
9021
- let t = W(e);
9020
+ function q(e) {
9021
+ let t = U(e);
9022
9022
  switch (e.localName) {
9023
- case "mi": return $e(H(e));
9023
+ case "mi": return et(V(e));
9024
9024
  case "mn":
9025
9025
  case "mtext":
9026
- case "ms": return H(e);
9027
- case "mo": return K(H(e));
9026
+ case "ms": return V(e);
9027
+ case "mo": return G(V(e));
9028
9028
  case "mspace":
9029
9029
  case "mphantom":
9030
9030
  case "annotation":
9031
9031
  case "annotation-xml": return "";
9032
- case "semantics": return t[0] ? J(t[0]) : "";
9033
- case "mfrac": return tt(t[0], t[1]);
9034
- case "msqrt": return nt(U(q(t)), "square root", t.length === 1 && G(t[0]));
9032
+ case "semantics": return t[0] ? q(t[0]) : "";
9033
+ case "mfrac": return nt(t[0], t[1]);
9034
+ case "msqrt": return rt(H(K(t)), "square root", t.length === 1 && W(t[0]));
9035
9035
  case "mroot": {
9036
- let e = Ze(t[1]), n = e === 2 ? "square root" : e === 3 ? "cube root" : e ? `${Qe(e)} root` : `root with index ${t[1] ? J(t[1]) : ""}`;
9037
- return nt(t[0] ? J(t[0]) : "", n, G(t[0]));
9036
+ let e = Qe(t[1]), n = e === 2 ? "square root" : e === 3 ? "cube root" : e ? `${$e(e)} root` : `root with index ${t[1] ? q(t[1]) : ""}`;
9037
+ return rt(t[0] ? q(t[0]) : "", n, W(t[0]));
9038
9038
  }
9039
- case "msup": return rt(t[0] ? J(t[0]) : "", t[1]);
9040
- case "msub": return it(t[0] ? J(t[0]) : "", t[1]);
9041
- case "msubsup": return (t[0] ? at(t[0], t[1], t[2]) : void 0) || rt(it(t[0] ? J(t[0]) : "", t[1]), t[2]);
9039
+ case "msup": return it(t[0] ? q(t[0]) : "", t[1]);
9040
+ case "msub": return at(t[0] ? q(t[0]) : "", t[1]);
9041
+ case "msubsup": return (t[0] ? ot(t[0], t[1], t[2]) : void 0) || it(at(t[0] ? q(t[0]) : "", t[1]), t[2]);
9042
9042
  case "munder":
9043
9043
  case "mover":
9044
9044
  case "munderover": {
9045
- let [n, r, i] = t, a = e.localName === "mover" ? void 0 : r, o = e.localName === "munder" ? void 0 : e.localName === "mover" ? r : i, s = n ? at(n, a, o) : void 0;
9045
+ let [n, r, i] = t, a = e.localName === "mover" ? void 0 : r, o = e.localName === "munder" ? void 0 : e.localName === "mover" ? r : i, s = n ? ot(n, a, o) : void 0;
9046
9046
  if (s) return s;
9047
- let c = n ? J(n) : "", l = e.localName === "mover" && r ? Xe[H(r)] : void 0;
9047
+ let c = n ? q(n) : "", l = e.localName === "mover" && r ? Ze[V(r)] : void 0;
9048
9048
  return l ? l === "vector" ? `vector ${c}` : `${c} ${l}` : [
9049
9049
  c,
9050
- a ? `with ${J(a)} below` : "",
9051
- o ? `with ${J(o)} above` : ""
9050
+ a ? `with ${q(a)} below` : "",
9051
+ o ? `with ${q(o)} above` : ""
9052
9052
  ].filter(Boolean).join(" ");
9053
9053
  }
9054
- case "mfenced": return st(e);
9055
- case "mtable": return ot(e);
9054
+ case "mfenced": return ct(e);
9055
+ case "mtable": return st(e);
9056
9056
  case "mrow":
9057
- case "math": return et(t);
9058
- default: return t.length ? q(t) : H(e);
9057
+ case "math": return tt(t);
9058
+ default: return t.length ? K(t) : V(e);
9059
9059
  }
9060
9060
  }
9061
- function ct(e) {
9062
- return U(J(e));
9061
+ function lt(e) {
9062
+ return H(q(e));
9063
9063
  }
9064
- var lt = [
9064
+ var ut = [
9065
9065
  "a[href]",
9066
9066
  "button",
9067
9067
  "label",
@@ -9081,35 +9081,35 @@ var lt = [
9081
9081
  "treeitem"
9082
9082
  ].map((e) => `[role="${e}"]`)
9083
9083
  ].join(", ");
9084
- function ut(e) {
9085
- if (e.hasAttribute("aria-label") || !e.closest(lt)) return;
9086
- let t = e.querySelector("math"), n = t ? ct(t) : "";
9084
+ function dt(e) {
9085
+ if (e.hasAttribute("aria-label") || !e.closest(ut)) return;
9086
+ let t = e.querySelector("math"), n = t ? lt(t) : "";
9087
9087
  n && e.setAttribute("aria-label", n);
9088
9088
  }
9089
- function Y(e) {
9090
- for (let t of e.querySelectorAll("mjx-container")) ut(t);
9089
+ function J(e) {
9090
+ for (let t of e.querySelectorAll("mjx-container")) dt(t);
9091
9091
  }
9092
- var dt = Symbol.for("@pie-element/shared-math-rendering-mathjax/speech-worker-failed");
9093
- function ft() {
9092
+ var ft = Symbol.for("@pie-element/shared-math-rendering-mathjax/speech-worker-failed");
9093
+ function pt() {
9094
9094
  let e = globalThis;
9095
- e[dt] || (e[dt] = !0, console.warn(`[math-rendering] MathJax's speech worker did not start, so speech, braille and the explorer are off. A content security policy must allow blob: workers, and scripts and fetches from the asset root. See ${t$3}`));
9095
+ e[ft] || (e[ft] = !0, console.warn(`[math-rendering] MathJax's speech worker did not start, so speech, braille and the explorer are off. A content security policy must allow blob: workers, and scripts and fetches from the asset root. See ${t$3}`));
9096
9096
  }
9097
- function pt(e) {
9097
+ function mt(e) {
9098
9098
  let t = e.webworker;
9099
9099
  if (!t || t.ready) return;
9100
9100
  e.options ?? (e.options = {});
9101
9101
  let n = e.options;
9102
- n.enableSpeech = !1, n.enableBraille = !1, n.speechError = () => {}, t.Post = () => Promise.reject(/* @__PURE__ */ Error("The speech worker did not start")), t.Terminate(), ft();
9102
+ n.enableSpeech = !1, n.enableBraille = !1, n.speechError = () => {}, t.Post = () => Promise.reject(/* @__PURE__ */ Error("The speech worker did not start")), t.Terminate(), pt();
9103
9103
  }
9104
- function mt(e) {
9104
+ function ht(e) {
9105
9105
  let t = e?.adaptor, n = t?.createWorker;
9106
9106
  !e || !t || !n || (t.createWorker = async (r, i) => {
9107
9107
  let a = await n.call(t, r, i);
9108
- return a.addEventListener("error", () => pt(e), { once: !0 }), a;
9108
+ return a.addEventListener("error", () => mt(e), { once: !0 }), a;
9109
9109
  });
9110
9110
  }
9111
9111
  `${i}`;
9112
- var ht = {
9112
+ var gt = {
9113
9113
  parallelogram: "\\lower.2em{\\Huge\\unicode{x25B1}}",
9114
9114
  overarc: "\\overparen",
9115
9115
  napprox: "\\not\\approx",
@@ -9118,7 +9118,6 @@ var ht = {
9118
9118
  perpendicular: "\\perp",
9119
9119
  divide: "\\div"
9120
9120
  };
9121
- var gt = "[math-rendering] using $ is not advisable, please use $$..$$ or \\(...\\)";
9122
9121
  var _t = /\\\(|\\\[|\$\$|\\\$|\\begin\{|\\(?:eq)?ref\{/;
9123
9122
  var vt = /\\\(|\\\[|\$|\\begin\{|\\(?:eq)?ref\{/;
9124
9123
  var yt = /\\embed\{newLine\}\[\]/g;
@@ -9128,67 +9127,68 @@ var bt = [
9128
9127
  ["\\[", "\\]"],
9129
9128
  ["\\(", "\\)"]
9130
9129
  ];
9131
- var xt = Symbol.for("@pie-element/shared-math-rendering-mathjax/loading");
9132
- var St = "MJX-CHTML-styles";
9133
- var Ct = "PIE-MJX-SVG-styles";
9134
- var X = "PIE-MathJax-Menu-Settings";
9135
- var wt = { "mjx-container[overflow=\"linebreak\"][display]": {
9130
+ function xt(e) {
9131
+ for (let [t, n] of bt) if (e.startsWith(t) && e.endsWith(n)) return e.substring(t.length, e.length - n.length);
9132
+ return e;
9133
+ }
9134
+ function St(e) {
9135
+ return `\\(${xt(e.includes("\\displaystyle") ? e.replace("\\displaystyle", "").trim() : e)}\\)`.replace(yt, "\\newline ");
9136
+ }
9137
+ var Ct = "mathjax_ignore";
9138
+ var wt = "mathjax_process";
9139
+ var Tt = "[math-rendering] using $ is not advisable, please use $$..$$ or \\(...\\)";
9140
+ var Et = Symbol.for("@pie-element/shared-math-rendering-mathjax/loading");
9141
+ var Dt = "MJX-CHTML-styles";
9142
+ var Ot = "PIE-MJX-SVG-styles";
9143
+ var Y = "PIE-MathJax-Menu-Settings";
9144
+ var kt = { "mjx-container[overflow=\"linebreak\"][display]": {
9136
9145
  overflow: "auto clip",
9137
9146
  "min-width": "initial !important"
9138
9147
  } };
9139
- var Tt = 200;
9140
- var Et = 201;
9141
- var Dt = 202;
9142
- function Z(e) {
9148
+ var At = 200;
9149
+ var jt = 201;
9150
+ var Mt = 202;
9151
+ function X(e) {
9143
9152
  let t = [...e.matches("mjx-container") ? [e] : [], ...e.querySelectorAll("mjx-container")];
9144
9153
  for (let e of t) for (let t of [e, ...e.querySelectorAll("[data-latex],[data-latex-item]")]) t.removeAttribute("data-latex"), t.removeAttribute("data-latex-item");
9145
9154
  }
9146
- function Ot(e) {
9147
- for (let [t, n] of bt) if (e.startsWith(t) && e.endsWith(n)) return e.substring(t.length, e.length - n.length);
9148
- return e;
9149
- }
9150
- function kt(e) {
9151
- return Ot(e.includes("\\displaystyle") ? e.replace("\\displaystyle", "").trim() : e);
9155
+ function Nt(e, t) {
9156
+ let n = e.closest(`.${Ct}, .${wt}`);
9157
+ return n !== null && t.contains(n) && !n.classList.contains("mathjax_process");
9152
9158
  }
9153
- var At = "mathjax_ignore";
9154
- var jt = "mathjax_process";
9155
- function Mt(e, t) {
9156
- let n = e.closest(`.${At}, .${jt}`);
9157
- return n !== null && t.contains(n) && !n.classList.contains(jt);
9158
- }
9159
- function Nt(e) {
9159
+ function Pt(e) {
9160
9160
  for (let t of e.querySelectorAll("[data-latex]")) {
9161
- if (t.dataset.mathHandled || t.closest("mjx-container") || Mt(t, e)) continue;
9161
+ if (t.dataset.mathHandled || t.closest("mjx-container") || Nt(t, e)) continue;
9162
9162
  let n = t.textContent;
9163
- n && (t.textContent = `\\(${kt(n)}\\)`.replace(yt, "\\newline "), t.dataset.mathHandled = "true");
9163
+ n && (t.textContent = St(n), t.dataset.mathHandled = "true");
9164
9164
  }
9165
9165
  }
9166
- function Pt(e) {
9166
+ function Ft(e) {
9167
9167
  for (let t of e.querySelectorAll("math")) t.closest("mjx-container") || t.setAttribute("displaystyle", "true");
9168
9168
  }
9169
- function Ft(e, t) {
9169
+ function It(e, t) {
9170
9170
  for (let t of e.querySelectorAll("math")) if (!t.closest("mjx-assistive-mml")) return !0;
9171
9171
  return (t ? vt : _t).test(e.textContent ?? "");
9172
9172
  }
9173
- function It(e) {
9173
+ function Lt(e) {
9174
9174
  return new Promise((t, n) => {
9175
9175
  let { useSingleDollar: r = !1, accessibility: i = !0, loadFonts: a = !0, srcUrl: o } = e, s = f(e, import.meta.url), l = c(), u = {
9176
9176
  loader: {
9177
9177
  load: i ? ["a11y/assistive-mml"] : [],
9178
9178
  failed: (e) => n(e),
9179
9179
  "output/svg": { ready: (e) => {
9180
- let t = x$1();
9181
- return Lt(t) && Rt(t), e;
9180
+ let t = b();
9181
+ return Rt(t) && zt(t), e;
9182
9182
  } }
9183
9183
  },
9184
9184
  startup: {
9185
9185
  typeset: !1,
9186
9186
  ready: () => {
9187
- let e = x$1(), r = e?.startup, i = Lt(e);
9188
- i && (Rt(e), zt(e, s.speechLocales), p(e?._?.a11y?.sre_ts?.locales, s.speechLocales)), r?.defaultReady?.(), i && (Bt(r?.document), Vt(r?.document), r?.document?.addStyles?.(wt), mt(r?.document)), Promise.resolve(r?.promise).then(() => t(), n);
9187
+ let e = b(), r = e?.startup, i = Rt(e);
9188
+ i && (zt(e), Bt(e, s.speechLocales), p(e?._?.a11y?.sre_ts?.locales, s.speechLocales)), r?.defaultReady?.(), i && (Vt(r?.document), Ht(r?.document), r?.document?.addStyles?.(kt), ht(r?.document)), Promise.resolve(r?.promise).then(() => t(), n);
9189
9189
  }
9190
9190
  },
9191
- tex: { macros: { ...ht } },
9191
+ tex: { macros: { ...gt } },
9192
9192
  output: { displayOverflow: "linebreak" },
9193
9193
  options: {
9194
9194
  enableMenu: i,
@@ -9200,9 +9200,9 @@ function It(e) {
9200
9200
  a11y: { inTabOrder: l }
9201
9201
  }
9202
9202
  };
9203
- r && u.tex && (console.warn(gt), u.tex.inlineMath = [["$", "$"], ["\\(", "\\)"]], u.tex.processEscapes = !0), a || (u.chtml = { fontURL: "" });
9203
+ r && u.tex && (console.warn(Tt), u.tex.inlineMath = [["$", "$"], ["\\(", "\\)"]], u.tex.processEscapes = !0), a || (u.chtml = { fontURL: "" });
9204
9204
  let d = m(s.speechLocales);
9205
- d && u.options && (u.options.sre = { locale: d }), ie(u, {
9205
+ d && u.options && (u.options.sre = { locale: d }), ae(u, {
9206
9206
  ...s,
9207
9207
  srcUrl: o
9208
9208
  }).then((e) => {
@@ -9210,131 +9210,131 @@ function It(e) {
9210
9210
  }, n);
9211
9211
  });
9212
9212
  }
9213
- function Lt(e) {
9213
+ function Rt(e) {
9214
9214
  return !!e?.version?.startsWith("4.");
9215
9215
  }
9216
- function Rt(e) {
9216
+ function zt(e) {
9217
9217
  let t = e?._?.output, n = t?.chtml_ts?.CHTML;
9218
- n && (n.STYLESHEETID = oe);
9218
+ n && (n.STYLESHEETID = x$1);
9219
9219
  let r = t?.svg_ts?.SVG;
9220
- r && (r.STYLESHEETID = Ct);
9220
+ r && (r.STYLESHEETID = Ot);
9221
9221
  }
9222
- function zt(e, t) {
9222
+ function Bt(e, t) {
9223
9223
  let n = e?._?.ui?.menu?.Menu?.Menu;
9224
9224
  if (n) {
9225
- n.MENU_STORAGE = X;
9225
+ n.MENU_STORAGE = Y;
9226
9226
  try {
9227
- let e = localStorage.getItem(X);
9227
+ let e = localStorage.getItem(Y);
9228
9228
  if (!e) return;
9229
9229
  let { assistiveMml: n, locale: r, ...i } = JSON.parse(e), a = r === void 0 || !t || t.has(r);
9230
9230
  if (n === void 0 && a) return;
9231
- a && r !== void 0 && (i.locale = r), Object.keys(i).length ? localStorage.setItem(X, JSON.stringify(i)) : localStorage.removeItem(X);
9231
+ a && r !== void 0 && (i.locale = r), Object.keys(i).length ? localStorage.setItem(Y, JSON.stringify(i)) : localStorage.removeItem(Y);
9232
9232
  } catch {}
9233
9233
  }
9234
9234
  }
9235
- function Bt(e) {
9235
+ function Vt(e) {
9236
9236
  if (!e) return;
9237
9237
  let t = /* @__PURE__ */ new WeakSet(), n = (e) => {
9238
9238
  let n = e.typesetRoot;
9239
- !n || t.has(n) || (Z(n), t.add(n));
9239
+ !n || t.has(n) || (X(n), t.add(n));
9240
9240
  };
9241
- e.addRenderAction?.("pie-strip-latex", Et, (e) => {
9241
+ e.addRenderAction?.("pie-strip-latex", jt, (e) => {
9242
9242
  for (let t of e.math ?? []) n(t);
9243
9243
  return !1;
9244
9244
  }, (e) => {
9245
9245
  let t = e.typesetRoot;
9246
- return t && Z(t), !1;
9246
+ return t && X(t), !1;
9247
9247
  });
9248
9248
  let r = e.outputJax?.chtmlStyles;
9249
- r?.id === St && (r.id = oe), Wt();
9249
+ r?.id === Dt && (r.id = x$1), Gt();
9250
9250
  }
9251
- function Vt(e) {
9251
+ function Ht(e) {
9252
9252
  let t = (e) => {
9253
- e.typesetRoot && ut(e.typesetRoot);
9253
+ e.typesetRoot && dt(e.typesetRoot);
9254
9254
  };
9255
- e?.addRenderAction?.("pie-name-math", Dt, (e) => {
9255
+ e?.addRenderAction?.("pie-name-math", Mt, (e) => {
9256
9256
  for (let n of e.math ?? []) t(n);
9257
9257
  return !1;
9258
9258
  }, (e) => (t(e), !1));
9259
9259
  }
9260
- function Ht(e) {
9260
+ function Ut(e) {
9261
9261
  return e instanceof HTMLStyleElement && se.includes(e.id);
9262
9262
  }
9263
- function Ut(e) {
9264
- te("foreign-output-stylesheet", `another MathJax added <style id="${e.id}"> to <head>`);
9263
+ function Wt(e) {
9264
+ ne("foreign-output-stylesheet", `another MathJax added <style id="${e.id}"> to <head>`);
9265
9265
  }
9266
- function Wt() {
9267
- let e = document.head, t = [...e.children].find(Ht);
9266
+ function Gt() {
9267
+ let e = document.head, t = [...e.children].find(Ut);
9268
9268
  if (t) {
9269
- Ut(t);
9269
+ Wt(t);
9270
9270
  return;
9271
9271
  }
9272
9272
  let n = new MutationObserver((e) => {
9273
9273
  for (let t of e) {
9274
- let e = [...t.addedNodes].find(Ht);
9274
+ let e = [...t.addedNodes].find(Ut);
9275
9275
  if (e) {
9276
- Ut(e), n.disconnect();
9276
+ Wt(e), n.disconnect();
9277
9277
  return;
9278
9278
  }
9279
9279
  }
9280
9280
  });
9281
9281
  n.observe(e, { childList: !0 });
9282
9282
  }
9283
- function Gt(e) {
9283
+ function Kt(e) {
9284
9284
  let t = e?.math;
9285
9285
  if (!t?.remove) return;
9286
- let n = [...t].filter((e) => (e.state?.() ?? 0) >= Tt && e.typesetRoot?.isConnected === !1);
9286
+ let n = [...t].filter((e) => (e.state?.() ?? 0) >= At && e.typesetRoot?.isConnected === !1);
9287
9287
  if (n.length !== 0) {
9288
9288
  for (let e of [...n].reverse()) e.clear?.();
9289
9289
  t.remove(...n);
9290
9290
  }
9291
9291
  }
9292
- function Kt(e) {
9292
+ function qt(e) {
9293
9293
  return new Promise((t, n) => {
9294
9294
  let r = e.startup ?? {};
9295
9295
  e.startup = r;
9296
9296
  let i = r.ready;
9297
9297
  r.ready = () => {
9298
- let e = x$1()?.startup;
9298
+ let e = b()?.startup;
9299
9299
  i ? i.call(r) : e?.defaultReady?.(), Promise.resolve(e?.promise).then(() => t(), n);
9300
9300
  };
9301
9301
  });
9302
9302
  }
9303
- function qt(e) {
9304
- let t = x$1();
9305
- return t ? t.version ? t.startup?.promise ? Promise.resolve(t.startup.promise).then(() => void 0) : Promise.resolve() : Kt(t) : It(e);
9306
- }
9307
9303
  function Jt(e) {
9308
- return qt(e).then(() => {
9309
- let e = x$1();
9304
+ let t = b();
9305
+ return t ? t.version ? t.startup?.promise ? Promise.resolve(t.startup.promise).then(() => void 0) : Promise.resolve() : qt(t) : Lt(e);
9306
+ }
9307
+ function Yt(e) {
9308
+ return Jt(e).then(() => {
9309
+ let e = b();
9310
9310
  e && typeof e.typesetPromise != "function" && console.warn("[mathjax-renderer] MathJax on this page has no typesetPromise; math stays untypeset.");
9311
9311
  });
9312
9312
  }
9313
- function Yt(e) {
9314
- let t = ae, n = t[xt];
9315
- return n || (n = Jt(e), t[xt] = n), n;
9313
+ function Xt(e) {
9314
+ let t = oe, n = t[Et];
9315
+ return n || (n = Yt(e), t[Et] = n), n;
9316
9316
  }
9317
- function Xt(e = {}) {
9317
+ function Z(e = {}) {
9318
9318
  let t = e.useSingleDollar ?? !1;
9319
9319
  return async (n) => {
9320
9320
  if (typeof window > "u") return;
9321
9321
  let r = ce();
9322
- r && te("mathjax-3-global", `window.MathJax is MathJax ${r}`), Nt(n), fe(n), Pt(n), Re(n);
9323
- let i = Yt(e);
9324
- if (!Ft(n, t)) {
9322
+ r && ne("mathjax-3-global", `window.MathJax is MathJax ${r}`), Pt(n), de(n), Ft(n), ze(n);
9323
+ let i = Xt(e);
9324
+ if (!It(n, t)) {
9325
9325
  i.catch(() => {});
9326
9326
  return;
9327
9327
  }
9328
9328
  await i;
9329
- let a = x$1();
9329
+ let a = b();
9330
9330
  if (await a?.startup?.promise, typeof a?.typesetPromise == "function") {
9331
- Ue(), Gt(a.startup?.document);
9331
+ We(), Kt(a.startup?.document);
9332
9332
  try {
9333
9333
  await a.typesetPromise([n]);
9334
9334
  } catch (e) {
9335
9335
  throw a.typesetClear?.([n]), e;
9336
9336
  }
9337
- Z(n), Y(n);
9337
+ X(n), J(n);
9338
9338
  }
9339
9339
  };
9340
9340
  }
@@ -9348,7 +9348,7 @@ function an() {
9348
9348
  return !!window[$t]?.opts?.useSingleDollar;
9349
9349
  }
9350
9350
  function on() {
9351
- return rn || (rn = Xt({ useSingleDollar: an() })), rn;
9351
+ return rn || (rn = Z({ useSingleDollar: an() })), rn;
9352
9352
  }
9353
9353
  function Q() {
9354
9354
  if (typeof window > "u") return null;
@@ -9385,7 +9385,7 @@ var $ = async (e) => {
9385
9385
  let t = typeof e == "string", n;
9386
9386
  t ? (n = document.createElement("div"), n.innerHTML = e) : n = e || document.body;
9387
9387
  let r = Q(), i = r || t ? null : await ln(n);
9388
- return r ? (await r.renderMath?.(n), Y(n)) : i && i !== $ ? (await i(n), Y(n)) : await on()(n), t ? n.innerHTML : void 0;
9388
+ return r ? (await r.renderMath?.(n), J(n)) : i && i !== $ ? (await i(n), J(n)) : await on()(n), t ? n.innerHTML : void 0;
9389
9389
  };
9390
9390
  //#endregion
9391
9391
  //#region ../../shared/translator/dist/en.js