@clubmed/trident-ui 2.1.0-beta.2 → 2.1.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/chunks/ChatMessage.js +282 -265
- package/chunks/ChatMessage.js.map +1 -1
- package/examples/chat-body-demo.js +4 -2
- package/examples/chat-body-demo.js.map +1 -1
- package/examples/chat-button-demo.js +2 -1
- package/examples/chat-button-demo.js.map +1 -1
- package/examples/chat-button-offset-demo.js +2 -1
- package/examples/chat-button-offset-demo.js.map +1 -1
- package/examples/chat-header-demo.js +2 -1
- package/examples/chat-header-demo.js.map +1 -1
- package/examples/chat-input-demo.js +2 -1
- package/examples/chat-input-demo.js.map +1 -1
- package/examples/chat-input-streaming-demo.d.ts +1 -0
- package/examples/chat-input-streaming-demo.js +30 -0
- package/examples/chat-input-streaming-demo.js.map +1 -0
- package/examples/chat-input-submit-on-enter-demo.d.ts +1 -0
- package/examples/chat-input-submit-on-enter-demo.js +23 -0
- package/examples/chat-input-submit-on-enter-demo.js.map +1 -0
- package/examples/chat-message-actions-demo.d.ts +1 -0
- package/examples/chat-message-actions-demo.js +29 -0
- package/examples/chat-message-actions-demo.js.map +1 -0
- package/examples/chat-message-demo.js +1 -0
- package/examples/chat-message-demo.js.map +1 -1
- package/examples/chat-message-editor-demo.d.ts +1 -0
- package/examples/chat-message-editor-demo.js +30 -0
- package/examples/chat-message-editor-demo.js.map +1 -0
- package/examples/chat-message-with-actions-demo.d.ts +1 -0
- package/examples/chat-message-with-actions-demo.js +26 -0
- package/examples/chat-message-with-actions-demo.js.map +1 -0
- package/examples/chat-typing-indicator-demo.js +2 -1
- package/examples/chat-typing-indicator-demo.js.map +1 -1
- package/examples/chat-window-csat-demo.js +2 -1
- package/examples/chat-window-csat-demo.js.map +1 -1
- package/examples/chat-window-csat-prompt-demo.js +2 -1
- package/examples/chat-window-csat-prompt-demo.js.map +1 -1
- package/examples/chat-window-demo.js +2 -1
- package/examples/chat-window-demo.js.map +1 -1
- package/examples/chat-window-quote-demo.js +2 -1
- package/examples/chat-window-quote-demo.js.map +1 -1
- package/examples/chat-window-quotes-demo.js +2 -1
- package/examples/chat-window-quotes-demo.js.map +1 -1
- package/package.json +1 -1
- package/ui/ChatBody.d.ts +1 -25
- package/ui/ChatBody.js +2 -88
- package/ui/ChatButton.d.ts +1 -6
- package/ui/ChatButton.js +2 -33
- package/ui/ChatHeader.d.ts +1 -6
- package/ui/ChatHeader.js +2 -43
- package/ui/ChatInput.d.ts +1 -10
- package/ui/ChatInput.js +2 -148
- package/ui/ChatMessage.d.ts +1 -6
- package/ui/ChatMessage.js +1 -0
- package/ui/ChatTypingIndicator.d.ts +1 -2
- package/ui/ChatTypingIndicator.js +2 -30
- package/ui/ChatWindow.d.ts +1 -34
- package/ui/ChatWindow.js +2 -57
- package/ui/ChatWindowCsatPrompt.d.ts +1 -15
- package/ui/ChatWindowCsatPrompt.js +2 -70
- package/ui/ChatWindowCsatThankYou.d.ts +1 -9
- package/ui/ChatWindowCsatThankYou.js +2 -28
- package/ui/ChatWindowQuote.d.ts +1 -22
- package/ui/ChatWindowQuote.js +2 -140
- package/ui/chat/ChatBody.d.ts +31 -0
- package/ui/chat/ChatBody.js +92 -0
- package/ui/chat/ChatBody.js.map +1 -0
- package/ui/chat/ChatButton.d.ts +6 -0
- package/ui/chat/ChatButton.js +33 -0
- package/ui/chat/ChatButton.js.map +1 -0
- package/ui/chat/ChatHeader.d.ts +6 -0
- package/ui/chat/ChatHeader.js +43 -0
- package/ui/chat/ChatHeader.js.map +1 -0
- package/ui/chat/ChatInput.d.ts +28 -0
- package/ui/chat/ChatInput.js +165 -0
- package/ui/chat/ChatInput.js.map +1 -0
- package/ui/chat/ChatMessage.d.ts +17 -0
- package/ui/chat/ChatMessage.js +2 -0
- package/ui/chat/ChatMessageActions.d.ts +23 -0
- package/ui/chat/ChatMessageActions.js +69 -0
- package/ui/chat/ChatMessageActions.js.map +1 -0
- package/ui/chat/ChatMessageEditor.d.ts +9 -0
- package/ui/chat/ChatMessageEditor.js +57 -0
- package/ui/chat/ChatMessageEditor.js.map +1 -0
- package/ui/chat/ChatTypingIndicator.d.ts +2 -0
- package/ui/chat/ChatTypingIndicator.js +30 -0
- package/ui/chat/ChatTypingIndicator.js.map +1 -0
- package/ui/chat/ChatWindow.d.ts +37 -0
- package/ui/chat/ChatWindow.js +65 -0
- package/ui/chat/ChatWindow.js.map +1 -0
- package/ui/chat/ChatWindowCsatPrompt.d.ts +15 -0
- package/ui/chat/ChatWindowCsatPrompt.js +71 -0
- package/ui/chat/ChatWindowCsatPrompt.js.map +1 -0
- package/ui/chat/ChatWindowCsatThankYou.d.ts +9 -0
- package/ui/chat/ChatWindowCsatThankYou.js +29 -0
- package/ui/chat/ChatWindowCsatThankYou.js.map +1 -0
- package/ui/chat/ChatWindowQuote.d.ts +22 -0
- package/ui/chat/ChatWindowQuote.js +141 -0
- package/ui/chat/ChatWindowQuote.js.map +1 -0
- package/ui/tabs/Tabs.js +6 -6
- package/ui/tabs/Tabs.js.map +1 -1
- package/ui/ChatBody.js.map +0 -1
- package/ui/ChatButton.js.map +0 -1
- package/ui/ChatHeader.js.map +0 -1
- package/ui/ChatInput.js.map +0 -1
- package/ui/ChatTypingIndicator.js.map +0 -1
- package/ui/ChatWindow.js.map +0 -1
- package/ui/ChatWindowCsatPrompt.js.map +0 -1
- package/ui/ChatWindowCsatThankYou.js.map +0 -1
- package/ui/ChatWindowQuote.js.map +0 -1
package/chunks/ChatMessage.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { twMerge as e } from "../ui/helpers/twMerge.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { ChatMessageActions as t } from "../ui/chat/ChatMessageActions.js";
|
|
4
|
+
import { ChatMessageEditor as n } from "../ui/chat/ChatMessageEditor.js";
|
|
5
|
+
import { memo as r, useEffect as i, useRef as a, useState as o } from "react";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
5
7
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/generated/bidi-data.js
|
|
6
|
-
var
|
|
8
|
+
var l = /* @__PURE__ */ "BN.BN.BN.BN.BN.BN.BN.BN.BN.S.B.S.WS.B.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.B.B.B.S.WS.ON.ON.ET.ET.ET.ON.ON.ON.ON.ON.ES.CS.ES.CS.CS.EN.EN.EN.EN.EN.EN.EN.EN.EN.EN.CS.ON.ON.ON.ON.ON.ON.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.ON.ON.ON.ON.ON.ON.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.ON.ON.ON.ON.BN.BN.BN.BN.BN.BN.B.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.BN.CS.ON.ET.ET.ET.ET.ON.ON.ON.ON.L.ON.ON.BN.ON.ON.ET.ET.EN.EN.ON.L.ON.ON.ON.EN.L.ON.ON.ON.ON.ON.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.ON.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.ON.L.L.L.L.L.L.L.L".split("."), u = [
|
|
7
9
|
[
|
|
8
10
|
697,
|
|
9
11
|
698,
|
|
@@ -3577,11 +3579,11 @@ var o = /* @__PURE__ */ "BN.BN.BN.BN.BN.BN.BN.BN.BN.S.B.S.WS.B.BN.BN.BN.BN.BN.BN
|
|
|
3577
3579
|
];
|
|
3578
3580
|
//#endregion
|
|
3579
3581
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/bidi.js
|
|
3580
|
-
function
|
|
3581
|
-
if (e <= 255) return
|
|
3582
|
-
let t = 0, n =
|
|
3582
|
+
function d(e) {
|
|
3583
|
+
if (e <= 255) return l[e];
|
|
3584
|
+
let t = 0, n = u.length - 1;
|
|
3583
3585
|
for (; t <= n;) {
|
|
3584
|
-
let r = t + n >> 1, i =
|
|
3586
|
+
let r = t + n >> 1, i = u[r];
|
|
3585
3587
|
if (e < i[0]) {
|
|
3586
3588
|
n = r - 1;
|
|
3587
3589
|
continue;
|
|
@@ -3594,7 +3596,7 @@ function c(e) {
|
|
|
3594
3596
|
}
|
|
3595
3597
|
return "L";
|
|
3596
3598
|
}
|
|
3597
|
-
function
|
|
3599
|
+
function f(e) {
|
|
3598
3600
|
let t = e.length;
|
|
3599
3601
|
if (t === 0) return null;
|
|
3600
3602
|
let n = Array(t), r = !1;
|
|
@@ -3604,9 +3606,9 @@ function l(e) {
|
|
|
3604
3606
|
let t = e.charCodeAt(i + 1);
|
|
3605
3607
|
t >= 56320 && t <= 57343 && (o = (a - 55296 << 10) + (t - 56320) + 65536, s = 2);
|
|
3606
3608
|
}
|
|
3607
|
-
let
|
|
3608
|
-
(
|
|
3609
|
-
for (let e = 0; e < s; e++) n[i + e] =
|
|
3609
|
+
let c = d(o);
|
|
3610
|
+
(c === "R" || c === "AL" || c === "AN") && (r = !0);
|
|
3611
|
+
for (let e = 0; e < s; e++) n[i + e] = c;
|
|
3610
3612
|
i += s;
|
|
3611
3613
|
}
|
|
3612
3614
|
if (!r) return null;
|
|
@@ -3624,12 +3626,12 @@ function l(e) {
|
|
|
3624
3626
|
}
|
|
3625
3627
|
let a = new Int8Array(t);
|
|
3626
3628
|
for (let e = 0; e < t; e++) a[e] = i;
|
|
3627
|
-
let o = i & 1 ? "R" : "L", s = o,
|
|
3628
|
-
for (let e = 0; e < t; e++) n[e] === "NSM" ? n[e] =
|
|
3629
|
-
|
|
3629
|
+
let o = i & 1 ? "R" : "L", s = o, c = s;
|
|
3630
|
+
for (let e = 0; e < t; e++) n[e] === "NSM" ? n[e] = c : c = n[e];
|
|
3631
|
+
c = s;
|
|
3630
3632
|
for (let e = 0; e < t; e++) {
|
|
3631
3633
|
let t = n[e];
|
|
3632
|
-
t === "EN" ? n[e] =
|
|
3634
|
+
t === "EN" ? n[e] = c === "AL" ? "AN" : "EN" : (t === "R" || t === "L" || t === "AL") && (c = t);
|
|
3633
3635
|
}
|
|
3634
3636
|
for (let e = 0; e < t; e++) n[e] === "AL" && (n[e] = "R");
|
|
3635
3637
|
for (let e = 1; e < t - 1; e++) n[e] === "ES" && n[e - 1] === "EN" && n[e + 1] === "EN" && (n[e] = "EN"), n[e] === "CS" && (n[e - 1] === "EN" || n[e - 1] === "AN") && n[e + 1] === n[e - 1] && (n[e] = n[e - 1]);
|
|
@@ -3643,10 +3645,10 @@ function l(e) {
|
|
|
3643
3645
|
let t = n[e];
|
|
3644
3646
|
(t === "WS" || t === "ES" || t === "ET" || t === "CS") && (n[e] = "ON");
|
|
3645
3647
|
}
|
|
3646
|
-
|
|
3648
|
+
c = s;
|
|
3647
3649
|
for (let e = 0; e < t; e++) {
|
|
3648
3650
|
let t = n[e];
|
|
3649
|
-
t === "EN" ? n[e] =
|
|
3651
|
+
t === "EN" ? n[e] = c === "L" ? "L" : "EN" : (t === "R" || t === "L") && (c = t);
|
|
3650
3652
|
}
|
|
3651
3653
|
for (let e = 0; e < t; e++) {
|
|
3652
3654
|
if (n[e] !== "ON") continue;
|
|
@@ -3663,8 +3665,8 @@ function l(e) {
|
|
|
3663
3665
|
}
|
|
3664
3666
|
return a;
|
|
3665
3667
|
}
|
|
3666
|
-
function
|
|
3667
|
-
let n =
|
|
3668
|
+
function p(e, t) {
|
|
3669
|
+
let n = f(e);
|
|
3668
3670
|
if (n === null) return null;
|
|
3669
3671
|
let r = new Int8Array(t.length);
|
|
3670
3672
|
for (let e = 0; e < t.length; e++) r[e] = n[t[e]];
|
|
@@ -3672,8 +3674,8 @@ function u(e, t) {
|
|
|
3672
3674
|
}
|
|
3673
3675
|
//#endregion
|
|
3674
3676
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/analysis.js
|
|
3675
|
-
var
|
|
3676
|
-
function
|
|
3677
|
+
var m = /[ \t\n\r\f]+/g, h = /[\t\n\r\f]| {2,}|^ | $/;
|
|
3678
|
+
function g(e) {
|
|
3677
3679
|
let t = e ?? "normal";
|
|
3678
3680
|
return t === "pre-wrap" ? {
|
|
3679
3681
|
mode: t,
|
|
@@ -3685,67 +3687,67 @@ function p(e) {
|
|
|
3685
3687
|
preserveHardBreaks: !1
|
|
3686
3688
|
};
|
|
3687
3689
|
}
|
|
3688
|
-
function
|
|
3689
|
-
if (!
|
|
3690
|
-
let t = e.replace(
|
|
3690
|
+
function _(e) {
|
|
3691
|
+
if (!h.test(e)) return e;
|
|
3692
|
+
let t = e.replace(m, " ");
|
|
3691
3693
|
return t.charCodeAt(0) === 32 && (t = t.slice(1)), t.length > 0 && t.charCodeAt(t.length - 1) === 32 && (t = t.slice(0, -1)), t;
|
|
3692
3694
|
}
|
|
3693
|
-
function
|
|
3695
|
+
function v(e) {
|
|
3694
3696
|
return /[\r\f]/.test(e) ? e.replace(/\r\n/g, "\n").replace(/[\r\f]/g, "\n") : e;
|
|
3695
3697
|
}
|
|
3696
|
-
var
|
|
3697
|
-
function
|
|
3698
|
-
return
|
|
3698
|
+
var y = null, b;
|
|
3699
|
+
function x() {
|
|
3700
|
+
return y === null && (y = new Intl.Segmenter(b, { granularity: "word" })), y;
|
|
3699
3701
|
}
|
|
3700
|
-
var
|
|
3701
|
-
function
|
|
3702
|
-
return
|
|
3702
|
+
var S = /\p{Script=Arabic}/u, C = /\p{M}/u, w = /\p{Nd}/u;
|
|
3703
|
+
function T(e) {
|
|
3704
|
+
return S.test(e);
|
|
3703
3705
|
}
|
|
3704
|
-
function
|
|
3706
|
+
function E(e) {
|
|
3705
3707
|
return e >= 19968 && e <= 40959 || e >= 13312 && e <= 19903 || e >= 131072 && e <= 173791 || e >= 173824 && e <= 177983 || e >= 177984 && e <= 178207 || e >= 178208 && e <= 183983 || e >= 183984 && e <= 191471 || e >= 191472 && e <= 192093 || e >= 194560 && e <= 195103 || e >= 196608 && e <= 201551 || e >= 201552 && e <= 205743 || e >= 205744 && e <= 210041 || e >= 63744 && e <= 64255 || e >= 12288 && e <= 12351 || e >= 12352 && e <= 12447 || e >= 12448 && e <= 12543 || e >= 12592 && e <= 12687 || e >= 44032 && e <= 55215 || e >= 65280 && e <= 65519;
|
|
3706
3708
|
}
|
|
3707
|
-
function
|
|
3709
|
+
function D(e) {
|
|
3708
3710
|
for (let t = 0; t < e.length; t++) {
|
|
3709
3711
|
let n = e.charCodeAt(t);
|
|
3710
3712
|
if (!(n < 12288)) {
|
|
3711
3713
|
if (n >= 55296 && n <= 56319 && t + 1 < e.length) {
|
|
3712
3714
|
let r = e.charCodeAt(t + 1);
|
|
3713
3715
|
if (r >= 56320 && r <= 57343) {
|
|
3714
|
-
if (
|
|
3716
|
+
if (E((n - 55296 << 10) + (r - 56320) + 65536)) return !0;
|
|
3715
3717
|
t++;
|
|
3716
3718
|
continue;
|
|
3717
3719
|
}
|
|
3718
3720
|
}
|
|
3719
|
-
if (
|
|
3721
|
+
if (E(n)) return !0;
|
|
3720
3722
|
}
|
|
3721
3723
|
}
|
|
3722
3724
|
return !1;
|
|
3723
3725
|
}
|
|
3724
|
-
function
|
|
3726
|
+
function O(e) {
|
|
3725
3727
|
let t = L(e);
|
|
3726
3728
|
return t !== null && (j.has(t) || P.has(t));
|
|
3727
3729
|
}
|
|
3728
|
-
var
|
|
3730
|
+
var k = new Set([
|
|
3729
3731
|
"\xA0",
|
|
3730
3732
|
" ",
|
|
3731
3733
|
"",
|
|
3732
3734
|
""
|
|
3733
|
-
]),
|
|
3735
|
+
]), ee = new Set([
|
|
3734
3736
|
"-",
|
|
3735
3737
|
"‐",
|
|
3736
3738
|
"–",
|
|
3737
3739
|
"—"
|
|
3738
3740
|
]);
|
|
3739
|
-
function
|
|
3741
|
+
function te(e) {
|
|
3740
3742
|
let t = L(e);
|
|
3741
|
-
return t !== null &&
|
|
3743
|
+
return t !== null && k.has(t);
|
|
3742
3744
|
}
|
|
3743
|
-
function
|
|
3745
|
+
function ne(e) {
|
|
3744
3746
|
let t = L(e);
|
|
3745
|
-
return t !== null &&
|
|
3747
|
+
return t !== null && ee.has(t);
|
|
3746
3748
|
}
|
|
3747
3749
|
function A(e, t) {
|
|
3748
|
-
return
|
|
3750
|
+
return te(e) ? !1 : t ? !(O(e) || ne(e)) : !0;
|
|
3749
3751
|
}
|
|
3750
3752
|
var j = new Set(/* @__PURE__ */ ",...!.:.;.?.、.。.・.).〕.〉.》.」.』.】.〗.〙.〛.ー.々.〻.ゝ.ゞ.ヽ.ヾ".split(".")), M = new Set([
|
|
3751
3753
|
"\"",
|
|
@@ -3771,12 +3773,12 @@ var j = new Set(/* @__PURE__ */ ",...!.:.;.?.、.。.・.).〕.〉
|
|
|
3771
3773
|
"〖",
|
|
3772
3774
|
"〘",
|
|
3773
3775
|
"〚"
|
|
3774
|
-
]), N = new Set(["'", "’"]), P = new Set(/* @__PURE__ */ ".(,(!(?(:(;(،(؛(؟(।(॥(၊(။(၌(၍(၏()(](}(%(\"(”(’(»(›(…".split("(")),
|
|
3776
|
+
]), N = new Set(["'", "’"]), P = new Set(/* @__PURE__ */ ".(,(!(?(:(;(،(؛(؟(।(॥(၊(။(၌(၍(၏()(](}(%(\"(”(’(»(›(…".split("(")), re = new Set([
|
|
3775
3777
|
":",
|
|
3776
3778
|
".",
|
|
3777
3779
|
"،",
|
|
3778
3780
|
"؛"
|
|
3779
|
-
]),
|
|
3781
|
+
]), ie = new Set(["၏"]), ae = new Set([
|
|
3780
3782
|
"”",
|
|
3781
3783
|
"’",
|
|
3782
3784
|
"»",
|
|
@@ -3789,7 +3791,7 @@ var j = new Set(/* @__PURE__ */ ",...!.:.;.?.、.。.・.).〕.〉
|
|
|
3789
3791
|
"〕",
|
|
3790
3792
|
")"
|
|
3791
3793
|
]);
|
|
3792
|
-
function
|
|
3794
|
+
function oe(e) {
|
|
3793
3795
|
if (F(e)) return !0;
|
|
3794
3796
|
let t = !1;
|
|
3795
3797
|
for (let n of e) {
|
|
@@ -3797,22 +3799,22 @@ function re(e) {
|
|
|
3797
3799
|
t = !0;
|
|
3798
3800
|
continue;
|
|
3799
3801
|
}
|
|
3800
|
-
if (!(t &&
|
|
3802
|
+
if (!(t && C.test(n))) return !1;
|
|
3801
3803
|
}
|
|
3802
3804
|
return t;
|
|
3803
3805
|
}
|
|
3804
|
-
function
|
|
3806
|
+
function se(e) {
|
|
3805
3807
|
for (let t of e) if (!j.has(t) && !P.has(t)) return !1;
|
|
3806
3808
|
return e.length > 0;
|
|
3807
3809
|
}
|
|
3808
|
-
function
|
|
3810
|
+
function ce(e) {
|
|
3809
3811
|
if (F(e)) return !0;
|
|
3810
|
-
for (let t of e) if (!M.has(t) && !N.has(t) && !
|
|
3812
|
+
for (let t of e) if (!M.has(t) && !N.has(t) && !C.test(t) && !R(t)) return !1;
|
|
3811
3813
|
return e.length > 0;
|
|
3812
3814
|
}
|
|
3813
3815
|
function F(e) {
|
|
3814
3816
|
let t = !1;
|
|
3815
|
-
for (let n of e) if (!(n === "\\" ||
|
|
3817
|
+
for (let n of e) if (!(n === "\\" || C.test(n))) {
|
|
3816
3818
|
if (M.has(n) || P.has(n) || N.has(n)) {
|
|
3817
3819
|
t = !0;
|
|
3818
3820
|
continue;
|
|
@@ -3836,19 +3838,19 @@ function L(e) {
|
|
|
3836
3838
|
let t = I(e, e.length);
|
|
3837
3839
|
return e.slice(t);
|
|
3838
3840
|
}
|
|
3839
|
-
function
|
|
3840
|
-
for (let t of e) if (!
|
|
3841
|
+
function le(e) {
|
|
3842
|
+
for (let t of e) if (!C.test(t)) return t;
|
|
3841
3843
|
return null;
|
|
3842
3844
|
}
|
|
3843
|
-
function
|
|
3845
|
+
function ue(e) {
|
|
3844
3846
|
for (let t = e.length; t > 0;) {
|
|
3845
3847
|
let n = I(e, t), r = e.slice(n, t);
|
|
3846
|
-
if (!
|
|
3848
|
+
if (!C.test(r)) return r;
|
|
3847
3849
|
t = n;
|
|
3848
3850
|
}
|
|
3849
3851
|
return null;
|
|
3850
3852
|
}
|
|
3851
|
-
var
|
|
3853
|
+
var de = [
|
|
3852
3854
|
36,
|
|
3853
3855
|
37,
|
|
3854
3856
|
43,
|
|
@@ -3916,27 +3918,27 @@ var ce = [
|
|
|
3916
3918
|
126128,
|
|
3917
3919
|
126128
|
|
3918
3920
|
];
|
|
3919
|
-
function
|
|
3921
|
+
function fe(e, t) {
|
|
3920
3922
|
for (let n = 0; n < t.length; n += 2) if (e >= t[n] && e <= t[n + 1]) return !0;
|
|
3921
3923
|
return !1;
|
|
3922
3924
|
}
|
|
3923
3925
|
function R(e) {
|
|
3924
3926
|
let t = e.codePointAt(0);
|
|
3925
|
-
return t !== void 0 &&
|
|
3927
|
+
return t !== void 0 && fe(t, de);
|
|
3926
3928
|
}
|
|
3927
|
-
function
|
|
3928
|
-
let t =
|
|
3929
|
+
function pe(e) {
|
|
3930
|
+
let t = ue(e);
|
|
3929
3931
|
return t !== null && R(t);
|
|
3930
3932
|
}
|
|
3931
|
-
function
|
|
3932
|
-
let t =
|
|
3933
|
-
return t !== null &&
|
|
3933
|
+
function me(e) {
|
|
3934
|
+
let t = le(e);
|
|
3935
|
+
return t !== null && w.test(t);
|
|
3934
3936
|
}
|
|
3935
|
-
function
|
|
3937
|
+
function he(e) {
|
|
3936
3938
|
let t = Array.from(e), n = t.length;
|
|
3937
3939
|
for (; n > 0;) {
|
|
3938
3940
|
let e = t[n - 1];
|
|
3939
|
-
if (
|
|
3941
|
+
if (C.test(e)) {
|
|
3940
3942
|
n--;
|
|
3941
3943
|
continue;
|
|
3942
3944
|
}
|
|
@@ -3951,10 +3953,10 @@ function fe(e) {
|
|
|
3951
3953
|
tail: t.slice(n).join("")
|
|
3952
3954
|
};
|
|
3953
3955
|
}
|
|
3954
|
-
function
|
|
3956
|
+
function ge(e, t, n) {
|
|
3955
3957
|
return n === "text" && !t && e.length === 1 && e !== "-" && e !== "—" ? e : null;
|
|
3956
3958
|
}
|
|
3957
|
-
function
|
|
3959
|
+
function _e(e, t, n, r) {
|
|
3958
3960
|
let i = t[r], a = e[r];
|
|
3959
3961
|
if (i == null) return a;
|
|
3960
3962
|
let o = n[r];
|
|
@@ -3962,14 +3964,14 @@ function me(e, t, n, r) {
|
|
|
3962
3964
|
let s = i.repeat(o);
|
|
3963
3965
|
return e[r] = s, s;
|
|
3964
3966
|
}
|
|
3965
|
-
function
|
|
3966
|
-
return e && t !== null &&
|
|
3967
|
+
function ve(e, t) {
|
|
3968
|
+
return e && t !== null && re.has(t);
|
|
3967
3969
|
}
|
|
3968
|
-
function
|
|
3970
|
+
function ye(e) {
|
|
3969
3971
|
let t = L(e);
|
|
3970
|
-
return t !== null &&
|
|
3972
|
+
return t !== null && ie.has(t);
|
|
3971
3973
|
}
|
|
3972
|
-
function
|
|
3974
|
+
function be(e) {
|
|
3973
3975
|
if (e.length < 2 || e[0] !== " ") return null;
|
|
3974
3976
|
let t = e.slice(1);
|
|
3975
3977
|
return /^\p{M}+$/u.test(t) ? {
|
|
@@ -3981,13 +3983,13 @@ function z(e) {
|
|
|
3981
3983
|
let t = e.length;
|
|
3982
3984
|
for (; t > 0;) {
|
|
3983
3985
|
let n = I(e, t), r = e.slice(n, t);
|
|
3984
|
-
if (
|
|
3986
|
+
if (ae.has(r)) return !0;
|
|
3985
3987
|
if (!P.has(r)) return !1;
|
|
3986
3988
|
t = n;
|
|
3987
3989
|
}
|
|
3988
3990
|
return !1;
|
|
3989
3991
|
}
|
|
3990
|
-
function
|
|
3992
|
+
function xe(e, t) {
|
|
3991
3993
|
if (t.preserveOrdinarySpaces || t.preserveHardBreaks) {
|
|
3992
3994
|
if (e === " ") return "preserved-space";
|
|
3993
3995
|
if (e === " ") return "tab";
|
|
@@ -3995,17 +3997,17 @@ function ve(e, t) {
|
|
|
3995
3997
|
}
|
|
3996
3998
|
return e === " " ? "space" : e === "\xA0" || e === " " || e === "" || e === "" ? "glue" : e === "" ? "zero-width-break" : e === "" ? "soft-hyphen" : "text";
|
|
3997
3999
|
}
|
|
3998
|
-
var
|
|
4000
|
+
var Se = /[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;
|
|
3999
4001
|
function B(e) {
|
|
4000
4002
|
return e.length === 1 ? e[0] : e.join("");
|
|
4001
4003
|
}
|
|
4002
|
-
function
|
|
4004
|
+
function Ce(e, t) {
|
|
4003
4005
|
let n = [];
|
|
4004
4006
|
for (let t = e.length - 1; t >= 0; t--) n.push(e[t]);
|
|
4005
4007
|
return n.push(t), B(n);
|
|
4006
4008
|
}
|
|
4007
|
-
function
|
|
4008
|
-
if (!
|
|
4009
|
+
function we(e, t, n, r) {
|
|
4010
|
+
if (!Se.test(e)) return [{
|
|
4009
4011
|
text: e,
|
|
4010
4012
|
isWordLike: t,
|
|
4011
4013
|
kind: "text",
|
|
@@ -4013,7 +4015,7 @@ function xe(e, t, n, r) {
|
|
|
4013
4015
|
}];
|
|
4014
4016
|
let i = [], a = null, o = [], s = n, c = !1, l = 0;
|
|
4015
4017
|
for (let u of e) {
|
|
4016
|
-
let e =
|
|
4018
|
+
let e = xe(u, r), d = e === "text" && t;
|
|
4017
4019
|
if (a !== null && e === a && d === c) {
|
|
4018
4020
|
o.push(u), l += u.length;
|
|
4019
4021
|
continue;
|
|
@@ -4035,18 +4037,18 @@ function xe(e, t, n, r) {
|
|
|
4035
4037
|
function V(e) {
|
|
4036
4038
|
return e === "space" || e === "preserved-space" || e === "zero-width-break" || e === "hard-break";
|
|
4037
4039
|
}
|
|
4038
|
-
var
|
|
4039
|
-
function
|
|
4040
|
+
var Te = /^[A-Za-z][A-Za-z0-9+.-]*:$/;
|
|
4041
|
+
function Ee(e, t) {
|
|
4040
4042
|
let n = e.texts[t];
|
|
4041
|
-
return n.startsWith("www.") ? !0 :
|
|
4043
|
+
return n.startsWith("www.") ? !0 : Te.test(n) && t + 1 < e.len && e.kinds[t + 1] === "text" && e.texts[t + 1] === "//";
|
|
4042
4044
|
}
|
|
4043
|
-
function
|
|
4045
|
+
function De(e) {
|
|
4044
4046
|
return e.includes("?") && (e.includes("://") || e.startsWith("www."));
|
|
4045
4047
|
}
|
|
4046
|
-
function
|
|
4048
|
+
function Oe(e) {
|
|
4047
4049
|
let t = e.texts.slice(), n = e.isWordLike.slice(), r = e.kinds.slice(), i = e.starts.slice();
|
|
4048
4050
|
for (let i = 0; i < e.len; i++) {
|
|
4049
|
-
if (r[i] !== "text" || !
|
|
4051
|
+
if (r[i] !== "text" || !Ee(e, i)) continue;
|
|
4050
4052
|
let a = [t[i]], o = i + 1;
|
|
4051
4053
|
for (; o < e.len && !V(r[o]);) {
|
|
4052
4054
|
a.push(t[o]), n[i] = !0;
|
|
@@ -4068,11 +4070,11 @@ function Te(e) {
|
|
|
4068
4070
|
starts: i
|
|
4069
4071
|
};
|
|
4070
4072
|
}
|
|
4071
|
-
function
|
|
4073
|
+
function ke(e) {
|
|
4072
4074
|
let t = [], n = [], r = [], i = [];
|
|
4073
4075
|
for (let a = 0; a < e.len; a++) {
|
|
4074
4076
|
let o = e.texts[a];
|
|
4075
|
-
if (t.push(o), n.push(e.isWordLike[a]), r.push(e.kinds[a]), i.push(e.starts[a]), !
|
|
4077
|
+
if (t.push(o), n.push(e.isWordLike[a]), r.push(e.kinds[a]), i.push(e.starts[a]), !De(o)) continue;
|
|
4076
4078
|
let s = a + 1;
|
|
4077
4079
|
if (s >= e.len || V(e.kinds[s])) continue;
|
|
4078
4080
|
let c = [], l = e.starts[s], u = s;
|
|
@@ -4087,7 +4089,7 @@ function Ee(e) {
|
|
|
4087
4089
|
starts: i
|
|
4088
4090
|
};
|
|
4089
4091
|
}
|
|
4090
|
-
var
|
|
4092
|
+
var Ae = new Set([
|
|
4091
4093
|
":",
|
|
4092
4094
|
"-",
|
|
4093
4095
|
"/",
|
|
@@ -4097,7 +4099,7 @@ var De = new Set([
|
|
|
4097
4099
|
"+",
|
|
4098
4100
|
"–",
|
|
4099
4101
|
"—"
|
|
4100
|
-
]),
|
|
4102
|
+
]), je = new Set([
|
|
4101
4103
|
".",
|
|
4102
4104
|
",",
|
|
4103
4105
|
":",
|
|
@@ -4106,27 +4108,27 @@ var De = new Set([
|
|
|
4106
4108
|
function H(e) {
|
|
4107
4109
|
for (let t = e.length; t > 0;) {
|
|
4108
4110
|
let n = I(e, t), r = e.slice(n, t);
|
|
4109
|
-
if (
|
|
4111
|
+
if (C.test(r)) {
|
|
4110
4112
|
t = n;
|
|
4111
4113
|
continue;
|
|
4112
4114
|
}
|
|
4113
|
-
return
|
|
4115
|
+
return je.has(r) || R(r);
|
|
4114
4116
|
}
|
|
4115
4117
|
return !1;
|
|
4116
4118
|
}
|
|
4117
|
-
function
|
|
4118
|
-
return t && !
|
|
4119
|
+
function Me(e, t) {
|
|
4120
|
+
return t && !D(e);
|
|
4119
4121
|
}
|
|
4120
4122
|
function U(e) {
|
|
4121
|
-
for (let t of e) if (
|
|
4123
|
+
for (let t of e) if (w.test(t)) return !0;
|
|
4122
4124
|
return !1;
|
|
4123
4125
|
}
|
|
4124
4126
|
function W(e) {
|
|
4125
4127
|
if (e.length === 0) return !1;
|
|
4126
|
-
for (let t of e) if (!(
|
|
4128
|
+
for (let t of e) if (!(w.test(t) || Ae.has(t))) return !1;
|
|
4127
4129
|
return !0;
|
|
4128
4130
|
}
|
|
4129
|
-
function
|
|
4131
|
+
function Ne(e) {
|
|
4130
4132
|
let t = [], n = [], r = [], i = [];
|
|
4131
4133
|
for (let a = 0; a < e.len; a++) {
|
|
4132
4134
|
let o = e.texts[a], s = e.kinds[a];
|
|
@@ -4146,13 +4148,13 @@ function Ae(e) {
|
|
|
4146
4148
|
starts: i
|
|
4147
4149
|
};
|
|
4148
4150
|
}
|
|
4149
|
-
function
|
|
4151
|
+
function Pe(e) {
|
|
4150
4152
|
let t = [], n = [], r = [], i = [];
|
|
4151
4153
|
for (let a = 0; a < e.len; a++) {
|
|
4152
4154
|
let o = e.texts[a], s = e.kinds[a], c = e.isWordLike[a];
|
|
4153
|
-
if (s === "text" && H(o) && (c ||
|
|
4155
|
+
if (s === "text" && H(o) && (c || pe(o)) && !D(o)) {
|
|
4154
4156
|
let s = [o], c = !0, l = a + 1;
|
|
4155
|
-
for (; c && l < e.len && e.kinds[l] === "text" &&
|
|
4157
|
+
for (; c && l < e.len && e.kinds[l] === "text" && Me(e.texts[l], e.isWordLike[l]);) {
|
|
4156
4158
|
let t = e.texts[l];
|
|
4157
4159
|
s.push(t), c = H(t), l++;
|
|
4158
4160
|
}
|
|
@@ -4169,7 +4171,7 @@ function je(e) {
|
|
|
4169
4171
|
starts: i
|
|
4170
4172
|
};
|
|
4171
4173
|
}
|
|
4172
|
-
function
|
|
4174
|
+
function Fe(e) {
|
|
4173
4175
|
let t = [], n = [], r = [], i = [];
|
|
4174
4176
|
for (let a = 0; a < e.len; a++) {
|
|
4175
4177
|
let o = e.texts[a];
|
|
@@ -4199,7 +4201,7 @@ function Me(e) {
|
|
|
4199
4201
|
starts: i
|
|
4200
4202
|
};
|
|
4201
4203
|
}
|
|
4202
|
-
function
|
|
4204
|
+
function Ie(e) {
|
|
4203
4205
|
let t = [], n = [], r = [], i = [], a = 0;
|
|
4204
4206
|
for (; a < e.len;) {
|
|
4205
4207
|
let o = [e.texts[a]], s = e.isWordLike[a], c = e.kinds[a], l = e.starts[a];
|
|
@@ -4233,11 +4235,11 @@ function Ne(e) {
|
|
|
4233
4235
|
starts: i
|
|
4234
4236
|
};
|
|
4235
4237
|
}
|
|
4236
|
-
function
|
|
4238
|
+
function Le(e) {
|
|
4237
4239
|
let t = e.texts.slice(), n = e.isWordLike.slice(), r = e.kinds.slice(), i = e.starts.slice();
|
|
4238
4240
|
for (let e = 0; e < t.length - 1; e++) {
|
|
4239
|
-
if (r[e] !== "text" || r[e + 1] !== "text" || !
|
|
4240
|
-
let n =
|
|
4241
|
+
if (r[e] !== "text" || r[e + 1] !== "text" || !D(t[e]) || !D(t[e + 1])) continue;
|
|
4242
|
+
let n = he(t[e]);
|
|
4241
4243
|
n !== null && (t[e] = n.head, t[e + 1] = n.tail + t[e + 1], i[e + 1] = i[e] + n.head.length);
|
|
4242
4244
|
}
|
|
4243
4245
|
return {
|
|
@@ -4248,59 +4250,59 @@ function Pe(e) {
|
|
|
4248
4250
|
starts: i
|
|
4249
4251
|
};
|
|
4250
4252
|
}
|
|
4251
|
-
function
|
|
4252
|
-
let r =
|
|
4253
|
-
for (let _ of r.segment(e)) for (let e of
|
|
4254
|
-
let n = e.kind === "text", r =
|
|
4255
|
-
function
|
|
4256
|
-
u[
|
|
4253
|
+
function Re(e, t, n) {
|
|
4254
|
+
let r = x(), i = 0, a = [], o = [], s = [], c = [], l = [], u = [], d = [], f = [], p = [], m = [], h = [], g = [];
|
|
4255
|
+
for (let _ of r.segment(e)) for (let e of we(_.segment, _.isWordLike ?? !1, _.index, n)) {
|
|
4256
|
+
let n = e.kind === "text", r = ge(e.text, e.isWordLike, e.kind), _ = D(e.text), v = T(e.text), y = L(e.text), b = z(e.text), x = ye(e.text), S = i - 1;
|
|
4257
|
+
function C() {
|
|
4258
|
+
u[S] !== null && (o[S] = [_e(a, u, d, S)], u[S] = null), o[S].push(e.text), s[S] = s[S] || e.isWordLike, f[S] = f[S] || _, p[S] = p[S] || v, m[S] = b, h[S] = x, g[S] = ve(p[S], y);
|
|
4257
4259
|
}
|
|
4258
|
-
t.carryCJKAfterClosingQuote && n && i > 0 && c[
|
|
4260
|
+
t.carryCJKAfterClosingQuote && n && i > 0 && c[S] === "text" && _ && f[S] && m[S] || n && i > 0 && c[S] === "text" && se(e.text) && f[S] || n && i > 0 && c[S] === "text" && h[S] ? C() : n && i > 0 && c[S] === "text" && e.isWordLike && v && g[S] ? (C(), s[S] = !0) : r !== null && i > 0 && c[S] === "text" && u[S] === r ? d[S] = (d[S] ?? 1) + 1 : n && !e.isWordLike && i > 0 && c[S] === "text" && !f[S] && (oe(e.text) || e.text === "-" && s[S]) ? C() : (a[i] = e.text, o[i] = [e.text], s[i] = e.isWordLike, c[i] = e.kind, l[i] = e.start, u[i] = r, d[i] = r === null ? 0 : 1, f[i] = _, p[i] = v, m[i] = b, h[i] = x, g[i] = ve(v, y), i++);
|
|
4259
4261
|
}
|
|
4260
4262
|
for (let e = 0; e < i; e++) {
|
|
4261
4263
|
if (u[e] !== null) {
|
|
4262
|
-
a[e] =
|
|
4264
|
+
a[e] = _e(a, u, d, e);
|
|
4263
4265
|
continue;
|
|
4264
4266
|
}
|
|
4265
4267
|
a[e] = B(o[e]);
|
|
4266
4268
|
}
|
|
4267
4269
|
for (let e = 1; e < i; e++) c[e] === "text" && !s[e] && F(a[e]) && c[e - 1] === "text" && !f[e - 1] && (a[e - 1] += a[e], s[e - 1] = s[e - 1] || s[e], a[e] = "");
|
|
4268
|
-
let _ = Array.from({ length: i }, () => null),
|
|
4270
|
+
let _ = Array.from({ length: i }, () => null), v = -1;
|
|
4269
4271
|
for (let e = i - 1; e >= 0; e--) {
|
|
4270
4272
|
let t = a[e];
|
|
4271
4273
|
if (t.length !== 0) {
|
|
4272
|
-
if (c[e] === "text" && !s[e] &&
|
|
4273
|
-
let n = _[
|
|
4274
|
-
n.push(t), _[
|
|
4274
|
+
if (c[e] === "text" && !s[e] && v >= 0 && c[v] === "text" && (ce(t) || t === "-" && me(a[v]))) {
|
|
4275
|
+
let n = _[v] ?? [];
|
|
4276
|
+
n.push(t), _[v] = n, l[v] = l[e], a[e] = "";
|
|
4275
4277
|
continue;
|
|
4276
4278
|
}
|
|
4277
|
-
|
|
4279
|
+
v = e;
|
|
4278
4280
|
}
|
|
4279
4281
|
}
|
|
4280
4282
|
for (let e = 0; e < i; e++) {
|
|
4281
4283
|
let t = _[e];
|
|
4282
|
-
t != null && (a[e] =
|
|
4284
|
+
t != null && (a[e] = Ce(t, a[e]));
|
|
4283
4285
|
}
|
|
4284
|
-
let
|
|
4286
|
+
let y = 0;
|
|
4285
4287
|
for (let e = 0; e < i; e++) {
|
|
4286
4288
|
let t = a[e];
|
|
4287
|
-
t.length !== 0 && (
|
|
4289
|
+
t.length !== 0 && (y !== e && (a[y] = t, s[y] = s[e], c[y] = c[e], l[y] = l[e]), y++);
|
|
4288
4290
|
}
|
|
4289
|
-
a.length =
|
|
4290
|
-
let
|
|
4291
|
-
len:
|
|
4291
|
+
a.length = y, s.length = y, c.length = y, l.length = y;
|
|
4292
|
+
let b = Le(Pe(Fe(Ne(ke(Oe(Ie({
|
|
4293
|
+
len: y,
|
|
4292
4294
|
texts: a,
|
|
4293
4295
|
isWordLike: s,
|
|
4294
4296
|
kinds: c,
|
|
4295
4297
|
starts: l
|
|
4296
4298
|
})))))));
|
|
4297
|
-
for (let e = 0; e <
|
|
4298
|
-
let t =
|
|
4299
|
-
t !== null && (
|
|
4299
|
+
for (let e = 0; e < b.len - 1; e++) {
|
|
4300
|
+
let t = be(b.texts[e]);
|
|
4301
|
+
t !== null && (b.kinds[e] !== "space" && b.kinds[e] !== "preserved-space" || b.kinds[e + 1] !== "text" || !T(b.texts[e + 1]) || (b.texts[e] = t.space, b.isWordLike[e] = !1, b.kinds[e] = b.kinds[e] === "preserved-space" ? "preserved-space" : "space", b.texts[e + 1] = t.marks + b.texts[e + 1], b.starts[e + 1] = b.starts[e] + t.space.length));
|
|
4300
4302
|
}
|
|
4301
|
-
return
|
|
4303
|
+
return b;
|
|
4302
4304
|
}
|
|
4303
|
-
function
|
|
4305
|
+
function ze(e, t) {
|
|
4304
4306
|
if (e.len === 0) return [];
|
|
4305
4307
|
if (!t.preserveHardBreaks) return [{
|
|
4306
4308
|
startSegmentIndex: 0,
|
|
@@ -4319,7 +4321,7 @@ function Ie(e, t) {
|
|
|
4319
4321
|
consumedEndSegmentIndex: e.len
|
|
4320
4322
|
}), n;
|
|
4321
4323
|
}
|
|
4322
|
-
function
|
|
4324
|
+
function Be(e, t, n) {
|
|
4323
4325
|
if (t.len <= 1) return t;
|
|
4324
4326
|
let r = [], i = [], a = [], o = [], s = -1, c = !1;
|
|
4325
4327
|
function l(e) {
|
|
@@ -4341,7 +4343,7 @@ function Le(e, t, n) {
|
|
|
4341
4343
|
for (let e = 0; e < t.len; e++) {
|
|
4342
4344
|
let l = t.texts[e], u = t.kinds[e];
|
|
4343
4345
|
if (u === "text") {
|
|
4344
|
-
s >= 0 && !A(t.texts[e - 1], n) && d(e), s < 0 && (s = e), c ||=
|
|
4346
|
+
s >= 0 && !A(t.texts[e - 1], n) && d(e), s < 0 && (s = e), c ||= D(l);
|
|
4345
4347
|
continue;
|
|
4346
4348
|
}
|
|
4347
4349
|
d(e), r.push(l), i.push(t.isWordLike[e]), a.push(u), o.push(t.starts[e]);
|
|
@@ -4354,8 +4356,8 @@ function Le(e, t, n) {
|
|
|
4354
4356
|
starts: o
|
|
4355
4357
|
};
|
|
4356
4358
|
}
|
|
4357
|
-
function
|
|
4358
|
-
let i =
|
|
4359
|
+
function Ve(e, t, n = "normal", r = "normal") {
|
|
4360
|
+
let i = g(n), a = i.mode === "pre-wrap" ? v(e) : _(e);
|
|
4359
4361
|
if (a.length === 0) return {
|
|
4360
4362
|
normalized: a,
|
|
4361
4363
|
chunks: [],
|
|
@@ -4365,31 +4367,31 @@ function Re(e, t, n = "normal", r = "normal") {
|
|
|
4365
4367
|
kinds: [],
|
|
4366
4368
|
starts: []
|
|
4367
4369
|
};
|
|
4368
|
-
let o =
|
|
4370
|
+
let o = Re(a, t, i), s = r === "keep-all" ? Be(a, o, t.breakKeepAllAfterPunctuation) : o;
|
|
4369
4371
|
return {
|
|
4370
4372
|
normalized: a,
|
|
4371
|
-
chunks:
|
|
4373
|
+
chunks: ze(s, i),
|
|
4372
4374
|
...s
|
|
4373
4375
|
};
|
|
4374
4376
|
}
|
|
4375
4377
|
//#endregion
|
|
4376
4378
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/measurement.js
|
|
4377
|
-
var G = null,
|
|
4379
|
+
var G = null, He = /* @__PURE__ */ new Map(), K = null, Ue = 96, We = /\p{Emoji_Presentation}/u, Ge = /[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u, q = null, Ke = /* @__PURE__ */ new Map();
|
|
4378
4380
|
function J() {
|
|
4379
4381
|
if (G !== null) return G;
|
|
4380
4382
|
if (typeof OffscreenCanvas < "u") return G = new OffscreenCanvas(1, 1).getContext("2d"), G;
|
|
4381
4383
|
if (typeof document < "u") return G = document.createElement("canvas").getContext("2d"), G;
|
|
4382
4384
|
throw Error("Text measurement requires OffscreenCanvas or a DOM canvas context.");
|
|
4383
4385
|
}
|
|
4384
|
-
function
|
|
4385
|
-
let t =
|
|
4386
|
-
return t || (t = /* @__PURE__ */ new Map(),
|
|
4386
|
+
function qe(e) {
|
|
4387
|
+
let t = He.get(e);
|
|
4388
|
+
return t || (t = /* @__PURE__ */ new Map(), He.set(e, t)), t;
|
|
4387
4389
|
}
|
|
4388
4390
|
function Y(e, t) {
|
|
4389
4391
|
let n = t.get(e);
|
|
4390
4392
|
return n === void 0 && (n = {
|
|
4391
4393
|
width: J().measureText(e).width,
|
|
4392
|
-
containsCJK:
|
|
4394
|
+
containsCJK: D(e)
|
|
4393
4395
|
}, t.set(e, n)), n;
|
|
4394
4396
|
}
|
|
4395
4397
|
function X() {
|
|
@@ -4410,21 +4412,21 @@ function X() {
|
|
|
4410
4412
|
preferEarlySoftHyphenBreak: t
|
|
4411
4413
|
}, K;
|
|
4412
4414
|
}
|
|
4413
|
-
function
|
|
4415
|
+
function Je(e) {
|
|
4414
4416
|
let t = e.match(/(\d+(?:\.\d+)?)\s*px/);
|
|
4415
4417
|
return t ? parseFloat(t[1]) : 16;
|
|
4416
4418
|
}
|
|
4417
|
-
function
|
|
4419
|
+
function Ye() {
|
|
4418
4420
|
return q === null && (q = new Intl.Segmenter(void 0, { granularity: "grapheme" })), q;
|
|
4419
4421
|
}
|
|
4420
|
-
function
|
|
4421
|
-
return
|
|
4422
|
+
function Xe(e) {
|
|
4423
|
+
return We.test(e) || e.includes("️");
|
|
4422
4424
|
}
|
|
4423
|
-
function
|
|
4424
|
-
return
|
|
4425
|
+
function Ze(e) {
|
|
4426
|
+
return Ge.test(e);
|
|
4425
4427
|
}
|
|
4426
|
-
function
|
|
4427
|
-
let n =
|
|
4428
|
+
function Qe(e, t) {
|
|
4429
|
+
let n = Ke.get(e);
|
|
4428
4430
|
if (n !== void 0) return n;
|
|
4429
4431
|
let r = J();
|
|
4430
4432
|
r.font = e;
|
|
@@ -4435,23 +4437,23 @@ function Ye(e, t) {
|
|
|
4435
4437
|
let r = t.getBoundingClientRect().width;
|
|
4436
4438
|
document.body.removeChild(t), i - r > .5 && (n = i - r);
|
|
4437
4439
|
}
|
|
4438
|
-
return
|
|
4440
|
+
return Ke.set(e, n), n;
|
|
4439
4441
|
}
|
|
4440
|
-
function
|
|
4441
|
-
let t = 0, n =
|
|
4442
|
-
for (let r of n.segment(e))
|
|
4442
|
+
function $e(e) {
|
|
4443
|
+
let t = 0, n = Ye();
|
|
4444
|
+
for (let r of n.segment(e)) Xe(r.segment) && t++;
|
|
4443
4445
|
return t;
|
|
4444
4446
|
}
|
|
4445
|
-
function
|
|
4446
|
-
return t.emojiCount === void 0 && (t.emojiCount =
|
|
4447
|
+
function et(e, t) {
|
|
4448
|
+
return t.emojiCount === void 0 && (t.emojiCount = $e(e)), t.emojiCount;
|
|
4447
4449
|
}
|
|
4448
4450
|
function Z(e, t, n) {
|
|
4449
|
-
return n === 0 ? t.width : t.width -
|
|
4451
|
+
return n === 0 ? t.width : t.width - et(e, t) * n;
|
|
4450
4452
|
}
|
|
4451
|
-
function
|
|
4453
|
+
function tt(e, t, n, r, i) {
|
|
4452
4454
|
if (t.breakableFitAdvances !== void 0 && t.breakableFitMode === i) return t.breakableFitAdvances;
|
|
4453
4455
|
t.breakableFitMode = i;
|
|
4454
|
-
let a =
|
|
4456
|
+
let a = Ye(), o = [];
|
|
4455
4457
|
for (let t of a.segment(e)) o.push(t.segment);
|
|
4456
4458
|
if (o.length <= 1) return t.breakableFitAdvances = null, t.breakableFitAdvances;
|
|
4457
4459
|
if (i === "sum-graphemes") {
|
|
@@ -4462,7 +4464,7 @@ function Qe(e, t, n, r, i) {
|
|
|
4462
4464
|
}
|
|
4463
4465
|
return t.breakableFitAdvances = e, t.breakableFitAdvances;
|
|
4464
4466
|
}
|
|
4465
|
-
if (i === "pair-context" || o.length >
|
|
4467
|
+
if (i === "pair-context" || o.length > Ue) {
|
|
4466
4468
|
let e = [], i = null, a = 0;
|
|
4467
4469
|
for (let t of o) {
|
|
4468
4470
|
let o = Z(t, Y(t, n), r);
|
|
@@ -4483,62 +4485,62 @@ function Qe(e, t, n, r, i) {
|
|
|
4483
4485
|
}
|
|
4484
4486
|
return t.breakableFitAdvances = s, t.breakableFitAdvances;
|
|
4485
4487
|
}
|
|
4486
|
-
function
|
|
4488
|
+
function nt(e, t) {
|
|
4487
4489
|
let n = J();
|
|
4488
4490
|
n.font = e;
|
|
4489
|
-
let r =
|
|
4491
|
+
let r = qe(e), i = Je(e);
|
|
4490
4492
|
return {
|
|
4491
4493
|
cache: r,
|
|
4492
4494
|
fontSize: i,
|
|
4493
|
-
emojiCorrection: t ?
|
|
4495
|
+
emojiCorrection: t ? Qe(e, i) : 0
|
|
4494
4496
|
};
|
|
4495
4497
|
}
|
|
4496
4498
|
//#endregion
|
|
4497
4499
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/line-break.js
|
|
4498
|
-
function
|
|
4500
|
+
function rt(e) {
|
|
4499
4501
|
return e === "space" || e === "zero-width-break" || e === "soft-hyphen";
|
|
4500
4502
|
}
|
|
4501
|
-
function
|
|
4503
|
+
function it(e) {
|
|
4502
4504
|
return e === "space" || e === "preserved-space" || e === "tab" || e === "zero-width-break" || e === "soft-hyphen";
|
|
4503
4505
|
}
|
|
4504
|
-
function
|
|
4506
|
+
function at(e, t, n = e.widths.length) {
|
|
4505
4507
|
for (; t < n;) {
|
|
4506
4508
|
let n = e.kinds[t];
|
|
4507
|
-
if (!
|
|
4509
|
+
if (!rt(n)) break;
|
|
4508
4510
|
t++;
|
|
4509
4511
|
}
|
|
4510
4512
|
return t;
|
|
4511
4513
|
}
|
|
4512
|
-
function
|
|
4514
|
+
function ot(e, t) {
|
|
4513
4515
|
if (t <= 0) return 0;
|
|
4514
4516
|
let n = e % t;
|
|
4515
4517
|
return Math.abs(n) <= 1e-6 ? t : t - n;
|
|
4516
4518
|
}
|
|
4517
|
-
function
|
|
4519
|
+
function st(e, t, n) {
|
|
4518
4520
|
return e.letterSpacing !== 0 && t && e.spacingGraphemeCounts[n] > 0 ? e.letterSpacing : 0;
|
|
4519
4521
|
}
|
|
4520
4522
|
function Q(e, t) {
|
|
4521
4523
|
return t === 0 ? 0 : e + t;
|
|
4522
4524
|
}
|
|
4523
|
-
function
|
|
4525
|
+
function ct(e, t) {
|
|
4524
4526
|
return e.letterSpacing !== 0 && e.spacingGraphemeCounts[t] > 0 ? e.letterSpacing : 0;
|
|
4525
4527
|
}
|
|
4526
|
-
function
|
|
4527
|
-
return Q(r, t === "tab" ? i +
|
|
4528
|
+
function lt(e, t, n, r, i) {
|
|
4529
|
+
return Q(r, t === "tab" ? i + ct(e, n) : e.lineEndFitAdvances[n]);
|
|
4528
4530
|
}
|
|
4529
|
-
function
|
|
4531
|
+
function ut(e, t, n, r) {
|
|
4530
4532
|
return Q(r, t === "tab" ? 0 : e.lineEndFitAdvances[n]);
|
|
4531
4533
|
}
|
|
4532
|
-
function
|
|
4534
|
+
function dt(e, t, n, r, i) {
|
|
4533
4535
|
return Q(r, t === "tab" ? i : e.lineEndPaintAdvances[n]);
|
|
4534
4536
|
}
|
|
4535
|
-
function
|
|
4537
|
+
function ft(e, t, n) {
|
|
4536
4538
|
return e.letterSpacing !== 0 && t ? n + e.letterSpacing : n;
|
|
4537
4539
|
}
|
|
4538
|
-
function
|
|
4540
|
+
function pt(e, t) {
|
|
4539
4541
|
return e.letterSpacing === 0 ? t : t + e.letterSpacing;
|
|
4540
4542
|
}
|
|
4541
|
-
function
|
|
4543
|
+
function mt(e, t, n, r, i) {
|
|
4542
4544
|
if (e.letterSpacing === 0) return 0;
|
|
4543
4545
|
if (i > 0) return e.spacingGraphemeCounts[r] > 0 ? e.letterSpacing : 0;
|
|
4544
4546
|
for (let i = r - 1; i >= t; i--) {
|
|
@@ -4553,10 +4555,10 @@ function dt(e, t, n, r, i) {
|
|
|
4553
4555
|
}
|
|
4554
4556
|
return 0;
|
|
4555
4557
|
}
|
|
4556
|
-
function
|
|
4557
|
-
return t +
|
|
4558
|
+
function ht(e, t, n, r, i, a) {
|
|
4559
|
+
return t + mt(e, n, r, i, a);
|
|
4558
4560
|
}
|
|
4559
|
-
function
|
|
4561
|
+
function gt(e, t) {
|
|
4560
4562
|
let n = 0, r = e.chunks.length;
|
|
4561
4563
|
for (; n < r;) {
|
|
4562
4564
|
let i = Math.floor((n + r) / 2);
|
|
@@ -4564,24 +4566,24 @@ function pt(e, t) {
|
|
|
4564
4566
|
}
|
|
4565
4567
|
return n < e.chunks.length ? n : -1;
|
|
4566
4568
|
}
|
|
4567
|
-
function
|
|
4569
|
+
function _t(e, t, n) {
|
|
4568
4570
|
let r = n.segmentIndex;
|
|
4569
4571
|
if (n.graphemeIndex > 0) return t;
|
|
4570
4572
|
let i = e.chunks[t];
|
|
4571
|
-
return i.startSegmentIndex === i.endSegmentIndex && r === i.startSegmentIndex || (r < i.startSegmentIndex && (r = i.startSegmentIndex), r =
|
|
4573
|
+
return i.startSegmentIndex === i.endSegmentIndex && r === i.startSegmentIndex || (r < i.startSegmentIndex && (r = i.startSegmentIndex), r = at(e, r, i.endSegmentIndex), r < i.endSegmentIndex) ? (n.segmentIndex = r, n.graphemeIndex = 0, t) : i.consumedEndSegmentIndex >= e.widths.length ? -1 : (n.segmentIndex = i.consumedEndSegmentIndex, n.graphemeIndex = 0, t + 1);
|
|
4572
4574
|
}
|
|
4573
|
-
function
|
|
4575
|
+
function vt(e, t) {
|
|
4574
4576
|
if (t.segmentIndex >= e.widths.length) return -1;
|
|
4575
|
-
let n =
|
|
4576
|
-
return n < 0 ? -1 :
|
|
4577
|
+
let n = gt(e, t.segmentIndex);
|
|
4578
|
+
return n < 0 ? -1 : _t(e, n, t);
|
|
4577
4579
|
}
|
|
4578
|
-
function
|
|
4580
|
+
function yt(e, t, n) {
|
|
4579
4581
|
if (n.segmentIndex >= e.widths.length) return -1;
|
|
4580
4582
|
let r = t;
|
|
4581
4583
|
for (; r < e.chunks.length && n.segmentIndex >= e.chunks[r].consumedEndSegmentIndex;) r++;
|
|
4582
|
-
return r >= e.chunks.length ? -1 :
|
|
4584
|
+
return r >= e.chunks.length ? -1 : _t(e, r, n);
|
|
4583
4585
|
}
|
|
4584
|
-
function
|
|
4586
|
+
function bt(e, t, n, r) {
|
|
4585
4587
|
let i = e.chunks[n];
|
|
4586
4588
|
if (i.startSegmentIndex === i.endSegmentIndex) return t.segmentIndex = i.consumedEndSegmentIndex, t.graphemeIndex = 0, 0;
|
|
4587
4589
|
let { widths: a, kinds: o, breakableFitAdvances: s, discretionaryHyphenWidth: c } = e, l = X(), u = r + l.lineFitEpsilon, d = t.segmentIndex, f = t.graphemeIndex, p = 0, m = !1, h = t.segmentIndex, g = t.graphemeIndex, _ = -1, v = 0, y = 0, b = null;
|
|
@@ -4589,7 +4591,7 @@ function _t(e, t, n, r) {
|
|
|
4589
4591
|
return b === "soft-hyphen" && _ === h && g === 0 ? y : p;
|
|
4590
4592
|
}
|
|
4591
4593
|
function S(n = h, r = g, i = x()) {
|
|
4592
|
-
return m ? (t.segmentIndex = n, t.graphemeIndex = r,
|
|
4594
|
+
return m ? (t.segmentIndex = n, t.graphemeIndex = r, ht(e, i, d, f, n, r)) : null;
|
|
4593
4595
|
}
|
|
4594
4596
|
function C(e, t) {
|
|
4595
4597
|
m = !0, h = e + 1, g = 0, p = t;
|
|
@@ -4606,7 +4608,7 @@ function _t(e, t, n, r) {
|
|
|
4606
4608
|
}
|
|
4607
4609
|
function E(t, n, r, i, a, o) {
|
|
4608
4610
|
if (!n) return;
|
|
4609
|
-
let s =
|
|
4611
|
+
let s = ut(e, t, r, a), c = dt(e, t, r, a, i);
|
|
4610
4612
|
_ = r + 1, v = p - o + s, y = p - o + c, b = t;
|
|
4611
4613
|
}
|
|
4612
4614
|
function D(t, n) {
|
|
@@ -4615,8 +4617,8 @@ function _t(e, t, n, r) {
|
|
|
4615
4617
|
let n = r[i];
|
|
4616
4618
|
if (!m) w(t, i, n);
|
|
4617
4619
|
else {
|
|
4618
|
-
let r =
|
|
4619
|
-
if (
|
|
4620
|
+
let r = ft(e, !0, n), a = p + r;
|
|
4621
|
+
if (pt(e, a) > u) return S();
|
|
4620
4622
|
p = a, h = t, g = i + 1;
|
|
4621
4623
|
}
|
|
4622
4624
|
}
|
|
@@ -4626,7 +4628,7 @@ function _t(e, t, n, r) {
|
|
|
4626
4628
|
return b !== "soft-hyphen" || _ < 0 ? null : v <= u ? S(_, 0, y) : null;
|
|
4627
4629
|
}
|
|
4628
4630
|
for (let n = t.segmentIndex; n < i.endSegmentIndex; n++) {
|
|
4629
|
-
let r = o[n], i =
|
|
4631
|
+
let r = o[n], i = it(r), d = n === t.segmentIndex ? t.graphemeIndex : 0, f = st(e, m, n), x = r === "tab" ? ot(p + f, e.tabStopAdvance) : a[n], w = f + x, k = lt(e, r, n, f, x);
|
|
4630
4632
|
if (r === "soft-hyphen" && d === 0) {
|
|
4631
4633
|
m && (h = n + 1, g = 0, _ = n + 1, v = p + c, y = p + c, b = r);
|
|
4632
4634
|
continue;
|
|
@@ -4643,7 +4645,7 @@ function _t(e, t, n, r) {
|
|
|
4643
4645
|
continue;
|
|
4644
4646
|
}
|
|
4645
4647
|
if (p + k > u) {
|
|
4646
|
-
let t = p +
|
|
4648
|
+
let t = p + ut(e, r, n, f), a = p + dt(e, r, n, f, x);
|
|
4647
4649
|
if (b === "soft-hyphen" && l.preferEarlySoftHyphenBreak && v <= u) return S(_, 0, y);
|
|
4648
4650
|
let o = O();
|
|
4649
4651
|
if (o !== null) return o;
|
|
@@ -4661,10 +4663,10 @@ function _t(e, t, n, r) {
|
|
|
4661
4663
|
}
|
|
4662
4664
|
return _ === i.consumedEndSegmentIndex && g === 0 ? S(i.consumedEndSegmentIndex, 0, y) : S(i.consumedEndSegmentIndex, 0, p);
|
|
4663
4665
|
}
|
|
4664
|
-
function
|
|
4666
|
+
function xt(e, t, n) {
|
|
4665
4667
|
let { widths: r, kinds: i, breakableFitAdvances: a } = e, o = n + X().lineFitEpsilon, s = 0, c = !1, l = t.segmentIndex, u = t.graphemeIndex, d = -1, f = 0;
|
|
4666
4668
|
for (let e = t.segmentIndex; e < r.length; e++) {
|
|
4667
|
-
let n = i[e], p =
|
|
4669
|
+
let n = i[e], p = it(n), m = e === t.segmentIndex ? t.graphemeIndex : 0, h = a[e], g = r[e];
|
|
4668
4670
|
if (!c) {
|
|
4669
4671
|
if (m > 0 || g > o && h !== null) {
|
|
4670
4672
|
let n = h, r = n[m];
|
|
@@ -4684,14 +4686,14 @@ function vt(e, t, n) {
|
|
|
4684
4686
|
}
|
|
4685
4687
|
return c ? (t.segmentIndex = l, t.graphemeIndex = u, s) : null;
|
|
4686
4688
|
}
|
|
4687
|
-
function
|
|
4688
|
-
return e.simpleLineWalkFastPath ?
|
|
4689
|
+
function St(e, t, n, r) {
|
|
4690
|
+
return e.simpleLineWalkFastPath ? xt(e, t, r) : bt(e, t, n, r);
|
|
4689
4691
|
}
|
|
4690
|
-
function
|
|
4691
|
-
let r =
|
|
4692
|
-
return r < 0 ? null :
|
|
4692
|
+
function Ct(e, t, n) {
|
|
4693
|
+
let r = vt(e, t);
|
|
4694
|
+
return r < 0 ? null : St(e, t, r, n);
|
|
4693
4695
|
}
|
|
4694
|
-
function
|
|
4696
|
+
function wt(e, t) {
|
|
4695
4697
|
if (e.widths.length === 0) return {
|
|
4696
4698
|
lineCount: 0,
|
|
4697
4699
|
maxLineWidth: 0
|
|
@@ -4701,14 +4703,14 @@ function xt(e, t) {
|
|
|
4701
4703
|
graphemeIndex: 0
|
|
4702
4704
|
}, r = 0, i = 0;
|
|
4703
4705
|
if (!e.simpleLineWalkFastPath) {
|
|
4704
|
-
let a =
|
|
4706
|
+
let a = vt(e, n);
|
|
4705
4707
|
for (; a >= 0;) {
|
|
4706
|
-
let o =
|
|
4708
|
+
let o = bt(e, n, a, t);
|
|
4707
4709
|
if (o === null) return {
|
|
4708
4710
|
lineCount: r,
|
|
4709
4711
|
maxLineWidth: i
|
|
4710
4712
|
};
|
|
4711
|
-
r++, o > i && (i = o), a =
|
|
4713
|
+
r++, o > i && (i = o), a = yt(e, a, n);
|
|
4712
4714
|
}
|
|
4713
4715
|
return {
|
|
4714
4716
|
lineCount: r,
|
|
@@ -4716,7 +4718,7 @@ function xt(e, t) {
|
|
|
4716
4718
|
};
|
|
4717
4719
|
}
|
|
4718
4720
|
for (;;) {
|
|
4719
|
-
let a =
|
|
4721
|
+
let a = Ct(e, n, t);
|
|
4720
4722
|
if (a === null) return {
|
|
4721
4723
|
lineCount: r,
|
|
4722
4724
|
maxLineWidth: i
|
|
@@ -4727,10 +4729,10 @@ function xt(e, t) {
|
|
|
4727
4729
|
//#endregion
|
|
4728
4730
|
//#region ../../node_modules/.pnpm/@chenglou+pretext@0.0.7/node_modules/@chenglou/pretext/dist/layout.js
|
|
4729
4731
|
var $ = null;
|
|
4730
|
-
function
|
|
4732
|
+
function Tt() {
|
|
4731
4733
|
return $ === null && ($ = new Intl.Segmenter(void 0, { granularity: "grapheme" })), $;
|
|
4732
4734
|
}
|
|
4733
|
-
function
|
|
4735
|
+
function Et(e) {
|
|
4734
4736
|
return e ? {
|
|
4735
4737
|
widths: [],
|
|
4736
4738
|
lineEndFitAdvances: [],
|
|
@@ -4760,7 +4762,7 @@ function Ct(e) {
|
|
|
4760
4762
|
chunks: []
|
|
4761
4763
|
};
|
|
4762
4764
|
}
|
|
4763
|
-
function
|
|
4765
|
+
function Dt(e, t) {
|
|
4764
4766
|
let n = [], r = [], i = 0, a = !1, o = !1, s = !1;
|
|
4765
4767
|
function c() {
|
|
4766
4768
|
r.length !== 0 && (n.push({
|
|
@@ -4776,8 +4778,8 @@ function wt(e, t) {
|
|
|
4776
4778
|
let n = z(e);
|
|
4777
4779
|
e.length === 1 && P.has(e) ? o ||= n : o = n, s = !1;
|
|
4778
4780
|
}
|
|
4779
|
-
for (let n of
|
|
4780
|
-
let e = n.segment, i =
|
|
4781
|
+
for (let n of Tt().segment(e)) {
|
|
4782
|
+
let e = n.segment, i = D(e);
|
|
4781
4783
|
if (r.length === 0) {
|
|
4782
4784
|
l(e, n.index, i);
|
|
4783
4785
|
continue;
|
|
@@ -4794,7 +4796,7 @@ function wt(e, t) {
|
|
|
4794
4796
|
}
|
|
4795
4797
|
return c(), n;
|
|
4796
4798
|
}
|
|
4797
|
-
function
|
|
4799
|
+
function Ot(e, t, n) {
|
|
4798
4800
|
if (t.length <= 1) return t;
|
|
4799
4801
|
let r = [], i = -1, a = !1;
|
|
4800
4802
|
function o(n, i) {
|
|
@@ -4813,38 +4815,38 @@ function Tt(e, t, n) {
|
|
|
4813
4815
|
}
|
|
4814
4816
|
for (let e = 0; e < t.length; e++) {
|
|
4815
4817
|
let r = t[e];
|
|
4816
|
-
i >= 0 && !A(t[e - 1].text, n) && s(e), i < 0 && (i = e), a ||=
|
|
4818
|
+
i >= 0 && !A(t[e - 1].text, n) && s(e), i < 0 && (i = e), a ||= D(r.text);
|
|
4817
4819
|
}
|
|
4818
4820
|
return s(t.length), r;
|
|
4819
4821
|
}
|
|
4820
|
-
function
|
|
4822
|
+
function kt(e, t) {
|
|
4821
4823
|
if (t === "zero-width-break" || t === "soft-hyphen" || t === "hard-break") return 0;
|
|
4822
4824
|
if (t === "tab") return 1;
|
|
4823
|
-
let n = 0, r =
|
|
4825
|
+
let n = 0, r = Tt();
|
|
4824
4826
|
for (let t of r.segment(e)) n++;
|
|
4825
4827
|
return n;
|
|
4826
4828
|
}
|
|
4827
|
-
function
|
|
4829
|
+
function At(e, t, n) {
|
|
4828
4830
|
return t > 1 ? e + (t - 1) * n : e;
|
|
4829
4831
|
}
|
|
4830
|
-
function
|
|
4831
|
-
let a = X(), { cache: o, emojiCorrection: s } =
|
|
4832
|
-
if (e.len === 0) return
|
|
4833
|
-
let
|
|
4832
|
+
function jt(e, t, n, r, i) {
|
|
4833
|
+
let a = X(), { cache: o, emojiCorrection: s } = nt(t, Ze(e.normalized)), c = Z("-", Y("-", o), s) + (i === 0 ? 0 : i * 2), l = Z(" ", Y(" ", o), s) * 8, u = i !== 0;
|
|
4834
|
+
if (e.len === 0) return Et(n);
|
|
4835
|
+
let d = [], f = [], m = [], h = [], g = e.chunks.length <= 1 && !u, _ = n ? [] : null, v = [], y = [], b = n ? [] : null, x = Array.from({ length: e.len });
|
|
4834
4836
|
function S(e, t, n, r, i, a, o, s) {
|
|
4835
|
-
i !== "text" && i !== "space" && i !== "zero-width-break" && (g = !1),
|
|
4837
|
+
i !== "text" && i !== "space" && i !== "zero-width-break" && (g = !1), d.push(t), f.push(n), m.push(r), h.push(i), _?.push(a), v.push(o), u && y.push(s), b !== null && b.push(e);
|
|
4836
4838
|
}
|
|
4837
4839
|
function C(e, t, n, r, c) {
|
|
4838
|
-
let l = Y(e, o),
|
|
4840
|
+
let l = Y(e, o), d = u ? kt(e, t) : 0, f = At(Z(e, l, s), d, i), p = t === "space" || t === "preserved-space" || t === "zero-width-break" ? 0 : f, m = p === 0 ? 0 : p + (d > 0 ? i : 0), h = t === "space" || t === "zero-width-break" ? 0 : f;
|
|
4839
4841
|
if (c && r && e.length > 1) {
|
|
4840
4842
|
let r = "sum-graphemes";
|
|
4841
|
-
i === 0 ? W(e) ? r = "pair-context" : a.preferPrefixWidthsForBreakableRuns && (r = "segment-prefixes") : r = "segment-prefixes", S(e, f, m, h, t, n,
|
|
4843
|
+
i === 0 ? W(e) ? r = "pair-context" : a.preferPrefixWidthsForBreakableRuns && (r = "segment-prefixes") : r = "segment-prefixes", S(e, f, m, h, t, n, tt(e, l, o, s, r), d);
|
|
4842
4844
|
return;
|
|
4843
4845
|
}
|
|
4844
|
-
S(e, f, m, h, t, n, null,
|
|
4846
|
+
S(e, f, m, h, t, n, null, d);
|
|
4845
4847
|
}
|
|
4846
4848
|
for (let t = 0; t < e.len; t++) {
|
|
4847
|
-
x[t] =
|
|
4849
|
+
x[t] = d.length;
|
|
4848
4850
|
let n = e.texts[t], i = e.isWordLike[t], s = e.kinds[t], l = e.starts[t];
|
|
4849
4851
|
if (s === "soft-hyphen") {
|
|
4850
4852
|
S(n, 0, c, c, s, l, null, 0);
|
|
@@ -4855,51 +4857,51 @@ function Ot(e, t, n, r, i) {
|
|
|
4855
4857
|
continue;
|
|
4856
4858
|
}
|
|
4857
4859
|
if (s === "tab") {
|
|
4858
|
-
S(n, 0, 0, 0, s, l, null,
|
|
4860
|
+
S(n, 0, 0, 0, s, l, null, u ? kt(n, s) : 0);
|
|
4859
4861
|
continue;
|
|
4860
4862
|
}
|
|
4861
|
-
let
|
|
4862
|
-
if (s === "text" &&
|
|
4863
|
-
let e =
|
|
4863
|
+
let f = Y(n, o);
|
|
4864
|
+
if (s === "text" && f.containsCJK) {
|
|
4865
|
+
let e = Dt(n, a), t = r === "keep-all" ? Ot(n, e, a.breakKeepAllAfterPunctuation) : e;
|
|
4864
4866
|
for (let e = 0; e < t.length; e++) {
|
|
4865
4867
|
let n = t[e];
|
|
4866
|
-
C(n.text, "text", l + n.start, i, r === "keep-all" || !
|
|
4868
|
+
C(n.text, "text", l + n.start, i, r === "keep-all" || !D(n.text));
|
|
4867
4869
|
}
|
|
4868
4870
|
continue;
|
|
4869
4871
|
}
|
|
4870
4872
|
C(n, s, l, i, !0);
|
|
4871
4873
|
}
|
|
4872
|
-
let
|
|
4874
|
+
let w = Mt(e.chunks, x, d.length), T = _ === null ? null : p(e.normalized, _);
|
|
4873
4875
|
return b === null ? {
|
|
4874
|
-
widths:
|
|
4875
|
-
lineEndFitAdvances:
|
|
4876
|
+
widths: d,
|
|
4877
|
+
lineEndFitAdvances: f,
|
|
4876
4878
|
lineEndPaintAdvances: m,
|
|
4877
4879
|
kinds: h,
|
|
4878
4880
|
simpleLineWalkFastPath: g,
|
|
4879
|
-
segLevels:
|
|
4881
|
+
segLevels: T,
|
|
4880
4882
|
breakableFitAdvances: v,
|
|
4881
4883
|
letterSpacing: i,
|
|
4882
4884
|
spacingGraphemeCounts: y,
|
|
4883
4885
|
discretionaryHyphenWidth: c,
|
|
4884
4886
|
tabStopAdvance: l,
|
|
4885
|
-
chunks:
|
|
4887
|
+
chunks: w
|
|
4886
4888
|
} : {
|
|
4887
|
-
widths:
|
|
4888
|
-
lineEndFitAdvances:
|
|
4889
|
+
widths: d,
|
|
4890
|
+
lineEndFitAdvances: f,
|
|
4889
4891
|
lineEndPaintAdvances: m,
|
|
4890
4892
|
kinds: h,
|
|
4891
4893
|
simpleLineWalkFastPath: g,
|
|
4892
|
-
segLevels:
|
|
4894
|
+
segLevels: T,
|
|
4893
4895
|
breakableFitAdvances: v,
|
|
4894
4896
|
letterSpacing: i,
|
|
4895
4897
|
spacingGraphemeCounts: y,
|
|
4896
4898
|
discretionaryHyphenWidth: c,
|
|
4897
4899
|
tabStopAdvance: l,
|
|
4898
|
-
chunks:
|
|
4900
|
+
chunks: w,
|
|
4899
4901
|
segments: b
|
|
4900
4902
|
};
|
|
4901
4903
|
}
|
|
4902
|
-
function
|
|
4904
|
+
function Mt(e, t, n) {
|
|
4903
4905
|
let r = [];
|
|
4904
4906
|
for (let i = 0; i < e.length; i++) {
|
|
4905
4907
|
let a = e[i], o = a.startSegmentIndex < t.length ? t[a.startSegmentIndex] : n, s = a.endSegmentIndex < t.length ? t[a.endSegmentIndex] : n, c = a.consumedEndSegmentIndex < t.length ? t[a.consumedEndSegmentIndex] : n;
|
|
@@ -4911,48 +4913,63 @@ function kt(e, t, n) {
|
|
|
4911
4913
|
}
|
|
4912
4914
|
return r;
|
|
4913
4915
|
}
|
|
4914
|
-
function
|
|
4916
|
+
function Nt(e, t, n, r) {
|
|
4915
4917
|
let i = r?.wordBreak ?? "normal", a = r?.letterSpacing ?? 0;
|
|
4916
|
-
return
|
|
4918
|
+
return jt(Ve(e, X(), r?.whiteSpace, i), t, n, i, a);
|
|
4917
4919
|
}
|
|
4918
|
-
function
|
|
4919
|
-
return
|
|
4920
|
+
function Pt(e, t, n) {
|
|
4921
|
+
return Nt(e, t, !0, n);
|
|
4920
4922
|
}
|
|
4921
|
-
function
|
|
4923
|
+
function Ft(e) {
|
|
4922
4924
|
return e;
|
|
4923
4925
|
}
|
|
4924
|
-
function
|
|
4925
|
-
return
|
|
4926
|
+
function It(e, t) {
|
|
4927
|
+
return wt(Ft(e), t);
|
|
4926
4928
|
}
|
|
4927
4929
|
//#endregion
|
|
4928
|
-
//#region lib/ui/ChatMessage.tsx
|
|
4929
|
-
var
|
|
4930
|
-
function
|
|
4931
|
-
let [
|
|
4932
|
-
return
|
|
4930
|
+
//#region lib/ui/chat/ChatMessage.tsx
|
|
4931
|
+
var Lt = "16px Inter", Rt = .7, zt = 48;
|
|
4932
|
+
function Bt(e, t) {
|
|
4933
|
+
let [n, r] = o(void 0);
|
|
4934
|
+
return i(() => {
|
|
4933
4935
|
let n = t.current;
|
|
4934
4936
|
if (!(!n || !e)) try {
|
|
4935
|
-
let t = n.offsetWidth *
|
|
4936
|
-
|
|
4937
|
+
let t = n.offsetWidth * Rt, { maxLineWidth: i } = It(Pt(e, Lt), t - zt);
|
|
4938
|
+
r(i + zt);
|
|
4937
4939
|
} catch {}
|
|
4938
|
-
}, [e]),
|
|
4940
|
+
}, [e]), n;
|
|
4939
4941
|
}
|
|
4940
|
-
var
|
|
4941
|
-
let
|
|
4942
|
-
|
|
4943
|
-
|
|
4942
|
+
var Vt = r(function({ sender: r, children: i, className: l, onReplay: u, onEdit: d, onCopy: f, labels: p, ...m }) {
|
|
4943
|
+
let h = r === "user", g = a(null), _ = typeof i == "string" ? "p" : "div", [v, y] = o(!1), b = !!d && typeof i == "string", x = h && !!(u || b || f), S = Bt(h && typeof i == "string" ? i : "", g), C = /* @__PURE__ */ s(_, {
|
|
4944
|
+
style: S === void 0 ? void 0 : { maxWidth: S },
|
|
4945
|
+
className: e("text-b3", h ? "bg-lightSand max-w-[70%] rounded-32 px-24 py-12 text-black" : "text-black", x && "max-w-full"),
|
|
4946
|
+
children: i
|
|
4947
|
+
});
|
|
4948
|
+
return /* @__PURE__ */ s("div", {
|
|
4949
|
+
ref: g,
|
|
4944
4950
|
role: "article",
|
|
4945
|
-
"aria-label":
|
|
4946
|
-
...
|
|
4947
|
-
className: e("flex w-full px-20",
|
|
4948
|
-
children: /* @__PURE__ */
|
|
4949
|
-
|
|
4950
|
-
|
|
4951
|
-
|
|
4952
|
-
|
|
4951
|
+
"aria-label": h ? "Your message" : "Assistant message",
|
|
4952
|
+
...m,
|
|
4953
|
+
className: e("flex w-full px-20", h ? "justify-end" : "justify-start", l),
|
|
4954
|
+
children: v && typeof i == "string" ? /* @__PURE__ */ s(n, {
|
|
4955
|
+
value: i,
|
|
4956
|
+
labels: p,
|
|
4957
|
+
onCancel: () => y(!1),
|
|
4958
|
+
onSubmit: (e) => {
|
|
4959
|
+
y(!1), d?.(e);
|
|
4960
|
+
}
|
|
4961
|
+
}) : x ? /* @__PURE__ */ c("div", {
|
|
4962
|
+
className: "group/message flex max-w-[70%] flex-col items-end gap-4",
|
|
4963
|
+
children: [C, /* @__PURE__ */ s(t, {
|
|
4964
|
+
onReplay: u,
|
|
4965
|
+
onEdit: b ? () => y(!0) : void 0,
|
|
4966
|
+
onCopy: f,
|
|
4967
|
+
labels: p
|
|
4968
|
+
})]
|
|
4969
|
+
}) : C
|
|
4953
4970
|
});
|
|
4954
4971
|
});
|
|
4955
4972
|
//#endregion
|
|
4956
|
-
export {
|
|
4973
|
+
export { Vt as t };
|
|
4957
4974
|
|
|
4958
4975
|
//# sourceMappingURL=ChatMessage.js.map
|