@epam/ai-dial-chat-shared 1.1.0-dev.472 → 1.1.0-dev.474

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 (2) hide show
  1. package/package.json +1 -1
  2. package/utils/latex.js +22 -22
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-chat-shared",
3
3
  "description": "Shared domain models, utilities, and UI components for AI DIAL Chat libraries",
4
- "version": "1.1.0-dev.472",
4
+ "version": "1.1.0-dev.474",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "sideEffects": [
package/utils/latex.js CHANGED
@@ -1,15 +1,15 @@
1
1
  //#region src/utils/latex.ts
2
- var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\{[^}]*\}\$/g, i = /\$\$([\s\S]*?)\$\$/g, a = /^[ \t]*\r?\n/, o = /\r?\n[ \t]*$/, s = /\d+(?:,\d{3})*(?:\.\d+)?(?:[KMBkmb])?/y, c = /\s|[^a-zA-Z\d]/y, l = /[\^_\\]/y, u = /(?:[<>]|\\(?:le|leq|ll|ge|geq|gg|ne|neq|approx|equiv|sim|simeq|cong|in|notin|subset|subseteq|supset|supseteq|to|rightarrow|leftarrow|mapsto|implies|iff)\b)/y, d = (i) => {
2
+ var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\{[^}]*\}\$/g, i = /\$\$([\s\S]*?)\$\$/g, a = /^[ \t]*\r?\n/, o = /\r?\n[ \t]*$/, s = /\d+(?:,\d{3})*(?:\.\d+)?(?:[KMBkmb])?/y, c = /\s|[^a-zA-Z\d]/y, l = /[\^_\\]/y, u = /(?:[<>]|\\(?:le|leq|ll|ge|geq|gg|ne|neq|approx|equiv|sim|simeq|cong|in|notin|subset|subseteq|supset|supseteq|to|rightarrow|leftarrow|mapsto|implies|iff)\b)/y, d = /\\[a-zA-Z]|[\^_]/, f = (i) => {
3
3
  let a = i.replace(e, "$\\\\ce{");
4
4
  return a = a.replace(t, "$\\\\pu{"), a = a.replace(n, (e) => `$${e}$`), a = a.replace(r, (e) => `$${e}$`), a;
5
- }, f = (e) => {
5
+ }, p = (e) => {
6
6
  let t = [], n = -1, r = -1;
7
7
  for (let i = 0; i < e.length; i++) {
8
8
  let a = e[i];
9
9
  a === "`" && i + 2 < e.length && e[i + 1] === "`" && e[i + 2] === "`" ? r === -1 ? (r = i, i += 2) : (t.push([r, i + 2]), r = -1, i += 2) : a === "`" && r === -1 && (n === -1 ? n = i : (t.push([n, i]), n = -1));
10
10
  }
11
11
  return t;
12
- }, p = (e, t) => {
12
+ }, m = (e, t) => {
13
13
  let n = 0, r = t.length - 1;
14
14
  for (; n <= r;) {
15
15
  let i = Math.floor((n + r) / 2), [a, o] = t[i];
@@ -17,26 +17,26 @@ var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\
17
17
  e < a ? r = i - 1 : n = i + 1;
18
18
  }
19
19
  return !1;
20
- }, m = (e, t, n) => (e.lastIndex = n, e.exec(t)), h = /\s/, g = (e, t) => {
20
+ }, h = (e, t, n) => (e.lastIndex = n, e.exec(t)), g = /\s/, _ = (e, t) => {
21
21
  let n = t;
22
- for (; n < e.length && h.test(e[n]);) n++;
22
+ for (; n < e.length && g.test(e[n]);) n++;
23
23
  return n;
24
- }, _ = (e) => {
24
+ }, v = (e) => {
25
25
  if (!e.includes("$$")) return e;
26
- let t = f(e), n = [], r = 0, s;
26
+ let t = p(e), n = [], r = 0, s;
27
27
  for (i.lastIndex = 0; (s = i.exec(e)) !== null;) {
28
28
  let i = s.index, c = i + s[0].length, l = s[1];
29
- if (!l.includes("\n") || p(i, t)) continue;
29
+ if (!l.includes("\n") || m(i, t)) continue;
30
30
  let u = e.lastIndexOf("\n", i - 1) + 1;
31
31
  if (e.slice(u, i).trim() !== "") continue;
32
- let d = l.replace(a, "").replace(o, ""), f = e.indexOf("\n", c), m = e.slice(c, f === -1 ? e.length : f);
33
- n.push(e.slice(r, i)), n.push(`$$\n${d}\n$$${m.trim() === "" ? "" : "\n"}`), r = c;
32
+ let d = l.replace(a, "").replace(o, ""), f = e.indexOf("\n", c), p = e.slice(c, f === -1 ? e.length : f);
33
+ n.push(e.slice(r, i)), n.push(`$$\n${d}\n$$${p.trim() === "" ? "" : "\n"}`), r = c;
34
34
  }
35
35
  return n.push(e.substring(r)), n.join("");
36
- }, v = (e, t) => {
37
- let n = m(s, e, t + 1);
36
+ }, y = (e, t) => {
37
+ let n = h(s, e, t + 1);
38
38
  return n ? t + 1 + n[0].length : -1;
39
- }, y = (e, t) => t >= e.length ? !0 : !(!m(c, e, t) || m(l, e, t) || m(u, e, g(e, t))), b = (e, t) => {
39
+ }, b = (e, t) => t >= e.length ? !0 : !(!h(c, e, t) || h(l, e, t) || h(u, e, _(e, t))), x = (e, t) => {
40
40
  let n = [];
41
41
  for (let r = 0; r < e.length; r++) {
42
42
  if (e[r] !== "$") continue;
@@ -46,21 +46,21 @@ var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\
46
46
  r = i;
47
47
  continue;
48
48
  }
49
- r > 0 && e[r - 1] === "\\" || p(r, t) || n.push(r);
49
+ r > 0 && e[r - 1] === "\\" || m(r, t) || n.push(r);
50
50
  }
51
51
  return n;
52
- }, x = (e, t, n, r) => {
52
+ }, S = (e, t, n, r) => {
53
53
  if (n <= t + 1 || e[n - 1] === "`") return !1;
54
54
  for (let i = t + 1; i < n; i++) if (e[i] === "\n" || e[i] === "$" && !(e[i - 1] === "\\" || r.has(i))) return !1;
55
55
  return !0;
56
- }, S = (e) => {
56
+ }, C = (e, t, n, r) => n !== void 0 && S(e, t, n, r) && d.test(e.slice(t + 1, n)), w = (e) => {
57
57
  if (!e.includes("$")) return e;
58
58
  let t = e;
59
- (e.includes("\\ce{") || e.includes("\\pu{")) && (t = d(e)), t = _(t);
60
- let n = f(t), r = b(t, n), i = /* @__PURE__ */ new Map(), a = -1;
59
+ (e.includes("\\ce{") || e.includes("\\pu{")) && (t = f(e)), t = v(t);
60
+ let n = p(t), r = x(t, n), i = /* @__PURE__ */ new Map(), a = -1;
61
61
  for (let e = 0; e < r.length; e++) {
62
- let n = r[e], o = v(t, n);
63
- if (o !== -1 && y(t, o)) {
62
+ let n = r[e], o = y(t, n);
63
+ if (o !== -1 && b(t, o) && (a !== -1 || !C(t, n, r[e + 1], i))) {
64
64
  i.set(n, "\\$"), a === -1 && r[e + 1] === o && (i.set(o, "\\$"), e++);
65
65
  continue;
66
66
  }
@@ -68,7 +68,7 @@ var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\
68
68
  a = n;
69
69
  continue;
70
70
  }
71
- x(t, a, n, i) ? (i.set(a, "$$"), i.set(n, "$$"), a = -1) : a = n;
71
+ S(t, a, n, i) ? (i.set(a, "$$"), i.set(n, "$$"), a = -1) : a = n;
72
72
  }
73
73
  if (i.size === 0) return t;
74
74
  let o = [], s = 0;
@@ -76,4 +76,4 @@ var e = /\$\\ce\{/g, t = /\$\\pu\{/g, n = /\$\\\\ce\{[^}]*\}\$/g, r = /\$\\\\pu\
76
76
  return o.push(t.substring(s)), o.join("");
77
77
  };
78
78
  //#endregion
79
- export { S as preprocessLaTeX };
79
+ export { w as preprocessLaTeX };