@hkyhy/marsun-components-core 0.1.11 → 0.1.12

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.
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ export interface LlmFormattedTextProps {
3
+ text?: string;
4
+ loading?: boolean;
5
+ className?: string;
6
+ }
7
+ declare const LlmFormattedText: React.FC<LlmFormattedTextProps>;
8
+ export default LlmFormattedText;
@@ -0,0 +1,42 @@
1
+ import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
+ import r from "classnames";
3
+ import { parseLlmText as o } from "../parseLlmText.js";
4
+ import t from "./style.module.scss.js";
5
+ const p = {
6
+ causes: "◆",
7
+ suggestions: "✓",
8
+ summary: "●"
9
+ }, y = ({
10
+ text: m = "",
11
+ loading: d,
12
+ className: i
13
+ }) => {
14
+ const s = o(m);
15
+ return d || s.loading ? /* @__PURE__ */ l("div", { className: r("llm-formatted-text", t["llm-formatted-text"], t["is-loading"], i), children: [
16
+ /* @__PURE__ */ e("span", { className: t["ft-spinner"], "aria-hidden": !0 }),
17
+ /* @__PURE__ */ e("span", { children: m || "正在生成..." })
18
+ ] }) : s.summary || s.sections.length > 0 ? /* @__PURE__ */ l("div", { className: r("llm-formatted-text", t["llm-formatted-text"], i), children: [
19
+ s.summary ? /* @__PURE__ */ e("p", { className: t["ft-summary"], children: s.summary }) : null,
20
+ s.sections.map((a) => /* @__PURE__ */ l(
21
+ "section",
22
+ {
23
+ className: r(t["ft-section"], t[`ft-${a.type}`]),
24
+ children: [
25
+ /* @__PURE__ */ l("h4", { className: t["ft-section-title"], children: [
26
+ /* @__PURE__ */ e("span", { className: t["ft-section-icon"], "aria-hidden": !0, children: p[a.type] || "•" }),
27
+ a.title
28
+ ] }),
29
+ a.items.length > 1 ? /* @__PURE__ */ e("ul", { className: t["ft-list"], children: a.items.map((c, n) => /* @__PURE__ */ l("li", { children: [
30
+ /* @__PURE__ */ e("span", { className: t["ft-num"], children: n + 1 }),
31
+ /* @__PURE__ */ e("span", { className: t["ft-item-text"], children: c })
32
+ ] }, n)) }) : /* @__PURE__ */ e("p", { className: t["ft-paragraph"], children: a.items[0] })
33
+ ]
34
+ },
35
+ `${a.type}-${a.title}`
36
+ ))
37
+ ] }) : /* @__PURE__ */ e("div", { className: r("llm-formatted-text", t["llm-formatted-text"], i), children: /* @__PURE__ */ e("p", { className: t["ft-paragraph"], children: m }) });
38
+ };
39
+ export {
40
+ y as default
41
+ };
42
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/LlmFormattedText/LlmFormattedText/index.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport React from 'react';\nimport { parseLlmText } from '../parseLlmText';\nimport styles from './style.module.scss';\n\nconst SECTION_ICONS: Record<string, string> = {\n causes: '◆',\n suggestions: '✓',\n summary: '●',\n};\n\nexport interface LlmFormattedTextProps {\n text?: string;\n loading?: boolean;\n className?: string;\n}\n\nconst LlmFormattedText: React.FC<LlmFormattedTextProps> = ({\n text = '',\n loading: loadingProp,\n className,\n}) => {\n const parsed = parseLlmText(text);\n const loading = loadingProp || parsed.loading;\n\n if (loading) {\n return (\n <div className={classNames('llm-formatted-text', styles['llm-formatted-text'], styles['is-loading'], className)}>\n <span className={styles['ft-spinner']} aria-hidden />\n <span>{text || '正在生成...'}</span>\n </div>\n );\n }\n\n const hasStructure = parsed.summary || parsed.sections.length > 0;\n if (!hasStructure) {\n return (\n <div className={classNames('llm-formatted-text', styles['llm-formatted-text'], className)}>\n <p className={styles['ft-paragraph']}>{text}</p>\n </div>\n );\n }\n\n return (\n <div className={classNames('llm-formatted-text', styles['llm-formatted-text'], className)}>\n {parsed.summary ? <p className={styles['ft-summary']}>{parsed.summary}</p> : null}\n {parsed.sections.map((sec: { type: string; title: string; items: string[] }) => (\n <section\n key={`${sec.type}-${sec.title}`}\n className={classNames(styles['ft-section'], styles[`ft-${sec.type}`])}\n >\n <h4 className={styles['ft-section-title']}>\n <span className={styles['ft-section-icon']} aria-hidden>\n {SECTION_ICONS[sec.type] || '•'}\n </span>\n {sec.title}\n </h4>\n {sec.items.length > 1 ? (\n <ul className={styles['ft-list']}>\n {sec.items.map((item: string, i: number) => (\n <li key={i}>\n <span className={styles['ft-num']}>{i + 1}</span>\n <span className={styles['ft-item-text']}>{item}</span>\n </li>\n ))}\n </ul>\n ) : (\n <p className={styles['ft-paragraph']}>{sec.items[0]}</p>\n )}\n </section>\n ))}\n </div>\n );\n};\n\nexport default LlmFormattedText;\n"],"names":["SECTION_ICONS","LlmFormattedText","text","loadingProp","className","parsed","parseLlmText","jsxs","classNames","styles","jsx","sec","item","i"],"mappings":";;;;AAKA,MAAMA,IAAwC;AAAA,EAC5C,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,SAAS;AACX,GAQMC,IAAoD,CAAC;AAAA,EACzD,MAAAC,IAAO;AAAA,EACP,SAASC;AAAA,EACT,WAAAC;AACF,MAAM;AACJ,QAAMC,IAASC,EAAaJ,CAAI;AAGhC,SAFgBC,KAAeE,EAAO,UAIlC,gBAAAE,EAAC,OAAA,EAAI,WAAWC,EAAW,sBAAsBC,EAAO,oBAAoB,GAAGA,EAAO,YAAY,GAAGL,CAAS,GAC5G,UAAA;AAAA,IAAA,gBAAAM,EAAC,UAAK,WAAWD,EAAO,YAAY,GAAG,eAAW,IAAC;AAAA,IACnD,gBAAAC,EAAC,QAAA,EAAM,UAAAR,KAAQ,UAAA,CAAU;AAAA,EAAA,GAC3B,IAIiBG,EAAO,WAAWA,EAAO,SAAS,SAAS,IAU9D,gBAAAE,EAAC,SAAI,WAAWC,EAAW,sBAAsBC,EAAO,oBAAoB,GAAGL,CAAS,GACrF,UAAA;AAAA,IAAAC,EAAO,4BAAW,KAAA,EAAE,WAAWI,EAAO,YAAY,GAAI,UAAAJ,EAAO,QAAA,CAAQ,IAAO;AAAA,IAC5EA,EAAO,SAAS,IAAI,CAACM,MACpB,gBAAAJ;AAAA,MAAC;AAAA,MAAA;AAAA,QAEC,WAAWC,EAAWC,EAAO,YAAY,GAAGA,EAAO,MAAME,EAAI,IAAI,EAAE,CAAC;AAAA,QAEpE,UAAA;AAAA,UAAA,gBAAAJ,EAAC,MAAA,EAAG,WAAWE,EAAO,kBAAkB,GACtC,UAAA;AAAA,YAAA,gBAAAC,EAAC,QAAA,EAAK,WAAWD,EAAO,iBAAiB,GAAG,eAAW,IACpD,UAAAT,EAAcW,EAAI,IAAI,KAAK,IAAA,CAC9B;AAAA,YACCA,EAAI;AAAA,UAAA,GACP;AAAA,UACCA,EAAI,MAAM,SAAS,IAClB,gBAAAD,EAAC,QAAG,WAAWD,EAAO,SAAS,GAC5B,YAAI,MAAM,IAAI,CAACG,GAAcC,wBAC3B,MAAA,EACC,UAAA;AAAA,YAAA,gBAAAH,EAAC,UAAK,WAAWD,EAAO,QAAQ,GAAI,cAAI,GAAE;AAAA,8BACzC,QAAA,EAAK,WAAWA,EAAO,cAAc,GAAI,UAAAG,EAAA,CAAK;AAAA,UAAA,EAAA,GAFxCC,CAGT,CACD,EAAA,CACH,IAEA,gBAAAH,EAAC,KAAA,EAAE,WAAWD,EAAO,cAAc,GAAI,UAAAE,EAAI,MAAM,CAAC,EAAA,CAAE;AAAA,QAAA;AAAA,MAAA;AAAA,MAnBjD,GAAGA,EAAI,IAAI,IAAIA,EAAI,KAAK;AAAA,IAAA,CAsBhC;AAAA,EAAA,GACH,sBAlCG,OAAA,EAAI,WAAWH,EAAW,sBAAsBC,EAAO,oBAAoB,GAAGL,CAAS,GACtF,4BAAC,KAAA,EAAE,WAAWK,EAAO,cAAc,GAAI,aAAK,GAC9C;AAkCN;"}
@@ -0,0 +1,17 @@
1
+ const t = {
2
+ "llm-formatted-text": "_llm-formatted-text_1mo0r_1",
3
+ "is-loading": "_is-loading_1mo0r_7",
4
+ "ft-spinner": "_ft-spinner_1mo0r_14",
5
+ "llm-ft-spin": "_llm-ft-spin_1mo0r_1",
6
+ "ft-summary": "_ft-summary_1mo0r_28",
7
+ "ft-section": "_ft-section_1mo0r_33",
8
+ "ft-section-title": "_ft-section-title_1mo0r_37",
9
+ "ft-section-icon": "_ft-section-icon_1mo0r_46",
10
+ "ft-list": "_ft-list_1mo0r_50",
11
+ "ft-num": "_ft-num_1mo0r_62",
12
+ "ft-paragraph": "_ft-paragraph_1mo0r_69"
13
+ };
14
+ export {
15
+ t as default
16
+ };
17
+ //# sourceMappingURL=style.module.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -0,0 +1,4 @@
1
+ export { default as LlmFormattedText } from './LlmFormattedText';
2
+ export type { LlmFormattedTextProps } from './LlmFormattedText';
3
+ export { parseLlmText, formatLlmTextToHtml } from './parseLlmText';
4
+ export type { ParsedLlmText, LlmTextSection } from './parseLlmText';
@@ -0,0 +1,14 @@
1
+ /** 将 LLM 纯文本解析为带层级的内容块 */
2
+ export type LlmTextSection = {
3
+ type: string;
4
+ title: string;
5
+ items: string[];
6
+ };
7
+ export type ParsedLlmText = {
8
+ summary: string;
9
+ sections: LlmTextSection[];
10
+ loading?: boolean;
11
+ };
12
+ export declare function parseLlmText(text: string): ParsedLlmText;
13
+ /** 供静态 HTML 报告使用的排版 HTML */
14
+ export declare function formatLlmTextToHtml(text: string): string;
@@ -0,0 +1,77 @@
1
+ const g = [
2
+ { type: "causes", titles: ["可能原因", "原因分析", "主要原因", "异常原因"] },
3
+ { type: "suggestions", titles: ["建议", "改进建议", "处置建议", "应对措施", "整改建议"] },
4
+ { type: "summary", titles: ["异常说明", "情况说明", "分析结论", "结论"] }
5
+ ], d = new RegExp("(?:^|\\s)(?:[((]?\\d+[))]|[①②③④⑤⑥⑦⑧⑨⑩⑪⑫]|(?<!\\d)\\d+[、..])(?=\\s*[^\\d])", "g");
6
+ function h(l) {
7
+ return String(l || "").replace(/\r\n/g, `
8
+ `).replace(/[ \t]+\n/g, `
9
+ `).replace(/\n{3,}/g, `
10
+
11
+ `).trim();
12
+ }
13
+ function x(l) {
14
+ const t = l.trim();
15
+ if (!t) return [];
16
+ const i = t.split(d).map((n) => n.trim()).filter(Boolean);
17
+ if (i.length > 1) return i;
18
+ const e = t.split(/\n+/).map((n) => n.replace(/^[((]?\d+[))]\s*|^[①②③④⑤⑥⑦⑧⑨⑩]\s*|\d+[、..]\s*/, "").trim()).filter(Boolean);
19
+ return e.length > 1 ? e : [t];
20
+ }
21
+ function y(l) {
22
+ const t = h(l);
23
+ if (!t) return { summary: "", sections: [] };
24
+ if (/^(正在|思考中|分析中|加载)/.test(t) && t.length < 40)
25
+ return { summary: t, sections: [], loading: !0 };
26
+ const i = [];
27
+ let e = "";
28
+ const n = [];
29
+ for (const s of g)
30
+ for (const r of s.titles) {
31
+ const p = new RegExp(`(${r})[::\\s]*`, "g");
32
+ let c;
33
+ for (; (c = p.exec(t)) !== null; )
34
+ n.push({ type: s.type, title: r, index: c.index, len: c[0].length });
35
+ }
36
+ if (n.sort((s, r) => s.index - r.index), n.length === 0)
37
+ return { summary: t, sections: [] };
38
+ const a = n[0];
39
+ a.index > 0 && (e = t.slice(0, a.index).replace(/[::\s]+$/, "").trim());
40
+ for (let s = 0; s < n.length; s += 1) {
41
+ const r = n[s], p = r.index + r.len, c = n[s + 1], u = c ? c.index : t.length, m = t.slice(p, u).trim(), f = x(m);
42
+ i.push({
43
+ type: r.type,
44
+ title: r.title,
45
+ items: f.length ? f : [m]
46
+ });
47
+ }
48
+ if (!e && i.length) {
49
+ const s = a.index;
50
+ s > 80 && (e = t.slice(0, s).trim());
51
+ }
52
+ return !e && i.length === 0 && (e = t), { summary: e, sections: i };
53
+ }
54
+ function o(l) {
55
+ return l.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
56
+ }
57
+ function $(l) {
58
+ const t = y(l);
59
+ if (t.loading)
60
+ return `<p class="ft-loading">${o(t.summary)}</p>`;
61
+ const i = [];
62
+ t.summary && i.push(`<p class="ft-summary">${o(t.summary)}</p>`);
63
+ for (const e of t.sections) {
64
+ const n = `ft-section ft-${e.type}`, a = e.items.length > 1 ? `<ul class="ft-list">${e.items.map(
65
+ (s, r) => `<li><span class="ft-num">${r + 1}</span><span class="ft-item-text">${o(s)}</span></li>`
66
+ ).join("")}</ul>` : `<p class="ft-paragraph">${o(e.items[0] || "")}</p>`;
67
+ i.push(
68
+ `<section class="${n}"><h4 class="ft-section-title">${o(e.title)}</h4>${a}</section>`
69
+ );
70
+ }
71
+ return i.length ? `<div class="formatted-text">${i.join("")}</div>` : `<p class="ft-paragraph">${o(l || "")}</p>`;
72
+ }
73
+ export {
74
+ $ as formatLlmTextToHtml,
75
+ y as parseLlmText
76
+ };
77
+ //# sourceMappingURL=parseLlmText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseLlmText.js","sources":["../../../src/components/LlmFormattedText/parseLlmText.ts"],"sourcesContent":["/** 将 LLM 纯文本解析为带层级的内容块 */\n\nconst SECTION_RULES = [\n { type: 'causes', titles: ['可能原因', '原因分析', '主要原因', '异常原因'] },\n { type: 'suggestions', titles: ['建议', '改进建议', '处置建议', '应对措施', '整改建议'] },\n { type: 'summary', titles: ['异常说明', '情况说明', '分析结论', '结论'] },\n] as const;\n\nconst LIST_ITEM_RE =\n /(?:^|\\s)(?:[((]?\\d+[))]|[①②③④⑤⑥⑦⑧⑨⑩⑪⑫]|(?<!\\d)\\d+[、..])(?=\\s*[^\\d])/g;\n\nexport type LlmTextSection = {\n type: string;\n title: string;\n items: string[];\n};\n\nexport type ParsedLlmText = {\n summary: string;\n sections: LlmTextSection[];\n loading?: boolean;\n};\n\nfunction normalizeText(text: string) {\n return String(text || '')\n .replace(/\\r\\n/g, '\\n')\n .replace(/[ \\t]+\\n/g, '\\n')\n .replace(/\\n{3,}/g, '\\n\\n')\n .trim();\n}\n\nfunction splitListItems(block: string) {\n const trimmed = block.trim();\n if (!trimmed) return [];\n\n const parts = trimmed\n .split(LIST_ITEM_RE)\n .map((s) => s.trim())\n .filter(Boolean);\n if (parts.length > 1) return parts;\n\n const lineParts = trimmed\n .split(/\\n+/)\n .map((s) => s.replace(/^[((]?\\d+[))]\\s*|^[①②③④⑤⑥⑦⑧⑨⑩]\\s*|\\d+[、..]\\s*/, '').trim())\n .filter(Boolean);\n if (lineParts.length > 1) return lineParts;\n\n return [trimmed];\n}\n\nexport function parseLlmText(text: string): ParsedLlmText {\n const raw = normalizeText(text);\n if (!raw) return { summary: '', sections: [] };\n\n if (/^(正在|思考中|分析中|加载)/.test(raw) && raw.length < 40) {\n return { summary: raw, sections: [], loading: true };\n }\n\n const sections: LlmTextSection[] = [];\n let summary = '';\n\n const ordered: { type: string; title: string; index: number; len: number }[] = [];\n for (const rule of SECTION_RULES) {\n for (const title of rule.titles) {\n const re = new RegExp(`(${title})[::\\\\s]*`, 'g');\n let m: RegExpExecArray | null;\n while ((m = re.exec(raw)) !== null) {\n ordered.push({ type: rule.type, title, index: m.index, len: m[0].length });\n }\n }\n }\n ordered.sort((a, b) => a.index - b.index);\n\n if (ordered.length === 0) {\n return { summary: raw, sections: [] };\n }\n\n const first = ordered[0]!;\n if (first.index > 0) {\n summary = raw.slice(0, first.index).replace(/[::\\s]+$/, '').trim();\n }\n\n for (let i = 0; i < ordered.length; i += 1) {\n const cur = ordered[i]!;\n const start = cur.index + cur.len;\n const next = ordered[i + 1];\n const end = next ? next.index : raw.length;\n const body = raw.slice(start, end).trim();\n const items = splitListItems(body);\n sections.push({\n type: cur.type,\n title: cur.title,\n items: items.length ? items : [body],\n });\n }\n\n if (!summary && sections.length) {\n const firstIdx = first.index;\n if (firstIdx > 80) summary = raw.slice(0, firstIdx).trim();\n }\n\n if (!summary && sections.length === 0) summary = raw;\n\n return { summary, sections };\n}\n\nfunction escapeHtml(s: string) {\n return s\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;');\n}\n\n/** 供静态 HTML 报告使用的排版 HTML */\nexport function formatLlmTextToHtml(text: string) {\n const parsed = parseLlmText(text);\n if (parsed.loading) {\n return `<p class=\"ft-loading\">${escapeHtml(parsed.summary)}</p>`;\n }\n\n const parts: string[] = [];\n if (parsed.summary) {\n parts.push(`<p class=\"ft-summary\">${escapeHtml(parsed.summary)}</p>`);\n }\n for (const sec of parsed.sections) {\n const cls = `ft-section ft-${sec.type}`;\n const items =\n sec.items.length > 1\n ? `<ul class=\"ft-list\">${sec.items\n .map(\n (item, i) =>\n `<li><span class=\"ft-num\">${i + 1}</span><span class=\"ft-item-text\">${escapeHtml(item)}</span></li>`,\n )\n .join('')}</ul>`\n : `<p class=\"ft-paragraph\">${escapeHtml(sec.items[0] || '')}</p>`;\n parts.push(\n `<section class=\"${cls}\"><h4 class=\"ft-section-title\">${escapeHtml(sec.title)}</h4>${items}</section>`,\n );\n }\n if (!parts.length) {\n return `<p class=\"ft-paragraph\">${escapeHtml(text || '')}</p>`;\n }\n return `<div class=\"formatted-text\">${parts.join('')}</div>`;\n}\n"],"names":["SECTION_RULES","LIST_ITEM_RE","normalizeText","text","splitListItems","block","trimmed","parts","s","lineParts","parseLlmText","raw","sections","summary","ordered","rule","title","re","m","a","b","first","i","cur","start","next","end","body","items","firstIdx","escapeHtml","formatLlmTextToHtml","parsed","sec","cls","item"],"mappings":"AAEA,MAAMA,IAAgB;AAAA,EACpB,EAAE,MAAM,UAAU,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,MAAM,EAAA;AAAA,EACzD,EAAE,MAAM,eAAe,QAAQ,CAAC,MAAM,QAAQ,QAAQ,QAAQ,MAAM,EAAA;AAAA,EACpE,EAAE,MAAM,WAAW,QAAQ,CAAC,QAAQ,QAAQ,QAAQ,IAAI,EAAA;AAC1D,GAEMC,IACJ,WAAA,6EAAA,GAAA;AAcF,SAASC,EAAcC,GAAc;AACnC,SAAO,OAAOA,KAAQ,EAAE,EACrB,QAAQ,SAAS;AAAA,CAAI,EACrB,QAAQ,aAAa;AAAA,CAAI,EACzB,QAAQ,WAAW;AAAA;AAAA,CAAM,EACzB,KAAA;AACL;AAEA,SAASC,EAAeC,GAAe;AACrC,QAAMC,IAAUD,EAAM,KAAA;AACtB,MAAI,CAACC,EAAS,QAAO,CAAA;AAErB,QAAMC,IAAQD,EACX,MAAML,CAAY,EAClB,IAAI,CAACO,MAAMA,EAAE,KAAA,CAAM,EACnB,OAAO,OAAO;AACjB,MAAID,EAAM,SAAS,EAAG,QAAOA;AAE7B,QAAME,IAAYH,EACf,MAAM,KAAK,EACX,IAAI,CAACE,MAAMA,EAAE,QAAQ,iDAAiD,EAAE,EAAE,MAAM,EAChF,OAAO,OAAO;AACjB,SAAIC,EAAU,SAAS,IAAUA,IAE1B,CAACH,CAAO;AACjB;AAEO,SAASI,EAAaP,GAA6B;AACxD,QAAMQ,IAAMT,EAAcC,CAAI;AAC9B,MAAI,CAACQ,EAAK,QAAO,EAAE,SAAS,IAAI,UAAU,GAAC;AAE3C,MAAI,mBAAmB,KAAKA,CAAG,KAAKA,EAAI,SAAS;AAC/C,WAAO,EAAE,SAASA,GAAK,UAAU,CAAA,GAAI,SAAS,GAAA;AAGhD,QAAMC,IAA6B,CAAA;AACnC,MAAIC,IAAU;AAEd,QAAMC,IAAyE,CAAA;AAC/E,aAAWC,KAAQf;AACjB,eAAWgB,KAASD,EAAK,QAAQ;AAC/B,YAAME,IAAK,IAAI,OAAO,IAAID,CAAK,aAAa,GAAG;AAC/C,UAAIE;AACJ,cAAQA,IAAID,EAAG,KAAKN,CAAG,OAAO;AAC5B,QAAAG,EAAQ,KAAK,EAAE,MAAMC,EAAK,MAAM,OAAAC,GAAO,OAAOE,EAAE,OAAO,KAAKA,EAAE,CAAC,EAAE,QAAQ;AAAA,IAE7E;AAIF,MAFAJ,EAAQ,KAAK,CAACK,GAAGC,MAAMD,EAAE,QAAQC,EAAE,KAAK,GAEpCN,EAAQ,WAAW;AACrB,WAAO,EAAE,SAASH,GAAK,UAAU,CAAA,EAAC;AAGpC,QAAMU,IAAQP,EAAQ,CAAC;AACvB,EAAIO,EAAM,QAAQ,MAChBR,IAAUF,EAAI,MAAM,GAAGU,EAAM,KAAK,EAAE,QAAQ,YAAY,EAAE,EAAE,KAAA;AAG9D,WAASC,IAAI,GAAGA,IAAIR,EAAQ,QAAQQ,KAAK,GAAG;AAC1C,UAAMC,IAAMT,EAAQQ,CAAC,GACfE,IAAQD,EAAI,QAAQA,EAAI,KACxBE,IAAOX,EAAQQ,IAAI,CAAC,GACpBI,IAAMD,IAAOA,EAAK,QAAQd,EAAI,QAC9BgB,IAAOhB,EAAI,MAAMa,GAAOE,CAAG,EAAE,KAAA,GAC7BE,IAAQxB,EAAeuB,CAAI;AACjC,IAAAf,EAAS,KAAK;AAAA,MACZ,MAAMW,EAAI;AAAA,MACV,OAAOA,EAAI;AAAA,MACX,OAAOK,EAAM,SAASA,IAAQ,CAACD,CAAI;AAAA,IAAA,CACpC;AAAA,EACH;AAEA,MAAI,CAACd,KAAWD,EAAS,QAAQ;AAC/B,UAAMiB,IAAWR,EAAM;AACvB,IAAIQ,IAAW,OAAIhB,IAAUF,EAAI,MAAM,GAAGkB,CAAQ,EAAE,KAAA;AAAA,EACtD;AAEA,SAAI,CAAChB,KAAWD,EAAS,WAAW,MAAGC,IAAUF,IAE1C,EAAE,SAAAE,GAAS,UAAAD,EAAA;AACpB;AAEA,SAASkB,EAAWtB,GAAW;AAC7B,SAAOA,EACJ,QAAQ,MAAM,OAAO,EACrB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,MAAM,EACpB,QAAQ,MAAM,QAAQ;AAC3B;AAGO,SAASuB,EAAoB5B,GAAc;AAChD,QAAM6B,IAAStB,EAAaP,CAAI;AAChC,MAAI6B,EAAO;AACT,WAAO,yBAAyBF,EAAWE,EAAO,OAAO,CAAC;AAG5D,QAAMzB,IAAkB,CAAA;AACxB,EAAIyB,EAAO,WACTzB,EAAM,KAAK,yBAAyBuB,EAAWE,EAAO,OAAO,CAAC,MAAM;AAEtE,aAAWC,KAAOD,EAAO,UAAU;AACjC,UAAME,IAAM,iBAAiBD,EAAI,IAAI,IAC/BL,IACJK,EAAI,MAAM,SAAS,IACf,uBAAuBA,EAAI,MACxB;AAAA,MACC,CAACE,GAAMb,MACL,4BAA4BA,IAAI,CAAC,qCAAqCQ,EAAWK,CAAI,CAAC;AAAA,IAAA,EAEzF,KAAK,EAAE,CAAC,UACX,2BAA2BL,EAAWG,EAAI,MAAM,CAAC,KAAK,EAAE,CAAC;AAC/D,IAAA1B,EAAM;AAAA,MACJ,mBAAmB2B,CAAG,kCAAkCJ,EAAWG,EAAI,KAAK,CAAC,QAAQL,CAAK;AAAA,IAAA;AAAA,EAE9F;AACA,SAAKrB,EAAM,SAGJ,+BAA+BA,EAAM,KAAK,EAAE,CAAC,WAF3C,2BAA2BuB,EAAW3B,KAAQ,EAAE,CAAC;AAG5D;"}
@@ -0,0 +1,11 @@
1
+ import { default as React } from 'react';
2
+ export interface SparklineProps {
3
+ data?: number[];
4
+ width?: number;
5
+ height?: number;
6
+ color?: string;
7
+ className?: string;
8
+ }
9
+ /** 极细 Sparkline — 响应式微型趋势折线 */
10
+ declare const Sparkline: React.FC<SparklineProps>;
11
+ export default Sparkline;
@@ -0,0 +1,46 @@
1
+ import { jsxs as y, jsx as i } from "react/jsx-runtime";
2
+ import g from "classnames";
3
+ import j from "./style.module.scss.js";
4
+ const N = ({
5
+ data: n = [],
6
+ width: o = 200,
7
+ height: e = 28,
8
+ color: r = "#52525b",
9
+ className: c
10
+ }) => {
11
+ if (!n.length) return null;
12
+ const t = Math.min(...n), l = Math.max(...n) - t || 1, s = 2, m = n.map((u, f) => {
13
+ const k = s + f / Math.max(n.length - 1, 1) * (o - s * 2), h = s + (1 - (u - t) / l) * (e - s * 2);
14
+ return `${k},${h}`;
15
+ }).join(" "), p = n[n.length - 1], a = s + (n.length - 1) / Math.max(n.length - 1, 1) * (o - s * 2), x = s + (1 - (p - t) / l) * (e - s * 2);
16
+ return /* @__PURE__ */ y(
17
+ "svg",
18
+ {
19
+ className: g("sparkline", j.sparkline, c),
20
+ width: "100%",
21
+ height: e,
22
+ viewBox: `0 0 ${o} ${e}`,
23
+ preserveAspectRatio: "none",
24
+ "aria-hidden": !0,
25
+ children: [
26
+ /* @__PURE__ */ i(
27
+ "polyline",
28
+ {
29
+ fill: "none",
30
+ stroke: r,
31
+ strokeWidth: "1.25",
32
+ strokeLinecap: "round",
33
+ strokeLinejoin: "round",
34
+ points: m,
35
+ opacity: "0.9"
36
+ }
37
+ ),
38
+ /* @__PURE__ */ i("circle", { cx: a, cy: x, r: "2.5", fill: r })
39
+ ]
40
+ }
41
+ );
42
+ };
43
+ export {
44
+ N as default
45
+ };
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/Sparkline/Sparkline/index.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport React from 'react';\nimport styles from './style.module.scss';\n\nexport interface SparklineProps {\n data?: number[];\n width?: number;\n height?: number;\n color?: string;\n className?: string;\n}\n\n/** 极细 Sparkline — 响应式微型趋势折线 */\nconst Sparkline: React.FC<SparklineProps> = ({\n data = [],\n width = 200,\n height = 28,\n color = '#52525b',\n className,\n}) => {\n if (!data.length) return null;\n\n const min = Math.min(...data);\n const max = Math.max(...data);\n const range = max - min || 1;\n const pad = 2;\n\n const points = data\n .map((v, i) => {\n const x = pad + (i / Math.max(data.length - 1, 1)) * (width - pad * 2);\n const y = pad + (1 - (v - min) / range) * (height - pad * 2);\n return `${x},${y}`;\n })\n .join(' ');\n\n const last = data[data.length - 1]!;\n const lastX = pad + ((data.length - 1) / Math.max(data.length - 1, 1)) * (width - pad * 2);\n const lastY = pad + (1 - (last - min) / range) * (height - pad * 2);\n\n return (\n <svg\n className={classNames('sparkline', styles.sparkline, className)}\n width=\"100%\"\n height={height}\n viewBox={`0 0 ${width} ${height}`}\n preserveAspectRatio=\"none\"\n aria-hidden\n >\n <polyline\n fill=\"none\"\n stroke={color}\n strokeWidth=\"1.25\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n points={points}\n opacity=\"0.9\"\n />\n <circle cx={lastX} cy={lastY} r=\"2.5\" fill={color} />\n </svg>\n );\n};\n\nexport default Sparkline;\n"],"names":["Sparkline","data","width","height","color","className","min","range","pad","points","v","i","x","y","last","lastX","lastY","jsxs","classNames","styles","jsx"],"mappings":";;;AAaA,MAAMA,IAAsC,CAAC;AAAA,EAC3C,MAAAC,IAAO,CAAA;AAAA,EACP,OAAAC,IAAQ;AAAA,EACR,QAAAC,IAAS;AAAA,EACT,OAAAC,IAAQ;AAAA,EACR,WAAAC;AACF,MAAM;AACJ,MAAI,CAACJ,EAAK,OAAQ,QAAO;AAEzB,QAAMK,IAAM,KAAK,IAAI,GAAGL,CAAI,GAEtBM,IADM,KAAK,IAAI,GAAGN,CAAI,IACRK,KAAO,GACrBE,IAAM,GAENC,IAASR,EACZ,IAAI,CAACS,GAAGC,MAAM;AACb,UAAMC,IAAIJ,IAAOG,IAAI,KAAK,IAAIV,EAAK,SAAS,GAAG,CAAC,KAAMC,IAAQM,IAAM,IAC9DK,IAAIL,KAAO,KAAKE,IAAIJ,KAAOC,MAAUJ,IAASK,IAAM;AAC1D,WAAO,GAAGI,CAAC,IAAIC,CAAC;AAAA,EAClB,CAAC,EACA,KAAK,GAAG,GAELC,IAAOb,EAAKA,EAAK,SAAS,CAAC,GAC3Bc,IAAQP,KAAQP,EAAK,SAAS,KAAK,KAAK,IAAIA,EAAK,SAAS,GAAG,CAAC,KAAMC,IAAQM,IAAM,IAClFQ,IAAQR,KAAO,KAAKM,IAAOR,KAAOC,MAAUJ,IAASK,IAAM;AAEjE,SACE,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAW,aAAaC,EAAO,WAAWd,CAAS;AAAA,MAC9D,OAAM;AAAA,MACN,QAAAF;AAAA,MACA,SAAS,OAAOD,CAAK,IAAIC,CAAM;AAAA,MAC/B,qBAAoB;AAAA,MACpB,eAAW;AAAA,MAEX,UAAA;AAAA,QAAA,gBAAAiB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,QAAQhB;AAAA,YACR,aAAY;AAAA,YACZ,eAAc;AAAA,YACd,gBAAe;AAAA,YACf,QAAAK;AAAA,YACA,SAAQ;AAAA,UAAA;AAAA,QAAA;AAAA,QAEV,gBAAAW,EAAC,YAAO,IAAIL,GAAO,IAAIC,GAAO,GAAE,OAAM,MAAMZ,EAAA,CAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGzD;"}
@@ -0,0 +1,8 @@
1
+ const s = "_sparkline_1cqvt_1", e = {
2
+ sparkline: s
3
+ };
4
+ export {
5
+ e as default,
6
+ s as sparkline
7
+ };
8
+ //# sourceMappingURL=style.module.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -0,0 +1,2 @@
1
+ export { default as Sparkline } from './Sparkline';
2
+ export type { SparklineProps } from './Sparkline';
@@ -13,3 +13,5 @@ export { default as CommonUpload } from './Upload';
13
13
  export type { CommonUploadProps, CommonUploadRef, UploadVariant } from './Upload';
14
14
  export * from './VirtualScrollbar';
15
15
  export * from './Icons';
16
+ export * from './Sparkline';
17
+ export * from './LlmFormattedText';
package/dist/index.d.ts CHANGED
@@ -20,6 +20,8 @@ export { default as CommonUpload } from './components/Upload';
20
20
  export type { CommonUploadProps, CommonUploadRef, UploadVariant } from './components/Upload';
21
21
  export * from './components/VirtualScrollbar';
22
22
  export * from './components/Icons';
23
+ export * from './components/Sparkline';
24
+ export * from './components/LlmFormattedText';
23
25
  export { default as AgentHubAccessGuard } from './components/AgentHub/AgentHubAccessGuard';
24
26
  export { default as AgentHubIndexRedirect } from './components/AgentHub/AgentHubIndexRedirect';
25
27
  export { default as AgentHubSessionAccessGuard } from './components/AgentHub/ChatSessionAccessGuard';
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ import { fetchWithTimeout as i, useFetchData as m } from "./hooks/useFetchData.j
4
4
  import { resolveMaybeFn as d, resolveVisible as u } from "./utils/resolveMaybeFn.js";
5
5
  import { formatFileSize as x } from "./utils/format.js";
6
6
  import { default as C } from "./components/Upload/index.js";
7
- import { ArrowLeft as h, ArrowLeftRight as S, BarChart3 as g, BookOpen as P, Bot as T, Check as L, ChevronDown as I, ChevronLeft as R, ChevronRight as A, ChevronUp as w, CircleAlert as b, CircleCheck as v, CircleHelp as M, CirclePlay as U, CircleX as y, ClipboardCheck as D, Clock as O, CloudDownload as k, CloudUpload as E, Code as H, Copy as N, Crown as G, Database as _, Download as z, Eye as B, File as V, FileArchive as q, FileImage as X, FileSpreadsheet as Y, FileText as W, Flag as j, Flame as J, Folder as K, FolderOpen as Q, Hash as Z, House as $, ICON_NAMES as ee, ICON_REGISTRY as re, Import as oe, Inbox as te, Info as ae, LayoutDashboard as le, LayoutGrid as se, Loader2 as fe, Lock as ie, LogOut as me, MessageCircle as pe, MessageSquare as de, PanelLeftClose as ue, PanelLeftOpen as ne, Pause as xe, Pencil as Fe, Plus as Ce, Presentation as ce, RefreshCw as he, RotateCw as Se, Send as ge, Settings as Pe, Shield as Te, ShieldCheck as Le, SlidersHorizontal as Ie, Square as Re, Star as Ae, ThumbsDown as we, ThumbsUp as be, Trash2 as ve, Trophy as Me, Undo2 as Ue, Upload as ye, User as De, UserPlus as Oe, UserRoundCog as ke, Users as Ee, X as He, createIcon as Ne } from "./components/Icons/index.js";
7
+ import { ArrowLeft as h, ArrowLeftRight as S, BarChart3 as T, BookOpen as g, Bot as P, Check as L, ChevronDown as I, ChevronLeft as R, ChevronRight as A, ChevronUp as w, CircleAlert as b, CircleCheck as v, CircleHelp as M, CirclePlay as U, CircleX as k, ClipboardCheck as y, Clock as D, CloudDownload as O, CloudUpload as H, Code as E, Copy as N, Crown as G, Database as _, Download as z, Eye as B, File as V, FileArchive as q, FileImage as X, FileSpreadsheet as Y, FileText as W, Flag as j, Flame as J, Folder as K, FolderOpen as Q, Hash as Z, House as $, ICON_NAMES as ee, ICON_REGISTRY as re, Import as oe, Inbox as te, Info as ae, LayoutDashboard as le, LayoutGrid as se, Loader2 as fe, Lock as ie, LogOut as me, MessageCircle as pe, MessageSquare as de, PanelLeftClose as ue, PanelLeftOpen as ne, Pause as xe, Pencil as Fe, Plus as Ce, Presentation as ce, RefreshCw as he, RotateCw as Se, Send as Te, Settings as ge, Shield as Pe, ShieldCheck as Le, SlidersHorizontal as Ie, Square as Re, Star as Ae, ThumbsDown as we, ThumbsUp as be, Trash2 as ve, Trophy as Me, Undo2 as Ue, Upload as ke, User as ye, UserPlus as De, UserRoundCog as Oe, Users as He, X as Ee, createIcon as Ne } from "./components/Icons/index.js";
8
8
  import { default as _e } from "./components/AgentHub/AgentHubAccessGuard.js";
9
9
  import { default as Be } from "./components/AgentHub/AgentHubIndexRedirect.js";
10
10
  import { default as qe } from "./components/AgentHub/ChatSessionAccessGuard.js";
@@ -22,30 +22,33 @@ import { default as ur } from "./components/Filter/FilterDateRange/index.js";
22
22
  import { default as xr } from "./components/Filter/FilterInput/index.js";
23
23
  import { default as Cr } from "./components/Filter/FilterNumberRange/index.js";
24
24
  import { default as hr } from "./components/Filter/FilterPanel/index.js";
25
- import { default as gr } from "./components/Filter/FilterPopover/index.js";
26
- import { default as Tr } from "./components/Filter/FilterSelect/index.js";
25
+ import { default as Tr } from "./components/Filter/FilterPopover/index.js";
26
+ import { default as Pr } from "./components/Filter/FilterSelect/index.js";
27
27
  import { default as Ir } from "./components/Filter/FilterTreeSelect/index.js";
28
28
  import { default as Ar } from "./components/Filter/FilterTrigger/index.js";
29
- import { default as br } from "./provider/MarsunCoreProvider.js";
30
- import { default as Mr } from "./components/Layout/PageHeaderLayout/index.js";
31
- import { default as yr } from "./components/Auth/PermissionGuard.js";
32
- import { default as Or } from "./components/Form/PersonOptionRow/index.js";
33
- import { default as Er } from "./components/Auth/ProtectedRoute.js";
34
- import { SEMANTIC_COLORS as Nr, default as Gr } from "./components/Tag/SemanticTag.js";
35
- import { default as zr } from "./components/Stat/StatCard/index.js";
36
- import { default as Vr } from "./components/Stat/StatCardList.js";
37
- import { default as Xr } from "./components/Stat/StatPendingBreakdown/index.js";
38
- import { default as Wr } from "./components/Form/StepForm.js";
39
- import { default as Jr } from "./components/Modal/StepModal/index.js";
40
- import { default as Qr } from "./components/Tag/Tags/index.js";
41
- import { default as $r } from "./components/TooltipInfo/TooltipInfo.js";
42
- import { default as ro } from "./components/VirtualScrollbar/VirtualScrollbar/index.js";
43
- import { FileItem as to } from "./components/File/FileItem/index.js";
44
- import { FilterProvider as lo, useFilterRegister as so, useFilterState as fo } from "./components/Filter/useFilterState.js";
45
- import { getFileExtension as mo, getFileIcon as po, getFileTypeName as uo, normalizeExtension as no, normalizeFileDisplayItem as xo, parseFileNameFromUrl as Fo } from "./components/File/fileDisplay.js";
46
- import { hasPermission as co } from "./components/Auth/hasPermission.js";
47
- import { resolveHidden as So } from "./components/Filter/types.js";
48
- import { useMarsunAuth as Po, useMarsunCore as To, useMarsunFetch as Lo } from "./provider/context.js";
29
+ import { default as br } from "./components/LlmFormattedText/LlmFormattedText/index.js";
30
+ import { default as Mr } from "./provider/MarsunCoreProvider.js";
31
+ import { default as kr } from "./components/Layout/PageHeaderLayout/index.js";
32
+ import { default as Dr } from "./components/Auth/PermissionGuard.js";
33
+ import { default as Hr } from "./components/Form/PersonOptionRow/index.js";
34
+ import { default as Nr } from "./components/Auth/ProtectedRoute.js";
35
+ import { SEMANTIC_COLORS as _r, default as zr } from "./components/Tag/SemanticTag.js";
36
+ import { default as Vr } from "./components/Sparkline/Sparkline/index.js";
37
+ import { default as Xr } from "./components/Stat/StatCard/index.js";
38
+ import { default as Wr } from "./components/Stat/StatCardList.js";
39
+ import { default as Jr } from "./components/Stat/StatPendingBreakdown/index.js";
40
+ import { default as Qr } from "./components/Form/StepForm.js";
41
+ import { default as $r } from "./components/Modal/StepModal/index.js";
42
+ import { default as ro } from "./components/Tag/Tags/index.js";
43
+ import { default as to } from "./components/TooltipInfo/TooltipInfo.js";
44
+ import { default as lo } from "./components/VirtualScrollbar/VirtualScrollbar/index.js";
45
+ import { FileItem as fo } from "./components/File/FileItem/index.js";
46
+ import { FilterProvider as mo, useFilterRegister as po, useFilterState as uo } from "./components/Filter/useFilterState.js";
47
+ import { formatLlmTextToHtml as xo, parseLlmText as Fo } from "./components/LlmFormattedText/parseLlmText.js";
48
+ import { getFileExtension as co, getFileIcon as ho, getFileTypeName as So, normalizeExtension as To, normalizeFileDisplayItem as go, parseFileNameFromUrl as Po } from "./components/File/fileDisplay.js";
49
+ import { hasPermission as Io } from "./components/Auth/hasPermission.js";
50
+ import { resolveHidden as Ao } from "./components/Filter/types.js";
51
+ import { useMarsunAuth as bo, useMarsunCore as vo, useMarsunFetch as Mo } from "./provider/context.js";
49
52
  export {
50
53
  _e as AgentHubAccessGuard,
51
54
  Be as AgentHubIndexRedirect,
@@ -53,9 +56,9 @@ export {
53
56
  Ye as AppTour,
54
57
  h as ArrowLeft,
55
58
  S as ArrowLeftRight,
56
- g as BarChart3,
57
- P as BookOpen,
58
- T as Bot,
59
+ T as BarChart3,
60
+ g as BookOpen,
61
+ P as Bot,
59
62
  L as Check,
60
63
  I as ChevronDown,
61
64
  R as ChevronLeft,
@@ -65,12 +68,12 @@ export {
65
68
  v as CircleCheck,
66
69
  M as CircleHelp,
67
70
  U as CirclePlay,
68
- y as CircleX,
69
- D as ClipboardCheck,
70
- O as Clock,
71
- k as CloudDownload,
72
- E as CloudUpload,
73
- H as Code,
71
+ k as CircleX,
72
+ y as ClipboardCheck,
73
+ D as Clock,
74
+ O as CloudDownload,
75
+ H as CloudUpload,
76
+ E as Code,
74
77
  je as CommonDescriptions,
75
78
  Ke as CommonFilter,
76
79
  C as CommonUpload,
@@ -85,7 +88,7 @@ export {
85
88
  V as File,
86
89
  q as FileArchive,
87
90
  X as FileImage,
88
- to as FileItemView,
91
+ fo as FileItemView,
89
92
  or as FileLink,
90
93
  ar as FilePreview,
91
94
  sr as FilePreviewLink,
@@ -97,9 +100,9 @@ export {
97
100
  xr as FilterInput,
98
101
  Cr as FilterNumberRange,
99
102
  hr as FilterPanel,
100
- gr as FilterPopover,
101
- lo as FilterProvider,
102
- Tr as FilterSelect,
103
+ Tr as FilterPopover,
104
+ mo as FilterProvider,
105
+ Pr as FilterSelect,
103
106
  Ir as FilterTreeSelect,
104
107
  Ar as FilterTrigger,
105
108
  j as Flag,
@@ -115,73 +118,77 @@ export {
115
118
  ae as Info,
116
119
  le as LayoutDashboard,
117
120
  se as LayoutGrid,
121
+ br as LlmFormattedText,
118
122
  fe as Loader2,
119
123
  ie as Lock,
120
124
  me as LogOut,
121
- br as MarsunCoreProvider,
125
+ Mr as MarsunCoreProvider,
122
126
  pe as MessageCircle,
123
127
  de as MessageSquare,
124
128
  s as PALETTE,
125
- Mr as PageHeaderLayout,
129
+ kr as PageHeaderLayout,
126
130
  ue as PanelLeftClose,
127
131
  ne as PanelLeftOpen,
128
132
  xe as Pause,
129
133
  Fe as Pencil,
130
- yr as PermissionGuard,
131
- Or as PersonOptionRow,
134
+ Dr as PermissionGuard,
135
+ Hr as PersonOptionRow,
132
136
  Ce as Plus,
133
137
  ce as Presentation,
134
- Er as ProtectedRoute,
138
+ Nr as ProtectedRoute,
135
139
  he as RefreshCw,
136
140
  Se as RotateCw,
137
- Nr as SEMANTIC_COLORS,
138
- Gr as SemanticTag,
139
- ge as Send,
140
- Pe as Settings,
141
- Te as Shield,
141
+ _r as SEMANTIC_COLORS,
142
+ zr as SemanticTag,
143
+ Te as Send,
144
+ ge as Settings,
145
+ Pe as Shield,
142
146
  Le as ShieldCheck,
143
147
  Ie as SlidersHorizontal,
148
+ Vr as Sparkline,
144
149
  Re as Square,
145
150
  Ae as Star,
146
- zr as StatCard,
147
- Vr as StatCardList,
148
- Xr as StatPendingBreakdown,
149
- Wr as StepForm,
150
- Jr as StepModal,
151
- Qr as Tags,
151
+ Xr as StatCard,
152
+ Wr as StatCardList,
153
+ Jr as StatPendingBreakdown,
154
+ Qr as StepForm,
155
+ $r as StepModal,
156
+ ro as Tags,
152
157
  we as ThumbsDown,
153
158
  be as ThumbsUp,
154
- $r as TooltipInfo,
159
+ to as TooltipInfo,
155
160
  ve as Trash2,
156
161
  Me as Trophy,
157
162
  Ue as Undo2,
158
- ye as Upload,
159
- De as User,
160
- Oe as UserPlus,
161
- ke as UserRoundCog,
162
- Ee as Users,
163
- ro as VirtualScrollbar,
164
- He as X,
163
+ ke as Upload,
164
+ ye as User,
165
+ De as UserPlus,
166
+ Oe as UserRoundCog,
167
+ He as Users,
168
+ lo as VirtualScrollbar,
169
+ Ee as X,
165
170
  o as applyThemeToCssVariables,
166
171
  Ne as createIcon,
167
172
  i as fetchWithTimeout,
168
173
  x as formatFileSize,
174
+ xo as formatLlmTextToHtml,
169
175
  t as generateTheme,
170
- mo as getFileExtension,
171
- po as getFileIcon,
172
- uo as getFileTypeName,
173
- co as hasPermission,
174
- no as normalizeExtension,
175
- xo as normalizeFileDisplayItem,
176
- Fo as parseFileNameFromUrl,
177
- So as resolveHidden,
176
+ co as getFileExtension,
177
+ ho as getFileIcon,
178
+ So as getFileTypeName,
179
+ Io as hasPermission,
180
+ To as normalizeExtension,
181
+ go as normalizeFileDisplayItem,
182
+ Po as parseFileNameFromUrl,
183
+ Fo as parseLlmText,
184
+ Ao as resolveHidden,
178
185
  d as resolveMaybeFn,
179
186
  u as resolveVisible,
180
187
  m as useFetchData,
181
- so as useFilterRegister,
182
- fo as useFilterState,
183
- Po as useMarsunAuth,
184
- To as useMarsunCore,
185
- Lo as useMarsunFetch
188
+ po as useFilterRegister,
189
+ uo as useFilterState,
190
+ bo as useMarsunAuth,
191
+ vo as useMarsunCore,
192
+ Mo as useMarsunFetch
186
193
  };
187
194
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- ._upload-root_xoraq_1{max-width:xl}._upload-container_xoraq_5{font-size:12px;color:var(--font-color-grey)}._upload-wrapper_xoraq_10{color:var(--primary-color);cursor:pointer}._upload-wrapper_xoraq_10:hover{text-decoration:underline}._upload-inner_xoraq_18{display:block}._upload-header_xoraq_22{font-size:var(--font-size-small);color:var(--font-color-grey)}._upload-body_xoraq_27{border-radius:8px;border-width:1px;border-style:solid;padding:16px}._upload-footer_xoraq_34{font-size:var(--font-size-small);font-weight:500;color:var(--font-color-grey)}._upload-row_xoraq_40{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:var(--font-size-small)}._upload-col_xoraq_47{display:flex;align-items:center;gap:8px;font-size:var(--font-size-small)}._upload-wrap_xoraq_10{display:block}._upload-panel_xoraq_58{font-size:12px}._upload-card_xoraq_62{padding:12px;font-size:var(--font-size-small)}._upload-item_xoraq_67{font-size:var(--font-size-small);margin-top:8px;display:block}._upload-link_xoraq_73{margin-top:12px}._upload-label_xoraq_77{display:flex;align-items:center;gap:8px;min-width:0}._upload-value_xoraq_84{color:var(--font-color-grey-1);flex-shrink:0}._upload-meta_xoraq_89{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._upload-icon_xoraq_95{margin:0!important;flex-shrink:0}._upload-title_xoraq_100{font-size:12px;margin-left:0!important;flex-shrink:0}._upload-desc_xoraq_106{flex-shrink:0}._upload-actions_xoraq_110{font-size:30px;margin-bottom:8px}._upload-toolbar_xoraq_115{color:var(--font-color-grey)}._upload-toolbar_xoraq_115:hover{border-color:var(--primary-color)}._upload-toolbar_xoraq_115:hover{color:var(--primary-color)}._upload-list_xoraq_125{margin-top:8px}._upload-file-row_xoraq_129{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-radius:4px;background-color:var(--bg-color-grey);border:1px solid var(--font-color-grey-4)}._upload-file-row-error_xoraq_140{border-color:#f53f3f59;color:var(--error-color)}._upload-drag-icon_xoraq_145{font-size:30px;margin-bottom:8px;color:var(--primary-color)}._app-tour-root_ybirw_1{font-size:12px;color:var(--font-color-grey-1)}._common-filter-root_kdoz3_1{background-color:var(--bg-color-white);margin-bottom:16px}._common-filter-container_kdoz3_6{display:flex;align-items:center;gap:12px}._common-filter-label_kdoz3_12{flex-shrink:0;font-size:var(--font-size-default);font-weight:500;color:#374151}._common-filter-content_kdoz3_19{display:flex;flex:1;align-items:flex-start;justify-content:space-between}._common-filter-items_kdoz3_26{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:8px}._common-filter-extra_kdoz3_34{flex-shrink:0;margin-left:16px}._common-filter-selected_kdoz3_39{display:flex;align-items:center;justify-content:space-between;padding-top:12px}._common-filter-selected-main_kdoz3_46{display:flex;align-items:baseline;gap:8px}._common-filter-selected-title_kdoz3_52{font-size:12px;font-weight:500;color:var(--font-color-grey)}._common-filter-selected-tags_kdoz3_58{flex:1}._common-filter-tag_kdoz3_62{display:flex;align-items:center;gap:4px}._common-filter-tag-label_kdoz3_68{font-size:12px}._common-filter-tag-close_kdoz3_72{font-size:12px;cursor:pointer;margin-left:2px;opacity:.6}._common-filter-tag-close_kdoz3_72:hover{opacity:1}._common-filter-clear-btn_kdoz3_82{padding:0!important;height:auto!important;font-size:12px}._file-link-inner_uetzp_1{flex-shrink:0}._file-link-row_uetzp_5{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-link-actions_uetzp_11{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease,background-color .2s ease}._file-link-actions_uetzp_11:hover{color:var(--primary-color)}._file-link-toolbar_uetzp_22{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-list_m0qyk_1{position:relative}._file-preview-empty_m0qyk_5{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-white)}._file-preview-loading_m0qyk_15{width:100%;padding-top:80px;padding-bottom:80px}._file-preview-content_m0qyk_21{padding:16px;font-size:var(--font-size-small);white-space:pre-wrap;overflow:auto;max-height:70vh;background-color:var(--bg-color-grey)}._file-preview-aside_m0qyk_30{padding:24px;overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-main_m0qyk_37{display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;max-height:70vh}._file-preview-section_m0qyk_46{max-width:100%;max-height:65vh;object-fit:contain}._file-preview-group_m0qyk_52{width:100%}._file-preview-cell_m0qyk_56{overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-overlay_m0qyk_62{position:relative;display:flex;align-items:center;justify-content:center}._file-preview-badge_m0qyk_69{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:48px;padding-bottom:48px;gap:16px}._file-preview-tag_m0qyk_79{position:relative;display:flex;align-items:center;justify-content:center;padding:16px}._file-preview-hint_m0qyk_87{max-width:100%;max-height:65vh}._file-preview-sider_m0qyk_92{font-size:48px}._file-preview-nav_m0qyk_96{text-align:center}._file-preview-menu_m0qyk_100{color:var(--font-color-grey);margin-bottom:4px}._file-preview-user-menu_m0qyk_105{font-size:12px;color:var(--font-color-grey-1)}._file-preview-avatar_m0qyk_110{display:flex;align-items:center;justify-content:center;padding:32px}._file-preview-upload_m0qyk_117{width:100%;max-width:1024px}._file-preview-filter_m0qyk_122{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--font-color-grey-4)}._file-preview_m0qyk_1{display:flex;flex-direction:column;width:100%}._file-preview-header_m0qyk_139{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;width:100%}._file-preview-info_m0qyk_148{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._file-preview-icon_m0qyk_156{display:inline-flex;flex-shrink:0}._file-preview-name_m0qyk_161{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}._file-preview-size_m0qyk_168{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-preview-body_m0qyk_174{width:100%}._file-preview-iframe_m0qyk_178{display:block;width:100%;height:70vh;border:none;background:var(--bg-color-grey)}._file-preview-media-wrap_m0qyk_186{display:flex;justify-content:center;width:100%}._file-preview-image_m0qyk_192{width:100%;max-height:70vh;object-fit:contain}._file-preview-video_m0qyk_198{width:100%;max-height:70vh;background:#000}._file-preview-audio-wrap_m0qyk_204{display:flex;align-items:center;justify-content:center;width:100%;padding:48px 16px}._file-preview-audio_m0qyk_204{width:100%}._file-preview-office-wrap_m0qyk_216{width:100%;height:70vh;min-height:480px}._file-preview-office-spin_m0qyk_222,._file-preview-office-spin_m0qyk_222 .ant-spin-container{width:100%;height:100%;min-height:inherit}._file-preview-office-inner_m0qyk_233{width:100%;height:100%;min-height:480px;overflow:auto}._file-preview-text_m0qyk_240{margin:0;padding:16px;width:100%;max-height:70vh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:var(--font-size-small);background:var(--bg-color-grey);box-sizing:border-box}._file-preview-table_m0qyk_253{font-weight:500}._file-preview-link_1q16r_1{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease}._file-preview-link_1q16r_1:hover{color:var(--primary-color)}._file-preview-link-wrap_1q16r_12{align-items:flex-start;max-width:100%}._file-preview-link-disabled_1q16r_17{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);color:var(--font-color-grey-1);cursor:not-allowed}._file-preview-link-inner_1q16r_26{flex-shrink:0}._file-preview-link-name_1q16r_30{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-link-name-wrap_1q16r_36{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-all;line-height:1.5}._file-preview-link-type_1q16r_44{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._tags-tag-list_d5l57_1{display:flex;align-items:center;gap:4px;flex-wrap:wrap}._tags-tag-list-nowrap_d5l57_8{flex-wrap:nowrap}._tags-tag-list-tooltip_d5l57_12{max-width:320px}._filter-panel-body_tjvgz_1{margin-bottom:12px}._filter-panel-actions_tjvgz_5{display:flex;justify-content:flex-end;gap:8px}._filter-trigger-root_115kh_1{display:inline-flex;align-items:center;gap:4px;cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px;transition:color .2s ease,background-color .2s ease}._filter-trigger-active_115kh_12{background-color:var(--primary-color);color:var(--bg-color-white)}._filter-trigger-inactive_115kh_17{color:#374151}._filter-trigger-inactive_115kh_17:hover{color:var(--primary-color);background-color:var(--primary-color-bg)}._filter-trigger-chevron_115kh_25{font-size:10px}._filter-date-range-quick-options_ctl7u_1{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px}._filter-date-range-quick-option_ctl7u_1{cursor:pointer;border-radius:4px;padding:4px 8px;font-size:var(--font-size-small)}._filter-date-range-quick-option_ctl7u_1:hover{background-color:var(--primary-color-bg)}._filter-date-range-quick-option-active_ctl7u_18{background-color:var(--primary-color);color:var(--bg-color-white);font-weight:500}._filter-date-range-picker_ctl7u_24{width:100%}._filter-number-range-inputs_y3pfu_1{display:flex;align-items:center;gap:8px}._filter-number-range-separator_y3pfu_7{color:var(--font-color-grey-1)}._filter-number-range-unit_y3pfu_11{font-size:var(--font-size-small);color:var(--font-color-grey)}._person-option-row-root_lf6i9_1{font-size:var(--font-size-small)}._person-option-row-container_lf6i9_5{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._person-option-row-wrapper_lf6i9_11{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--font-color-grey-1);font-size:12px}._person-option-row-inner_lf6i9_19{margin-left:auto;flex-shrink:0;color:var(--font-color-grey-1)}._person-option-row-inner_lf6i9_19:hover{color:var(--primary-color)}._person-option-row-person-row_lf6i9_28{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._filter-select-search_1esgk_1{margin-bottom:12px}._filter-select-options_1esgk_5{max-height:300px;overflow:auto}._filter-select-option_1esgk_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-select-option_1esgk_5:hover{background-color:var(--bg-color-grey)}._filter-select-option-selected_1esgk_23{color:var(--primary-color);font-weight:500}._filter-select-option-check_1esgk_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-select-empty_1esgk_34{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-select-selected-bar_1esgk_42{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-select-selected-label_1esgk_49{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-select-selected-tag_1esgk_55{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-select-selected-remove_1esgk_68{font-size:10px}._filter-tree-select-search_he1ck_1{margin-bottom:12px}._filter-tree-select-options_he1ck_5{max-height:300px;overflow:auto}._filter-tree-select-option_he1ck_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-tree-select-option_he1ck_5:hover{background-color:var(--bg-color-grey)}._filter-tree-select-option-selected_he1ck_23{color:var(--primary-color);font-weight:500}._filter-tree-select-option-check_he1ck_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-tree-select-expand-icon_he1ck_34{display:inline-flex;width:16px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;color:var(--font-color-grey-1)}._filter-tree-select-expand-placeholder_he1ck_44{display:inline-flex;width:16px;flex-shrink:0}._filter-tree-select-node-label_he1ck_50{flex:1}._filter-tree-select-empty_he1ck_54{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-tree-select-selected-bar_he1ck_62{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-tree-select-selected-label_he1ck_69{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-tree-select-selected-tag_he1ck_75{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-tree-select-selected-remove_he1ck_88{font-size:10px}._page-header-layout-root_13o9c_1{display:flex;align-items:center;justify-content:space-between}._page-header-layout-container_13o9c_7{display:flex;align-items:center}._page-header-layout-wrapper_13o9c_12{font-size:var(--font-size-18);font-weight:600}._page-header-layout-inner_13o9c_17{margin-bottom:16px;padding:8px 12px;background-color:var(--primary-color-bg);border:1px solid var(--primary-color-border);border-radius:4px;font-size:var(--font-size-small);color:var(--primary-color)}._stat-card-clickable_xovsh_1{cursor:pointer}._stat-card-clickable_xovsh_1 .ant-statistic-content,._stat-card-clickable_xovsh_1 .ant-statistic-content .ant-statistic-content-prefix{display:flex!important;align-items:center}._stat-pending-breakdown-root_85di3_1{font-size:12px;color:var(--font-color-grey-1);margin-bottom:8px}._stat-pending-breakdown-container_85di3_7{font-size:12px;font-weight:400;color:var(--font-color-grey-1);margin-top:4px;line-height:var(--line-height-default)}._stat-pending-breakdown-detail-divider_85di3_15{margin-top:12px;padding-top:12px;border-top:1px solid var(--font-color-grey-4)}._step-modal-root_1ccyj_1{display:flex;align-items:center;gap:8px}._step-modal-container_1ccyj_7{flex:1}._step-modal-wrapper_1ccyj_11{margin-bottom:24px}._virtual-scrollbar-root_hy6p8_1{position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:0;min-width:0}._virtual-scrollbar-viewport_hy6p8_14{flex:1 1 auto;width:100%;height:100%;min-height:0;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}._virtual-scrollbar-viewport_hy6p8_14::-webkit-scrollbar{display:none}._virtual-scrollbar-track_hy6p8_27{opacity:1;pointer-events:auto}._virtual-scrollbar-track-vertical_hy6p8_32{position:absolute;z-index:2;opacity:0;pointer-events:none;transition:opacity .2s ease;top:2px;right:2px;bottom:2px;width:6px}._virtual-scrollbar-track-horizontal_hy6p8_44{opacity:1;pointer-events:auto}._virtual-scrollbar-thumb_hy6p8_49{top:0;bottom:0;min-width:24px}._file-item-root_lmij6_1{transition:color .2s ease,background-color .2s ease}._file-item-root_lmij6_1:hover{background-color:var(--bg-color-grey)}._file-item-container_lmij6_8{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}._file-item-wrapper_lmij6_18{display:flex;gap:8px;min-width:0;flex:1}._file-item-inner_lmij6_25{flex-shrink:0}._file-item-header_lmij6_29{min-width:0;flex:1}._file-item-body_lmij6_34{display:flex;align-items:center;gap:8px}._file-item-footer_lmij6_40{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-small)}._file-item-row_lmij6_47{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-item-col_lmij6_53{margin-top:2px;gap:2px}._file-item-wrap_lmij6_18{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:8px}._file-item-panel_lmij6_66{display:flex;align-items:center}._file-item-action-group_lmij6_71{display:flex;align-items:center;gap:4px}._file-item-action-group-disabled_lmij6_77{opacity:.45;pointer-events:none}.x-spreadsheet{font-size:13px;line-height:normal;-webkit-user-select:none;user-select:none;-moz-user-select:none;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;box-sizing:content-box;background:#fff;-webkit-font-smoothing:antialiased}.x-spreadsheet textarea{font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif}.x-spreadsheet-sheet{position:relative;overflow:hidden}.x-spreadsheet-table{vertical-align:bottom}.x-spreadsheet-tooltip{font-family:inherit;position:absolute;padding:5px 10px;color:#fff;border-radius:1px;background:#000;font-size:12px;z-index:201}.x-spreadsheet-tooltip:before{pointer-events:none;position:absolute;left:calc(50% - 4px);top:-4px;content:"";width:8px;height:8px;background:inherit;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:1;box-shadow:1px 1px 3px -1px #0000004d}.x-spreadsheet-color-palette{padding:5px}.x-spreadsheet-color-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:2;background:#fff}.x-spreadsheet-color-palette table td{margin:0;cursor:pointer;border:1px solid transparent}.x-spreadsheet-color-palette table td:hover{border-color:#ddd}.x-spreadsheet-color-palette table td .x-spreadsheet-color-palette-cell{width:16px;height:16px}.x-spreadsheet-border-palette{padding:6px}.x-spreadsheet-border-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:0;background:#fff;table-layout:fixed}.x-spreadsheet-border-palette table td{margin:0}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left{border-right:1px solid #eee;padding-right:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell{width:30px;height:30px;cursor:pointer;text-align:center}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell:hover{background-color:#eee}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right{padding-left:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right .x-spreadsheet-line-type{position:relative;left:0;top:-3px}.x-spreadsheet-dropdown{position:relative}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-content{position:absolute;z-index:200;background:#fff;box-shadow:1px 2px 5px 2px #33333326}.x-spreadsheet-dropdown.bottom-left .x-spreadsheet-dropdown-content{top:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.bottom-right .x-spreadsheet-dropdown-content{top:calc(100% + 5px);right:0}.x-spreadsheet-dropdown.top-left .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.top-right .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);right:0}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-title{padding:0 5px;display:inline-block}.x-spreadsheet-resizer{position:absolute;z-index:11}.x-spreadsheet-resizer .x-spreadsheet-resizer-hover{background-color:#4b89ff40}.x-spreadsheet-resizer .x-spreadsheet-resizer-line{position:absolute}.x-spreadsheet-resizer.horizontal{cursor:row-resize}.x-spreadsheet-resizer.horizontal .x-spreadsheet-resizer-line{border-bottom:2px dashed #4b89ff;left:0;bottom:0}.x-spreadsheet-resizer.vertical{cursor:col-resize}.x-spreadsheet-resizer.vertical .x-spreadsheet-resizer-line{border-right:2px dashed #4b89ff;top:0;right:0}.x-spreadsheet-scrollbar{position:absolute;bottom:0;right:0;background-color:#f4f5f8;opacity:.9;z-index:12}.x-spreadsheet-scrollbar.horizontal{right:15px;overflow-x:scroll;overflow-y:hidden}.x-spreadsheet-scrollbar.horizontal>div{height:1px;background:#ddd}.x-spreadsheet-scrollbar.vertical{bottom:15px;overflow-x:hidden;overflow-y:scroll}.x-spreadsheet-scrollbar.vertical>div{width:1px;background:#ddd}.x-spreadsheet-overlayer{position:absolute;left:0;top:0;z-index:10}.x-spreadsheet-overlayer .x-spreadsheet-overlayer-content{position:absolute;overflow:hidden;pointer-events:none;width:100%;height:100%}.x-spreadsheet-editor,.x-spreadsheet-selector{box-sizing:content-box;position:absolute;overflow:hidden;pointer-events:none;top:0;left:0;width:100%;height:100%}.x-spreadsheet-selector .hide-input{position:absolute;z-index:0}.x-spreadsheet-selector .hide-input input{padding:0;width:0;border:none!important}.x-spreadsheet-selector .x-spreadsheet-selector-area{position:absolute;border:2px solid #4b89ff;background:#4b89ff1a;z-index:5}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard,.x-spreadsheet-selector .x-spreadsheet-selector-autofill{position:absolute;background:transparent;z-index:100}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard{border:2px dashed #4b89ff}.x-spreadsheet-selector .x-spreadsheet-selector-autofill{border:1px dashed rgba(0,0,0,.45)}.x-spreadsheet-selector .x-spreadsheet-selector-corner{pointer-events:auto;position:absolute;cursor:crosshair;font-size:0;height:5px;width:5px;right:-5px;bottom:-5px;border:2px solid #ffffff;background:#4b89ff}.x-spreadsheet-editor{z-index:20}.x-spreadsheet-editor .x-spreadsheet-editor-area{position:absolute;text-align:left;border:2px solid #4b89ff;line-height:0;z-index:100;pointer-events:auto}.x-spreadsheet-editor .x-spreadsheet-editor-area textarea{box-sizing:content-box;border:none;padding:0 3px;outline:none;resize:none;text-align:start;overflow-y:hidden;font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif;color:inherit;white-space:normal;word-wrap:break-word;line-height:22px;margin:0}.x-spreadsheet-editor .x-spreadsheet-editor-area .textline{overflow:hidden;visibility:hidden;position:fixed;top:0;left:0}.x-spreadsheet-item{-webkit-user-select:none;user-select:none;background:0;border:1px solid transparent;outline:none;height:26px;color:#000000e6;line-height:26px;list-style:none;padding:2px 10px;cursor:default;text-align:left;overflow:hidden}.x-spreadsheet-item.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-item:hover,.x-spreadsheet-item.active{background:#0000000d}.x-spreadsheet-item.divider{height:0;padding:0;margin:5px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1)}.x-spreadsheet-item .label{float:right;opacity:.65;font-size:1em}.x-spreadsheet-item.state,.x-spreadsheet-header.state{padding-left:35px!important;position:relative}.x-spreadsheet-item.state:before,.x-spreadsheet-header.state:before{content:"";position:absolute;width:10px;height:10px;left:12px;top:calc(50% - 5px);background:#00000014;border-radius:2px}.x-spreadsheet-item.state.checked:before,.x-spreadsheet-header.state.checked:before{background:#4b89ff}.x-spreadsheet-checkbox{position:relative;display:inline-block;backface-visibility:hidden;outline:0;vertical-align:baseline;font-style:normal;font-size:1rem;line-height:1em}.x-spreadsheet-checkbox>input{position:absolute;top:0;left:0;opacity:0!important;outline:0;z-index:-1}.x-spreadsheet-suggest,.x-spreadsheet-contextmenu,.x-spreadsheet-sort-filter{position:absolute;box-shadow:1px 2px 5px 2px #33333326;background:#fff;z-index:100;width:260px;pointer-events:auto;overflow:auto}.x-spreadsheet-suggest{width:200px}.x-spreadsheet-filter{border:1px solid #e9e9e9;font-size:12px;margin:10px}.x-spreadsheet-filter .x-spreadsheet-header{padding:.5em .75em;background:#f8f8f9;border-bottom:1px solid #e9e9e9;border-left:1px solid transparent}.x-spreadsheet-filter .x-spreadsheet-body{height:200px;overflow-y:auto}.x-spreadsheet-filter .x-spreadsheet-body .x-spreadsheet-item{height:20px;line-height:20px}.x-spreadsheet-sort-filter .x-spreadsheet-buttons{margin:10px}.x-spreadsheet-bottombar{height:40px;padding:0 30px;text-align:left;background:#f5f6f7;display:flex}.x-spreadsheet-bottombar{position:relative;border-top:1px solid #e0e2e4}.x-spreadsheet-bottombar .x-spreadsheet-menu>li{line-height:40px;height:40px;padding-top:0;padding-bottom:0;vertical-align:middle;border-right:1px solid #e8eaed}.x-spreadsheet-menu{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.x-spreadsheet-menu>li{float:left;line-height:1.25em;padding:.785em 1em;margin:0;vertical-align:middle;text-align:left;font-weight:400;color:#80868b;white-space:nowrap;cursor:pointer;transition:all .3s;font-weight:700}.x-spreadsheet-menu>li.active{background-color:#fff;color:#000000a6}.x-spreadsheet-menu>li .x-spreadsheet-dropdown{display:inline-block}.x-spreadsheet-print{position:absolute;left:0;top:0;z-index:100;width:100%;height:100%;display:flex;flex-direction:column}.x-spreadsheet-print-bar{background:#424242;height:60px;line-height:60px;padding:0 30px}.x-spreadsheet-print-bar .-title{color:#fff;font-weight:700;font-size:1.2em;float:left}.x-spreadsheet-print-bar .-right{float:right;margin-top:12px}.x-spreadsheet-print-content{display:flex;flex:auto;flex-direction:row;background:#d0d0d0;height:calc(100% - 60px)}.x-spreadsheet-print-content .-sider{flex:0 0 300px;width:300px;border-left:2px solid #ccc;background:#fff}.x-spreadsheet-print-content .-content{flex:auto;overflow-x:auto;overflow-y:scroll;height:100%}.x-spreadsheet-canvas-card-wraper{margin:40px 20px}.x-spreadsheet-canvas-card{background:#fff;margin:auto;page-break-before:auto;page-break-after:always;box-shadow:0 8px 10px 1px #00000024,0 3px 14px 3px #0000001f,0 4px 5px #0003}.x-spreadsheet-calendar{color:#000000a6;background:#fff;-webkit-user-select:none;user-select:none}.x-spreadsheet-calendar .calendar-header{font-weight:700;line-height:30px;text-align:center;width:100%;float:left;background:#f9fafb}.x-spreadsheet-calendar .calendar-header .calendar-header-left{padding-left:5px;float:left}.x-spreadsheet-calendar .calendar-header .calendar-header-right{float:right}.x-spreadsheet-calendar .calendar-header .calendar-header-right a{padding:3px 0;margin-right:2px;border-radius:2px}.x-spreadsheet-calendar .calendar-header .calendar-header-right a:hover{background:#00000014}.x-spreadsheet-calendar .calendar-body{border-collapse:collapse;border-spacing:0}.x-spreadsheet-calendar .calendar-body th,.x-spreadsheet-calendar .calendar-body td{width:14.28571429%;min-width:32px;text-align:center;font-weight:700;line-height:30px;padding:0}.x-spreadsheet-calendar .calendar-body td>.cell:hover{background:#ecf6fd}.x-spreadsheet-calendar .calendar-body td>.cell.active,.x-spreadsheet-calendar .calendar-body td>.cell.active:hover{background:#ecf6fd;color:#2185d0}.x-spreadsheet-calendar .calendar-body td>.cell.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-datepicker{box-shadow:2px 2px 5px #0003;position:absolute;left:0;top:calc(100% + 5px);z-index:10;width:auto}.x-spreadsheet-buttons{display:flex;justify-content:flex-end}.x-spreadsheet-buttons .x-spreadsheet-button{margin-left:8px}.x-spreadsheet-button{display:inline-block;border-radius:3px;line-height:1em;min-height:1em;white-space:nowrap;text-align:center;cursor:pointer;font-size:1em;font-weight:700;padding:.75em 1em;color:#0009;background:#e0e1e2;text-decoration:none;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;outline:none;vertical-align:baseline;zoom:1;-webkit-user-select:none;user-select:none;transition:all .1s linear}.x-spreadsheet-button.active,.x-spreadsheet-button:hover{background-color:#c0c1c2;color:#000c}.x-spreadsheet-button.primary{color:#fff;background-color:#2185d0}.x-spreadsheet-button.primary:hover,.x-spreadsheet-button.primary.active{color:#fff;background-color:#1678c2}.x-spreadsheet-form-input{font-size:1em;position:relative;font-weight:400;display:inline-flex;color:#000000de}.x-spreadsheet-form-input input{z-index:1;margin:0;max-width:100%;flex:1 0 auto;outline:0;-webkit-tap-highlight-color:rgba(255,255,255,0);text-align:left;line-height:30px;height:30px;padding:0 8px;background:#fff;border:1px solid #e9e9e9;border-radius:3px;transition:box-shadow .1s ease,border-color .1s ease;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-input input:focus{border-color:#4b89ff;box-shadow:inset 0 1px 2px #4b89ff33}.x-spreadsheet-form-select{position:relative;display:inline-block;background:#fff;border:1px solid #e9e9e9;border-radius:2px;cursor:pointer;color:#000000de;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-select .input-text{text-overflow:ellipsis;white-space:nowrap;min-width:60px;width:auto;height:30px;line-height:30px;padding:0 8px}.x-spreadsheet-form-fields{display:flex;flex-direction:row;flex-wrap:wrap}.x-spreadsheet-form-fields .x-spreadsheet-form-field{flex:0 1 auto}.x-spreadsheet-form-fields .x-spreadsheet-form-field .label{display:inline-block;margin:0 10px 0 0}.x-spreadsheet-form-field{display:block;vertical-align:middle;margin-left:10px;margin-bottom:10px}.x-spreadsheet-form-field:first-child{margin-left:0}.x-spreadsheet-form-field.error .x-spreadsheet-form-select,.x-spreadsheet-form-field.error input{border-color:#f04134}.x-spreadsheet-form-field .tip{color:#f04134;font-size:.9em}.x-spreadsheet-dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background-color:#0009;opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;transition:background-color .5s linear;-webkit-user-select:none;user-select:none;z-index:1000}.x-spreadsheet-dimmer.active{display:block;opacity:1}form fieldset{border:none}form fieldset label{display:block;margin-bottom:.5em;font-size:1em;color:#666}form fieldset select{font-size:1.1em;width:100%;background-color:#fff;border:none;border-bottom:2px solid #ddd;padding:.5em .85em;border-radius:2px}.x-spreadsheet-modal,.x-spreadsheet-toast{font-size:13px;position:fixed;z-index:1001;text-align:left;line-height:1.25em;min-width:360px;color:#000000de;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;border-radius:4px;border:1px solid rgba(0,0,0,.1);background-color:#fff;background-clip:padding-box;box-shadow:#0003 0 2px 8px}.x-spreadsheet-toast{background-color:#ffffffd9}.x-spreadsheet-modal-header,.x-spreadsheet-toast-header{font-weight:600;background-clip:padding-box;background-color:#ffffffd9;border-bottom:1px solid rgba(0,0,0,.05);border-radius:4px 4px 0 0}.x-spreadsheet-toast-header{color:#f2711c}.x-spreadsheet-modal-header{border-bottom:1px solid #e0e2e4;background:#00000014;font-size:1.0785em}.x-spreadsheet-modal-header,.x-spreadsheet-modal-content,.x-spreadsheet-toast-header,.x-spreadsheet-toast-content{padding:.75em 1em}.x-spreadsheet-menu li:first-child{display:none}.vue-office-excel{height:100%}
1
+ ._upload-root_xoraq_1{max-width:xl}._upload-container_xoraq_5{font-size:12px;color:var(--font-color-grey)}._upload-wrapper_xoraq_10{color:var(--primary-color);cursor:pointer}._upload-wrapper_xoraq_10:hover{text-decoration:underline}._upload-inner_xoraq_18{display:block}._upload-header_xoraq_22{font-size:var(--font-size-small);color:var(--font-color-grey)}._upload-body_xoraq_27{border-radius:8px;border-width:1px;border-style:solid;padding:16px}._upload-footer_xoraq_34{font-size:var(--font-size-small);font-weight:500;color:var(--font-color-grey)}._upload-row_xoraq_40{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:var(--font-size-small)}._upload-col_xoraq_47{display:flex;align-items:center;gap:8px;font-size:var(--font-size-small)}._upload-wrap_xoraq_10{display:block}._upload-panel_xoraq_58{font-size:12px}._upload-card_xoraq_62{padding:12px;font-size:var(--font-size-small)}._upload-item_xoraq_67{font-size:var(--font-size-small);margin-top:8px;display:block}._upload-link_xoraq_73{margin-top:12px}._upload-label_xoraq_77{display:flex;align-items:center;gap:8px;min-width:0}._upload-value_xoraq_84{color:var(--font-color-grey-1);flex-shrink:0}._upload-meta_xoraq_89{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._upload-icon_xoraq_95{margin:0!important;flex-shrink:0}._upload-title_xoraq_100{font-size:12px;margin-left:0!important;flex-shrink:0}._upload-desc_xoraq_106{flex-shrink:0}._upload-actions_xoraq_110{font-size:30px;margin-bottom:8px}._upload-toolbar_xoraq_115{color:var(--font-color-grey)}._upload-toolbar_xoraq_115:hover{border-color:var(--primary-color)}._upload-toolbar_xoraq_115:hover{color:var(--primary-color)}._upload-list_xoraq_125{margin-top:8px}._upload-file-row_xoraq_129{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-radius:4px;background-color:var(--bg-color-grey);border:1px solid var(--font-color-grey-4)}._upload-file-row-error_xoraq_140{border-color:#f53f3f59;color:var(--error-color)}._upload-drag-icon_xoraq_145{font-size:30px;margin-bottom:8px;color:var(--primary-color)}._app-tour-root_ybirw_1{font-size:12px;color:var(--font-color-grey-1)}._common-filter-root_kdoz3_1{background-color:var(--bg-color-white);margin-bottom:16px}._common-filter-container_kdoz3_6{display:flex;align-items:center;gap:12px}._common-filter-label_kdoz3_12{flex-shrink:0;font-size:var(--font-size-default);font-weight:500;color:#374151}._common-filter-content_kdoz3_19{display:flex;flex:1;align-items:flex-start;justify-content:space-between}._common-filter-items_kdoz3_26{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:8px}._common-filter-extra_kdoz3_34{flex-shrink:0;margin-left:16px}._common-filter-selected_kdoz3_39{display:flex;align-items:center;justify-content:space-between;padding-top:12px}._common-filter-selected-main_kdoz3_46{display:flex;align-items:baseline;gap:8px}._common-filter-selected-title_kdoz3_52{font-size:12px;font-weight:500;color:var(--font-color-grey)}._common-filter-selected-tags_kdoz3_58{flex:1}._common-filter-tag_kdoz3_62{display:flex;align-items:center;gap:4px}._common-filter-tag-label_kdoz3_68{font-size:12px}._common-filter-tag-close_kdoz3_72{font-size:12px;cursor:pointer;margin-left:2px;opacity:.6}._common-filter-tag-close_kdoz3_72:hover{opacity:1}._common-filter-clear-btn_kdoz3_82{padding:0!important;height:auto!important;font-size:12px}._file-link-inner_uetzp_1{flex-shrink:0}._file-link-row_uetzp_5{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-link-actions_uetzp_11{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease,background-color .2s ease}._file-link-actions_uetzp_11:hover{color:var(--primary-color)}._file-link-toolbar_uetzp_22{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-list_m0qyk_1{position:relative}._file-preview-empty_m0qyk_5{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-white)}._file-preview-loading_m0qyk_15{width:100%;padding-top:80px;padding-bottom:80px}._file-preview-content_m0qyk_21{padding:16px;font-size:var(--font-size-small);white-space:pre-wrap;overflow:auto;max-height:70vh;background-color:var(--bg-color-grey)}._file-preview-aside_m0qyk_30{padding:24px;overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-main_m0qyk_37{display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;max-height:70vh}._file-preview-section_m0qyk_46{max-width:100%;max-height:65vh;object-fit:contain}._file-preview-group_m0qyk_52{width:100%}._file-preview-cell_m0qyk_56{overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-overlay_m0qyk_62{position:relative;display:flex;align-items:center;justify-content:center}._file-preview-badge_m0qyk_69{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:48px;padding-bottom:48px;gap:16px}._file-preview-tag_m0qyk_79{position:relative;display:flex;align-items:center;justify-content:center;padding:16px}._file-preview-hint_m0qyk_87{max-width:100%;max-height:65vh}._file-preview-sider_m0qyk_92{font-size:48px}._file-preview-nav_m0qyk_96{text-align:center}._file-preview-menu_m0qyk_100{color:var(--font-color-grey);margin-bottom:4px}._file-preview-user-menu_m0qyk_105{font-size:12px;color:var(--font-color-grey-1)}._file-preview-avatar_m0qyk_110{display:flex;align-items:center;justify-content:center;padding:32px}._file-preview-upload_m0qyk_117{width:100%;max-width:1024px}._file-preview-filter_m0qyk_122{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--font-color-grey-4)}._file-preview_m0qyk_1{display:flex;flex-direction:column;width:100%}._file-preview-header_m0qyk_139{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;width:100%}._file-preview-info_m0qyk_148{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._file-preview-icon_m0qyk_156{display:inline-flex;flex-shrink:0}._file-preview-name_m0qyk_161{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}._file-preview-size_m0qyk_168{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-preview-body_m0qyk_174{width:100%}._file-preview-iframe_m0qyk_178{display:block;width:100%;height:70vh;border:none;background:var(--bg-color-grey)}._file-preview-media-wrap_m0qyk_186{display:flex;justify-content:center;width:100%}._file-preview-image_m0qyk_192{width:100%;max-height:70vh;object-fit:contain}._file-preview-video_m0qyk_198{width:100%;max-height:70vh;background:#000}._file-preview-audio-wrap_m0qyk_204{display:flex;align-items:center;justify-content:center;width:100%;padding:48px 16px}._file-preview-audio_m0qyk_204{width:100%}._file-preview-office-wrap_m0qyk_216{width:100%;height:70vh;min-height:480px}._file-preview-office-spin_m0qyk_222,._file-preview-office-spin_m0qyk_222 .ant-spin-container{width:100%;height:100%;min-height:inherit}._file-preview-office-inner_m0qyk_233{width:100%;height:100%;min-height:480px;overflow:auto}._file-preview-text_m0qyk_240{margin:0;padding:16px;width:100%;max-height:70vh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:var(--font-size-small);background:var(--bg-color-grey);box-sizing:border-box}._file-preview-table_m0qyk_253{font-weight:500}._file-preview-link_1q16r_1{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease}._file-preview-link_1q16r_1:hover{color:var(--primary-color)}._file-preview-link-wrap_1q16r_12{align-items:flex-start;max-width:100%}._file-preview-link-disabled_1q16r_17{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);color:var(--font-color-grey-1);cursor:not-allowed}._file-preview-link-inner_1q16r_26{flex-shrink:0}._file-preview-link-name_1q16r_30{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-link-name-wrap_1q16r_36{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-all;line-height:1.5}._file-preview-link-type_1q16r_44{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._tags-tag-list_d5l57_1{display:flex;align-items:center;gap:4px;flex-wrap:wrap}._tags-tag-list-nowrap_d5l57_8{flex-wrap:nowrap}._tags-tag-list-tooltip_d5l57_12{max-width:320px}._filter-panel-body_tjvgz_1{margin-bottom:12px}._filter-panel-actions_tjvgz_5{display:flex;justify-content:flex-end;gap:8px}._filter-trigger-root_115kh_1{display:inline-flex;align-items:center;gap:4px;cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px;transition:color .2s ease,background-color .2s ease}._filter-trigger-active_115kh_12{background-color:var(--primary-color);color:var(--bg-color-white)}._filter-trigger-inactive_115kh_17{color:#374151}._filter-trigger-inactive_115kh_17:hover{color:var(--primary-color);background-color:var(--primary-color-bg)}._filter-trigger-chevron_115kh_25{font-size:10px}._filter-date-range-quick-options_ctl7u_1{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px}._filter-date-range-quick-option_ctl7u_1{cursor:pointer;border-radius:4px;padding:4px 8px;font-size:var(--font-size-small)}._filter-date-range-quick-option_ctl7u_1:hover{background-color:var(--primary-color-bg)}._filter-date-range-quick-option-active_ctl7u_18{background-color:var(--primary-color);color:var(--bg-color-white);font-weight:500}._filter-date-range-picker_ctl7u_24{width:100%}._filter-number-range-inputs_y3pfu_1{display:flex;align-items:center;gap:8px}._filter-number-range-separator_y3pfu_7{color:var(--font-color-grey-1)}._filter-number-range-unit_y3pfu_11{font-size:var(--font-size-small);color:var(--font-color-grey)}._person-option-row-root_lf6i9_1{font-size:var(--font-size-small)}._person-option-row-container_lf6i9_5{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._person-option-row-wrapper_lf6i9_11{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--font-color-grey-1);font-size:12px}._person-option-row-inner_lf6i9_19{margin-left:auto;flex-shrink:0;color:var(--font-color-grey-1)}._person-option-row-inner_lf6i9_19:hover{color:var(--primary-color)}._person-option-row-person-row_lf6i9_28{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._filter-select-search_1esgk_1{margin-bottom:12px}._filter-select-options_1esgk_5{max-height:300px;overflow:auto}._filter-select-option_1esgk_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-select-option_1esgk_5:hover{background-color:var(--bg-color-grey)}._filter-select-option-selected_1esgk_23{color:var(--primary-color);font-weight:500}._filter-select-option-check_1esgk_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-select-empty_1esgk_34{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-select-selected-bar_1esgk_42{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-select-selected-label_1esgk_49{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-select-selected-tag_1esgk_55{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-select-selected-remove_1esgk_68{font-size:10px}._filter-tree-select-search_he1ck_1{margin-bottom:12px}._filter-tree-select-options_he1ck_5{max-height:300px;overflow:auto}._filter-tree-select-option_he1ck_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-tree-select-option_he1ck_5:hover{background-color:var(--bg-color-grey)}._filter-tree-select-option-selected_he1ck_23{color:var(--primary-color);font-weight:500}._filter-tree-select-option-check_he1ck_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-tree-select-expand-icon_he1ck_34{display:inline-flex;width:16px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;color:var(--font-color-grey-1)}._filter-tree-select-expand-placeholder_he1ck_44{display:inline-flex;width:16px;flex-shrink:0}._filter-tree-select-node-label_he1ck_50{flex:1}._filter-tree-select-empty_he1ck_54{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-tree-select-selected-bar_he1ck_62{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-tree-select-selected-label_he1ck_69{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-tree-select-selected-tag_he1ck_75{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-tree-select-selected-remove_he1ck_88{font-size:10px}._llm-formatted-text_1mo0r_1{font-size:13px;line-height:1.6;color:var(--color-text, #0f172a)}._is-loading_1mo0r_7{display:flex;align-items:center;gap:8px;color:var(--color-text-muted, #94a3b8)}._ft-spinner_1mo0r_14{width:14px;height:14px;border:2px solid #cbd5e1;border-top-color:var(--primary-color, #1677ff);border-radius:50%;animation:_llm-ft-spin_1mo0r_1 .8s linear infinite}@keyframes _llm-ft-spin_1mo0r_1{to{transform:rotate(360deg)}}._ft-summary_1mo0r_28{margin:0 0 8px;font-weight:500}._ft-section_1mo0r_33{margin-top:10px}._ft-section-title_1mo0r_37{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:600}._ft-section-icon_1mo0r_46{color:var(--primary-color, #1677ff)}._ft-list_1mo0r_50{margin:0;padding-left:0;list-style:none}._ft-list_1mo0r_50 li{display:flex;gap:8px;margin-bottom:4px}._ft-num_1mo0r_62{flex-shrink:0;width:18px;color:var(--color-text-muted, #94a3b8);font-size:12px}._ft-paragraph_1mo0r_69{margin:0}._page-header-layout-root_13o9c_1{display:flex;align-items:center;justify-content:space-between}._page-header-layout-container_13o9c_7{display:flex;align-items:center}._page-header-layout-wrapper_13o9c_12{font-size:var(--font-size-18);font-weight:600}._page-header-layout-inner_13o9c_17{margin-bottom:16px;padding:8px 12px;background-color:var(--primary-color-bg);border:1px solid var(--primary-color-border);border-radius:4px;font-size:var(--font-size-small);color:var(--primary-color)}._sparkline_1cqvt_1{display:block}._stat-card-clickable_xovsh_1{cursor:pointer}._stat-card-clickable_xovsh_1 .ant-statistic-content,._stat-card-clickable_xovsh_1 .ant-statistic-content .ant-statistic-content-prefix{display:flex!important;align-items:center}._stat-pending-breakdown-root_85di3_1{font-size:12px;color:var(--font-color-grey-1);margin-bottom:8px}._stat-pending-breakdown-container_85di3_7{font-size:12px;font-weight:400;color:var(--font-color-grey-1);margin-top:4px;line-height:var(--line-height-default)}._stat-pending-breakdown-detail-divider_85di3_15{margin-top:12px;padding-top:12px;border-top:1px solid var(--font-color-grey-4)}._step-modal-root_1ccyj_1{display:flex;align-items:center;gap:8px}._step-modal-container_1ccyj_7{flex:1}._step-modal-wrapper_1ccyj_11{margin-bottom:24px}._virtual-scrollbar-root_hy6p8_1{position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:0;min-width:0}._virtual-scrollbar-viewport_hy6p8_14{flex:1 1 auto;width:100%;height:100%;min-height:0;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}._virtual-scrollbar-viewport_hy6p8_14::-webkit-scrollbar{display:none}._virtual-scrollbar-track_hy6p8_27{opacity:1;pointer-events:auto}._virtual-scrollbar-track-vertical_hy6p8_32{position:absolute;z-index:2;opacity:0;pointer-events:none;transition:opacity .2s ease;top:2px;right:2px;bottom:2px;width:6px}._virtual-scrollbar-track-horizontal_hy6p8_44{opacity:1;pointer-events:auto}._virtual-scrollbar-thumb_hy6p8_49{top:0;bottom:0;min-width:24px}._file-item-root_lmij6_1{transition:color .2s ease,background-color .2s ease}._file-item-root_lmij6_1:hover{background-color:var(--bg-color-grey)}._file-item-container_lmij6_8{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}._file-item-wrapper_lmij6_18{display:flex;gap:8px;min-width:0;flex:1}._file-item-inner_lmij6_25{flex-shrink:0}._file-item-header_lmij6_29{min-width:0;flex:1}._file-item-body_lmij6_34{display:flex;align-items:center;gap:8px}._file-item-footer_lmij6_40{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-small)}._file-item-row_lmij6_47{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-item-col_lmij6_53{margin-top:2px;gap:2px}._file-item-wrap_lmij6_18{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:8px}._file-item-panel_lmij6_66{display:flex;align-items:center}._file-item-action-group_lmij6_71{display:flex;align-items:center;gap:4px}._file-item-action-group-disabled_lmij6_77{opacity:.45;pointer-events:none}.x-spreadsheet{font-size:13px;line-height:normal;-webkit-user-select:none;user-select:none;-moz-user-select:none;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;box-sizing:content-box;background:#fff;-webkit-font-smoothing:antialiased}.x-spreadsheet textarea{font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif}.x-spreadsheet-sheet{position:relative;overflow:hidden}.x-spreadsheet-table{vertical-align:bottom}.x-spreadsheet-tooltip{font-family:inherit;position:absolute;padding:5px 10px;color:#fff;border-radius:1px;background:#000;font-size:12px;z-index:201}.x-spreadsheet-tooltip:before{pointer-events:none;position:absolute;left:calc(50% - 4px);top:-4px;content:"";width:8px;height:8px;background:inherit;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:1;box-shadow:1px 1px 3px -1px #0000004d}.x-spreadsheet-color-palette{padding:5px}.x-spreadsheet-color-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:2;background:#fff}.x-spreadsheet-color-palette table td{margin:0;cursor:pointer;border:1px solid transparent}.x-spreadsheet-color-palette table td:hover{border-color:#ddd}.x-spreadsheet-color-palette table td .x-spreadsheet-color-palette-cell{width:16px;height:16px}.x-spreadsheet-border-palette{padding:6px}.x-spreadsheet-border-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:0;background:#fff;table-layout:fixed}.x-spreadsheet-border-palette table td{margin:0}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left{border-right:1px solid #eee;padding-right:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell{width:30px;height:30px;cursor:pointer;text-align:center}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell:hover{background-color:#eee}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right{padding-left:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right .x-spreadsheet-line-type{position:relative;left:0;top:-3px}.x-spreadsheet-dropdown{position:relative}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-content{position:absolute;z-index:200;background:#fff;box-shadow:1px 2px 5px 2px #33333326}.x-spreadsheet-dropdown.bottom-left .x-spreadsheet-dropdown-content{top:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.bottom-right .x-spreadsheet-dropdown-content{top:calc(100% + 5px);right:0}.x-spreadsheet-dropdown.top-left .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.top-right .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);right:0}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-title{padding:0 5px;display:inline-block}.x-spreadsheet-resizer{position:absolute;z-index:11}.x-spreadsheet-resizer .x-spreadsheet-resizer-hover{background-color:#4b89ff40}.x-spreadsheet-resizer .x-spreadsheet-resizer-line{position:absolute}.x-spreadsheet-resizer.horizontal{cursor:row-resize}.x-spreadsheet-resizer.horizontal .x-spreadsheet-resizer-line{border-bottom:2px dashed #4b89ff;left:0;bottom:0}.x-spreadsheet-resizer.vertical{cursor:col-resize}.x-spreadsheet-resizer.vertical .x-spreadsheet-resizer-line{border-right:2px dashed #4b89ff;top:0;right:0}.x-spreadsheet-scrollbar{position:absolute;bottom:0;right:0;background-color:#f4f5f8;opacity:.9;z-index:12}.x-spreadsheet-scrollbar.horizontal{right:15px;overflow-x:scroll;overflow-y:hidden}.x-spreadsheet-scrollbar.horizontal>div{height:1px;background:#ddd}.x-spreadsheet-scrollbar.vertical{bottom:15px;overflow-x:hidden;overflow-y:scroll}.x-spreadsheet-scrollbar.vertical>div{width:1px;background:#ddd}.x-spreadsheet-overlayer{position:absolute;left:0;top:0;z-index:10}.x-spreadsheet-overlayer .x-spreadsheet-overlayer-content{position:absolute;overflow:hidden;pointer-events:none;width:100%;height:100%}.x-spreadsheet-editor,.x-spreadsheet-selector{box-sizing:content-box;position:absolute;overflow:hidden;pointer-events:none;top:0;left:0;width:100%;height:100%}.x-spreadsheet-selector .hide-input{position:absolute;z-index:0}.x-spreadsheet-selector .hide-input input{padding:0;width:0;border:none!important}.x-spreadsheet-selector .x-spreadsheet-selector-area{position:absolute;border:2px solid #4b89ff;background:#4b89ff1a;z-index:5}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard,.x-spreadsheet-selector .x-spreadsheet-selector-autofill{position:absolute;background:transparent;z-index:100}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard{border:2px dashed #4b89ff}.x-spreadsheet-selector .x-spreadsheet-selector-autofill{border:1px dashed rgba(0,0,0,.45)}.x-spreadsheet-selector .x-spreadsheet-selector-corner{pointer-events:auto;position:absolute;cursor:crosshair;font-size:0;height:5px;width:5px;right:-5px;bottom:-5px;border:2px solid #ffffff;background:#4b89ff}.x-spreadsheet-editor{z-index:20}.x-spreadsheet-editor .x-spreadsheet-editor-area{position:absolute;text-align:left;border:2px solid #4b89ff;line-height:0;z-index:100;pointer-events:auto}.x-spreadsheet-editor .x-spreadsheet-editor-area textarea{box-sizing:content-box;border:none;padding:0 3px;outline:none;resize:none;text-align:start;overflow-y:hidden;font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif;color:inherit;white-space:normal;word-wrap:break-word;line-height:22px;margin:0}.x-spreadsheet-editor .x-spreadsheet-editor-area .textline{overflow:hidden;visibility:hidden;position:fixed;top:0;left:0}.x-spreadsheet-item{-webkit-user-select:none;user-select:none;background:0;border:1px solid transparent;outline:none;height:26px;color:#000000e6;line-height:26px;list-style:none;padding:2px 10px;cursor:default;text-align:left;overflow:hidden}.x-spreadsheet-item.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-item:hover,.x-spreadsheet-item.active{background:#0000000d}.x-spreadsheet-item.divider{height:0;padding:0;margin:5px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1)}.x-spreadsheet-item .label{float:right;opacity:.65;font-size:1em}.x-spreadsheet-item.state,.x-spreadsheet-header.state{padding-left:35px!important;position:relative}.x-spreadsheet-item.state:before,.x-spreadsheet-header.state:before{content:"";position:absolute;width:10px;height:10px;left:12px;top:calc(50% - 5px);background:#00000014;border-radius:2px}.x-spreadsheet-item.state.checked:before,.x-spreadsheet-header.state.checked:before{background:#4b89ff}.x-spreadsheet-checkbox{position:relative;display:inline-block;backface-visibility:hidden;outline:0;vertical-align:baseline;font-style:normal;font-size:1rem;line-height:1em}.x-spreadsheet-checkbox>input{position:absolute;top:0;left:0;opacity:0!important;outline:0;z-index:-1}.x-spreadsheet-suggest,.x-spreadsheet-contextmenu,.x-spreadsheet-sort-filter{position:absolute;box-shadow:1px 2px 5px 2px #33333326;background:#fff;z-index:100;width:260px;pointer-events:auto;overflow:auto}.x-spreadsheet-suggest{width:200px}.x-spreadsheet-filter{border:1px solid #e9e9e9;font-size:12px;margin:10px}.x-spreadsheet-filter .x-spreadsheet-header{padding:.5em .75em;background:#f8f8f9;border-bottom:1px solid #e9e9e9;border-left:1px solid transparent}.x-spreadsheet-filter .x-spreadsheet-body{height:200px;overflow-y:auto}.x-spreadsheet-filter .x-spreadsheet-body .x-spreadsheet-item{height:20px;line-height:20px}.x-spreadsheet-sort-filter .x-spreadsheet-buttons{margin:10px}.x-spreadsheet-bottombar{height:40px;padding:0 30px;text-align:left;background:#f5f6f7;display:flex}.x-spreadsheet-bottombar{position:relative;border-top:1px solid #e0e2e4}.x-spreadsheet-bottombar .x-spreadsheet-menu>li{line-height:40px;height:40px;padding-top:0;padding-bottom:0;vertical-align:middle;border-right:1px solid #e8eaed}.x-spreadsheet-menu{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.x-spreadsheet-menu>li{float:left;line-height:1.25em;padding:.785em 1em;margin:0;vertical-align:middle;text-align:left;font-weight:400;color:#80868b;white-space:nowrap;cursor:pointer;transition:all .3s;font-weight:700}.x-spreadsheet-menu>li.active{background-color:#fff;color:#000000a6}.x-spreadsheet-menu>li .x-spreadsheet-dropdown{display:inline-block}.x-spreadsheet-print{position:absolute;left:0;top:0;z-index:100;width:100%;height:100%;display:flex;flex-direction:column}.x-spreadsheet-print-bar{background:#424242;height:60px;line-height:60px;padding:0 30px}.x-spreadsheet-print-bar .-title{color:#fff;font-weight:700;font-size:1.2em;float:left}.x-spreadsheet-print-bar .-right{float:right;margin-top:12px}.x-spreadsheet-print-content{display:flex;flex:auto;flex-direction:row;background:#d0d0d0;height:calc(100% - 60px)}.x-spreadsheet-print-content .-sider{flex:0 0 300px;width:300px;border-left:2px solid #ccc;background:#fff}.x-spreadsheet-print-content .-content{flex:auto;overflow-x:auto;overflow-y:scroll;height:100%}.x-spreadsheet-canvas-card-wraper{margin:40px 20px}.x-spreadsheet-canvas-card{background:#fff;margin:auto;page-break-before:auto;page-break-after:always;box-shadow:0 8px 10px 1px #00000024,0 3px 14px 3px #0000001f,0 4px 5px #0003}.x-spreadsheet-calendar{color:#000000a6;background:#fff;-webkit-user-select:none;user-select:none}.x-spreadsheet-calendar .calendar-header{font-weight:700;line-height:30px;text-align:center;width:100%;float:left;background:#f9fafb}.x-spreadsheet-calendar .calendar-header .calendar-header-left{padding-left:5px;float:left}.x-spreadsheet-calendar .calendar-header .calendar-header-right{float:right}.x-spreadsheet-calendar .calendar-header .calendar-header-right a{padding:3px 0;margin-right:2px;border-radius:2px}.x-spreadsheet-calendar .calendar-header .calendar-header-right a:hover{background:#00000014}.x-spreadsheet-calendar .calendar-body{border-collapse:collapse;border-spacing:0}.x-spreadsheet-calendar .calendar-body th,.x-spreadsheet-calendar .calendar-body td{width:14.28571429%;min-width:32px;text-align:center;font-weight:700;line-height:30px;padding:0}.x-spreadsheet-calendar .calendar-body td>.cell:hover{background:#ecf6fd}.x-spreadsheet-calendar .calendar-body td>.cell.active,.x-spreadsheet-calendar .calendar-body td>.cell.active:hover{background:#ecf6fd;color:#2185d0}.x-spreadsheet-calendar .calendar-body td>.cell.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-datepicker{box-shadow:2px 2px 5px #0003;position:absolute;left:0;top:calc(100% + 5px);z-index:10;width:auto}.x-spreadsheet-buttons{display:flex;justify-content:flex-end}.x-spreadsheet-buttons .x-spreadsheet-button{margin-left:8px}.x-spreadsheet-button{display:inline-block;border-radius:3px;line-height:1em;min-height:1em;white-space:nowrap;text-align:center;cursor:pointer;font-size:1em;font-weight:700;padding:.75em 1em;color:#0009;background:#e0e1e2;text-decoration:none;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;outline:none;vertical-align:baseline;zoom:1;-webkit-user-select:none;user-select:none;transition:all .1s linear}.x-spreadsheet-button.active,.x-spreadsheet-button:hover{background-color:#c0c1c2;color:#000c}.x-spreadsheet-button.primary{color:#fff;background-color:#2185d0}.x-spreadsheet-button.primary:hover,.x-spreadsheet-button.primary.active{color:#fff;background-color:#1678c2}.x-spreadsheet-form-input{font-size:1em;position:relative;font-weight:400;display:inline-flex;color:#000000de}.x-spreadsheet-form-input input{z-index:1;margin:0;max-width:100%;flex:1 0 auto;outline:0;-webkit-tap-highlight-color:rgba(255,255,255,0);text-align:left;line-height:30px;height:30px;padding:0 8px;background:#fff;border:1px solid #e9e9e9;border-radius:3px;transition:box-shadow .1s ease,border-color .1s ease;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-input input:focus{border-color:#4b89ff;box-shadow:inset 0 1px 2px #4b89ff33}.x-spreadsheet-form-select{position:relative;display:inline-block;background:#fff;border:1px solid #e9e9e9;border-radius:2px;cursor:pointer;color:#000000de;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-select .input-text{text-overflow:ellipsis;white-space:nowrap;min-width:60px;width:auto;height:30px;line-height:30px;padding:0 8px}.x-spreadsheet-form-fields{display:flex;flex-direction:row;flex-wrap:wrap}.x-spreadsheet-form-fields .x-spreadsheet-form-field{flex:0 1 auto}.x-spreadsheet-form-fields .x-spreadsheet-form-field .label{display:inline-block;margin:0 10px 0 0}.x-spreadsheet-form-field{display:block;vertical-align:middle;margin-left:10px;margin-bottom:10px}.x-spreadsheet-form-field:first-child{margin-left:0}.x-spreadsheet-form-field.error .x-spreadsheet-form-select,.x-spreadsheet-form-field.error input{border-color:#f04134}.x-spreadsheet-form-field .tip{color:#f04134;font-size:.9em}.x-spreadsheet-dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background-color:#0009;opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;transition:background-color .5s linear;-webkit-user-select:none;user-select:none;z-index:1000}.x-spreadsheet-dimmer.active{display:block;opacity:1}form fieldset{border:none}form fieldset label{display:block;margin-bottom:.5em;font-size:1em;color:#666}form fieldset select{font-size:1.1em;width:100%;background-color:#fff;border:none;border-bottom:2px solid #ddd;padding:.5em .85em;border-radius:2px}.x-spreadsheet-modal,.x-spreadsheet-toast{font-size:13px;position:fixed;z-index:1001;text-align:left;line-height:1.25em;min-width:360px;color:#000000de;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;border-radius:4px;border:1px solid rgba(0,0,0,.1);background-color:#fff;background-clip:padding-box;box-shadow:#0003 0 2px 8px}.x-spreadsheet-toast{background-color:#ffffffd9}.x-spreadsheet-modal-header,.x-spreadsheet-toast-header{font-weight:600;background-clip:padding-box;background-color:#ffffffd9;border-bottom:1px solid rgba(0,0,0,.05);border-radius:4px 4px 0 0}.x-spreadsheet-toast-header{color:#f2711c}.x-spreadsheet-modal-header{border-bottom:1px solid #e0e2e4;background:#00000014;font-size:1.0785em}.x-spreadsheet-modal-header,.x-spreadsheet-modal-content,.x-spreadsheet-toast-header,.x-spreadsheet-toast-content{padding:.75em 1em}.x-spreadsheet-menu li:first-child{display:none}.vue-office-excel{height:100%}
@@ -1 +1 @@
1
- ._upload-root_xoraq_1{max-width:xl}._upload-container_xoraq_5{font-size:12px;color:var(--font-color-grey)}._upload-wrapper_xoraq_10{color:var(--primary-color);cursor:pointer}._upload-wrapper_xoraq_10:hover{text-decoration:underline}._upload-inner_xoraq_18{display:block}._upload-header_xoraq_22{font-size:var(--font-size-small);color:var(--font-color-grey)}._upload-body_xoraq_27{border-radius:8px;border-width:1px;border-style:solid;padding:16px}._upload-footer_xoraq_34{font-size:var(--font-size-small);font-weight:500;color:var(--font-color-grey)}._upload-row_xoraq_40{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:var(--font-size-small)}._upload-col_xoraq_47{display:flex;align-items:center;gap:8px;font-size:var(--font-size-small)}._upload-wrap_xoraq_10{display:block}._upload-panel_xoraq_58{font-size:12px}._upload-card_xoraq_62{padding:12px;font-size:var(--font-size-small)}._upload-item_xoraq_67{font-size:var(--font-size-small);margin-top:8px;display:block}._upload-link_xoraq_73{margin-top:12px}._upload-label_xoraq_77{display:flex;align-items:center;gap:8px;min-width:0}._upload-value_xoraq_84{color:var(--font-color-grey-1);flex-shrink:0}._upload-meta_xoraq_89{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._upload-icon_xoraq_95{margin:0!important;flex-shrink:0}._upload-title_xoraq_100{font-size:12px;margin-left:0!important;flex-shrink:0}._upload-desc_xoraq_106{flex-shrink:0}._upload-actions_xoraq_110{font-size:30px;margin-bottom:8px}._upload-toolbar_xoraq_115{color:var(--font-color-grey)}._upload-toolbar_xoraq_115:hover{border-color:var(--primary-color)}._upload-toolbar_xoraq_115:hover{color:var(--primary-color)}._upload-list_xoraq_125{margin-top:8px}._upload-file-row_xoraq_129{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-radius:4px;background-color:var(--bg-color-grey);border:1px solid var(--font-color-grey-4)}._upload-file-row-error_xoraq_140{border-color:#f53f3f59;color:var(--error-color)}._upload-drag-icon_xoraq_145{font-size:30px;margin-bottom:8px;color:var(--primary-color)}._app-tour-root_ybirw_1{font-size:12px;color:var(--font-color-grey-1)}._common-filter-root_kdoz3_1{background-color:var(--bg-color-white);margin-bottom:16px}._common-filter-container_kdoz3_6{display:flex;align-items:center;gap:12px}._common-filter-label_kdoz3_12{flex-shrink:0;font-size:var(--font-size-default);font-weight:500;color:#374151}._common-filter-content_kdoz3_19{display:flex;flex:1;align-items:flex-start;justify-content:space-between}._common-filter-items_kdoz3_26{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:8px}._common-filter-extra_kdoz3_34{flex-shrink:0;margin-left:16px}._common-filter-selected_kdoz3_39{display:flex;align-items:center;justify-content:space-between;padding-top:12px}._common-filter-selected-main_kdoz3_46{display:flex;align-items:baseline;gap:8px}._common-filter-selected-title_kdoz3_52{font-size:12px;font-weight:500;color:var(--font-color-grey)}._common-filter-selected-tags_kdoz3_58{flex:1}._common-filter-tag_kdoz3_62{display:flex;align-items:center;gap:4px}._common-filter-tag-label_kdoz3_68{font-size:12px}._common-filter-tag-close_kdoz3_72{font-size:12px;cursor:pointer;margin-left:2px;opacity:.6}._common-filter-tag-close_kdoz3_72:hover{opacity:1}._common-filter-clear-btn_kdoz3_82{padding:0!important;height:auto!important;font-size:12px}._file-link-inner_uetzp_1{flex-shrink:0}._file-link-row_uetzp_5{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-link-actions_uetzp_11{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease,background-color .2s ease}._file-link-actions_uetzp_11:hover{color:var(--primary-color)}._file-link-toolbar_uetzp_22{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-list_m0qyk_1{position:relative}._file-preview-empty_m0qyk_5{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-white)}._file-preview-loading_m0qyk_15{width:100%;padding-top:80px;padding-bottom:80px}._file-preview-content_m0qyk_21{padding:16px;font-size:var(--font-size-small);white-space:pre-wrap;overflow:auto;max-height:70vh;background-color:var(--bg-color-grey)}._file-preview-aside_m0qyk_30{padding:24px;overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-main_m0qyk_37{display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;max-height:70vh}._file-preview-section_m0qyk_46{max-width:100%;max-height:65vh;object-fit:contain}._file-preview-group_m0qyk_52{width:100%}._file-preview-cell_m0qyk_56{overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-overlay_m0qyk_62{position:relative;display:flex;align-items:center;justify-content:center}._file-preview-badge_m0qyk_69{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:48px;padding-bottom:48px;gap:16px}._file-preview-tag_m0qyk_79{position:relative;display:flex;align-items:center;justify-content:center;padding:16px}._file-preview-hint_m0qyk_87{max-width:100%;max-height:65vh}._file-preview-sider_m0qyk_92{font-size:48px}._file-preview-nav_m0qyk_96{text-align:center}._file-preview-menu_m0qyk_100{color:var(--font-color-grey);margin-bottom:4px}._file-preview-user-menu_m0qyk_105{font-size:12px;color:var(--font-color-grey-1)}._file-preview-avatar_m0qyk_110{display:flex;align-items:center;justify-content:center;padding:32px}._file-preview-upload_m0qyk_117{width:100%;max-width:1024px}._file-preview-filter_m0qyk_122{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--font-color-grey-4)}._file-preview_m0qyk_1{display:flex;flex-direction:column;width:100%}._file-preview-header_m0qyk_139{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;width:100%}._file-preview-info_m0qyk_148{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._file-preview-icon_m0qyk_156{display:inline-flex;flex-shrink:0}._file-preview-name_m0qyk_161{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}._file-preview-size_m0qyk_168{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-preview-body_m0qyk_174{width:100%}._file-preview-iframe_m0qyk_178{display:block;width:100%;height:70vh;border:none;background:var(--bg-color-grey)}._file-preview-media-wrap_m0qyk_186{display:flex;justify-content:center;width:100%}._file-preview-image_m0qyk_192{width:100%;max-height:70vh;object-fit:contain}._file-preview-video_m0qyk_198{width:100%;max-height:70vh;background:#000}._file-preview-audio-wrap_m0qyk_204{display:flex;align-items:center;justify-content:center;width:100%;padding:48px 16px}._file-preview-audio_m0qyk_204{width:100%}._file-preview-office-wrap_m0qyk_216{width:100%;height:70vh;min-height:480px}._file-preview-office-spin_m0qyk_222,._file-preview-office-spin_m0qyk_222 .ant-spin-container{width:100%;height:100%;min-height:inherit}._file-preview-office-inner_m0qyk_233{width:100%;height:100%;min-height:480px;overflow:auto}._file-preview-text_m0qyk_240{margin:0;padding:16px;width:100%;max-height:70vh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:var(--font-size-small);background:var(--bg-color-grey);box-sizing:border-box}._file-preview-table_m0qyk_253{font-weight:500}._file-preview-link_1q16r_1{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease}._file-preview-link_1q16r_1:hover{color:var(--primary-color)}._file-preview-link-wrap_1q16r_12{align-items:flex-start;max-width:100%}._file-preview-link-disabled_1q16r_17{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);color:var(--font-color-grey-1);cursor:not-allowed}._file-preview-link-inner_1q16r_26{flex-shrink:0}._file-preview-link-name_1q16r_30{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-link-name-wrap_1q16r_36{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-all;line-height:1.5}._file-preview-link-type_1q16r_44{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._tags-tag-list_d5l57_1{display:flex;align-items:center;gap:4px;flex-wrap:wrap}._tags-tag-list-nowrap_d5l57_8{flex-wrap:nowrap}._tags-tag-list-tooltip_d5l57_12{max-width:320px}._filter-panel-body_tjvgz_1{margin-bottom:12px}._filter-panel-actions_tjvgz_5{display:flex;justify-content:flex-end;gap:8px}._filter-trigger-root_115kh_1{display:inline-flex;align-items:center;gap:4px;cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px;transition:color .2s ease,background-color .2s ease}._filter-trigger-active_115kh_12{background-color:var(--primary-color);color:var(--bg-color-white)}._filter-trigger-inactive_115kh_17{color:#374151}._filter-trigger-inactive_115kh_17:hover{color:var(--primary-color);background-color:var(--primary-color-bg)}._filter-trigger-chevron_115kh_25{font-size:10px}._filter-date-range-quick-options_ctl7u_1{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px}._filter-date-range-quick-option_ctl7u_1{cursor:pointer;border-radius:4px;padding:4px 8px;font-size:var(--font-size-small)}._filter-date-range-quick-option_ctl7u_1:hover{background-color:var(--primary-color-bg)}._filter-date-range-quick-option-active_ctl7u_18{background-color:var(--primary-color);color:var(--bg-color-white);font-weight:500}._filter-date-range-picker_ctl7u_24{width:100%}._filter-number-range-inputs_y3pfu_1{display:flex;align-items:center;gap:8px}._filter-number-range-separator_y3pfu_7{color:var(--font-color-grey-1)}._filter-number-range-unit_y3pfu_11{font-size:var(--font-size-small);color:var(--font-color-grey)}._person-option-row-root_lf6i9_1{font-size:var(--font-size-small)}._person-option-row-container_lf6i9_5{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._person-option-row-wrapper_lf6i9_11{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--font-color-grey-1);font-size:12px}._person-option-row-inner_lf6i9_19{margin-left:auto;flex-shrink:0;color:var(--font-color-grey-1)}._person-option-row-inner_lf6i9_19:hover{color:var(--primary-color)}._person-option-row-person-row_lf6i9_28{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._filter-select-search_1esgk_1{margin-bottom:12px}._filter-select-options_1esgk_5{max-height:300px;overflow:auto}._filter-select-option_1esgk_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-select-option_1esgk_5:hover{background-color:var(--bg-color-grey)}._filter-select-option-selected_1esgk_23{color:var(--primary-color);font-weight:500}._filter-select-option-check_1esgk_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-select-empty_1esgk_34{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-select-selected-bar_1esgk_42{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-select-selected-label_1esgk_49{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-select-selected-tag_1esgk_55{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-select-selected-remove_1esgk_68{font-size:10px}._filter-tree-select-search_he1ck_1{margin-bottom:12px}._filter-tree-select-options_he1ck_5{max-height:300px;overflow:auto}._filter-tree-select-option_he1ck_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-tree-select-option_he1ck_5:hover{background-color:var(--bg-color-grey)}._filter-tree-select-option-selected_he1ck_23{color:var(--primary-color);font-weight:500}._filter-tree-select-option-check_he1ck_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-tree-select-expand-icon_he1ck_34{display:inline-flex;width:16px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;color:var(--font-color-grey-1)}._filter-tree-select-expand-placeholder_he1ck_44{display:inline-flex;width:16px;flex-shrink:0}._filter-tree-select-node-label_he1ck_50{flex:1}._filter-tree-select-empty_he1ck_54{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-tree-select-selected-bar_he1ck_62{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-tree-select-selected-label_he1ck_69{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-tree-select-selected-tag_he1ck_75{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-tree-select-selected-remove_he1ck_88{font-size:10px}._page-header-layout-root_13o9c_1{display:flex;align-items:center;justify-content:space-between}._page-header-layout-container_13o9c_7{display:flex;align-items:center}._page-header-layout-wrapper_13o9c_12{font-size:var(--font-size-18);font-weight:600}._page-header-layout-inner_13o9c_17{margin-bottom:16px;padding:8px 12px;background-color:var(--primary-color-bg);border:1px solid var(--primary-color-border);border-radius:4px;font-size:var(--font-size-small);color:var(--primary-color)}._stat-card-clickable_xovsh_1{cursor:pointer}._stat-card-clickable_xovsh_1 .ant-statistic-content,._stat-card-clickable_xovsh_1 .ant-statistic-content .ant-statistic-content-prefix{display:flex!important;align-items:center}._stat-pending-breakdown-root_85di3_1{font-size:12px;color:var(--font-color-grey-1);margin-bottom:8px}._stat-pending-breakdown-container_85di3_7{font-size:12px;font-weight:400;color:var(--font-color-grey-1);margin-top:4px;line-height:var(--line-height-default)}._stat-pending-breakdown-detail-divider_85di3_15{margin-top:12px;padding-top:12px;border-top:1px solid var(--font-color-grey-4)}._step-modal-root_1ccyj_1{display:flex;align-items:center;gap:8px}._step-modal-container_1ccyj_7{flex:1}._step-modal-wrapper_1ccyj_11{margin-bottom:24px}._virtual-scrollbar-root_hy6p8_1{position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:0;min-width:0}._virtual-scrollbar-viewport_hy6p8_14{flex:1 1 auto;width:100%;height:100%;min-height:0;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}._virtual-scrollbar-viewport_hy6p8_14::-webkit-scrollbar{display:none}._virtual-scrollbar-track_hy6p8_27{opacity:1;pointer-events:auto}._virtual-scrollbar-track-vertical_hy6p8_32{position:absolute;z-index:2;opacity:0;pointer-events:none;transition:opacity .2s ease;top:2px;right:2px;bottom:2px;width:6px}._virtual-scrollbar-track-horizontal_hy6p8_44{opacity:1;pointer-events:auto}._virtual-scrollbar-thumb_hy6p8_49{top:0;bottom:0;min-width:24px}._file-item-root_lmij6_1{transition:color .2s ease,background-color .2s ease}._file-item-root_lmij6_1:hover{background-color:var(--bg-color-grey)}._file-item-container_lmij6_8{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}._file-item-wrapper_lmij6_18{display:flex;gap:8px;min-width:0;flex:1}._file-item-inner_lmij6_25{flex-shrink:0}._file-item-header_lmij6_29{min-width:0;flex:1}._file-item-body_lmij6_34{display:flex;align-items:center;gap:8px}._file-item-footer_lmij6_40{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-small)}._file-item-row_lmij6_47{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-item-col_lmij6_53{margin-top:2px;gap:2px}._file-item-wrap_lmij6_18{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:8px}._file-item-panel_lmij6_66{display:flex;align-items:center}._file-item-action-group_lmij6_71{display:flex;align-items:center;gap:4px}._file-item-action-group-disabled_lmij6_77{opacity:.45;pointer-events:none}.x-spreadsheet{font-size:13px;line-height:normal;-webkit-user-select:none;user-select:none;-moz-user-select:none;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;box-sizing:content-box;background:#fff;-webkit-font-smoothing:antialiased}.x-spreadsheet textarea{font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif}.x-spreadsheet-sheet{position:relative;overflow:hidden}.x-spreadsheet-table{vertical-align:bottom}.x-spreadsheet-tooltip{font-family:inherit;position:absolute;padding:5px 10px;color:#fff;border-radius:1px;background:#000;font-size:12px;z-index:201}.x-spreadsheet-tooltip:before{pointer-events:none;position:absolute;left:calc(50% - 4px);top:-4px;content:"";width:8px;height:8px;background:inherit;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:1;box-shadow:1px 1px 3px -1px #0000004d}.x-spreadsheet-color-palette{padding:5px}.x-spreadsheet-color-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:2;background:#fff}.x-spreadsheet-color-palette table td{margin:0;cursor:pointer;border:1px solid transparent}.x-spreadsheet-color-palette table td:hover{border-color:#ddd}.x-spreadsheet-color-palette table td .x-spreadsheet-color-palette-cell{width:16px;height:16px}.x-spreadsheet-border-palette{padding:6px}.x-spreadsheet-border-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:0;background:#fff;table-layout:fixed}.x-spreadsheet-border-palette table td{margin:0}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left{border-right:1px solid #eee;padding-right:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell{width:30px;height:30px;cursor:pointer;text-align:center}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell:hover{background-color:#eee}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right{padding-left:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right .x-spreadsheet-line-type{position:relative;left:0;top:-3px}.x-spreadsheet-dropdown{position:relative}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-content{position:absolute;z-index:200;background:#fff;box-shadow:1px 2px 5px 2px #33333326}.x-spreadsheet-dropdown.bottom-left .x-spreadsheet-dropdown-content{top:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.bottom-right .x-spreadsheet-dropdown-content{top:calc(100% + 5px);right:0}.x-spreadsheet-dropdown.top-left .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.top-right .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);right:0}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-title{padding:0 5px;display:inline-block}.x-spreadsheet-resizer{position:absolute;z-index:11}.x-spreadsheet-resizer .x-spreadsheet-resizer-hover{background-color:#4b89ff40}.x-spreadsheet-resizer .x-spreadsheet-resizer-line{position:absolute}.x-spreadsheet-resizer.horizontal{cursor:row-resize}.x-spreadsheet-resizer.horizontal .x-spreadsheet-resizer-line{border-bottom:2px dashed #4b89ff;left:0;bottom:0}.x-spreadsheet-resizer.vertical{cursor:col-resize}.x-spreadsheet-resizer.vertical .x-spreadsheet-resizer-line{border-right:2px dashed #4b89ff;top:0;right:0}.x-spreadsheet-scrollbar{position:absolute;bottom:0;right:0;background-color:#f4f5f8;opacity:.9;z-index:12}.x-spreadsheet-scrollbar.horizontal{right:15px;overflow-x:scroll;overflow-y:hidden}.x-spreadsheet-scrollbar.horizontal>div{height:1px;background:#ddd}.x-spreadsheet-scrollbar.vertical{bottom:15px;overflow-x:hidden;overflow-y:scroll}.x-spreadsheet-scrollbar.vertical>div{width:1px;background:#ddd}.x-spreadsheet-overlayer{position:absolute;left:0;top:0;z-index:10}.x-spreadsheet-overlayer .x-spreadsheet-overlayer-content{position:absolute;overflow:hidden;pointer-events:none;width:100%;height:100%}.x-spreadsheet-editor,.x-spreadsheet-selector{box-sizing:content-box;position:absolute;overflow:hidden;pointer-events:none;top:0;left:0;width:100%;height:100%}.x-spreadsheet-selector .hide-input{position:absolute;z-index:0}.x-spreadsheet-selector .hide-input input{padding:0;width:0;border:none!important}.x-spreadsheet-selector .x-spreadsheet-selector-area{position:absolute;border:2px solid #4b89ff;background:#4b89ff1a;z-index:5}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard,.x-spreadsheet-selector .x-spreadsheet-selector-autofill{position:absolute;background:transparent;z-index:100}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard{border:2px dashed #4b89ff}.x-spreadsheet-selector .x-spreadsheet-selector-autofill{border:1px dashed rgba(0,0,0,.45)}.x-spreadsheet-selector .x-spreadsheet-selector-corner{pointer-events:auto;position:absolute;cursor:crosshair;font-size:0;height:5px;width:5px;right:-5px;bottom:-5px;border:2px solid #ffffff;background:#4b89ff}.x-spreadsheet-editor{z-index:20}.x-spreadsheet-editor .x-spreadsheet-editor-area{position:absolute;text-align:left;border:2px solid #4b89ff;line-height:0;z-index:100;pointer-events:auto}.x-spreadsheet-editor .x-spreadsheet-editor-area textarea{box-sizing:content-box;border:none;padding:0 3px;outline:none;resize:none;text-align:start;overflow-y:hidden;font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif;color:inherit;white-space:normal;word-wrap:break-word;line-height:22px;margin:0}.x-spreadsheet-editor .x-spreadsheet-editor-area .textline{overflow:hidden;visibility:hidden;position:fixed;top:0;left:0}.x-spreadsheet-item{-webkit-user-select:none;user-select:none;background:0;border:1px solid transparent;outline:none;height:26px;color:#000000e6;line-height:26px;list-style:none;padding:2px 10px;cursor:default;text-align:left;overflow:hidden}.x-spreadsheet-item.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-item:hover,.x-spreadsheet-item.active{background:#0000000d}.x-spreadsheet-item.divider{height:0;padding:0;margin:5px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1)}.x-spreadsheet-item .label{float:right;opacity:.65;font-size:1em}.x-spreadsheet-item.state,.x-spreadsheet-header.state{padding-left:35px!important;position:relative}.x-spreadsheet-item.state:before,.x-spreadsheet-header.state:before{content:"";position:absolute;width:10px;height:10px;left:12px;top:calc(50% - 5px);background:#00000014;border-radius:2px}.x-spreadsheet-item.state.checked:before,.x-spreadsheet-header.state.checked:before{background:#4b89ff}.x-spreadsheet-checkbox{position:relative;display:inline-block;backface-visibility:hidden;outline:0;vertical-align:baseline;font-style:normal;font-size:1rem;line-height:1em}.x-spreadsheet-checkbox>input{position:absolute;top:0;left:0;opacity:0!important;outline:0;z-index:-1}.x-spreadsheet-suggest,.x-spreadsheet-contextmenu,.x-spreadsheet-sort-filter{position:absolute;box-shadow:1px 2px 5px 2px #33333326;background:#fff;z-index:100;width:260px;pointer-events:auto;overflow:auto}.x-spreadsheet-suggest{width:200px}.x-spreadsheet-filter{border:1px solid #e9e9e9;font-size:12px;margin:10px}.x-spreadsheet-filter .x-spreadsheet-header{padding:.5em .75em;background:#f8f8f9;border-bottom:1px solid #e9e9e9;border-left:1px solid transparent}.x-spreadsheet-filter .x-spreadsheet-body{height:200px;overflow-y:auto}.x-spreadsheet-filter .x-spreadsheet-body .x-spreadsheet-item{height:20px;line-height:20px}.x-spreadsheet-sort-filter .x-spreadsheet-buttons{margin:10px}.x-spreadsheet-bottombar{height:40px;padding:0 30px;text-align:left;background:#f5f6f7;display:flex}.x-spreadsheet-bottombar{position:relative;border-top:1px solid #e0e2e4}.x-spreadsheet-bottombar .x-spreadsheet-menu>li{line-height:40px;height:40px;padding-top:0;padding-bottom:0;vertical-align:middle;border-right:1px solid #e8eaed}.x-spreadsheet-menu{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.x-spreadsheet-menu>li{float:left;line-height:1.25em;padding:.785em 1em;margin:0;vertical-align:middle;text-align:left;font-weight:400;color:#80868b;white-space:nowrap;cursor:pointer;transition:all .3s;font-weight:700}.x-spreadsheet-menu>li.active{background-color:#fff;color:#000000a6}.x-spreadsheet-menu>li .x-spreadsheet-dropdown{display:inline-block}.x-spreadsheet-print{position:absolute;left:0;top:0;z-index:100;width:100%;height:100%;display:flex;flex-direction:column}.x-spreadsheet-print-bar{background:#424242;height:60px;line-height:60px;padding:0 30px}.x-spreadsheet-print-bar .-title{color:#fff;font-weight:700;font-size:1.2em;float:left}.x-spreadsheet-print-bar .-right{float:right;margin-top:12px}.x-spreadsheet-print-content{display:flex;flex:auto;flex-direction:row;background:#d0d0d0;height:calc(100% - 60px)}.x-spreadsheet-print-content .-sider{flex:0 0 300px;width:300px;border-left:2px solid #ccc;background:#fff}.x-spreadsheet-print-content .-content{flex:auto;overflow-x:auto;overflow-y:scroll;height:100%}.x-spreadsheet-canvas-card-wraper{margin:40px 20px}.x-spreadsheet-canvas-card{background:#fff;margin:auto;page-break-before:auto;page-break-after:always;box-shadow:0 8px 10px 1px #00000024,0 3px 14px 3px #0000001f,0 4px 5px #0003}.x-spreadsheet-calendar{color:#000000a6;background:#fff;-webkit-user-select:none;user-select:none}.x-spreadsheet-calendar .calendar-header{font-weight:700;line-height:30px;text-align:center;width:100%;float:left;background:#f9fafb}.x-spreadsheet-calendar .calendar-header .calendar-header-left{padding-left:5px;float:left}.x-spreadsheet-calendar .calendar-header .calendar-header-right{float:right}.x-spreadsheet-calendar .calendar-header .calendar-header-right a{padding:3px 0;margin-right:2px;border-radius:2px}.x-spreadsheet-calendar .calendar-header .calendar-header-right a:hover{background:#00000014}.x-spreadsheet-calendar .calendar-body{border-collapse:collapse;border-spacing:0}.x-spreadsheet-calendar .calendar-body th,.x-spreadsheet-calendar .calendar-body td{width:14.28571429%;min-width:32px;text-align:center;font-weight:700;line-height:30px;padding:0}.x-spreadsheet-calendar .calendar-body td>.cell:hover{background:#ecf6fd}.x-spreadsheet-calendar .calendar-body td>.cell.active,.x-spreadsheet-calendar .calendar-body td>.cell.active:hover{background:#ecf6fd;color:#2185d0}.x-spreadsheet-calendar .calendar-body td>.cell.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-datepicker{box-shadow:2px 2px 5px #0003;position:absolute;left:0;top:calc(100% + 5px);z-index:10;width:auto}.x-spreadsheet-buttons{display:flex;justify-content:flex-end}.x-spreadsheet-buttons .x-spreadsheet-button{margin-left:8px}.x-spreadsheet-button{display:inline-block;border-radius:3px;line-height:1em;min-height:1em;white-space:nowrap;text-align:center;cursor:pointer;font-size:1em;font-weight:700;padding:.75em 1em;color:#0009;background:#e0e1e2;text-decoration:none;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;outline:none;vertical-align:baseline;zoom:1;-webkit-user-select:none;user-select:none;transition:all .1s linear}.x-spreadsheet-button.active,.x-spreadsheet-button:hover{background-color:#c0c1c2;color:#000c}.x-spreadsheet-button.primary{color:#fff;background-color:#2185d0}.x-spreadsheet-button.primary:hover,.x-spreadsheet-button.primary.active{color:#fff;background-color:#1678c2}.x-spreadsheet-form-input{font-size:1em;position:relative;font-weight:400;display:inline-flex;color:#000000de}.x-spreadsheet-form-input input{z-index:1;margin:0;max-width:100%;flex:1 0 auto;outline:0;-webkit-tap-highlight-color:rgba(255,255,255,0);text-align:left;line-height:30px;height:30px;padding:0 8px;background:#fff;border:1px solid #e9e9e9;border-radius:3px;transition:box-shadow .1s ease,border-color .1s ease;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-input input:focus{border-color:#4b89ff;box-shadow:inset 0 1px 2px #4b89ff33}.x-spreadsheet-form-select{position:relative;display:inline-block;background:#fff;border:1px solid #e9e9e9;border-radius:2px;cursor:pointer;color:#000000de;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-select .input-text{text-overflow:ellipsis;white-space:nowrap;min-width:60px;width:auto;height:30px;line-height:30px;padding:0 8px}.x-spreadsheet-form-fields{display:flex;flex-direction:row;flex-wrap:wrap}.x-spreadsheet-form-fields .x-spreadsheet-form-field{flex:0 1 auto}.x-spreadsheet-form-fields .x-spreadsheet-form-field .label{display:inline-block;margin:0 10px 0 0}.x-spreadsheet-form-field{display:block;vertical-align:middle;margin-left:10px;margin-bottom:10px}.x-spreadsheet-form-field:first-child{margin-left:0}.x-spreadsheet-form-field.error .x-spreadsheet-form-select,.x-spreadsheet-form-field.error input{border-color:#f04134}.x-spreadsheet-form-field .tip{color:#f04134;font-size:.9em}.x-spreadsheet-dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background-color:#0009;opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;transition:background-color .5s linear;-webkit-user-select:none;user-select:none;z-index:1000}.x-spreadsheet-dimmer.active{display:block;opacity:1}form fieldset{border:none}form fieldset label{display:block;margin-bottom:.5em;font-size:1em;color:#666}form fieldset select{font-size:1.1em;width:100%;background-color:#fff;border:none;border-bottom:2px solid #ddd;padding:.5em .85em;border-radius:2px}.x-spreadsheet-modal,.x-spreadsheet-toast{font-size:13px;position:fixed;z-index:1001;text-align:left;line-height:1.25em;min-width:360px;color:#000000de;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;border-radius:4px;border:1px solid rgba(0,0,0,.1);background-color:#fff;background-clip:padding-box;box-shadow:#0003 0 2px 8px}.x-spreadsheet-toast{background-color:#ffffffd9}.x-spreadsheet-modal-header,.x-spreadsheet-toast-header{font-weight:600;background-clip:padding-box;background-color:#ffffffd9;border-bottom:1px solid rgba(0,0,0,.05);border-radius:4px 4px 0 0}.x-spreadsheet-toast-header{color:#f2711c}.x-spreadsheet-modal-header{border-bottom:1px solid #e0e2e4;background:#00000014;font-size:1.0785em}.x-spreadsheet-modal-header,.x-spreadsheet-modal-content,.x-spreadsheet-toast-header,.x-spreadsheet-toast-content{padding:.75em 1em}.x-spreadsheet-menu li:first-child{display:none}.vue-office-excel{height:100%}
1
+ ._upload-root_xoraq_1{max-width:xl}._upload-container_xoraq_5{font-size:12px;color:var(--font-color-grey)}._upload-wrapper_xoraq_10{color:var(--primary-color);cursor:pointer}._upload-wrapper_xoraq_10:hover{text-decoration:underline}._upload-inner_xoraq_18{display:block}._upload-header_xoraq_22{font-size:var(--font-size-small);color:var(--font-color-grey)}._upload-body_xoraq_27{border-radius:8px;border-width:1px;border-style:solid;padding:16px}._upload-footer_xoraq_34{font-size:var(--font-size-small);font-weight:500;color:var(--font-color-grey)}._upload-row_xoraq_40{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:var(--font-size-small)}._upload-col_xoraq_47{display:flex;align-items:center;gap:8px;font-size:var(--font-size-small)}._upload-wrap_xoraq_10{display:block}._upload-panel_xoraq_58{font-size:12px}._upload-card_xoraq_62{padding:12px;font-size:var(--font-size-small)}._upload-item_xoraq_67{font-size:var(--font-size-small);margin-top:8px;display:block}._upload-link_xoraq_73{margin-top:12px}._upload-label_xoraq_77{display:flex;align-items:center;gap:8px;min-width:0}._upload-value_xoraq_84{color:var(--font-color-grey-1);flex-shrink:0}._upload-meta_xoraq_89{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._upload-icon_xoraq_95{margin:0!important;flex-shrink:0}._upload-title_xoraq_100{font-size:12px;margin-left:0!important;flex-shrink:0}._upload-desc_xoraq_106{flex-shrink:0}._upload-actions_xoraq_110{font-size:30px;margin-bottom:8px}._upload-toolbar_xoraq_115{color:var(--font-color-grey)}._upload-toolbar_xoraq_115:hover{border-color:var(--primary-color)}._upload-toolbar_xoraq_115:hover{color:var(--primary-color)}._upload-list_xoraq_125{margin-top:8px}._upload-file-row_xoraq_129{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-radius:4px;background-color:var(--bg-color-grey);border:1px solid var(--font-color-grey-4)}._upload-file-row-error_xoraq_140{border-color:#f53f3f59;color:var(--error-color)}._upload-drag-icon_xoraq_145{font-size:30px;margin-bottom:8px;color:var(--primary-color)}._app-tour-root_ybirw_1{font-size:12px;color:var(--font-color-grey-1)}._common-filter-root_kdoz3_1{background-color:var(--bg-color-white);margin-bottom:16px}._common-filter-container_kdoz3_6{display:flex;align-items:center;gap:12px}._common-filter-label_kdoz3_12{flex-shrink:0;font-size:var(--font-size-default);font-weight:500;color:#374151}._common-filter-content_kdoz3_19{display:flex;flex:1;align-items:flex-start;justify-content:space-between}._common-filter-items_kdoz3_26{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:8px}._common-filter-extra_kdoz3_34{flex-shrink:0;margin-left:16px}._common-filter-selected_kdoz3_39{display:flex;align-items:center;justify-content:space-between;padding-top:12px}._common-filter-selected-main_kdoz3_46{display:flex;align-items:baseline;gap:8px}._common-filter-selected-title_kdoz3_52{font-size:12px;font-weight:500;color:var(--font-color-grey)}._common-filter-selected-tags_kdoz3_58{flex:1}._common-filter-tag_kdoz3_62{display:flex;align-items:center;gap:4px}._common-filter-tag-label_kdoz3_68{font-size:12px}._common-filter-tag-close_kdoz3_72{font-size:12px;cursor:pointer;margin-left:2px;opacity:.6}._common-filter-tag-close_kdoz3_72:hover{opacity:1}._common-filter-clear-btn_kdoz3_82{padding:0!important;height:auto!important;font-size:12px}._file-link-inner_uetzp_1{flex-shrink:0}._file-link-row_uetzp_5{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-link-actions_uetzp_11{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease,background-color .2s ease}._file-link-actions_uetzp_11:hover{color:var(--primary-color)}._file-link-toolbar_uetzp_22{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-list_m0qyk_1{position:relative}._file-preview-empty_m0qyk_5{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-white)}._file-preview-loading_m0qyk_15{width:100%;padding-top:80px;padding-bottom:80px}._file-preview-content_m0qyk_21{padding:16px;font-size:var(--font-size-small);white-space:pre-wrap;overflow:auto;max-height:70vh;background-color:var(--bg-color-grey)}._file-preview-aside_m0qyk_30{padding:24px;overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-main_m0qyk_37{display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;max-height:70vh}._file-preview-section_m0qyk_46{max-width:100%;max-height:65vh;object-fit:contain}._file-preview-group_m0qyk_52{width:100%}._file-preview-cell_m0qyk_56{overflow:auto;max-height:70vh;background-color:var(--bg-color-white)}._file-preview-overlay_m0qyk_62{position:relative;display:flex;align-items:center;justify-content:center}._file-preview-badge_m0qyk_69{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:48px;padding-bottom:48px;gap:16px}._file-preview-tag_m0qyk_79{position:relative;display:flex;align-items:center;justify-content:center;padding:16px}._file-preview-hint_m0qyk_87{max-width:100%;max-height:65vh}._file-preview-sider_m0qyk_92{font-size:48px}._file-preview-nav_m0qyk_96{text-align:center}._file-preview-menu_m0qyk_100{color:var(--font-color-grey);margin-bottom:4px}._file-preview-user-menu_m0qyk_105{font-size:12px;color:var(--font-color-grey-1)}._file-preview-avatar_m0qyk_110{display:flex;align-items:center;justify-content:center;padding:32px}._file-preview-upload_m0qyk_117{width:100%;max-width:1024px}._file-preview-filter_m0qyk_122{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--font-color-grey-4)}._file-preview_m0qyk_1{display:flex;flex-direction:column;width:100%}._file-preview-header_m0qyk_139{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;width:100%}._file-preview-info_m0qyk_148{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._file-preview-icon_m0qyk_156{display:inline-flex;flex-shrink:0}._file-preview-name_m0qyk_161{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}._file-preview-size_m0qyk_168{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-preview-body_m0qyk_174{width:100%}._file-preview-iframe_m0qyk_178{display:block;width:100%;height:70vh;border:none;background:var(--bg-color-grey)}._file-preview-media-wrap_m0qyk_186{display:flex;justify-content:center;width:100%}._file-preview-image_m0qyk_192{width:100%;max-height:70vh;object-fit:contain}._file-preview-video_m0qyk_198{width:100%;max-height:70vh;background:#000}._file-preview-audio-wrap_m0qyk_204{display:flex;align-items:center;justify-content:center;width:100%;padding:48px 16px}._file-preview-audio_m0qyk_204{width:100%}._file-preview-office-wrap_m0qyk_216{width:100%;height:70vh;min-height:480px}._file-preview-office-spin_m0qyk_222,._file-preview-office-spin_m0qyk_222 .ant-spin-container{width:100%;height:100%;min-height:inherit}._file-preview-office-inner_m0qyk_233{width:100%;height:100%;min-height:480px;overflow:auto}._file-preview-text_m0qyk_240{margin:0;padding:16px;width:100%;max-height:70vh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:var(--font-size-small);background:var(--bg-color-grey);box-sizing:border-box}._file-preview-table_m0qyk_253{font-weight:500}._file-preview-link_1q16r_1{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);transition:color .2s ease}._file-preview-link_1q16r_1:hover{color:var(--primary-color)}._file-preview-link-wrap_1q16r_12{align-items:flex-start;max-width:100%}._file-preview-link-disabled_1q16r_17{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);color:var(--font-color-grey-1);cursor:not-allowed}._file-preview-link-inner_1q16r_26{flex-shrink:0}._file-preview-link-name_1q16r_30{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._file-preview-link-name-wrap_1q16r_36{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-all;line-height:1.5}._file-preview-link-type_1q16r_44{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._tags-tag-list_d5l57_1{display:flex;align-items:center;gap:4px;flex-wrap:wrap}._tags-tag-list-nowrap_d5l57_8{flex-wrap:nowrap}._tags-tag-list-tooltip_d5l57_12{max-width:320px}._filter-panel-body_tjvgz_1{margin-bottom:12px}._filter-panel-actions_tjvgz_5{display:flex;justify-content:flex-end;gap:8px}._filter-trigger-root_115kh_1{display:inline-flex;align-items:center;gap:4px;cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px;transition:color .2s ease,background-color .2s ease}._filter-trigger-active_115kh_12{background-color:var(--primary-color);color:var(--bg-color-white)}._filter-trigger-inactive_115kh_17{color:#374151}._filter-trigger-inactive_115kh_17:hover{color:var(--primary-color);background-color:var(--primary-color-bg)}._filter-trigger-chevron_115kh_25{font-size:10px}._filter-date-range-quick-options_ctl7u_1{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px}._filter-date-range-quick-option_ctl7u_1{cursor:pointer;border-radius:4px;padding:4px 8px;font-size:var(--font-size-small)}._filter-date-range-quick-option_ctl7u_1:hover{background-color:var(--primary-color-bg)}._filter-date-range-quick-option-active_ctl7u_18{background-color:var(--primary-color);color:var(--bg-color-white);font-weight:500}._filter-date-range-picker_ctl7u_24{width:100%}._filter-number-range-inputs_y3pfu_1{display:flex;align-items:center;gap:8px}._filter-number-range-separator_y3pfu_7{color:var(--font-color-grey-1)}._filter-number-range-unit_y3pfu_11{font-size:var(--font-size-small);color:var(--font-color-grey)}._person-option-row-root_lf6i9_1{font-size:var(--font-size-small)}._person-option-row-container_lf6i9_5{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._person-option-row-wrapper_lf6i9_11{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--font-color-grey-1);font-size:12px}._person-option-row-inner_lf6i9_19{margin-left:auto;flex-shrink:0;color:var(--font-color-grey-1)}._person-option-row-inner_lf6i9_19:hover{color:var(--primary-color)}._person-option-row-person-row_lf6i9_28{display:flex;align-items:center;gap:8px;min-width:0;flex:1}._filter-select-search_1esgk_1{margin-bottom:12px}._filter-select-options_1esgk_5{max-height:300px;overflow:auto}._filter-select-option_1esgk_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-select-option_1esgk_5:hover{background-color:var(--bg-color-grey)}._filter-select-option-selected_1esgk_23{color:var(--primary-color);font-weight:500}._filter-select-option-check_1esgk_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-select-empty_1esgk_34{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-select-selected-bar_1esgk_42{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-select-selected-label_1esgk_49{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-select-selected-tag_1esgk_55{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-select-selected-remove_1esgk_68{font-size:10px}._filter-tree-select-search_he1ck_1{margin-bottom:12px}._filter-tree-select-options_he1ck_5{max-height:300px;overflow:auto}._filter-tree-select-option_he1ck_5{display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:4px;padding:6px 8px;font-size:var(--font-size-small)}._filter-tree-select-option_he1ck_5:hover{background-color:var(--bg-color-grey)}._filter-tree-select-option-selected_he1ck_23{color:var(--primary-color);font-weight:500}._filter-tree-select-option-check_he1ck_28{margin-left:auto;font-size:12px;color:var(--primary-color)}._filter-tree-select-expand-icon_he1ck_34{display:inline-flex;width:16px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;color:var(--font-color-grey-1)}._filter-tree-select-expand-placeholder_he1ck_44{display:inline-flex;width:16px;flex-shrink:0}._filter-tree-select-node-label_he1ck_50{flex:1}._filter-tree-select-empty_he1ck_54{padding-top:16px;padding-bottom:16px;text-align:center;font-size:var(--font-size-small);color:var(--font-color-grey-1)}._filter-tree-select-selected-bar_he1ck_62{margin-top:8px;border-top-width:1px;border-top-style:solid;padding-top:8px}._filter-tree-select-selected-label_he1ck_69{margin-bottom:4px;font-size:12px;color:var(--font-color-grey-1)}._filter-tree-select-selected-tag_he1ck_75{display:inline-flex;cursor:pointer;align-items:center;gap:4px;background-color:var(--bg-color-grey-1);padding:2px 6px;font-size:12px}._filter-tree-select-selected-remove_he1ck_88{font-size:10px}._llm-formatted-text_1mo0r_1{font-size:13px;line-height:1.6;color:var(--color-text, #0f172a)}._is-loading_1mo0r_7{display:flex;align-items:center;gap:8px;color:var(--color-text-muted, #94a3b8)}._ft-spinner_1mo0r_14{width:14px;height:14px;border:2px solid #cbd5e1;border-top-color:var(--primary-color, #1677ff);border-radius:50%;animation:_llm-ft-spin_1mo0r_1 .8s linear infinite}@keyframes _llm-ft-spin_1mo0r_1{to{transform:rotate(360deg)}}._ft-summary_1mo0r_28{margin:0 0 8px;font-weight:500}._ft-section_1mo0r_33{margin-top:10px}._ft-section-title_1mo0r_37{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:13px;font-weight:600}._ft-section-icon_1mo0r_46{color:var(--primary-color, #1677ff)}._ft-list_1mo0r_50{margin:0;padding-left:0;list-style:none}._ft-list_1mo0r_50 li{display:flex;gap:8px;margin-bottom:4px}._ft-num_1mo0r_62{flex-shrink:0;width:18px;color:var(--color-text-muted, #94a3b8);font-size:12px}._ft-paragraph_1mo0r_69{margin:0}._page-header-layout-root_13o9c_1{display:flex;align-items:center;justify-content:space-between}._page-header-layout-container_13o9c_7{display:flex;align-items:center}._page-header-layout-wrapper_13o9c_12{font-size:var(--font-size-18);font-weight:600}._page-header-layout-inner_13o9c_17{margin-bottom:16px;padding:8px 12px;background-color:var(--primary-color-bg);border:1px solid var(--primary-color-border);border-radius:4px;font-size:var(--font-size-small);color:var(--primary-color)}._sparkline_1cqvt_1{display:block}._stat-card-clickable_xovsh_1{cursor:pointer}._stat-card-clickable_xovsh_1 .ant-statistic-content,._stat-card-clickable_xovsh_1 .ant-statistic-content .ant-statistic-content-prefix{display:flex!important;align-items:center}._stat-pending-breakdown-root_85di3_1{font-size:12px;color:var(--font-color-grey-1);margin-bottom:8px}._stat-pending-breakdown-container_85di3_7{font-size:12px;font-weight:400;color:var(--font-color-grey-1);margin-top:4px;line-height:var(--line-height-default)}._stat-pending-breakdown-detail-divider_85di3_15{margin-top:12px;padding-top:12px;border-top:1px solid var(--font-color-grey-4)}._step-modal-root_1ccyj_1{display:flex;align-items:center;gap:8px}._step-modal-container_1ccyj_7{flex:1}._step-modal-wrapper_1ccyj_11{margin-bottom:24px}._virtual-scrollbar-root_hy6p8_1{position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:0;min-width:0}._virtual-scrollbar-viewport_hy6p8_14{flex:1 1 auto;width:100%;height:100%;min-height:0;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}._virtual-scrollbar-viewport_hy6p8_14::-webkit-scrollbar{display:none}._virtual-scrollbar-track_hy6p8_27{opacity:1;pointer-events:auto}._virtual-scrollbar-track-vertical_hy6p8_32{position:absolute;z-index:2;opacity:0;pointer-events:none;transition:opacity .2s ease;top:2px;right:2px;bottom:2px;width:6px}._virtual-scrollbar-track-horizontal_hy6p8_44{opacity:1;pointer-events:auto}._virtual-scrollbar-thumb_hy6p8_49{top:0;bottom:0;min-width:24px}._file-item-root_lmij6_1{transition:color .2s ease,background-color .2s ease}._file-item-root_lmij6_1:hover{background-color:var(--bg-color-grey)}._file-item-container_lmij6_8{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}._file-item-wrapper_lmij6_18{display:flex;gap:8px;min-width:0;flex:1}._file-item-inner_lmij6_25{flex-shrink:0}._file-item-header_lmij6_29{min-width:0;flex:1}._file-item-body_lmij6_34{display:flex;align-items:center;gap:8px}._file-item-footer_lmij6_40{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-small)}._file-item-row_lmij6_47{flex-shrink:0;font-size:12px;color:var(--font-color-grey-1)}._file-item-col_lmij6_53{margin-top:2px;gap:2px}._file-item-wrap_lmij6_18{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:8px}._file-item-panel_lmij6_66{display:flex;align-items:center}._file-item-action-group_lmij6_71{display:flex;align-items:center;gap:4px}._file-item-action-group-disabled_lmij6_77{opacity:.45;pointer-events:none}.x-spreadsheet{font-size:13px;line-height:normal;-webkit-user-select:none;user-select:none;-moz-user-select:none;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;box-sizing:content-box;background:#fff;-webkit-font-smoothing:antialiased}.x-spreadsheet textarea{font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif}.x-spreadsheet-sheet{position:relative;overflow:hidden}.x-spreadsheet-table{vertical-align:bottom}.x-spreadsheet-tooltip{font-family:inherit;position:absolute;padding:5px 10px;color:#fff;border-radius:1px;background:#000;font-size:12px;z-index:201}.x-spreadsheet-tooltip:before{pointer-events:none;position:absolute;left:calc(50% - 4px);top:-4px;content:"";width:8px;height:8px;background:inherit;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:1;box-shadow:1px 1px 3px -1px #0000004d}.x-spreadsheet-color-palette{padding:5px}.x-spreadsheet-color-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:2;background:#fff}.x-spreadsheet-color-palette table td{margin:0;cursor:pointer;border:1px solid transparent}.x-spreadsheet-color-palette table td:hover{border-color:#ddd}.x-spreadsheet-color-palette table td .x-spreadsheet-color-palette-cell{width:16px;height:16px}.x-spreadsheet-border-palette{padding:6px}.x-spreadsheet-border-palette table{margin:0;padding:0;border-collapse:separate;border-spacing:0;background:#fff;table-layout:fixed}.x-spreadsheet-border-palette table td{margin:0}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left{border-right:1px solid #eee;padding-right:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell{width:30px;height:30px;cursor:pointer;text-align:center}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-left .x-spreadsheet-border-palette-cell:hover{background-color:#eee}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right{padding-left:6px}.x-spreadsheet-border-palette .x-spreadsheet-border-palette-right .x-spreadsheet-line-type{position:relative;left:0;top:-3px}.x-spreadsheet-dropdown{position:relative}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-content{position:absolute;z-index:200;background:#fff;box-shadow:1px 2px 5px 2px #33333326}.x-spreadsheet-dropdown.bottom-left .x-spreadsheet-dropdown-content{top:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.bottom-right .x-spreadsheet-dropdown-content{top:calc(100% + 5px);right:0}.x-spreadsheet-dropdown.top-left .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);left:0}.x-spreadsheet-dropdown.top-right .x-spreadsheet-dropdown-content{bottom:calc(100% + 5px);right:0}.x-spreadsheet-dropdown .x-spreadsheet-dropdown-title{padding:0 5px;display:inline-block}.x-spreadsheet-resizer{position:absolute;z-index:11}.x-spreadsheet-resizer .x-spreadsheet-resizer-hover{background-color:#4b89ff40}.x-spreadsheet-resizer .x-spreadsheet-resizer-line{position:absolute}.x-spreadsheet-resizer.horizontal{cursor:row-resize}.x-spreadsheet-resizer.horizontal .x-spreadsheet-resizer-line{border-bottom:2px dashed #4b89ff;left:0;bottom:0}.x-spreadsheet-resizer.vertical{cursor:col-resize}.x-spreadsheet-resizer.vertical .x-spreadsheet-resizer-line{border-right:2px dashed #4b89ff;top:0;right:0}.x-spreadsheet-scrollbar{position:absolute;bottom:0;right:0;background-color:#f4f5f8;opacity:.9;z-index:12}.x-spreadsheet-scrollbar.horizontal{right:15px;overflow-x:scroll;overflow-y:hidden}.x-spreadsheet-scrollbar.horizontal>div{height:1px;background:#ddd}.x-spreadsheet-scrollbar.vertical{bottom:15px;overflow-x:hidden;overflow-y:scroll}.x-spreadsheet-scrollbar.vertical>div{width:1px;background:#ddd}.x-spreadsheet-overlayer{position:absolute;left:0;top:0;z-index:10}.x-spreadsheet-overlayer .x-spreadsheet-overlayer-content{position:absolute;overflow:hidden;pointer-events:none;width:100%;height:100%}.x-spreadsheet-editor,.x-spreadsheet-selector{box-sizing:content-box;position:absolute;overflow:hidden;pointer-events:none;top:0;left:0;width:100%;height:100%}.x-spreadsheet-selector .hide-input{position:absolute;z-index:0}.x-spreadsheet-selector .hide-input input{padding:0;width:0;border:none!important}.x-spreadsheet-selector .x-spreadsheet-selector-area{position:absolute;border:2px solid #4b89ff;background:#4b89ff1a;z-index:5}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard,.x-spreadsheet-selector .x-spreadsheet-selector-autofill{position:absolute;background:transparent;z-index:100}.x-spreadsheet-selector .x-spreadsheet-selector-clipboard{border:2px dashed #4b89ff}.x-spreadsheet-selector .x-spreadsheet-selector-autofill{border:1px dashed rgba(0,0,0,.45)}.x-spreadsheet-selector .x-spreadsheet-selector-corner{pointer-events:auto;position:absolute;cursor:crosshair;font-size:0;height:5px;width:5px;right:-5px;bottom:-5px;border:2px solid #ffffff;background:#4b89ff}.x-spreadsheet-editor{z-index:20}.x-spreadsheet-editor .x-spreadsheet-editor-area{position:absolute;text-align:left;border:2px solid #4b89ff;line-height:0;z-index:100;pointer-events:auto}.x-spreadsheet-editor .x-spreadsheet-editor-area textarea{box-sizing:content-box;border:none;padding:0 3px;outline:none;resize:none;text-align:start;overflow-y:hidden;font:400 13px Arial,Lato,Source Sans Pro,Roboto,Helvetica,sans-serif;color:inherit;white-space:normal;word-wrap:break-word;line-height:22px;margin:0}.x-spreadsheet-editor .x-spreadsheet-editor-area .textline{overflow:hidden;visibility:hidden;position:fixed;top:0;left:0}.x-spreadsheet-item{-webkit-user-select:none;user-select:none;background:0;border:1px solid transparent;outline:none;height:26px;color:#000000e6;line-height:26px;list-style:none;padding:2px 10px;cursor:default;text-align:left;overflow:hidden}.x-spreadsheet-item.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-item:hover,.x-spreadsheet-item.active{background:#0000000d}.x-spreadsheet-item.divider{height:0;padding:0;margin:5px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1)}.x-spreadsheet-item .label{float:right;opacity:.65;font-size:1em}.x-spreadsheet-item.state,.x-spreadsheet-header.state{padding-left:35px!important;position:relative}.x-spreadsheet-item.state:before,.x-spreadsheet-header.state:before{content:"";position:absolute;width:10px;height:10px;left:12px;top:calc(50% - 5px);background:#00000014;border-radius:2px}.x-spreadsheet-item.state.checked:before,.x-spreadsheet-header.state.checked:before{background:#4b89ff}.x-spreadsheet-checkbox{position:relative;display:inline-block;backface-visibility:hidden;outline:0;vertical-align:baseline;font-style:normal;font-size:1rem;line-height:1em}.x-spreadsheet-checkbox>input{position:absolute;top:0;left:0;opacity:0!important;outline:0;z-index:-1}.x-spreadsheet-suggest,.x-spreadsheet-contextmenu,.x-spreadsheet-sort-filter{position:absolute;box-shadow:1px 2px 5px 2px #33333326;background:#fff;z-index:100;width:260px;pointer-events:auto;overflow:auto}.x-spreadsheet-suggest{width:200px}.x-spreadsheet-filter{border:1px solid #e9e9e9;font-size:12px;margin:10px}.x-spreadsheet-filter .x-spreadsheet-header{padding:.5em .75em;background:#f8f8f9;border-bottom:1px solid #e9e9e9;border-left:1px solid transparent}.x-spreadsheet-filter .x-spreadsheet-body{height:200px;overflow-y:auto}.x-spreadsheet-filter .x-spreadsheet-body .x-spreadsheet-item{height:20px;line-height:20px}.x-spreadsheet-sort-filter .x-spreadsheet-buttons{margin:10px}.x-spreadsheet-bottombar{height:40px;padding:0 30px;text-align:left;background:#f5f6f7;display:flex}.x-spreadsheet-bottombar{position:relative;border-top:1px solid #e0e2e4}.x-spreadsheet-bottombar .x-spreadsheet-menu>li{line-height:40px;height:40px;padding-top:0;padding-bottom:0;vertical-align:middle;border-right:1px solid #e8eaed}.x-spreadsheet-menu{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.x-spreadsheet-menu>li{float:left;line-height:1.25em;padding:.785em 1em;margin:0;vertical-align:middle;text-align:left;font-weight:400;color:#80868b;white-space:nowrap;cursor:pointer;transition:all .3s;font-weight:700}.x-spreadsheet-menu>li.active{background-color:#fff;color:#000000a6}.x-spreadsheet-menu>li .x-spreadsheet-dropdown{display:inline-block}.x-spreadsheet-print{position:absolute;left:0;top:0;z-index:100;width:100%;height:100%;display:flex;flex-direction:column}.x-spreadsheet-print-bar{background:#424242;height:60px;line-height:60px;padding:0 30px}.x-spreadsheet-print-bar .-title{color:#fff;font-weight:700;font-size:1.2em;float:left}.x-spreadsheet-print-bar .-right{float:right;margin-top:12px}.x-spreadsheet-print-content{display:flex;flex:auto;flex-direction:row;background:#d0d0d0;height:calc(100% - 60px)}.x-spreadsheet-print-content .-sider{flex:0 0 300px;width:300px;border-left:2px solid #ccc;background:#fff}.x-spreadsheet-print-content .-content{flex:auto;overflow-x:auto;overflow-y:scroll;height:100%}.x-spreadsheet-canvas-card-wraper{margin:40px 20px}.x-spreadsheet-canvas-card{background:#fff;margin:auto;page-break-before:auto;page-break-after:always;box-shadow:0 8px 10px 1px #00000024,0 3px 14px 3px #0000001f,0 4px 5px #0003}.x-spreadsheet-calendar{color:#000000a6;background:#fff;-webkit-user-select:none;user-select:none}.x-spreadsheet-calendar .calendar-header{font-weight:700;line-height:30px;text-align:center;width:100%;float:left;background:#f9fafb}.x-spreadsheet-calendar .calendar-header .calendar-header-left{padding-left:5px;float:left}.x-spreadsheet-calendar .calendar-header .calendar-header-right{float:right}.x-spreadsheet-calendar .calendar-header .calendar-header-right a{padding:3px 0;margin-right:2px;border-radius:2px}.x-spreadsheet-calendar .calendar-header .calendar-header-right a:hover{background:#00000014}.x-spreadsheet-calendar .calendar-body{border-collapse:collapse;border-spacing:0}.x-spreadsheet-calendar .calendar-body th,.x-spreadsheet-calendar .calendar-body td{width:14.28571429%;min-width:32px;text-align:center;font-weight:700;line-height:30px;padding:0}.x-spreadsheet-calendar .calendar-body td>.cell:hover{background:#ecf6fd}.x-spreadsheet-calendar .calendar-body td>.cell.active,.x-spreadsheet-calendar .calendar-body td>.cell.active:hover{background:#ecf6fd;color:#2185d0}.x-spreadsheet-calendar .calendar-body td>.cell.disabled{pointer-events:none;opacity:.5}.x-spreadsheet-datepicker{box-shadow:2px 2px 5px #0003;position:absolute;left:0;top:calc(100% + 5px);z-index:10;width:auto}.x-spreadsheet-buttons{display:flex;justify-content:flex-end}.x-spreadsheet-buttons .x-spreadsheet-button{margin-left:8px}.x-spreadsheet-button{display:inline-block;border-radius:3px;line-height:1em;min-height:1em;white-space:nowrap;text-align:center;cursor:pointer;font-size:1em;font-weight:700;padding:.75em 1em;color:#0009;background:#e0e1e2;text-decoration:none;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;outline:none;vertical-align:baseline;zoom:1;-webkit-user-select:none;user-select:none;transition:all .1s linear}.x-spreadsheet-button.active,.x-spreadsheet-button:hover{background-color:#c0c1c2;color:#000c}.x-spreadsheet-button.primary{color:#fff;background-color:#2185d0}.x-spreadsheet-button.primary:hover,.x-spreadsheet-button.primary.active{color:#fff;background-color:#1678c2}.x-spreadsheet-form-input{font-size:1em;position:relative;font-weight:400;display:inline-flex;color:#000000de}.x-spreadsheet-form-input input{z-index:1;margin:0;max-width:100%;flex:1 0 auto;outline:0;-webkit-tap-highlight-color:rgba(255,255,255,0);text-align:left;line-height:30px;height:30px;padding:0 8px;background:#fff;border:1px solid #e9e9e9;border-radius:3px;transition:box-shadow .1s ease,border-color .1s ease;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-input input:focus{border-color:#4b89ff;box-shadow:inset 0 1px 2px #4b89ff33}.x-spreadsheet-form-select{position:relative;display:inline-block;background:#fff;border:1px solid #e9e9e9;border-radius:2px;cursor:pointer;color:#000000de;-webkit-user-select:none;user-select:none;box-shadow:inset 0 1px 2px #0a0a0a0f}.x-spreadsheet-form-select .input-text{text-overflow:ellipsis;white-space:nowrap;min-width:60px;width:auto;height:30px;line-height:30px;padding:0 8px}.x-spreadsheet-form-fields{display:flex;flex-direction:row;flex-wrap:wrap}.x-spreadsheet-form-fields .x-spreadsheet-form-field{flex:0 1 auto}.x-spreadsheet-form-fields .x-spreadsheet-form-field .label{display:inline-block;margin:0 10px 0 0}.x-spreadsheet-form-field{display:block;vertical-align:middle;margin-left:10px;margin-bottom:10px}.x-spreadsheet-form-field:first-child{margin-left:0}.x-spreadsheet-form-field.error .x-spreadsheet-form-select,.x-spreadsheet-form-field.error input{border-color:#f04134}.x-spreadsheet-form-field .tip{color:#f04134;font-size:.9em}.x-spreadsheet-dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background-color:#0009;opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;transition:background-color .5s linear;-webkit-user-select:none;user-select:none;z-index:1000}.x-spreadsheet-dimmer.active{display:block;opacity:1}form fieldset{border:none}form fieldset label{display:block;margin-bottom:.5em;font-size:1em;color:#666}form fieldset select{font-size:1.1em;width:100%;background-color:#fff;border:none;border-bottom:2px solid #ddd;padding:.5em .85em;border-radius:2px}.x-spreadsheet-modal,.x-spreadsheet-toast{font-size:13px;position:fixed;z-index:1001;text-align:left;line-height:1.25em;min-width:360px;color:#000000de;font-family:Lato,Source Sans Pro,Roboto,Helvetica,Arial,sans-serif;border-radius:4px;border:1px solid rgba(0,0,0,.1);background-color:#fff;background-clip:padding-box;box-shadow:#0003 0 2px 8px}.x-spreadsheet-toast{background-color:#ffffffd9}.x-spreadsheet-modal-header,.x-spreadsheet-toast-header{font-weight:600;background-clip:padding-box;background-color:#ffffffd9;border-bottom:1px solid rgba(0,0,0,.05);border-radius:4px 4px 0 0}.x-spreadsheet-toast-header{color:#f2711c}.x-spreadsheet-modal-header{border-bottom:1px solid #e0e2e4;background:#00000014;font-size:1.0785em}.x-spreadsheet-modal-header,.x-spreadsheet-modal-content,.x-spreadsheet-toast-header,.x-spreadsheet-toast-content{padding:.75em 1em}.x-spreadsheet-menu li:first-child{display:none}.vue-office-excel{height:100%}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hkyhy/marsun-components-core",
3
- "version": "0.1.11",
3
+ "version": "0.1.12",
4
4
  "description": "Marsun pure UI component library",
5
5
  "type": "module",
6
6
  "repository": {