oasis-editor 0.0.91 → 0.0.93
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/dist/{OasisEditorApp-Cwd5XBHr.js → OasisEditorApp-C_Ao4zIF.js} +36 -11
- package/dist/assets/{importDocxWorker-6DqfSWfq.js → importDocxWorker-DAbfLHtp.js} +1 -1
- package/dist/core/engine.d.ts +16 -0
- package/dist/core/model/types/document.d.ts +8 -0
- package/dist/core/model/types/layout.d.ts +9 -0
- package/dist/export/docx/docxPackageXml.d.ts +7 -1
- package/dist/import/docx/settings.d.ts +4 -0
- package/dist/{index-C2DlzueH.js → index-BQEtsRa0.js} +438 -49
- package/dist/layoutProjection/paragraphPagination.d.ts +2 -1
- package/dist/oasis-editor.js +1 -1
- package/dist/oasis-editor.umd.cjs +4 -4
- package/dist/ui/textMeasurement/hyphenation.d.ts +33 -0
- package/dist/ui/textMeasurement/types.d.ts +9 -2
- package/package.json +4 -1
|
@@ -2519,7 +2519,7 @@ function OasisEditorAppLazy(props = {}) {
|
|
|
2519
2519
|
onCleanup(() => {
|
|
2520
2520
|
cancelled = true;
|
|
2521
2521
|
});
|
|
2522
|
-
import("./OasisEditorApp-
|
|
2522
|
+
import("./OasisEditorApp-C_Ao4zIF.js").then((m) => {
|
|
2523
2523
|
cancelled = true;
|
|
2524
2524
|
setProgress(1);
|
|
2525
2525
|
setTimeout(() => setApp(() => m.OasisEditorApp), 180);
|
|
@@ -11132,7 +11132,8 @@ function buildMeasuredChars(paragraph, fragments, styles) {
|
|
|
11132
11132
|
char: char.char,
|
|
11133
11133
|
offset: char.paragraphOffset,
|
|
11134
11134
|
width,
|
|
11135
|
-
...objectHeight !== void 0 ? { objectHeight } : {}
|
|
11135
|
+
...objectHeight !== void 0 ? { objectHeight } : {},
|
|
11136
|
+
...objectHeight === void 0 ? { style: effectiveStyles } : {}
|
|
11136
11137
|
});
|
|
11137
11138
|
}
|
|
11138
11139
|
}
|
|
@@ -11417,7 +11418,8 @@ function getLineContentWidth(line, charByOffset) {
|
|
|
11417
11418
|
if (!trailingSlot) {
|
|
11418
11419
|
return 0;
|
|
11419
11420
|
}
|
|
11420
|
-
|
|
11421
|
+
const hyphenWidth = line.trailingHyphen ? line.trailingHyphenWidth ?? 0 : 0;
|
|
11422
|
+
return Math.max(0, trailingSlot.left - firstSlot.left + hyphenWidth);
|
|
11421
11423
|
}
|
|
11422
11424
|
function justifyLineBySpaces(line, extraSpace, charByOffset) {
|
|
11423
11425
|
const contentOffset = lastContentOffset(line, charByOffset);
|
|
@@ -11483,8 +11485,193 @@ function applyParagraphAlignment(paragraph, styles, contentWidth, lines, lineHar
|
|
|
11483
11485
|
return line;
|
|
11484
11486
|
});
|
|
11485
11487
|
}
|
|
11488
|
+
function Hypher(language) {
|
|
11489
|
+
var exceptions = [], i = 0;
|
|
11490
|
+
this.trie = this.createTrie(language["patterns"]);
|
|
11491
|
+
this.leftMin = language["leftmin"];
|
|
11492
|
+
this.rightMin = language["rightmin"];
|
|
11493
|
+
this.exceptions = {};
|
|
11494
|
+
if (language["exceptions"]) {
|
|
11495
|
+
exceptions = language["exceptions"].split(/,\s?/g);
|
|
11496
|
+
for (; i < exceptions.length; i += 1) {
|
|
11497
|
+
this.exceptions[exceptions[i].replace(/\u2027/g, "").toLowerCase()] = new RegExp("(" + exceptions[i].split("‧").join(")(") + ")", "i");
|
|
11498
|
+
}
|
|
11499
|
+
}
|
|
11500
|
+
}
|
|
11501
|
+
Hypher.TrieNode;
|
|
11502
|
+
Hypher.prototype.createTrie = function(patternObject) {
|
|
11503
|
+
var size = 0, i = 0, c = 0, p = 0, chars2 = null, points = null, codePoint = null, t = null, tree = {
|
|
11504
|
+
_points: []
|
|
11505
|
+
}, patterns;
|
|
11506
|
+
for (size in patternObject) {
|
|
11507
|
+
if (patternObject.hasOwnProperty(size)) {
|
|
11508
|
+
patterns = patternObject[size].match(new RegExp(".{1," + +size + "}", "g"));
|
|
11509
|
+
for (i = 0; i < patterns.length; i += 1) {
|
|
11510
|
+
chars2 = patterns[i].replace(/[0-9]/g, "").split("");
|
|
11511
|
+
points = patterns[i].split(/\D/);
|
|
11512
|
+
t = tree;
|
|
11513
|
+
for (c = 0; c < chars2.length; c += 1) {
|
|
11514
|
+
codePoint = chars2[c].charCodeAt(0);
|
|
11515
|
+
if (!t[codePoint]) {
|
|
11516
|
+
t[codePoint] = {};
|
|
11517
|
+
}
|
|
11518
|
+
t = t[codePoint];
|
|
11519
|
+
}
|
|
11520
|
+
t._points = [];
|
|
11521
|
+
for (p = 0; p < points.length; p += 1) {
|
|
11522
|
+
t._points[p] = points[p] || 0;
|
|
11523
|
+
}
|
|
11524
|
+
}
|
|
11525
|
+
}
|
|
11526
|
+
}
|
|
11527
|
+
return tree;
|
|
11528
|
+
};
|
|
11529
|
+
Hypher.prototype.hyphenateText = function(str, minLength) {
|
|
11530
|
+
minLength = minLength || 4;
|
|
11531
|
+
var words = str.split(/([a-zA-Z0-9_\u0027\u00AD\u00DF-\u00EA\u00EB\u00EC-\u00EF\u00F1-\u00F6\u00F8-\u00FD\u0101\u0103\u0105\u0107\u0109\u010D\u010F\u0111\u0113\u0117\u0119\u011B\u011D\u011F\u0123\u0125\u012B\u012F\u0131\u0135\u0137\u013C\u013E\u0142\u0144\u0146\u0148\u0151\u0153\u0155\u0159\u015B\u015D\u015F\u0161\u0165\u016B\u016D\u016F\u0171\u0173\u017A\u017C\u017E\u017F\u0219\u021B\u02BC\u0390\u03AC-\u03CE\u03F2\u0401\u0410-\u044F\u0451\u0454\u0456\u0457\u045E\u0491\u0531-\u0556\u0561-\u0587\u0902\u0903\u0905-\u090B\u090E-\u0910\u0912\u0914-\u0928\u092A-\u0939\u093E-\u0943\u0946-\u0948\u094A-\u094D\u0982\u0983\u0985-\u098B\u098F\u0990\u0994-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BE-\u09C3\u09C7\u09C8\u09CB-\u09CD\u09D7\u0A02\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A14-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A82\u0A83\u0A85-\u0A8B\u0A8F\u0A90\u0A94-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABE-\u0AC3\u0AC7\u0AC8\u0ACB-\u0ACD\u0B02\u0B03\u0B05-\u0B0B\u0B0F\u0B10\u0B14-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3E-\u0B43\u0B47\u0B48\u0B4B-\u0B4D\u0B57\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB5\u0BB7-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C02\u0C03\u0C05-\u0C0B\u0C0E-\u0C10\u0C12\u0C14-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3E-\u0C43\u0C46-\u0C48\u0C4A-\u0C4D\u0C82\u0C83\u0C85-\u0C8B\u0C8E-\u0C90\u0C92\u0C94-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBE-\u0CC3\u0CC6-\u0CC8\u0CCA-\u0CCD\u0D02\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D28\u0D2A-\u0D39\u0D3E-\u0D43\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D60\u0D61\u0D7A-\u0D7F\u1F00-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB2-\u1FB4\u1FB6\u1FB7\u1FBD\u1FBF\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD2\u1FD3\u1FD6\u1FD7\u1FE2-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u200D\u2019]+)/gi);
|
|
11532
|
+
for (var i = 0; i < words.length; i += 1) {
|
|
11533
|
+
if (words[i].indexOf("/") !== -1) {
|
|
11534
|
+
if (i !== 0 && i !== words.length - 1 && !/\s+\/|\/\s+/.test(words[i])) {
|
|
11535
|
+
words[i] += "";
|
|
11536
|
+
}
|
|
11537
|
+
} else if (words[i].length > minLength) {
|
|
11538
|
+
words[i] = this.hyphenate(words[i]).join("");
|
|
11539
|
+
}
|
|
11540
|
+
}
|
|
11541
|
+
return words.join("");
|
|
11542
|
+
};
|
|
11543
|
+
Hypher.prototype.hyphenate = function(word) {
|
|
11544
|
+
var characters, characterPoints = [], originalCharacters, i, j, k, node, points = [], wordLength, lowerCaseWord = word.toLowerCase(), nodePoints, nodePointsLength, m = Math.max, trie = this.trie, result = [""];
|
|
11545
|
+
if (this.exceptions.hasOwnProperty(lowerCaseWord)) {
|
|
11546
|
+
return word.match(this.exceptions[lowerCaseWord]).slice(1);
|
|
11547
|
+
}
|
|
11548
|
+
if (word.indexOf("") !== -1) {
|
|
11549
|
+
return [word];
|
|
11550
|
+
}
|
|
11551
|
+
word = "_" + word + "_";
|
|
11552
|
+
characters = word.toLowerCase().split("");
|
|
11553
|
+
originalCharacters = word.split("");
|
|
11554
|
+
wordLength = characters.length;
|
|
11555
|
+
for (i = 0; i < wordLength; i += 1) {
|
|
11556
|
+
points[i] = 0;
|
|
11557
|
+
characterPoints[i] = characters[i].charCodeAt(0);
|
|
11558
|
+
}
|
|
11559
|
+
for (i = 0; i < wordLength; i += 1) {
|
|
11560
|
+
node = trie;
|
|
11561
|
+
for (j = i; j < wordLength; j += 1) {
|
|
11562
|
+
node = node[characterPoints[j]];
|
|
11563
|
+
if (node) {
|
|
11564
|
+
nodePoints = node._points;
|
|
11565
|
+
if (nodePoints) {
|
|
11566
|
+
for (k = 0, nodePointsLength = nodePoints.length; k < nodePointsLength; k += 1) {
|
|
11567
|
+
points[i + k] = m(points[i + k], nodePoints[k]);
|
|
11568
|
+
}
|
|
11569
|
+
}
|
|
11570
|
+
} else {
|
|
11571
|
+
break;
|
|
11572
|
+
}
|
|
11573
|
+
}
|
|
11574
|
+
}
|
|
11575
|
+
for (i = 1; i < wordLength - 1; i += 1) {
|
|
11576
|
+
if (i > this.leftMin && i < wordLength - this.rightMin && points[i] % 2) {
|
|
11577
|
+
result.push(originalCharacters[i]);
|
|
11578
|
+
} else {
|
|
11579
|
+
result[result.length - 1] += originalCharacters[i];
|
|
11580
|
+
}
|
|
11581
|
+
}
|
|
11582
|
+
return result;
|
|
11583
|
+
};
|
|
11584
|
+
var hypher = Hypher;
|
|
11585
|
+
const Hypher$1 = /* @__PURE__ */ getDefaultExportFromCjs(hypher);
|
|
11586
|
+
var pt = {
|
|
11587
|
+
"id": "pt",
|
|
11588
|
+
"leftmin": 2,
|
|
11589
|
+
"rightmin": 4,
|
|
11590
|
+
"patterns": {
|
|
11591
|
+
2: "1-",
|
|
11592
|
+
3: "1ba1be1bi1bo1bu1bá1bâ1bã1bé1bí1bó1bú1bê1bõ1ca1ce1ci1co1cu1cá1câ1cã1cé1cí1có1cú1cê1cõ1ça1çe1çi1ço1çu1çá1çâ1çã1çé1çí1çó1çú1çê1çõ1da1de1di1do1du1dá1dâ1dã1dé1dí1dó1dú1dê1dõ1fa1fe1fi1fo1fu1fá1fâ1fã1fé1fí1fó1fú1fê1fõ1ga1ge1gi1go1gu1gá1gâ1gã1gé1gí1gó1gú1gê1gõ1ja1je1ji1jo1ju1já1jâ1jã1jé1jí1jó1jú1jê1jõ1ka1ke1ki1ko1ku1ká1kâ1kã1ké1kí1kó1kú1kê1kõ1la1le1li1lo1lu1lá1lâ1lã1lé1lí1ló1lú1lê1lõ1ma1me1mi1mo1mu1má1mâ1mã1mé1mí1mó1mú1mê1mõ1na1ne1ni1no1nu1ná1nâ1nã1né1ní1nó1nú1nê1nõ1pa1pe1pi1po1pu1pá1pâ1pã1pé1pí1pó1pú1pê1põ1ra1re1ri1ro1ru1rá1râ1rã1ré1rí1ró1rú1rê1rõ1sa1se1si1so1su1sá1sâ1sã1sé1sí1só1sú1sê1sõ1ta1te1ti1to1tu1tá1tâ1tã1té1tí1tó1tú1tê1tõ1va1ve1vi1vo1vu1vá1vâ1vã1vé1ví1vó1vú1vê1võ1xa1xe1xi1xo1xu1xá1xâ1xã1xé1xí1xó1xú1xê1xõ1za1ze1zi1zo1zu1zá1zâ1zã1zé1zí1zó1zú1zê1zõa3aa3ea3oc3ce3ae3ee3oi3ai3ei3ii3oi3âi3êi3ôo3ao3eo3or3rs3su3au3eu3ou3u",
|
|
11593
|
+
4: "1b2l1b2r1c2h1c2l1c2r1d2l1d2r1f2l1f2r1g2l1g2r1k2l1k2r1l2h1n2h1p2l1p2r1t2l1t2r1v2l1v2r1w2l1w2r",
|
|
11594
|
+
5: "1gu4a1gu4e1gu4i1gu4o1qu4a1qu4e1qu4i1qu4o"
|
|
11595
|
+
}
|
|
11596
|
+
};
|
|
11597
|
+
const patternsPt = /* @__PURE__ */ getDefaultExportFromCjs(pt);
|
|
11598
|
+
var enUs = {
|
|
11599
|
+
"id": ["en-us", "en"],
|
|
11600
|
+
"leftmin": 2,
|
|
11601
|
+
"rightmin": 3,
|
|
11602
|
+
"patterns": {
|
|
11603
|
+
3: "x1qei2e1je1f1to2tlou2w3c1tue1q4tvtw41tyo1q4tz4tcd2yd1wd1v1du1ta4eu1pas4y1droo2d1psw24sv1dod1m1fad1j1su4fdo2n4fh1fi4fm4fn1fopd42ft3fu1fy1ga2sss1ru5jd5cd1bg3bgd44uk2ok1cyo5jgl2g1m4pf4pg1gog3p1gr1soc1qgs2oi2g3w1gysk21coc5nh1bck1h1fh1h4hk1zo1ci4zms2hh1w2ch5zl2idc3c2us2igi3hi3j4ik1cab1vsa22btr1w4bp2io2ipu3u4irbk4b1j1va2ze2bf4oar1p4nz4zbi1u2iv4iy5ja1jeza1y1wk1bk3fkh4k1ikk4k1lk1mk5tk1w2ldr1mn1t2lfr1lr3j4ljl1l2lm2lp4ltn1rrh4v4yn1q1ly1maw1brg2r1fwi24ao2mhw4kr1cw5p4mkm1m1mo4wtwy4x1ar1ba2nn5mx1ex1h4mtx3i1muqu2p3wx3o4mwa1jx3p1naai2x1ua2fxx4y1ba2dn1jy1cn3fpr2y1dy1i",
|
|
11604
|
+
4: "4dryn2itni4on1inn1im_up3nik4ni4dy5giye4tyes4_ye44ab_nhe4nha4abe2n2gyn1guy1ery5eep2pe4abry3lay3lone4wne4v1nesy3chn1erne2q3neo1nenp2seps4hy2cey5lu2nedne2cyme44nk2y5at2adine2b2ne_y5ac2p1tp2ten1den1cun1cryn5dp2th4adup4twpub3ae4rxu3ayn5gaff4pue4n2au4p1ppuf4n2atag1ipu4mag1na2gon4asx3tix1t2pu2na4gya3haa3heah4la3ho_ti2a5ian2an5puspu2tnak4_th2n1kl_te4_ta4mu4u4mupmun23mum2alex4ob_sy25ynxal1i_st4y1o4xi5cxi5a4alm_si2_sh2m5sixhu4m4sh4m3r4amam2py2rabm2pixhi2yo5dr2ai4m1pmo2vmos2x2edmo2r4n1la2mor2asx3c2xas5yom4x4apxam3nme44mokrbi2nne44andy4osp4ot3noemn4omn4a4m1n4nog4m1l2angws4l1posw3shwri4wra4yp3iwom11wo2m2izrb4ow4nopo4pr2cem2isrd2iano4mig4y3pomi3awiz55mi_no4n4m1fme4v2re_wir42mes1menme2mme2gre1o2med4me_4nop4m5c4m1bwil21noureu2whi4w3ev4maprev2w1era2plpo4crfu4r4fyy5pu2maha3pu2mab2a2rn1p4npi44lyb4lya2p3nwam42l1w1lut4luplu3or1glluf4lu5a2wacltu2y3rol1tr4vv4r3guyr4rl1te4rh_nru4ar1il2sel4sc4l1rl5prl4plys4c4lovri3ar4ib4lof3lo_ar2par3q_os3ll4oll2i4as_ri1o3vokl2levoi44p1mlka35vo_ns4cas4ll1izr4iqr2is3vivl1it3lika2tan2sen2slrle42l3hlgo3l5gal5frns3mvi4p3ley_od2r2meles24athr4myle2al3drv1inldi4l2de2vilnt2il3civik4lce42l1b4lavv3ifrno4r3nua1trr2ocnt4sy4sok4syks4la2tuk4sck3ouko5ryss4a2tyau4b4klyys1tnu1akis4au3rki4pro4ek4ima2va5ki_nu4dn4umn3uokes4k1erav1irok2ke4g1keek2ed_me2aw3ikal4aws4k5agk3ab3ka_aye4ays4veg3jo4p5ba_4vedjew3n1v24ve_ja4pzar23vatizi4n1w41batba4z2b1bb2beix4o4i5w4b1d4be_rox5nym4nyp4n3za4ittr3por1r4i1ti1bel2ith2itei2su4rs2r1sars4cr2seis1p3betvag4i2sor1shbe3wr1sioad34b3hbi2bbi4d3bie3isf4ise2is_1bilr1sp5va_r5sw_le2uz4eir1ibi2tuxu3r1tiu1v2i1raze4nze4pb2l2uu4mo1biip3iz1eripe4b4louts44b1m4b3no3br3bodi4osbo4eru3aio4mi1ol4io_3booo1ce4inyin1u2insru2n2inn4inl4inkrv4e2inioch42iner3vo4indpi2np4idbt4lb4tob3trry4cry3t2in_o4elbu4ni2muim1i5saiil3v4ilnil1iil5fs1apo3er4b5w5by_bys4_in1sau4i1lazet4u2suo3ev2z1ii2go4igius1p5saw4s5bo2fi4ifti3fl4if_i3etsch2usc22ie4i2dui4dri2diid5dpi3au3ruz4ils1cuz4is4s5d4se_se4a2ce_2ici4ich3ceii1bri5bo1ceni1blse2g5seiibe43cepi2aniam4ur2li2al2i1acet4hy2scew41phy4ch_5phuhu4thu4gche2h4tyh4shur1durc44hr44h5p5sev5sexu1ra4s3fup3p2s3gph3t2sh_ho4g2h1n_he23ciau3pl4h1mci5ch2lozo4m4ciihi2vhi4p2cim2cin4phsu1peu1ouo1geu5osheu4sho4he4th1es4shwun5zun5ysi1bunu45cizo4glck3ihep5he2nh4ed1sioph2l5hazsi2rcly4zte4_ge21siscoe22cog5siu1siv5siz_ga24skes1l2s2leha4m2s1ms3ma1ogyo1h2u1ni3gus3gun2guegu4acov1gth3_eu3g4ros1n4_es3u2nez4zyum2pu1mi3som_ev2oig4cri2gov15goos4opgon2ul5v5goeu3lugob53go_2c1t4ph_g1nog1nic2te4sov4ulsgn4ag4myc4twcud5c4ufc4uipe2t3glo1gleul2igla4_eg23giz3cun5givgi4u3gir5gio1cusul4e2spagil4g1ic5gi__eb4cze41d2a5da_u1laggo44daf2dagg2gege4v1geo1gen2ged3dato1la2ge_ol2dol2i5daypek4p4eed1d42de_4gazol2tuiv3ol2vo2lys1sa2gamgaf4o2meui4n2ui2pe2cd4em4fugi4jku3fl3ufaf2tyf4to1denu4du4pe_2f3sfri2de1ps1si4f5pfos5d3eqs4sls4snfo2rss2tdes25fon4p1b_ci23payss5w2st_de1tf4l2de1v2fin4dey4d1fd4gast2idg1id2gyd1h25di_ud5dfi3au4cy_ch4pav43didu3cud1iff2fyu3crd1inst4r4f1ffev4fer11dio2fedfe4bdir2s2ty4fe_dis1on1au3ca4f5bon1c2ondd5k25far4fagpa1peys45eyc1exps4ul2dlyp4ale3whon3s3do_e1wa5doee5vud4oge1visu2msu2nub4euav4su2rp4ai6rk_d4or3dosu1atdo4v3doxp4adoo4k4swoo2padre4eus4e3upe5un2ophet5z4syc3syl4y3hoy1ads4pd4swd4syd2tho4wo3ta_du2c4etn2tabta2luac4es4wdu4g2ess4uabdu4n4duptav4st5bow1io1pr5dyn2tawe1sp2t1bop1uead1tz4et4chopy5ea4l4t1d4te_2tyle1si4esh1tee4tyat1cr4twoteg4es2c4eru1teoer1s2eroea2tte4po1rat1wh3tusea2v3teu3texer1i2e1ber1h4tey2t1f4t1ge3br2th_th2e4thle1ce3tumec2i2ths2erb1tia4tueer1aou5vtud2tif22tige1potu1aou4lttu41timt5toos4le1cre2pat4swe5owe1cue4ottsh4eos4e1ort4sce3ol4edieo2ge5of1tio4eno4enn5tiq4edoti4u1tive3my1tiz4othee2ct5laee2ft5lo4t1mee2mtme4e1meem5bcoi4to3be5exo1ry2tof1effel2iel2ftos24t1pe1la1traos2ceig2ei5de5ico2soe1h45egyeg5n",
|
|
11605
|
+
5: "_ach4e4go_e4goseg1ule5gurtre5feg4iceher4eg5ibeger44egaltre4mei5gle3imbe3infe1ingtra3beir4deit3eei3the5ity5triae4jud3efiteki4nek4la2trime4la_e4lactri4v4toute4law5toure3leaefil45elece4ledto2rae5len4tonye1lestro3ve4fic4tonoto3mytom4bto2mato5ice5limto2gre3lioe2listru5i4todo4ellaee4tyello4e5locel5ogeest4el2shel4tae5ludel5uge4mace4mage5man2t1n2ee2s4ee4p1e2mele4metee4naemi4eee4lyeel3i3tled3tle_e4mistlan4eed3iem3iztrus4emo4gti3zaem3pie4mule4dulemu3ne4dritiv4aedon2e4dolti3tle5neae5neeen3emtis4pti5sotis4m3tisee3newti3sae5niee5nile3nioedi5zen3ite5niu5enized1ited3imeno4ge4nosen3oven4swti5oc4t1s2en3uaen5ufe3ny_4en3zed3ibe3diae4oi4ede4s3tini4ed3deo3ret2ina2e2dae4culeo4toe5outec4te4t3t2t4tes2t1ine5pel4timpe2corephe4e4plie2col5tigutu3arti5fytu4bie3pro3tienep4sh5tidie4putt4icoeci4t4tick2ti2bec3imera4bti4aber3ar4tuf45tu3ier4bler3che4cib2ere_4thooecca54thil3thet4thea3turethan4e4cade4bitere4qe4ben5turieret4tur5oeav5oeav5itu5ry4tess4tes_ter5ve1rio4eriter4iueri4v1terier3m4ter3cte5pe4t1waer3noeast3er5obe5rocero4rer1oue3assea5sp1tent4ertler3twtwis4eru4t3tende1s4a3tenc5telsear2te2scateli4e3scres5cue1s2ee2sec3tel_te5giear5kear4cte5diear3ae3sha2t1ede5ande2sice2sid5tecttece44teattype3ty5phesi4uea4gees4mie2sole3acte2sone1a4bdys5pdy4sedu4petaun4d3uleta5sytas4e4tare4tarctar4ata5pl2estrta5mo4talke2surtal3idu5eleta4bta5lae3teoua5naet1ic4taf4etin4ta5doe5tir4taciuan4id1ucad1u1ae3trae3tre2d1s2syn5ouar2d4drowet3uaet5ymdro4pdril4dri4b5dreneu3rouar3ieute44draieu5truar3te2vasdop4pe5veadoo3ddoni4u4belsum3iev1erdoli4do4laev3idevi4le4vinevi4ve5voc2d5ofdo5dee4wage5wee4d1n4ewil54d5lue3wit2d3lou3ber5eye_u1b4i3dledfa3blfab3rfa4ce3dle_fain4suit3su5issu2g34d5lasu4b3fa3tasu1al4fato1di1vd2iti5disiuci4bfeas4di1redi4pl4feca5fectdio5gfe3life4mofen2d4st3wuc4it5ferr5diniucle3f4fesf4fie4stry1dinaf4flydi3ge3dictd4icedia5bs4tops1tle5stirs3tifs4ties1ticfic4is5tias4ti_4ficsfi3cuud3ers3thefil5iste2w4filyudev45finas4tedfi2nes2talfin4ns2tagde2tode4suflin4u1dicf2ly5ud5isu5ditde1scd2es_der5sfon4tu4don5dermss4lid4erhfor4is4siede2pudepi4fra4tf5reade3pade3nufril4frol5ud4side3nou4eneuens4ug5infu5el5dem_s5setfu5nefu3rifusi4fus4s4futade5lode5if4dee_5gal_3galiga3lo2d1eds3selg5amos2s5cssas3u1ing4ganouir4mgass4gath3uita4deaf5dav5e5dav44dato4darygeez44spotspor4s4pon4gelydark5s4ply4spio4geno4genydard5ge3omg4ery5gesigeth54getoge4tydan3g4g1g2da2m2g3gergglu5dach4gh3inspil4gh4to4cutr1gi4agia5rula5bspho5g4icogien5s2pheulch42sperspa4n5spai3c4utu1lenul4gigir4lg3islcu5pycu3picu4mic3umecu2maso5vi5glasu5liagli4bg3lig5culiglo3r4ul3mctu4ru1l4og4na_c3terul1tig2ning4nio4ultug4noncta4b4c3s2cru4dul5ulsor5dgo3isum5absor5ccris4go3nic4rinson4gsona45gos_cri5fcre4vum4bi5credg4raigran25solvsoft3so4ceunat44graygre4nco5zi4gritcoz5egruf4cow5ag5stecove4cos4es5menun4ersmel44corbco4pl4gu4tco3pacon5tsman3gy5racon3ghach4hae4mhae4th5aguha3lac4onecon4aun4ims3latu2ninhan4gs3ket5colocol5ihan4kuni3vhap3lhap5ttras4co4grhar2dco5agsir5aclim45sionhas5shaun44clichaz3acle4m1head3hearun3s4s3ingun4sws2ina2s1in4silysil4eh5elohem4p4clarhena45sidiheo5r1c4l4h4eras5icc2c1itu4orsh3ernshor4h3eryci3phshon34cipecion45cinoc1ingc4inahi5anhi4cohigh5h4il2shiv5h4ina3ship3cilihir4lhi3rohir4phir4rsh3iohis4ssh1inci4lau5pia4h1l4hlan44cier5shevcia5rhmet4ch4tish1erh5ods3cho2hoge4chi2z3chitho4mahome3hon4aho5ny3hoodhoon45chiouptu44ura_ho5ruhos4esew4ihos1p1housu4ragses5tu4rasur4behree5se5shs1e4s4h1s24chedh4tarht1enht5esur4fru3rifser4os4erlhun4tsen5gur1inu3riosen4dhy3pehy3phu1ritces5tur3iz4cesa4sencur4no4iancian3i4semeia5peiass45selv5selfi4atu3centse1le4ceniib5iaib3inseg3ruros43cencib3li3cell5cel_s5edli5bun4icam5icap4icar4s4ed3secticas5i4cayiccu44iceour4pe4ced_i5cidsea5wi2cipseas4i4clyur4pi4i1cr5icrai4cryic4teictu2ccon4urti4ic4umic5uoi3curcci4ai4daiccha5ca4thscof4ide4s4casys4cliscle5i5dieid3ios4choid1itid5iui3dlei4domid3owu5sadu5sanid5uous4apied4ecany4ield3s4cesien4ei5enn4sceii1er_i3esci1estus3ciuse5as4cedscav5if4frsca4pi3fieu5siau3siccan4eiga5bcan5d4calous5sli3gibig3ilig3inig3iti4g4lus1trig3orig5oti5greigu5iig1ur2c5ah4i5i44cag4cach4ca1blusur4sat3usa5tab5utoi3legil1erilev4uta4b4butail3iail2ibil3io3sanc2ilitil2izsal4t5bustil3oqil4tyil5uru3tati4magsa5losal4m4ute_4imetbu3res3act5sack2s1ab4imitim4nii3mon4utelbumi4bu3libu4ga4inav4utenbsor42b5s2u4tis4briti3neervi4vr3vic4inga4inger3vey4ingir3ven4ingo4inguu4t1li5ni_i4niain3ioin1isbo4tor5uscrunk5both5b5ota5bos42i1no5boriino4si4not5borein3seru3in2int_ru4glbor5di5nusut5of5bor_uto5gioge4io2grbon4au5tonru3enu4touion3iio5phior3ibod3iio5thi5otiio4toi4ourbne5gb3lisrt4shblen4ip4icr3triip3uli3quar4tivr3tigrti4db4le_b5itzira4bi4racird5ert5ibi4refbi3tri4resir5gibi5ourte5oir4isr3tebr4tagbin4diro4gvac3uir5ul2b3ifis5agis3arisas52is1cis3chbi4eris3erbi5enrson3be5yor5shais3ibisi4di5sisbe3tw4is4krs3es4ismsbe5trr3secva4geis2piis4py4is1sbe3sp4bes4be5nuval5ois1teis1tirrys4rros44be5mis5us4ita_rron4i4tagrri4vi3tani3tatbe3lorri4or4reoit4esbe1libe5gu4itiarre4frre4cbe3giit3igbe3dii2tim2itio4itisrp4h4r3pet4itonr4peait5rybe3debe3dai5tudit3ul4itz_4be2dbeat3beak4ro4varo4tyros4sro5roiv5ioiv1itror3i5root1roomval1ub3berva5mo4izarva5piron4eban3ijac4qban4ebal1ajer5srom4prom4iba4geazz5i5judgay5alax4idax4ickais4aw4ly3awaya1vorav5ocav3igke5liv3el_ve4lov4elyro1feke4tyv4erdv4e2sa5vanav3ag5k2ick4illkilo5au1thk4in_4ves_ro3crkin4gve4teaun5dk5ishau4l2au3gu4kleyaugh3ve4tyk5nes1k2noat3ulkosh4at5uekro5n4k1s2at5uaat4that5te5vianat4sk5vidil4abolaci4l4adela3dylag4nlam3o3landrob3la4tosr4noular4glar3ilas4ea4topr3nivr3nita2tomr5nica4toglbin44l1c2vi5gnat3ifat1ica5tiar3neyr5net4ati_ld5isat4hol4driv2incle4bileft55leg_5leggr4nerr3nel4len_3lencr4nar1lentle3phle4prvin5dler4e3lergr3mitl4eroat5evr4mio5lesq3lessr3menl3eva4vingrma5cvio3lvi1ou4leyevi5rovi3so4l1g4vi3sulgar3l4gesate5cat5apli4agli2amr3lo4li4asr4lisli5bir4ligr2led4lics4vitil4icul3icyl3idaat5ac3lidirk4lel4iffli4flr3ket3lighvit3r4vityriv3iri2tulim3ili4moris4pl4inar3ishris4clin3ir4is_li5og4l4iqlis4pas1trl2it_as4shas5phri2pla4socask3ia3sicl3kallka4ta3sibl4lawashi4l5leal3lecl3legl3lel5riphas4abar2shrin4grin4ear4sarin4dr2inal5lowarre4l5met3rimol4modlmon42l1n2a3roorim5ilo4civo4la5rigil5ogo3loguri5et5longlon4iri1erlood5r4icolop3il3opmlora44ricir4icerib3a5los_v5oleri4agria4blos4tlo4taar2mi2loutar2izar3iolpa5bl3phal5phi4rhall3pit5voltar4im3volv2l1s2vom5ivori4l4siear4fllt5agar4fivo4rylten4vo4talth3ia3reeltis4ar4drw5ablrgo4naraw4lu3brluch4lu3cilu3enwag5olu5idlu4ma5lumia5raur5gitwait5luo3rw5al_luss4r5gisar4atl5venrgi4nara3pwar4tar3alwas4tly5mely3no2lys4l5ysewa1teaque5ma2car3gicma4clr3get5magnwed4nmaid54maldrg3erweet3wee5vwel4lapoc5re4whwest3ap3in4aphires2tr4es_mar3vre5rumas4emas1t5matemath3rero4r4eriap5atr1er4m5bilre1pumbi4vapar4a5nuran3ul4med_an3uare5lure1lian4twre5itmel4tan2trre4fy4antomen4are3fire2fe4menemen4imens4re1de3ment2r2edme5onre4awwin4g5reavme4tare3anme1tere1alm4etr3wiserdin4rdi4aan4stwith3an2span4snan2samid4amid4gan5otwl4esr4dalm4illmin4a3mindrcum3rc4itr3charcen4min4tm4inumiot4wl3ina3niumis5lan3ita3nip4mithan3ioan1gla3neuws4per2bina3nena5neem4ninw5s4tan1dl4mocrrbi4fmo2d1mo4gomois2xac5ex4agor4bagmo3mer4baba3narrau4ta5monrare4rar5cra5nor4aniam1inr2amiam5ifra4lomo3spmoth3m5ouf3mousam3icxer4ixe5roraf4tr5aclm3petra3bixhil5mpi4aam3ag3quetm5pirmp5is3quer2que_qua5vmpov5mp4tram5ab3alyz4m1s25alyt4alysa4ly_ali4exi5di5multx4ime4aldia4laral3adal5abak1enain5opu3trn4abu4nac_na4can5act5putexpe3dna4lia4i4n4naltai5lya3ic_pur4rag5ulnank4nar3c4narenar3inar4ln5arm3agognas4c4ag4l4ageupul3cage4oaga4na4gab3nautnav4e4n1b4ncar5ad5umn3chaa3ducptu4rpti3mnc1innc4itad4suad3owad4len4dain5dana5diua3ditndi4ba3dion1ditn3dizn5ducndu4rnd2we3yar4n3eara3dianeb3uac4um5neckac3ulp4siba3cio5negene4laac1inne5mine4moa3cie4nene4a2cine4poyc5erac1er2p1s2pro1tn2erepro3lner4rych4e2nes_4nesp2nest4neswpri4sycom4n5evea4carab3uln4gabn3gelpre3vpre3rycot4ng5han3gibng1inn5gitn4glangov4ng5shabi5an4gumy4erf4n1h4a5bannhab3a5bal3n4iani3anni4apni3bani4bl_us5ani5dini4erni2fip3petn5igr_ure3_un3up3per_un5op3pennin4g_un5k5nis_p5pel_un1en4ithp4ped_un1ani3tr_to4pympa3_til4n3ketnk3inyn5ic_se2ny4o5gy4onsnmet44n1n2_ru4d5pounnni4vnob4lpo4tan5ocly4ped_ro4qyper5noge4pos1s_ri4gpo4ry1p4or_res2no4mono3my_ree2po4ninon5ipoin2y4poc5po4gpo5em5pod_4noscnos4enos5tno5tayp2ta3noun_ra4cnowl3_pi2tyra5m_pi4eyr5ia_out3_oth32n1s2ns5ab_or3t_or1d_or3cplu4mnsid1nsig4y3s2eys3ion4socns4pen5spiploi4_odd5nta4bpli4n_ni4cn5tib4plignti2fpli3a3plannti4p1p2l23ysis2p3k2ys3ta_mis1nu5enpi2tun3uinp3ithysur4nu1men5umi3nu4nyt3icnu3trz5a2b_li4t_li3o_li2n_li4g_lev1_lep5_len4pion4oard3oas4e3pi1ooat5ip4inoo5barobe4l_la4mo2binpind4_ju3rob3ul_is4i_ir5rp4in_ocif3o4cil_in3so4codpi3lopi3enocre33piec5pidipi3dep5ida_in2kod3icodi3oo2do4odor3pi4cypian4_ine2o5engze3rooe4ta_im3m_id4l_hov5_hi3b_het3_hes3_go4r_gi4bpho4ro5geoo4gero3gie3phobog3it_gi5azo5ol3phizo4groogu5i4z1z22ogyn_fes3ohab5_eye55phieph1icoiff4_en3sph4ero3ing_en3go5ism_to2qans3v_el5d_eer4bbi4to3kenok5iebio5mo4lanper1v4chs_old1eol3erpe5ruo3letol4fi_du4co3liaper3op4ernp4erio5lilpe5ono5liop4encpe4la_do4tpee4do5livcin2q3pediolo4rol5pld3tabol3ub3pedeol3uno5lusedg1le1loaom5ahoma5l2p2edom2beom4bl_de3o3fich3pe4ao4met_co4ro3mia_co3ek3shao5midom1inll1fll3teapa2teo4monom3pi3pare_ca4tlue1pon4aco3nanm2an_pa4pum2en_on5doo3nenng1hoon4guon1ico3nioon1iso5niupa3nypan4ao3nou_bri2pain4ra1oronsu4rk1hopac4tpa4ceon5umonva5_ber4ood5eood5i6rks_oop3io3ordoost5rz1scope5dop1erpa4ca_ba4g_awn4_av4i_au1down5io3pito5pon1sync_as1s_as1p_as3ctch1c_ar5so5ra_ow3elo3visov4enore5auea1mor3eioun2d_ant4orew4or4guou5etou3blo5rilor1ino1rio_ang4o3riuor2miorn2eo5rofoto5sor5pe3orrhor4seo3tisorst4o3tif_an5cor4tyo5rum_al3tos3al_af1tos4ceo4teso4tano5scros2taos4poos4paz2z3wosi4ue3pai",
|
|
11606
|
+
6: "os3ityos3itoz3ian_os4i4ey1stroos5tilos5titxquis3_am5atot3er_ot5erso3scopor3thyweek1noth3i4ot3ic_ot5icao3ticeor3thiors5enor3ougor3ityor3icaouch5i4o5ria_ani5mv1ativore5sho5realus2er__an3teover3sov4erttot3icoviti4o5v4olow3dero4r3agow5esto4posiop3ingo5phero5phanthy3sc3operaontif5on3t4ionten45paganp3agattele2gonspi4on3omyon4odipan3elpan4tyon3keyon5est3oncil_ar4tyswimm6par5diompro5par5elp4a4ripar4isomo4gepa5terst5scrpa5thy_atom5sta1tio5miniom3icaom3ic_ss3hatsky1scpear4lom3ena_ba5naol3umer1veilpedia4ped4icolli4er1treuo5liteol3ishpeli4epe4nano5lis_pen4thol3ingp4era_r1thoup4erago3li4f_bas4er1krauperme5ol5id_o3liceper3tio3lescolass4oi3terpe5tenpe5tiz_be5raoi5son_be3smphar5iphe3nooi5letph4es_oi3deroic3esph5ingr3ial_3ognizo5g2ly1o1gis3phone5phonio5geneo4gatora3mour2amenofit4tof5itera3chupi4ciepoly1eod5dedo5cureoc3ula1pole_5ocritpee2v1param4oc3raco4clamo3chetob5ingob3a3boast5eoke1st3nu3itpi5thanuf4fentu3meoerst2o3chasplas5tn3tinepli5ernti4ernter3sntre1pn4s3esplum4bnsati4npre4cns4moonon1eqnor5abpo3et5n5lessn5oniz5pointpoly5tnon4agnk3rup3nomicng1sprno5l4inois5i4n3o2dno3blenni3aln5keroppa5ran3itor3nitionis4ta5nine_ni3miznd3thrmu2dron3geripray4e5precipre5copre3emm3ma1bpre4lan5gerep3rese3press_can5cmedi2c5pri4e_ce4la3neticpris3op3rocal3chain4er5ipros3en4erarnera5bnel5iz_cit5rne4gatn5d2ifpt5a4bjanu3aign4itn3chisn5chiln5cheon4ces_nau3seid4iosna3talnas5tinan4itnanci4na5mitna5liahnau3zput3er2n1a2bhex2a3hatch1multi3hair1sm4pousg1utanmpo3rim4p1inmp5iesmphas4rach4empar5iraf5figriev1mpara5mo5seyram3et4mora_rane5oran4gemo3ny_monol4rap3er3raphymo3nizgno5morar5ef4raril1g2nacg1leadmoni3ara5vairav3elra5ziemon5gemon5etght1wemoi5sege3o1dmma5ryr5bine3fluoren1dixmis4ti_de3ra_de3rie3chasrch4err4ci4bm4inglm5ineedu2al_3miliame3tryrdi4er_des4crd3ingdi2rerme5thimet3alre5arr3mestim5ersadi2rende2ticdes3icre4cremen4temensu5re3disred5itre4facmen4dede2mosmen5acmem1o3reg3ismel5onm5e5dyme3died2d5ibren4te5mediare5pindd5a5bdata1bmba4t5cle4arma3tisma5scemar4lyre4spichs3huma5riz_dumb5re3strre4terbrus4qre3tribio1rhre5utiman3izre4valrev3elbi1orbbe2vie_eas3ire5vilba1thyman5is5maniamal4tymal4lima5linma3ligmag5inav3ioul5vet4rg3inglus3teanti1dl5umn_ltur3a_el3emltera4ltane5lp5ingloun5dans5gra2cabllos5etlor5ouric5aslo5rie_enam35ricidri4cie5lope_rid5erri3encri3ent_semi5lom3errig5an3logicril3iz5rimanlob5allm3ingrim4pell5out5rina__er4ril5linal2lin4l3le4tl3le4nriph5eliv3er_ge5og_han5k_hi3er_hon3olin3ea1l4inel4im4p_idol3_in3ci_la4cy_lath5rit3iclim4blrit5urriv5elriv3et4l4i4lli4gra_leg5elif3errk4linlid5er4lict_li4cor5licioli4atorl5ish_lig5a_mal5o_man5a_mer3c5less_rm5ersrm3ingy3thinle5sco3l4erilera5b5lene__mon3ele4matld4erild4erela4v4ar1nis44lativ_mo3rola5tanlan4telan5etlan4dllab3ic_mu5takin4dek3est_ro5filk3en4dro5ker5role__of5te4jestyys3icaron4al5izont_os4tlron4tai4v3ot_pe5tero3pelrop3ici5voreiv5il__pio5n_pre3mro4the_ran4tiv3en_rov5eliv3ellit3uati4tramr5pentrp5er__rit5ui4tismrp3ingit5ill_ros5tit3ica4i2tici5terirre4stit3era4ita5mita4bi_row5dist4lyis4ta_is4sesrsa5tiissen4is4sal_sci3erse4crrs5er_islan4rse5v2yo5netish5opis3honr4si4bis5han5iron_ir4minrtach4_self5iri3turten4diri5dei4rel4ire4de_sell5r4tieriq3uidrtil3irtil4lr4tilyr4tistiq5uefip4re4_sing4_ting4yn3chrru3e4lion3at2in4th_tin5krum3pli4no4cin3ityrun4ty_ton4aruti5nymbol5rvel4i_top5irv5er_r5vestin5geni5ness_tou5s_un3cein3cerincel45ryngei4n3auim3ulai5miniimi5lesac3riim5ida_ve5rasalar4ima5ryim3ageill5abil4istsan4deila5rai2l5am_wil5ii4ladeil3a4bsa5voright3iig3eraab5erd4ific_iff5enif5eroi3entiien5a45ie5gaidi5ou3s4cieab5latidi4arid5ianide3al4scopyab5rogid5ancic3ulaac5ardi2c5ocic3ipaic5inase2c3oi4carai4car_se4d4ei2b5riib5iteib5it_ib5ertib3eraac5aroi4ativ4ian4tse4molsen5ata5ceouh4warts5enedhus3t4s5enin4sentd4sentlsep3a34s1er_hun5kehu4min4servohro3poa5chethov5el5se5umhouse3sev3enho5senhort3eho5rishor5at3hol4ehol5arh5odizhlo3riac5robhis3elhion4ehimer4het4edsh5oldhe2s5ph5eroushort5here5aher4bahera3p3side_5sideshen5atsi5diz4signahel4lyact5ifhe3l4ihe5do55sine_h5ecathe4canad4dinsion5aad5er_har4lehard3e3sitioha5rasha3ranhan4tead3icahang5oadi4ersk5inesk5ing5hand_han4cyhan4cislith5hala3mh3ab4lsmall32g5y3n5gui5t3guard5smithad5ranaeri4eag5ellag3onia5guerso4labsol3d2so3licain5in4grada3s4on_gor5ougo5rizgondo5xpan4dait5ens5ophyal3end3g4o4ggnet4tglad5i5g4insgin5ge3g4in_spen4d2s5peog3imen5gies_3spher5giciagh5outsp5ingge5nizge4natge5lizge5lisgel4inxi5miz4gativgar5n4a5le5oga3nizgan5isga5mets5sengs4ses_fu4minfres5cfort5assi4erss5ilyfore5tfor5ayfo5ratal4ia_fon4dessur5aflo3ref5lessfis4tif1in3gstam4i5stands4ta4p5stat_fin2d5al5levs5tero4allicstew5afight5fi5del5ficie5ficiafi3cer5stickf3icena5log_st3ingf3icanama5ra5stockstom3a5stone2f3ic_3storef2f5iss4tradam5ascs4trays4tridf5fin_fend5efeath3fault5fa3thefar5thfam5is4fa4mafall5eew3inge5verbeven4ie5vengevel3oev3ellev5asteva2p5euti5let5roset3roget5rifsy5rinet3ricet5onaam5eraam5ilyami4noamor5ieti4noe5tidetai5loethod3eten4dtal5enes5urramp5enan3ageta5loge5strotan4detanta3ta5pere3ston4es2toes5times3tigta3rizestan43analy4taticta4tures4prean3arces3pertax4ises5onaes3olue5skintch5etanar4ies4i4ntead4ie2s5ima3natiande4sesh5enan3disan4dowang5iete5geres5ences5ecres5cana4n1icte2ma2tem3at3tenanwrita45erwau4tenesert3era3nieser3set5erniz4erniter4nis5ter3de4rivaan3i3fter3isan4imewo5vener3ineeri4ere3rient3ess_teth5e5ericke1ria4er3ester5esser3ent4erenea5nimier5enaer3emoth3easthe5atthe3iser5el_th5ic_th5icaere3in5thinkere5coth5odea5ninee3realan3ishan4klier4che5anniz4erandti4atoanoth5equi3lep5utat4ic1uan4scoe4probep3rehe4predans3poe4precan4surantal4e3penttim5ulep5anceo5rol3tine_eop3aran4tiewin4deap5eroen3ishen5icsen3etren5esten5esien5eroa3pheren3dicap3itae4nanten5amoem5ulaa3pituti3zen5emnize5missem5ishap5olaem5ine3tles_t5let_em1in2apor5iem3icaem5anael3op_el4labapos3te3liv3el5ishaps5esweath3e3lierel3icaar3actwa5verto3nate3libee4l1erel3egato3rietor5iza5radeelaxa4aran4gto3warelan4dej5udie5insttra5chtraci4ar5av4wa5gere5git5arbal4ar5easeg5ing4voteetrem5iar3enta5ressar5ial4tricsvor5abe3finetro5mitron5i4tronyar3iantro3sp5eficia3rieted5uloed3icae4d1erec3ulaec4tane4cremeco5roec3orae4concar5o5de4comme4cluse4clame5citeec5ifya5ronias3anta5sia_tu4nis2t3up_ecan5ce4belstur3ise4bel_eav3ene4a3tue5atifeath3ieat5eneart3eear4ilear4icear5eseam3ereal3oueal5erea5geread5iedum4be4ducts4duct_duc5eras3tenasur5adrea5rat3abl4d5outdo3natdom5izdo5lor4dlessu4bero3dles_at3alou3ble_d4is3tdirt5idi5niz3dine_at5ech5di3endi4cam1d4i3ad3ge4tud5estdev3ilde3strud3iedud3iesdes3tide2s5oat3egovis3itde4nardemor5at3en_uen4teuer4ilde5milat3eraugh3en3demicater5nuil5izdeli4ede5comde4cildecan4de4bonv3io4rdeb5it4dativ2d3a4bat3estu5laticu4tie5ulcheul3dercuss4icu5riaath5em3cultua5thenul3ingul5ishul4lar4vi4naul4liscu5ityctim3ic4ticuuls5esc5tantultra3ct5angcros4ecrop5ocro4pl5critiath5omum4blycre3at5vilitumor5oat5i5b5crat_cras5tcoro3ncop3iccom5ercol3orun5ishco3inc5clareat3ituunt3abat5ropun4tescit3iz4cisti4cista4cipicc5ing_cin3em3cinatuper5s5videsup3ingci2a5b5chini5videdupt5ib5vide_at4tag4ch1inch3ersch3er_ch5ene3chemiche5loure5atur4fercheap3vi5aliat3uravet3er4ch3abc5e4taau5sib3cessives4tece5ram2cen4e4cedenccou3turs5erur5tesur3theaut5enur4tiecav5al4cativave4nover3thcar5omca5percan4tycan3izcan5iscan4icus4lin3versecal4laver3ieca3latca5dencab3in3butiobuss4ebus5iebunt4iv4eresuten4i4u1t2iv3erenu3tineut3ingv4erelbroth35u5tizbound34b1orabon5at5vere_bom4bibol3icblun4t5blespblath5av3erav5enuebi3ogrbi5netven3om2v1a4bvac5ilbi3lizbet5izbe5strva5liebe5nigbbi4nabas4siva5nizbari4aav5ernbarbi5av5eryvel3liazi4eravi4er",
|
|
11607
|
+
7: "_dri5v4ban5dagvar5iedbina5r43bi3tio3bit5ua_ad4derution5auti5lizver5encbuf4ferus5terevermi4ncall5incast5ercas5tigccompa5z3o1phros5itiv5chanicuri4fico5stati5chine_y5che3dupport54v3iden5cific_un4ter_at5omiz4oscopiotele4g5craticu4m3ingv3i3liz4c3retaul4li4bcul4tiscur5a4b4c5utiva5ternauiv4er_del5i5qdem5ic_de4monsdenti5fdern5izdi4latou4b5ingdrag5on5drupliuar5ant5a5si4tec5essawo4k1enec5ifiee4compear5inate4f3eretro5phewide5sp5triciatri5cesefor5ese4fuse_oth5esiar5dinear4chantra5ventrac4tetrac4itar5ativa5ratioel5ativor5est_ar5adisel5ebraton4alie4l5ic_wea5rieel5igibe4l3ingto5cratem5igraem3i3niemoni5oench4erwave1g4a4pillavoice1ption5eewill5inent5age4enthesvaude3vtill5inep5recaep5ti5bva6guer4erati_tho5rizthor5it5thodicer5ence5ternitteri5zater5iesten4tage4sage_e4sagese4sert_an5est_e4sertse4servaes5idenes5ignaesis4tees5piraes4si4btal4lisestruc5e5titioounc5erxe4cutota5bleset5itiva4m5atoa4matis5stratu4f3ical5a5lyst4ficatefill5instern5isspend4gani5zasqual4la4lenti4g3o3nas5ophiz5sophicxpecto55graph_or5angeuri4al_4graphy4gress_smol5d4hang5erh5a5nizharp5enhar5terhel4lishith5erhro5niziam5eteia4tricic4t3uascour5au2r1al_5scin4dover4nescan4t55sa3tiou5do3ny_ven4de_under5ty2p5al_anti5sylla5bliner4arturn3ari5nite_5initioinsur5aion4eryiphras4_tim5o5_ten5an_sta5blrtroph4_se5rieiq3ui3t5i5r2izis5itiviso5mer4istral5i5ticki2t5o5mtsch3ie_re5mittro3fiti4v3er_i4vers_ros5per_pe5titiv3o3ro_ped5alro5n4is_or5ato4jestierom5ete_muta5bk5iness4latelitr4ial__mist5i_me5terr4ming_lev4er__mar5tilev4eralev4ers_mag5a5liar5iz5ligaterit5ers_lat5errit5er_r5ited__im5pinri3ta3blink5er_hon5ey5litica_hero5ior5aliz_hand5irip5lic_gen3t4tolo2gylloqui5_con5grt1li2erbad5ger4operag_eu4lertho3donter2ic__ar4tie_ge4ome_ge5ot1_he3mo1_he3p6a_he3roe_in5u2tpara5bl5tar2rht1a1mintalk1a5ta3gon_par5age_aster5_ne6o3f_noe1thstyl1is_poly1s5pathic_pre1ampa4tricl3o3niz_sem4ic_semid6_semip4_semir45ommend_semiv4lea4s1a_spin1oom5etryspher1o_to6poglo4ratospe3cio3s2paceso2lute_we2b1l_re1e4ca5bolicom5erseaf6fishside5swanal6ysano5a2cside5stl5ties_5lumniasid2ed_anti1reshoe1stscy4th1s4chitzsales5wsales3cat6tes_augh4tlau5li5fom5atizol5ogizo5litiorev5olure5vertre5versbi5d2ifbil2lab_earth5pera5blro1tronro3meshblan2d1blin2d1blon2d2bor1no5ro1bot1re4ti4zr5le5quperi5stper4malbut2ed_but4tedcad5e1moist5enre5stalress5ibchie5vocig3a3roint5er4matizariv1o1lcous2ticri3tie5phisti_be5stoog5ativo2g5a5rr3a3digm4b3ingre4posir4en4tade4als_od5uctsquasis6quasir6re5fer_p5trol3rec5olldic1aiddif5fra3pseu2dr5ebrat5metric2d1lead2d1li2epro2g1epre1neuod5uct_octor5apoin3came5triem5i5liepli5narpara3memin5glim5inglypi4grappal6matmis4er_m5istryeo3graporth1riop1ism__but4tio3normaonom1icfeb1ruafermi1o_de4moio5a5lesodit1icodel3lirb5ing_gen2cy_n4t3ingmo5lestration4get2ic_4g1lishobli2g1mon4ismnsta5blmon4istg2n1or_nov3el3ns5ceivno1vembmpa5rabno4rarymula5r4nom1a6lput4tinput4tedn5o5miz_cam4penag5er_nge5nesh2t1eoun1dieck2ne1skiifac1etncour5ane3backmono1s6mono3chmol1e5cpref5ac3militapre5tenith5i2lnge4n4end5est__capa5bje1re1mma1la1ply5styr1kovian_car5olprin4t3lo2ges_l2l3ishprof5it1s2tamp",
|
|
11608
|
+
8: "lead6er_url5ing_ces5si5bch5a5nis1le1noidlith1o5g_chill5ilar5ce1nym5e5trych5inessation5arload4ed_load6er_la4c3i5elth5i2lyneg5ativ1lunk3erwrit6er_wrap3arotrav5es51ke6linga5rameteman3u1scmar1gin1ap5illar5tisticamedio6c1me3gran3i1tesima3mi3da5bves1titemil2l1agv1er1eigmi6n3is_1verely_e4q3ui3s5tabolizg5rapher5graphicmo5e2lasinfra1s2mon4ey1lim3ped3amo4no1enab5o5liz_cor5nermoth4et2m1ou3sinm5shack2ppo5sitemul2ti5uab5it5abimenta5rignit1ernato5mizhypo1thani5ficatuad1ratu4n5i4an_ho6r1ic_ua3drati5nologishite3sidin5dling_trib5utin5glingnom5e1non1o1mistmpos5itenon1i4so_re5stattro1p2istrof4ic_g2norespgnet1ism5glo5binlem5aticflow2er_fla1g6elntrol5lifit5ted_treach1etra1versl5i5ticso3mecha6_for5mer_de5rivati2n3o1me3spac6i2t3i4an_thy4l1antho1k2er_eq5ui5to4s3phertha4l1amt3ess2es3ter1geiou3ba3dotele1r6ooxi6d1iceli2t1isonspir5apar4a1leed1ulingea4n3iesoc5ratiztch3i1er_kil2n3ipi2c1a3dpli2c1abt6ap6athdrom3e5d_le6icesdrif2t1a_me4ga1l1prema3cdren1a5lpres2plipro2cess_met4ala3do5word1syth3i2_non1e2m_post1ampto3mat4rec5ompepu5bes5cstrib5utqu6a3si31stor1ab_sem6is4star3tliqui3v4arr1abolic_sph6in1de5clar12d3aloneradi1o6gs3qui3tosports3wsports3cra5n2hascro5e2cor3bin1gespokes5wspi2c1il_te3legrcroc1o1d_un3at5t_dictio5cat1a1s2buss4ingbus6i2esbus6i2erbo2t1u1lro5e2las1s2pacinb1i3tivema5rine_r3pau5li_un5err5r5ev5er__vi2c3arback2er_ma5chinesi5resid5losophyan3ti1n2sca6p1ersca2t1olar2rangesep3temb1sci2uttse3mes1tar3che5tsem1a1ph",
|
|
11609
|
+
9: "re4t1ribuuto5maticl3chil6d1a4pe5able1lec3ta6bas5ymptotyes5ter1yl5mo3nell5losophizlo1bot1o1c5laratioba6r1onierse1rad1iro5epide1co6ph1o3nscrap4er_rec5t6angre2c3i1prlai6n3ess1lum5bia_3lyg1a1miec5ificatef5i5nites2s3i4an_1ki5neticjapan1e2smed3i3cinirre6v3ocde2c5linao3les3termil5li5listrat1a1gquain2t1eep5etitiostu1pi4d1v1oir5du1su2per1e6_mi1s4ers3di1methy_mim5i2c1i5nitely_5maph1ro15moc1ra1tmoro6n5isdu1op1o1l_ko6r1te1n3ar4chs_phi2l3ant_ga4s1om1teach4er_parag6ra4o6v3i4an_oth3e1o1sn3ch2es1to5tes3toro5test1eror5tively5nop5o5liha2p3ar5rttrib1ut1_eth1y6l1e2r3i4an_5nop1oly_graph5er_5eu2clid1o1lo3n4omtrai3tor1_ratio5na5mocratiz_rav5en1o",
|
|
11610
|
+
10: "se1mi6t5ic3tro1le1um5sa3par5iloli3gop1o1am1en3ta5bath3er1o1s3slova1kia3s2og1a1myo3no2t1o3nc2tro3me6c1cu2r1ance5noc3er1osth1o5gen1ih3i5pel1a4nfi6n3ites_ever5si5bs2s1a3chu1d1ri3pleg5_ta5pes1trproc3i3ty_s5sign5a3b3rab1o1loiitin5er5arwaste3w6a2mi1n2ut1erde3fin3itiquin5tes5svi1vip3a3r",
|
|
11611
|
+
11: "pseu3d6o3f2s2t1ant5shimi1n2ut1estpseu3d6o3d25tab1o1lismpo3lyph1onophi5lat1e3ltravers3a3bschro1ding12g1o4n3i1zat1ro1pol3it3trop1o5lis3trop1o5lesle3g6en2dreeth1y6l1eneor4tho3ni4t",
|
|
11612
|
+
12: "3ra4m5e1triz1e6p3i3neph1"
|
|
11613
|
+
}
|
|
11614
|
+
};
|
|
11615
|
+
const patternsEnUs = /* @__PURE__ */ getDefaultExportFromCjs(enUs);
|
|
11616
|
+
const hyphenatorCache = /* @__PURE__ */ new Map();
|
|
11617
|
+
function getHyphenator(lang) {
|
|
11618
|
+
let instance = hyphenatorCache.get(lang);
|
|
11619
|
+
if (!instance) {
|
|
11620
|
+
instance = new Hypher$1(lang === "en-us" ? patternsEnUs : patternsPt);
|
|
11621
|
+
hyphenatorCache.set(lang, instance);
|
|
11622
|
+
}
|
|
11623
|
+
return instance;
|
|
11624
|
+
}
|
|
11625
|
+
function resolveHyphenationLanguage(tag) {
|
|
11626
|
+
if (tag && tag.toLowerCase().startsWith("en")) {
|
|
11627
|
+
return "en-us";
|
|
11628
|
+
}
|
|
11629
|
+
return "pt";
|
|
11630
|
+
}
|
|
11631
|
+
const LETTER = new RegExp("\\p{L}", "u");
|
|
11632
|
+
const UPPER = new RegExp("\\p{Lu}", "u");
|
|
11633
|
+
const DIGIT = /\d/u;
|
|
11634
|
+
const HAS_HYPHEN = /[-‑]/u;
|
|
11635
|
+
function shouldHyphenateWord(word, options = {}) {
|
|
11636
|
+
if (word.length < 4) return false;
|
|
11637
|
+
if (HAS_HYPHEN.test(word)) return false;
|
|
11638
|
+
if (!LETTER.test(word)) return false;
|
|
11639
|
+
if (DIGIT.test(word)) return false;
|
|
11640
|
+
if (options.doNotHyphenateCaps && UPPER.test(word) && word === word.toUpperCase()) {
|
|
11641
|
+
return false;
|
|
11642
|
+
}
|
|
11643
|
+
return true;
|
|
11644
|
+
}
|
|
11645
|
+
const isLetter = (ch) => !!ch && LETTER.test(ch);
|
|
11646
|
+
const pointsCache = /* @__PURE__ */ new Map();
|
|
11647
|
+
function findHyphenationPoints(word, lang) {
|
|
11648
|
+
const cacheKey = `${lang}\0${word}`;
|
|
11649
|
+
const cached = pointsCache.get(cacheKey);
|
|
11650
|
+
if (cached) return cached;
|
|
11651
|
+
let start = 0;
|
|
11652
|
+
while (start < word.length && !isLetter(word[start])) start += 1;
|
|
11653
|
+
let end = word.length;
|
|
11654
|
+
while (end > start && !isLetter(word[end - 1])) end -= 1;
|
|
11655
|
+
const core = word.slice(start, end);
|
|
11656
|
+
let points = [];
|
|
11657
|
+
if (core.length >= 4) {
|
|
11658
|
+
const syllables = getHyphenator(lang).hyphenate(core);
|
|
11659
|
+
if (syllables.length >= 2) {
|
|
11660
|
+
const result = [];
|
|
11661
|
+
let acc = start;
|
|
11662
|
+
for (let i = 0; i < syllables.length - 1; i += 1) {
|
|
11663
|
+
acc += syllables[i].length;
|
|
11664
|
+
result.push(acc);
|
|
11665
|
+
}
|
|
11666
|
+
points = result;
|
|
11667
|
+
}
|
|
11668
|
+
}
|
|
11669
|
+
pointsCache.set(cacheKey, points);
|
|
11670
|
+
return points;
|
|
11671
|
+
}
|
|
11486
11672
|
const DEFAULT_CONTENT_WIDTH = 624;
|
|
11487
11673
|
const MIN_CONTENT_WIDTH = 120;
|
|
11674
|
+
const PT_TO_PX = 96 / 72;
|
|
11488
11675
|
function intersectsVertically(aTop, aBottom, bTop, bBottom) {
|
|
11489
11676
|
return aTop < bBottom && aBottom > bTop;
|
|
11490
11677
|
}
|
|
@@ -11659,6 +11846,7 @@ function measureParagraphMinContentWidthPx(paragraph, styles) {
|
|
|
11659
11846
|
function composeMeasuredParagraphLines(options) {
|
|
11660
11847
|
const { paragraph, fragments, styles, contentWidth, defaultTabStop } = options;
|
|
11661
11848
|
const exclusions = options.exclusions ?? [];
|
|
11849
|
+
const hyphenation = options.hyphenation;
|
|
11662
11850
|
const measuredChars = buildMeasuredChars(paragraph, fragments, styles);
|
|
11663
11851
|
const tokens = tokenizeMeasuredChars(measuredChars);
|
|
11664
11852
|
const charByOffset = new Map(
|
|
@@ -11757,7 +11945,8 @@ function composeMeasuredParagraphLines(options) {
|
|
|
11757
11945
|
lineAvailableWidth = segment.width;
|
|
11758
11946
|
lineSlotLefts = [lineStartInset];
|
|
11759
11947
|
};
|
|
11760
|
-
|
|
11948
|
+
let consecutiveHyphens = 0;
|
|
11949
|
+
const flushLine = (hardBreak = false, trailingHyphenWidth) => {
|
|
11761
11950
|
const effectiveHeight = Math.max(lineHeight, lineMaxObjectHeight);
|
|
11762
11951
|
commitLine(
|
|
11763
11952
|
lines,
|
|
@@ -11769,6 +11958,14 @@ function composeMeasuredParagraphLines(options) {
|
|
|
11769
11958
|
effectiveHeight,
|
|
11770
11959
|
lineAvailableWidth
|
|
11771
11960
|
);
|
|
11961
|
+
if (trailingHyphenWidth !== void 0) {
|
|
11962
|
+
const committed = lines[lines.length - 1];
|
|
11963
|
+
committed.trailingHyphen = true;
|
|
11964
|
+
committed.trailingHyphenWidth = trailingHyphenWidth;
|
|
11965
|
+
consecutiveHyphens += 1;
|
|
11966
|
+
} else {
|
|
11967
|
+
consecutiveHyphens = 0;
|
|
11968
|
+
}
|
|
11772
11969
|
lineHardBreaks.push(hardBreak);
|
|
11773
11970
|
bandHeight = Math.max(bandHeight, effectiveHeight);
|
|
11774
11971
|
};
|
|
@@ -11819,33 +12016,10 @@ function composeMeasuredParagraphLines(options) {
|
|
|
11819
12016
|
lineSlotLefts.push(lineStartInset + lineWidth);
|
|
11820
12017
|
}
|
|
11821
12018
|
};
|
|
11822
|
-
|
|
11823
|
-
if (token.kind === "newline") {
|
|
11824
|
-
flushLine(true);
|
|
11825
|
-
resetLine(token.chars[0].offset + 1, false);
|
|
11826
|
-
continue;
|
|
11827
|
-
}
|
|
11828
|
-
const tokenWidth = measureTokenAt(token);
|
|
11829
|
-
const fitsCurrentLine = lineWidth + tokenWidth <= lineAvailableWidth;
|
|
11830
|
-
const isEmptyLine = lineStartOffset === lineEndOffset;
|
|
11831
|
-
if (token.kind === "whitespace") {
|
|
11832
|
-
if (fitsCurrentLine || isEmptyLine) {
|
|
11833
|
-
appendChars(token.chars);
|
|
11834
|
-
} else {
|
|
11835
|
-
flushLine();
|
|
11836
|
-
resetLine(token.chars[token.chars.length - 1].offset + 1);
|
|
11837
|
-
}
|
|
11838
|
-
continue;
|
|
11839
|
-
}
|
|
11840
|
-
if (fitsCurrentLine) {
|
|
11841
|
-
appendChars(token.chars);
|
|
11842
|
-
continue;
|
|
11843
|
-
}
|
|
11844
|
-
flushLine();
|
|
11845
|
-
resetLine(token.chars[0].offset);
|
|
12019
|
+
const layoutByChars = (chars2) => {
|
|
11846
12020
|
let currentChunk = [];
|
|
11847
12021
|
let currentChunkWidth = 0;
|
|
11848
|
-
for (const char of
|
|
12022
|
+
for (const char of chars2) {
|
|
11849
12023
|
const charWidth = char.char === " " ? resolveTabAdvancePx(
|
|
11850
12024
|
paragraph,
|
|
11851
12025
|
styles,
|
|
@@ -11868,6 +12042,102 @@ function composeMeasuredParagraphLines(options) {
|
|
|
11868
12042
|
if (currentChunk.length > 0) {
|
|
11869
12043
|
appendChars(currentChunk);
|
|
11870
12044
|
}
|
|
12045
|
+
};
|
|
12046
|
+
const hyphenLimit = (hyphenation == null ? void 0 : hyphenation.consecutiveLimit) ?? 0;
|
|
12047
|
+
const canHyphenateMore = () => hyphenLimit <= 0 || consecutiveHyphens < hyphenLimit;
|
|
12048
|
+
const tryHyphenate = (chars2, remainingWidth) => {
|
|
12049
|
+
var _a, _b, _c, _d;
|
|
12050
|
+
if (!(hyphenation == null ? void 0 : hyphenation.enabled) || !canHyphenateMore()) return null;
|
|
12051
|
+
const word = chars2.map((char) => char.char).join("");
|
|
12052
|
+
if (!shouldHyphenateWord(word, {
|
|
12053
|
+
doNotHyphenateCaps: hyphenation.doNotHyphenateCaps
|
|
12054
|
+
})) {
|
|
12055
|
+
return null;
|
|
12056
|
+
}
|
|
12057
|
+
const langTag = (_c = (_b = (_a = chars2.find((char) => {
|
|
12058
|
+
var _a2, _b2;
|
|
12059
|
+
return (_b2 = (_a2 = char.style) == null ? void 0 : _a2.language) == null ? void 0 : _b2.value;
|
|
12060
|
+
})) == null ? void 0 : _a.style) == null ? void 0 : _b.language) == null ? void 0 : _c.value;
|
|
12061
|
+
const points = findHyphenationPoints(
|
|
12062
|
+
word,
|
|
12063
|
+
resolveHyphenationLanguage(langTag ?? void 0)
|
|
12064
|
+
);
|
|
12065
|
+
if (points.length === 0) return null;
|
|
12066
|
+
const hyphenWidth = measureCharacterWidth(
|
|
12067
|
+
"-",
|
|
12068
|
+
(_d = chars2[0]) == null ? void 0 : _d.style,
|
|
12069
|
+
fallbackFontSize
|
|
12070
|
+
);
|
|
12071
|
+
let prefixWidth = 0;
|
|
12072
|
+
let scanned = 0;
|
|
12073
|
+
let chosen = -1;
|
|
12074
|
+
for (const point of points) {
|
|
12075
|
+
while (scanned < point) {
|
|
12076
|
+
prefixWidth += chars2[scanned].width;
|
|
12077
|
+
scanned += 1;
|
|
12078
|
+
}
|
|
12079
|
+
if (prefixWidth + hyphenWidth <= remainingWidth) {
|
|
12080
|
+
chosen = point;
|
|
12081
|
+
} else {
|
|
12082
|
+
break;
|
|
12083
|
+
}
|
|
12084
|
+
}
|
|
12085
|
+
return chosen > 0 ? { breakIndex: chosen, hyphenWidth } : null;
|
|
12086
|
+
};
|
|
12087
|
+
const layoutFreshWord = (chars2) => {
|
|
12088
|
+
if (measureCharsAt(chars2, 0) <= lineAvailableWidth) {
|
|
12089
|
+
appendChars(chars2);
|
|
12090
|
+
return;
|
|
12091
|
+
}
|
|
12092
|
+
const hy = tryHyphenate(chars2, lineAvailableWidth);
|
|
12093
|
+
if (hy) {
|
|
12094
|
+
appendChars(chars2.slice(0, hy.breakIndex));
|
|
12095
|
+
flushLine(false, hy.hyphenWidth);
|
|
12096
|
+
resetLine(chars2[hy.breakIndex].offset);
|
|
12097
|
+
layoutFreshWord(chars2.slice(hy.breakIndex));
|
|
12098
|
+
return;
|
|
12099
|
+
}
|
|
12100
|
+
layoutByChars(chars2);
|
|
12101
|
+
};
|
|
12102
|
+
for (const token of tokens) {
|
|
12103
|
+
if (token.kind === "newline") {
|
|
12104
|
+
flushLine(true);
|
|
12105
|
+
resetLine(token.chars[0].offset + 1, false);
|
|
12106
|
+
continue;
|
|
12107
|
+
}
|
|
12108
|
+
const tokenWidth = measureTokenAt(token);
|
|
12109
|
+
const fitsCurrentLine = lineWidth + tokenWidth <= lineAvailableWidth;
|
|
12110
|
+
const isEmptyLine = lineStartOffset === lineEndOffset;
|
|
12111
|
+
if (token.kind === "whitespace") {
|
|
12112
|
+
if (fitsCurrentLine || isEmptyLine) {
|
|
12113
|
+
appendChars(token.chars);
|
|
12114
|
+
} else {
|
|
12115
|
+
flushLine();
|
|
12116
|
+
resetLine(token.chars[token.chars.length - 1].offset + 1);
|
|
12117
|
+
}
|
|
12118
|
+
continue;
|
|
12119
|
+
}
|
|
12120
|
+
if (fitsCurrentLine) {
|
|
12121
|
+
appendChars(token.chars);
|
|
12122
|
+
continue;
|
|
12123
|
+
}
|
|
12124
|
+
if (!isEmptyLine) {
|
|
12125
|
+
const remaining = lineAvailableWidth - lineWidth;
|
|
12126
|
+
const zonePx = ((hyphenation == null ? void 0 : hyphenation.zone) ?? 0) * PT_TO_PX;
|
|
12127
|
+
if (remaining > zonePx) {
|
|
12128
|
+
const hy = tryHyphenate(token.chars, remaining);
|
|
12129
|
+
if (hy) {
|
|
12130
|
+
appendChars(token.chars.slice(0, hy.breakIndex));
|
|
12131
|
+
flushLine(false, hy.hyphenWidth);
|
|
12132
|
+
resetLine(token.chars[hy.breakIndex].offset);
|
|
12133
|
+
layoutFreshWord(token.chars.slice(hy.breakIndex));
|
|
12134
|
+
continue;
|
|
12135
|
+
}
|
|
12136
|
+
}
|
|
12137
|
+
}
|
|
12138
|
+
flushLine();
|
|
12139
|
+
resetLine(token.chars[0].offset);
|
|
12140
|
+
layoutFreshWord(token.chars);
|
|
11871
12141
|
}
|
|
11872
12142
|
if (lines.length === 0 || lineStartOffset !== lineEndOffset || lineSlotLefts.length > 1) {
|
|
11873
12143
|
flushLine();
|
|
@@ -12295,6 +12565,12 @@ function resolveDropCapExclusion(options) {
|
|
|
12295
12565
|
};
|
|
12296
12566
|
}
|
|
12297
12567
|
const DEFAULT_FONT_SIZE$2 = 14.6667;
|
|
12568
|
+
let activeHyphenation;
|
|
12569
|
+
let activeHyphenationSignature = "";
|
|
12570
|
+
function setActiveHyphenation(options) {
|
|
12571
|
+
activeHyphenation = (options == null ? void 0 : options.enabled) ? options : void 0;
|
|
12572
|
+
activeHyphenationSignature = activeHyphenation ? `h:${activeHyphenation.zone ?? ""}:${activeHyphenation.consecutiveLimit ?? ""}:${activeHyphenation.doNotHyphenateCaps ? 1 : 0}` : "";
|
|
12573
|
+
}
|
|
12298
12574
|
function paragraphStyleComparableKey(style2) {
|
|
12299
12575
|
const {
|
|
12300
12576
|
spacingBefore: _spacingBefore,
|
|
@@ -12362,7 +12638,7 @@ function getParagraphFieldDependence(paragraph) {
|
|
|
12362
12638
|
}
|
|
12363
12639
|
function projectParagraphLayout(paragraph, pageIndex, totalPages, styles, contentWidth, measurer = domTextMeasurer, defaultTabStop) {
|
|
12364
12640
|
const { dependsOnPageIndex, dependsOnTotalPages } = getParagraphFieldDependence(paragraph);
|
|
12365
|
-
const cacheKey = `${dependsOnPageIndex ? pageIndex ?? "" : ""}:${dependsOnTotalPages ? totalPages ?? "" : ""}:${contentWidth ?? ""}:${defaultTabStop ?? ""}`;
|
|
12641
|
+
const cacheKey = `${dependsOnPageIndex ? pageIndex ?? "" : ""}:${dependsOnTotalPages ? totalPages ?? "" : ""}:${contentWidth ?? ""}:${defaultTabStop ?? ""}:${activeHyphenationSignature}`;
|
|
12366
12642
|
let cacheForParagraph = paragraphLayoutCache.get(paragraph);
|
|
12367
12643
|
if (cacheForParagraph) {
|
|
12368
12644
|
const cached = cacheForParagraph.get(cacheKey);
|
|
@@ -12419,7 +12695,8 @@ function projectParagraphLayout(paragraph, pageIndex, totalPages, styles, conten
|
|
|
12419
12695
|
fragments,
|
|
12420
12696
|
styles,
|
|
12421
12697
|
contentWidth,
|
|
12422
|
-
defaultTabStop
|
|
12698
|
+
defaultTabStop,
|
|
12699
|
+
hyphenation: activeHyphenation
|
|
12423
12700
|
}).map((line) => ({
|
|
12424
12701
|
...line,
|
|
12425
12702
|
height: line.height || lineHeight,
|
|
@@ -14852,8 +15129,16 @@ function documentContainsNumPagesField(document2) {
|
|
|
14852
15129
|
);
|
|
14853
15130
|
}
|
|
14854
15131
|
function projectDocumentLayout(document2, maxPageHeightOverride, measuredHeights, measuredParagraphLayouts, options = {}) {
|
|
14855
|
-
var _a;
|
|
15132
|
+
var _a, _b;
|
|
14856
15133
|
const measurer = options.measurer ?? domTextMeasurer;
|
|
15134
|
+
setActiveHyphenation(
|
|
15135
|
+
((_a = document2.settings) == null ? void 0 : _a.autoHyphenation) ? {
|
|
15136
|
+
enabled: true,
|
|
15137
|
+
zone: document2.settings.hyphenationZone,
|
|
15138
|
+
consecutiveLimit: document2.settings.consecutiveHyphenLimit,
|
|
15139
|
+
doNotHyphenateCaps: document2.settings.doNotHyphenateCaps
|
|
15140
|
+
} : void 0
|
|
15141
|
+
);
|
|
14857
15142
|
const layoutDocument = injectEndnotesIntoDocument(document2);
|
|
14858
15143
|
const sections = getDocumentSections(layoutDocument);
|
|
14859
15144
|
const needsTotalPages = documentContainsNumPagesField(layoutDocument);
|
|
@@ -14864,7 +15149,7 @@ function projectDocumentLayout(document2, maxPageHeightOverride, measuredHeights
|
|
|
14864
15149
|
measuredHeights,
|
|
14865
15150
|
measuredParagraphLayouts,
|
|
14866
15151
|
measurer,
|
|
14867
|
-
defaultTabStop: (
|
|
15152
|
+
defaultTabStop: (_b = document2.settings) == null ? void 0 : _b.defaultTabStop,
|
|
14868
15153
|
needsTotalPages,
|
|
14869
15154
|
projectBlocks: projectBlocksLayout,
|
|
14870
15155
|
projectHeaderFooterBlocks
|
|
@@ -14873,6 +15158,7 @@ function projectDocumentLayout(document2, maxPageHeightOverride, measuredHeights
|
|
|
14873
15158
|
let pages = projectedSections.pages;
|
|
14874
15159
|
const totalPages = projectedSections.totalPages;
|
|
14875
15160
|
if (!document2.footnotes || Object.keys(document2.footnotes.items).length === 0) {
|
|
15161
|
+
setActiveHyphenation(void 0);
|
|
14876
15162
|
return { pages };
|
|
14877
15163
|
}
|
|
14878
15164
|
const footnoteContext = {
|
|
@@ -14894,9 +15180,11 @@ function projectDocumentLayout(document2, maxPageHeightOverride, measuredHeights
|
|
|
14894
15180
|
pages = projectDocumentSections(sectionContext, reservations).pages;
|
|
14895
15181
|
reservations = buildFootnoteReservations(pages, footnoteContext);
|
|
14896
15182
|
}
|
|
14897
|
-
|
|
15183
|
+
const result = {
|
|
14898
15184
|
pages: applyFootnotesToPages(pages, footnoteContext)
|
|
14899
15185
|
};
|
|
15186
|
+
setActiveHyphenation(void 0);
|
|
15187
|
+
return result;
|
|
14900
15188
|
}
|
|
14901
15189
|
function quoteFontFamily(family) {
|
|
14902
15190
|
return /[\s,]/.test(family) ? `"${family.replace(/"/g, '\\"')}"` : family;
|
|
@@ -20858,7 +21146,7 @@ function drawFloatingImagesForParagraph(options) {
|
|
|
20858
21146
|
}
|
|
20859
21147
|
}
|
|
20860
21148
|
function drawParagraph(ctx, paragraph, lines, state, originX, originY, onUpdate, painters, pageIndex = 0) {
|
|
20861
|
-
var _a, _b, _c;
|
|
21149
|
+
var _a, _b, _c, _d;
|
|
20862
21150
|
for (const line of lines) {
|
|
20863
21151
|
const slotByOffset = /* @__PURE__ */ new Map();
|
|
20864
21152
|
for (const slot of line.slots) {
|
|
@@ -21040,6 +21328,42 @@ function drawParagraph(ctx, paragraph, lines, state, originX, originY, onUpdate,
|
|
|
21040
21328
|
}
|
|
21041
21329
|
ctx.restore();
|
|
21042
21330
|
}
|
|
21331
|
+
if (line.trailingHyphen) {
|
|
21332
|
+
const lastFragment = [...line.fragments].reverse().find(
|
|
21333
|
+
(fragment) => fragment.text && !fragment.image && !fragment.textBox
|
|
21334
|
+
);
|
|
21335
|
+
const endSlot = slotByOffset.get(line.endOffset) ?? line.slots[line.slots.length - 1];
|
|
21336
|
+
if (lastFragment && endSlot) {
|
|
21337
|
+
const styles = resolveEffectiveTextStyleForParagraph(
|
|
21338
|
+
lastFragment.styles,
|
|
21339
|
+
(_d = paragraph.style) == null ? void 0 : _d.styleId,
|
|
21340
|
+
state.document.styles
|
|
21341
|
+
);
|
|
21342
|
+
if (!styles.hidden) {
|
|
21343
|
+
const fontSize = styles.fontSize ?? 14.6667;
|
|
21344
|
+
const fontFamily = resolveCanvasFontFamily(styles.fontFamily);
|
|
21345
|
+
const fontWeight = styles.bold ? "700" : "400";
|
|
21346
|
+
const fontStyle = styles.italic ? "italic" : "normal";
|
|
21347
|
+
const renderMetrics = resolveCanvasTextRenderMetrics(
|
|
21348
|
+
styles,
|
|
21349
|
+
fontSize
|
|
21350
|
+
);
|
|
21351
|
+
const scale = styles.characterScale && styles.characterScale > 0 ? styles.characterScale / 100 : 1;
|
|
21352
|
+
ctx.save();
|
|
21353
|
+
ctx.font = `${fontStyle} ${fontWeight} ${renderMetrics.fontSize}px ${fontFamily}`;
|
|
21354
|
+
ctx.fillStyle = styles.color ?? "#000000";
|
|
21355
|
+
drawStyledText(
|
|
21356
|
+
ctx,
|
|
21357
|
+
"-",
|
|
21358
|
+
originX + endSlot.left,
|
|
21359
|
+
baselineY + renderMetrics.baselineOffset,
|
|
21360
|
+
scale,
|
|
21361
|
+
styles
|
|
21362
|
+
);
|
|
21363
|
+
ctx.restore();
|
|
21364
|
+
}
|
|
21365
|
+
}
|
|
21366
|
+
}
|
|
21043
21367
|
const isLastLine = line.index === lines.length - 1;
|
|
21044
21368
|
if (state.showParagraphMarks && isLastLine) {
|
|
21045
21369
|
const lastSlot = line.slots[line.slots.length - 1];
|
|
@@ -26517,20 +26841,20 @@ function copy(src, dest) {
|
|
|
26517
26841
|
}
|
|
26518
26842
|
}
|
|
26519
26843
|
function _extends(Class, Super) {
|
|
26520
|
-
var
|
|
26521
|
-
if (!(
|
|
26844
|
+
var pt2 = Class.prototype;
|
|
26845
|
+
if (!(pt2 instanceof Super)) {
|
|
26522
26846
|
let t = function() {
|
|
26523
26847
|
};
|
|
26524
26848
|
t.prototype = Super.prototype;
|
|
26525
26849
|
t = new t();
|
|
26526
|
-
copy(
|
|
26527
|
-
Class.prototype =
|
|
26850
|
+
copy(pt2, t);
|
|
26851
|
+
Class.prototype = pt2 = t;
|
|
26528
26852
|
}
|
|
26529
|
-
if (
|
|
26853
|
+
if (pt2.constructor != Class) {
|
|
26530
26854
|
if (typeof Class != "function") {
|
|
26531
26855
|
console.error("unknown Class:" + Class);
|
|
26532
26856
|
}
|
|
26533
|
-
|
|
26857
|
+
pt2.constructor = Class;
|
|
26534
26858
|
}
|
|
26535
26859
|
}
|
|
26536
26860
|
var NodeType = {};
|
|
@@ -32565,6 +32889,47 @@ function parseSettings(xml) {
|
|
|
32565
32889
|
if (defaultTabStop !== void 0) {
|
|
32566
32890
|
settings.defaultTabStop = defaultTabStop;
|
|
32567
32891
|
}
|
|
32892
|
+
const autoHyphenation = getFirstChildByTagNameNS(
|
|
32893
|
+
doc.documentElement,
|
|
32894
|
+
WORD_NS,
|
|
32895
|
+
"autoHyphenation"
|
|
32896
|
+
);
|
|
32897
|
+
if (autoHyphenation) {
|
|
32898
|
+
const val = getAttributeValue(autoHyphenation, "val");
|
|
32899
|
+
settings.autoHyphenation = val !== "0" && val !== "false";
|
|
32900
|
+
}
|
|
32901
|
+
const doNotHyphenateCaps = getFirstChildByTagNameNS(
|
|
32902
|
+
doc.documentElement,
|
|
32903
|
+
WORD_NS,
|
|
32904
|
+
"doNotHyphenateCaps"
|
|
32905
|
+
);
|
|
32906
|
+
if (doNotHyphenateCaps) {
|
|
32907
|
+
const val = getAttributeValue(doNotHyphenateCaps, "val");
|
|
32908
|
+
settings.doNotHyphenateCaps = val !== "0" && val !== "false";
|
|
32909
|
+
}
|
|
32910
|
+
const consecutiveHyphenLimit = Number.parseInt(
|
|
32911
|
+
getAttributeValue(
|
|
32912
|
+
getFirstChildByTagNameNS(
|
|
32913
|
+
doc.documentElement,
|
|
32914
|
+
WORD_NS,
|
|
32915
|
+
"consecutiveHyphenLimit"
|
|
32916
|
+
),
|
|
32917
|
+
"val"
|
|
32918
|
+
) ?? "",
|
|
32919
|
+
10
|
|
32920
|
+
);
|
|
32921
|
+
if (Number.isFinite(consecutiveHyphenLimit) && consecutiveHyphenLimit >= 0) {
|
|
32922
|
+
settings.consecutiveHyphenLimit = consecutiveHyphenLimit;
|
|
32923
|
+
}
|
|
32924
|
+
const hyphenationZone = twipsToPoints(
|
|
32925
|
+
getAttributeValue(
|
|
32926
|
+
getFirstChildByTagNameNS(doc.documentElement, WORD_NS, "hyphenationZone"),
|
|
32927
|
+
"val"
|
|
32928
|
+
)
|
|
32929
|
+
);
|
|
32930
|
+
if (hyphenationZone !== void 0) {
|
|
32931
|
+
settings.hyphenationZone = hyphenationZone;
|
|
32932
|
+
}
|
|
32568
32933
|
settings.footnoteSettings = parseNoteSettings(
|
|
32569
32934
|
getFirstChildByTagNameNS(doc.documentElement, WORD_NS, "footnotePr")
|
|
32570
32935
|
);
|
|
@@ -35620,9 +35985,9 @@ async function parseTableNode(tableNode, numberingMaps, zip, relsMap, assets, th
|
|
|
35620
35985
|
if (tblGrid) {
|
|
35621
35986
|
for (const gridCol of getChildrenByTagNameNS(tblGrid, WORD_NS, "gridCol")) {
|
|
35622
35987
|
const w = getAttributeValue(gridCol, "w");
|
|
35623
|
-
const
|
|
35624
|
-
if (
|
|
35625
|
-
gridCols.push(
|
|
35988
|
+
const pt2 = twipsToPoints(w);
|
|
35989
|
+
if (pt2 !== void 0) {
|
|
35990
|
+
gridCols.push(pt2);
|
|
35626
35991
|
}
|
|
35627
35992
|
}
|
|
35628
35993
|
}
|
|
@@ -36562,6 +36927,30 @@ async function importDocxToEditorDocument(buffer, options = {}) {
|
|
|
36562
36927
|
allowSpaceOfSameStyleInTable: true
|
|
36563
36928
|
};
|
|
36564
36929
|
}
|
|
36930
|
+
if (docSettings.autoHyphenation) {
|
|
36931
|
+
doc2.settings = {
|
|
36932
|
+
...doc2.settings ?? {},
|
|
36933
|
+
autoHyphenation: true
|
|
36934
|
+
};
|
|
36935
|
+
}
|
|
36936
|
+
if (docSettings.doNotHyphenateCaps) {
|
|
36937
|
+
doc2.settings = {
|
|
36938
|
+
...doc2.settings ?? {},
|
|
36939
|
+
doNotHyphenateCaps: true
|
|
36940
|
+
};
|
|
36941
|
+
}
|
|
36942
|
+
if (docSettings.consecutiveHyphenLimit !== void 0) {
|
|
36943
|
+
doc2.settings = {
|
|
36944
|
+
...doc2.settings ?? {},
|
|
36945
|
+
consecutiveHyphenLimit: docSettings.consecutiveHyphenLimit
|
|
36946
|
+
};
|
|
36947
|
+
}
|
|
36948
|
+
if (docSettings.hyphenationZone !== void 0) {
|
|
36949
|
+
doc2.settings = {
|
|
36950
|
+
...doc2.settings ?? {},
|
|
36951
|
+
hyphenationZone: docSettings.hyphenationZone
|
|
36952
|
+
};
|
|
36953
|
+
}
|
|
36565
36954
|
let result = doc2;
|
|
36566
36955
|
if (editorFootnotes) {
|
|
36567
36956
|
result.footnotes = editorFootnotes;
|
|
@@ -36748,7 +37137,7 @@ function importDocxInWorker(buffer, options = {}) {
|
|
|
36748
37137
|
const worker = new Worker(
|
|
36749
37138
|
new URL(
|
|
36750
37139
|
/* @vite-ignore */
|
|
36751
|
-
"" + new URL("assets/importDocxWorker-
|
|
37140
|
+
"" + new URL("assets/importDocxWorker-DAbfLHtp.js", import.meta.url).href,
|
|
36752
37141
|
import.meta.url
|
|
36753
37142
|
),
|
|
36754
37143
|
{
|
|
@@ -39280,8 +39669,8 @@ function previousFontSizePt(currentPt) {
|
|
|
39280
39669
|
function fontSizePxToPt(px) {
|
|
39281
39670
|
return Math.round(pxToPt(px) * 100) / 100;
|
|
39282
39671
|
}
|
|
39283
|
-
function fontSizePtToPx(
|
|
39284
|
-
return Math.round(ptToPx(
|
|
39672
|
+
function fontSizePtToPx(pt2) {
|
|
39673
|
+
return Math.round(ptToPx(pt2) * 1e4) / 1e4;
|
|
39285
39674
|
}
|
|
39286
39675
|
function formatFontSizePt(px) {
|
|
39287
39676
|
const value = Number(px);
|
|
@@ -39290,8 +39679,8 @@ function formatFontSizePt(px) {
|
|
|
39290
39679
|
}
|
|
39291
39680
|
return String(fontSizePxToPt(value));
|
|
39292
39681
|
}
|
|
39293
|
-
function parseFontSizePtToPx(
|
|
39294
|
-
const value = Number(
|
|
39682
|
+
function parseFontSizePtToPx(pt2) {
|
|
39683
|
+
const value = Number(pt2);
|
|
39295
39684
|
if (!Number.isFinite(value) || value <= 0) {
|
|
39296
39685
|
return null;
|
|
39297
39686
|
}
|