decord/alpha/source/modules/conjure/chat/ConjureMarkdownBlocks.tsx
2026-10-09 10:00:15 +00:00

154 lines
4.3 KiB
TypeScript

// Module ID: 17088
// Function ID: 17089
// Name: ConjureMarkdownBlocks
// Dependencies: [2]
// Exports: splitMarkdownBlocks
// Module 17088 (ConjureMarkdownBlocks)
import size from "module_2" /* 2 */;
const re0 = /^( *)([-*]|\d+\.) +(.*)$/;
const length = ["\u2022", "\u25E6", "\u25AA"];
const result = size.fileFinishedImporting("modules/conjure/chat/ConjureMarkdownBlocks.tsx");
export const splitMarkdownBlocks = function splitMarkdownBlocks(source) {
let combined;
const parts = source.split("\n");
const items = [];
let items1 = [];
let items2 = [];
let tmp = null;
let num = 0;
let obj = items1;
let tmp2 = null;
if (0 < parts.length) {
do {
let items6;
let items3;
let items5;
let diff;
let str = parts[num];
let match = re0.exec(str);
if (null == match) {
let tmp17 = tmp;
let items4 = items2;
if (null == tmp) {
let arr = items1.push(str);
items6 = tmp17;
items3 = items4;
items5 = items1;
diff = num;
} else if ("" === str.trim()) {
let sum = num + 1;
let tmp23 = sum;
if (sum < parts.length) {
let str3 = parts[sum];
let tmp24 = sum;
tmp23 = sum;
if ("" === str3.trim()) {
let sum1 = tmp24 + 1;
tmp23 = sum1;
while (sum1 < parts.length) {
let str4 = parts[sum1];
tmp24 = sum1;
tmp23 = sum1;
if ("" !== str4.trim()) {
break;
}
}
}
}
if (tmp23 < parts.length) {
if (re0.test(parts[tmp23])) {
diff = tmp23 - 1;
items5 = items1;
items6 = tmp;
items3 = items2;
}
}
let tmp27 = null != tmp && tmp.length > 0;
if (tmp27) {
let obj2 = { kind: "list", items: tmp };
let arr2 = items.push(obj2);
}
items3 = [];
items5 = items1;
items6 = null;
diff = num;
} else {
let obj9 = /^\s/;
if (obj9.test(str)) {
let tmp21 = tmp[tmp.length - 1];
let _HermesInternal2 = HermesInternal;
tmp21.text = "" + tmp21.text + " " + str.trim();
items5 = items1;
items6 = tmp;
items3 = items2;
diff = num;
} else {
let tmp18 = null != tmp && tmp.length > 0;
if (tmp18) {
let obj3 = { kind: "list", items: tmp };
let arr3 = items.push(obj3);
}
items4 = [];
tmp17 = null;
}
}
} else {
items5 = items1;
items6 = tmp;
if (null == tmp) {
let str2 = items1.join("\n");
let trimmed = str2.trim();
if ("" !== trimmed) {
let obj5 = { kind: "text", text: trimmed };
let arr4 = items.push(obj5);
}
items5 = [];
items6 = [];
}
let _Math = Math;
let rounded = Math.floor(match[1].length / 2);
items2.length = rounded + 1;
let num2 = items2[rounded];
if (num2 == null) {
num2 = 0;
}
items2[rounded] = num2 + 1;
let obj6 = { text: match[3], depth: rounded, marker: combined };
let obj4 = /\d/;
let push = items6.push;
let tmp12 = items2[rounded];
if (obj4.test(match[2])) {
let _HermesInternal = HermesInternal;
combined = "" + tmp12 + ".";
} else {
let _Math2 = Math;
combined = length[Math.min(Math, rounded, length.length - 1)];
}
let arr5 = push(obj6);
items3 = items2;
diff = num;
}
num = diff + 1;
items1 = items5;
tmp = items6;
items2 = items3;
obj = items5;
tmp2 = items6;
} while (num < parts.length);
}
const tmp29 = null != tmp2 && tmp2.length > 0;
if (tmp29) {
const obj7 = { kind: "list", items: tmp2 };
items.push(obj7);
}
const str5 = obj.join("\n");
const trimmed1 = str5.trim();
if ("" !== trimmed1) {
const obj8 = { kind: "text", text: trimmed1 };
items.push(obj8);
}
return items;
};