ooxml-excel-editor 1.16.1 → 1.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/chunks/{index-xD5935xY.js → index-DKKEwcK8.js} +1567 -1521
- package/dist/chunks/{index-CKf3q6pu.js → index-Dg4LsUaW.js} +394 -352
- package/dist/chunks/{index.es-BZzDc3NP.js → index.es-BFDtb3m5.js} +1 -1
- package/dist/chunks/{index.es-CaZDvCo1.js → index.es-_lLUy2tE.js} +1 -1
- package/dist/chunks/{jspdf.es.min-BMIqrKfr.js → jspdf.es.min-DOtW0DYo.js} +2 -2
- package/dist/chunks/{jspdf.es.min-DJ2NWx1E.js → jspdf.es.min-DcIe7UWW.js} +2 -2
- package/dist/chunks/{toolbar-builtins-IAxeMFn3.js → toolbar-builtins-CeOlAWgM.js} +1 -1
- package/dist/core/viewer/controller.d.ts +16 -0
- package/dist/core.js +1 -1
- package/dist/index.js +785 -779
- package/dist/react.js +30 -28
- package/dist/style.css +1 -1
- package/dist/vue2.css +1 -1
- package/dist/vue2.js +1 -1
- package/package.json +1 -1
package/dist/react.js
CHANGED
|
@@ -12,9 +12,9 @@ var ln = (v, s, k) => s in v ? _n(v, s, { enumerable: !0, configurable: !0, writ
|
|
|
12
12
|
}, re = (v, s) => Vn(v, Jn(s));
|
|
13
13
|
import { jsx as i, jsxs as m, Fragment as Ie } from "react/jsx-runtime";
|
|
14
14
|
import { useState as y, useRef as b, useCallback as on, forwardRef as Kn, useMemo as Gn, useEffect as R, useReducer as Xn, useLayoutEffect as an, useImperativeHandle as $n, Fragment as Zn } from "react";
|
|
15
|
-
import { p as Cn, R as Yn, l as qn, S as Qn, i as er, r as sn, s as tr, a as le, b as nr, c as rr, d as lr, e as or, T as ar, f as sr, g as cr, h as ir, j as ur, k as dr } from "./chunks/toolbar-builtins-
|
|
16
|
-
import { r as cn, l as bn, d as vn, f as pn, a as gr, e as mr, b as Xe, V as fr, P as Cr, D as $e, g as un, s as dn, c as gn, h as mn, i as fn, j as Re, k as Ze, m as br, n as vr } from "./chunks/index-
|
|
17
|
-
import { B as Er, C as Tr, o as Dr, p as Nr, E as Ar, F as Mr, q as Br, G as Or, K as zr, O as Lr, t as Wr, W as Hr, u as _r, v as Vr, w as Jr, x as Ur, y as jr, z as Kr, A as Gr, H as Xr, I as $r, J as Zr, L as Yr, M as qr, N as Qr, Q as el, R as tl, S as nl, T as rl, U as ll, X as ol, Y as al, Z as sl, _ as cl, $ as il, a0 as ul, a1 as dl, a2 as gl, S as ml, a3 as fl, a4 as Cl, a5 as bl, a6 as vl, a7 as pl, a8 as hl, a9 as Sl, aa as xl, ab as Fl, ac as Il, ad as Rl, ae as kl, af as wl, ag as yl, ah as Pl, ai as El, aj as Tl, ak as Dl, al as Nl, am as Al, an as Ml, ao as Bl, ap as Ol, aq as zl, ar as Ll, as as Wl, at as Hl, au as _l, av as Vl, aw as Jl, ax as Ul, ay as jl } from "./chunks/index-
|
|
15
|
+
import { p as Cn, R as Yn, l as qn, S as Qn, i as er, r as sn, s as tr, a as le, b as nr, c as rr, d as lr, e as or, T as ar, f as sr, g as cr, h as ir, j as ur, k as dr } from "./chunks/toolbar-builtins-CeOlAWgM.js";
|
|
16
|
+
import { r as cn, l as bn, d as vn, f as pn, a as gr, e as mr, b as Xe, V as fr, P as Cr, D as $e, g as un, s as dn, c as gn, h as mn, i as fn, j as Re, k as Ze, m as br, n as vr } from "./chunks/index-Dg4LsUaW.js";
|
|
17
|
+
import { B as Er, C as Tr, o as Dr, p as Nr, E as Ar, F as Mr, q as Br, G as Or, K as zr, O as Lr, t as Wr, W as Hr, u as _r, v as Vr, w as Jr, x as Ur, y as jr, z as Kr, A as Gr, H as Xr, I as $r, J as Zr, L as Yr, M as qr, N as Qr, Q as el, R as tl, S as nl, T as rl, U as ll, X as ol, Y as al, Z as sl, _ as cl, $ as il, a0 as ul, a1 as dl, a2 as gl, S as ml, a3 as fl, a4 as Cl, a5 as bl, a6 as vl, a7 as pl, a8 as hl, a9 as Sl, aa as xl, ab as Fl, ac as Il, ad as Rl, ae as kl, af as wl, ag as yl, ah as Pl, ai as El, aj as Tl, ak as Dl, al as Nl, am as Al, an as Ml, ao as Bl, ap as Ol, aq as zl, ar as Ll, as as Wl, at as Hl, au as _l, av as Vl, aw as Jl, ax as Ul, ay as jl } from "./chunks/index-Dg4LsUaW.js";
|
|
18
18
|
const pr = {
|
|
19
19
|
render: "渲染中",
|
|
20
20
|
compose: "合成中",
|
|
@@ -47,12 +47,12 @@ function Sr() {
|
|
|
47
47
|
try {
|
|
48
48
|
const h = await bn(
|
|
49
49
|
J,
|
|
50
|
-
(
|
|
50
|
+
(G, X) => M({ stage: "read", ratio: X ? G / X : void 0 })
|
|
51
51
|
), N = vn(h);
|
|
52
52
|
if (N === "xls") throw new Error("这是旧版 .xls(BIFF) 或加密文件,本预览器只支持 .xlsx/.xlsm。");
|
|
53
53
|
if (N === "not-zip") throw new Error("文件不是有效的 .xlsx(非 ZIP 包)。");
|
|
54
54
|
if (N === "empty") throw new Error("文件为空。");
|
|
55
|
-
let x = await Cn(h, (
|
|
55
|
+
let x = await Cn(h, (G) => M(G));
|
|
56
56
|
j && (x = (K = j(x)) != null ? K : x), pn(x), L(h.slice(0)), B.current = x, d(x);
|
|
57
57
|
} catch (h) {
|
|
58
58
|
const N = h == null ? void 0 : h.message;
|
|
@@ -60,31 +60,31 @@ function Sr() {
|
|
|
60
60
|
} finally {
|
|
61
61
|
s(!1), M(null);
|
|
62
62
|
}
|
|
63
|
-
}, []),
|
|
63
|
+
}, []), Y = on((J, j) => {
|
|
64
64
|
var h;
|
|
65
65
|
B.current && cn(B.current), L(null), P(null), M(null);
|
|
66
66
|
const K = j && (h = j(J)) != null ? h : J;
|
|
67
67
|
B.current = K, d(K);
|
|
68
68
|
}, []);
|
|
69
|
-
return { loading: v, error: k, workbook: z, progress: V, load: fe, loadModel:
|
|
69
|
+
return { loading: v, error: k, workbook: z, progress: V, load: fe, loadModel: Y, sourceBuffer: oe };
|
|
70
70
|
}
|
|
71
71
|
function ke(v) {
|
|
72
72
|
return isFinite(v) ? v.toLocaleString("en-US", { maximumFractionDigits: 2 }) : "—";
|
|
73
73
|
}
|
|
74
74
|
const wr = Kn(function(s, k) {
|
|
75
75
|
var Tt, Dt, Nt, At, Mt, Bt, Ot, zt, Lt, Wt, Ht, _t, Vt, Jt, Ut, jt;
|
|
76
|
-
const { loading: P, error: z, workbook: d, progress: V, load: M, loadModel: oe, sourceBuffer: L } = Sr(), B = (Tt = L == null ? void 0 : L.byteLength) != null ? Tt : null, fe = Gn(() => d ? mr(d) : null, [d]),
|
|
76
|
+
const { loading: P, error: z, workbook: d, progress: V, load: M, loadModel: oe, sourceBuffer: L } = Sr(), B = (Tt = L == null ? void 0 : L.byteLength) != null ? Tt : null, fe = Gn(() => d ? mr(d) : null, [d]), Y = b(Xe());
|
|
77
77
|
R(() => {
|
|
78
78
|
var e;
|
|
79
|
-
P && (
|
|
79
|
+
P && (Y.current = (e = Xe()) != null ? e : Y.current);
|
|
80
80
|
}, [P]);
|
|
81
81
|
const [J, j] = y(null);
|
|
82
82
|
R(() => {
|
|
83
83
|
if (!d) return;
|
|
84
84
|
const e = Xe();
|
|
85
|
-
j(e != null &&
|
|
85
|
+
j(e != null && Y.current != null ? Math.max(0, e - Y.current) : null);
|
|
86
86
|
}, [d]);
|
|
87
|
-
const K = (e) => e ? br(e) ? e : vr(e, s.jsonOptions) : null, [h, N] = y(0), [x,
|
|
87
|
+
const K = (e) => e ? br(e) ? e : vr(e, s.jsonOptions) : null, [h, N] = y(0), [x, G] = y(1), [X, Ye] = y(null), [we, qe] = y(null), Qe = (Dt = X != null ? X : s.templateFile) != null ? Dt : null, ae = (Nt = we != null ? we : s.templateName) != null ? Nt : "", et = () => {
|
|
88
88
|
Ye(null), qe(null);
|
|
89
89
|
}, tt = b(null), hn = () => {
|
|
90
90
|
var e;
|
|
@@ -93,7 +93,7 @@ const wr = Kn(function(s, k) {
|
|
|
93
93
|
var n;
|
|
94
94
|
const t = (n = e.target.files) == null ? void 0 : n[0];
|
|
95
95
|
t && (Ye(t), qe(t.name), e.target.value = "");
|
|
96
|
-
}, nt = s.fileName || (s.workbook ? "JSON 数据" : ((At = d == null ? void 0 : d.sheets[0]) == null ? void 0 : At.name) || ""), [q, Ce] = y(""),
|
|
96
|
+
}, nt = s.fileName || (s.workbook ? "JSON 数据" : ((At = d == null ? void 0 : d.sheets[0]) == null ? void 0 : At.name) || ""), [q, Ce] = y(""), $ = s.ribbonPersistKey === null ? null : s.ribbonPersistKey || Yn, [xn, rt] = y(() => $ ? qn($) : null), be = b(null);
|
|
97
97
|
be.current || (be.current = new Qn()), R(() => () => {
|
|
98
98
|
var e;
|
|
99
99
|
return (e = be.current) == null ? void 0 : e.dispose();
|
|
@@ -174,7 +174,7 @@ const wr = Kn(function(s, k) {
|
|
|
174
174
|
const ne = (e, t) => {
|
|
175
175
|
var n;
|
|
176
176
|
return (n = Me.current.get(e)) == null ? void 0 : n.forEach((l) => l(t));
|
|
177
|
-
},
|
|
177
|
+
}, Z = (e) => {
|
|
178
178
|
var n, l, o;
|
|
179
179
|
const t = String((n = e == null ? void 0 : e.message) != null ? n : e);
|
|
180
180
|
console.error("[ooxml-excel-editor] 导出失败:", e), (o = (l = f.current).onError) == null || o.call(l, t), typeof window != "undefined" && window.alert && window.alert(t);
|
|
@@ -242,6 +242,8 @@ const wr = Kn(function(s, k) {
|
|
|
242
242
|
onFindChange: () => H(),
|
|
243
243
|
onFilterChange: () => H(),
|
|
244
244
|
onActiveSheetChange: (a) => N(a),
|
|
245
|
+
onZoomChange: (a) => G(a),
|
|
246
|
+
// 触屏 pinch/双击 → 同步工具栏 %(effect 去重不再回 setZoom)
|
|
245
247
|
onEditEvent: (a, c) => {
|
|
246
248
|
var C, S, T, D, me, Kt, Gt, Xt, $t, Zt, Yt, qt, Qt, en, tn, nn;
|
|
247
249
|
a === "cell-change" ? (H(), (S = (C = f.current).onCellChange) == null || S.call(C, c)) : a === "edit-start" ? (D = (T = f.current).onEditStart) == null || D.call(T, c) : a === "edit-commit" ? (Kt = (me = f.current).onEditCommit) == null || Kt.call(me, c) : a === "dim-change" ? (Xt = (Gt = f.current).onDimChange) == null || Xt.call(Gt, c) : a === "dirty-change" ? (H(), (Zt = ($t = f.current).onDirtyChange) == null || Zt.call($t, c)) : a === "image-change" ? (qt = (Yt = f.current).onImageChange) == null || qt.call(Yt, c) : a === "struct-change" ? (en = (Qt = f.current).onStructChange) == null || en.call(Qt, c) : a === "permission-denied" && ((nn = (tn = f.current).onPermissionDenied) == null || nn.call(tn, c)), ne(a, c);
|
|
@@ -300,7 +302,7 @@ const wr = Kn(function(s, k) {
|
|
|
300
302
|
e && await M(e, te);
|
|
301
303
|
}
|
|
302
304
|
l();
|
|
303
|
-
}, [s.src, s.workbook, s.templateFile,
|
|
305
|
+
}, [s.src, s.workbook, s.templateFile, X]), R(() => {
|
|
304
306
|
r.current && (r.current.fileName = s.fileName);
|
|
305
307
|
}, [s.fileName]), R(() => {
|
|
306
308
|
var e;
|
|
@@ -335,8 +337,8 @@ const wr = Kn(function(s, k) {
|
|
|
335
337
|
const n = { index: h, name: t.name };
|
|
336
338
|
(a = (u = f.current).onSheetChange) == null || a.call(u, n), ne("sheet-change", n);
|
|
337
339
|
}, [d, h, s.theme, s.cellStyle, s.plugins, L]), R(() => {
|
|
338
|
-
|
|
339
|
-
|
|
340
|
+
const e = r.current;
|
|
341
|
+
e && Math.abs(e.getZoom() - x) < 1e-6 || e == null || e.setZoom(x);
|
|
340
342
|
}, [x]);
|
|
341
343
|
const Ct = b("");
|
|
342
344
|
R(() => {
|
|
@@ -1681,13 +1683,13 @@ const wr = Kn(function(s, k) {
|
|
|
1681
1683
|
e.stopPropagation(), e.key === "Enter" ? (e.preventDefault(), ht("down")) : e.key === "Escape" && (e.preventDefault(), Tn());
|
|
1682
1684
|
}, An = w && !(w.top === w.bottom && w.left === w.right) ? `${Re(w.left)}${w.top + 1}:${Re(w.right)}${w.bottom + 1}` : "", O = (_t = p == null ? void 0 : p.getSelectionStats()) != null ? _t : null, I = (e) => ur[e], g = (e) => _({ kind: "builtin" }, e), A = d == null ? void 0 : d.sheets[h], St = () => {
|
|
1683
1685
|
var e;
|
|
1684
|
-
return void ((e = r.current) == null ? void 0 : e.downloadPdf().catch(
|
|
1686
|
+
return void ((e = r.current) == null ? void 0 : e.downloadPdf().catch(Z));
|
|
1685
1687
|
}, xt = () => {
|
|
1686
1688
|
var e;
|
|
1687
|
-
return void ((e = r.current) == null ? void 0 : e.downloadPdf({ vector: !0 }).catch(
|
|
1689
|
+
return void ((e = r.current) == null ? void 0 : e.downloadPdf({ vector: !0 }).catch(Z));
|
|
1688
1690
|
}, Ft = () => {
|
|
1689
1691
|
var e;
|
|
1690
|
-
return void ((e = r.current) == null ? void 0 : e.print().catch(
|
|
1692
|
+
return void ((e = r.current) == null ? void 0 : e.print().catch(Z));
|
|
1691
1693
|
}, Mn = () => {
|
|
1692
1694
|
var l;
|
|
1693
1695
|
const e = A, t = r.current;
|
|
@@ -1789,11 +1791,11 @@ const wr = Kn(function(s, k) {
|
|
|
1789
1791
|
label: "导出",
|
|
1790
1792
|
title: "导出 / 打印",
|
|
1791
1793
|
items: [
|
|
1792
|
-
g({ id: "export-xlsx", label: "导出为 Excel (.xlsx)", onClick: () => void (t == null ? void 0 : t.downloadXlsx().catch(
|
|
1794
|
+
g({ id: "export-xlsx", label: "导出为 Excel (.xlsx)", onClick: () => void (t == null ? void 0 : t.downloadXlsx().catch(Z)) }),
|
|
1793
1795
|
g({ id: "export-csv", label: "导出为 CSV (.csv)", onClick: () => t == null ? void 0 : t.downloadCsv() }),
|
|
1794
1796
|
g({ id: "export-json", label: "导出为 JSON (.json)", onClick: () => t == null ? void 0 : t.downloadJson() }),
|
|
1795
1797
|
g({ id: "export-sep", type: "separator" }),
|
|
1796
|
-
g({ id: "export-png", label: "导出为图片 (PNG)", onClick: () => void (t == null ? void 0 : t.downloadImage().catch(
|
|
1798
|
+
g({ id: "export-png", label: "导出为图片 (PNG)", onClick: () => void (t == null ? void 0 : t.downloadImage().catch(Z)) }),
|
|
1797
1799
|
g({ id: "export-pdf", label: "导出为 PDF (位图)", onClick: St }),
|
|
1798
1800
|
g({ id: "export-pdf-vector", label: "导出为 PDF (矢量·文字可选)", onClick: xt }),
|
|
1799
1801
|
g({ id: "export-print", label: "打印…", onClick: Ft })
|
|
@@ -1805,7 +1807,7 @@ const wr = Kn(function(s, k) {
|
|
|
1805
1807
|
iconSvg: I("zoom"),
|
|
1806
1808
|
label: Math.round(x * 100) + "%",
|
|
1807
1809
|
title: "缩放",
|
|
1808
|
-
items: [50, 75, 100, 125, 150, 200].map((a) => g({ id: "zoom-" + a, label: a + "%", active: Math.round(x * 100) === a, onClick: () =>
|
|
1810
|
+
items: [50, 75, 100, 125, 150, 200].map((a) => g({ id: "zoom-" + a, label: a + "%", active: Math.round(x * 100) === a, onClick: () => G(a / 100) }))
|
|
1809
1811
|
});
|
|
1810
1812
|
}
|
|
1811
1813
|
return null;
|
|
@@ -1830,7 +1832,7 @@ const wr = Kn(function(s, k) {
|
|
|
1830
1832
|
c && (c.size = (u = (o = c.size) != null ? o : (l = ar[a]) == null ? void 0 : l.size) != null ? u : "small", n.push(c));
|
|
1831
1833
|
}
|
|
1832
1834
|
return n;
|
|
1833
|
-
}, It = er(s.ribbon, s.toolbar), E = sn({ ribbon: s.ribbon, toolbar: s.toolbar, userState: It &&
|
|
1835
|
+
}, It = er(s.ribbon, s.toolbar), E = sn({ ribbon: s.ribbon, toolbar: s.toolbar, userState: It && $ ? xn : null });
|
|
1834
1836
|
R(() => {
|
|
1835
1837
|
E.sections && (E.sections.some((e) => e.id === q) || Ce(E.activeSectionId));
|
|
1836
1838
|
}, [E.sections, E.activeSectionId, q]);
|
|
@@ -1840,7 +1842,7 @@ const wr = Kn(function(s, k) {
|
|
|
1840
1842
|
const e = tr(Rt).map((l) => ({ id: l.id, name: l.name, items: On(l.tools, E.customItems) })), t = [];
|
|
1841
1843
|
for (const l of pe) for (const o of (n = l.toolbar) != null ? n : []) t.push(Ue(o, "plugin"));
|
|
1842
1844
|
return t.length && (e.length ? e[e.length - 1].items.push(...t) : e.push({ id: "plugins", name: "", items: t })), e;
|
|
1843
|
-
})(), wt = kt.flatMap((e) => e.items), zn = wt, je = !!E.sections && wt.length > 0, Ke = !E.singleSection && !!E.sections, Ln = It, Wn = d ? d.sheets.filter((e) => e.state === "visible").length : 0, yt = [0.5, 0.75, 1, 1.25, 1.5, 2], Fe = (e) =>
|
|
1845
|
+
})(), wt = kt.flatMap((e) => e.items), zn = wt, je = !!E.sections && wt.length > 0, Ke = !E.singleSection && !!E.sections, Ln = It, Wn = d ? d.sheets.filter((e) => e.state === "visible").length : 0, yt = [0.5, 0.75, 1, 1.25, 1.5, 2], Fe = (e) => G(Math.min(3, Math.max(0.3, e))), Hn = () => {
|
|
1844
1846
|
var e, t, n, l, o, u, a;
|
|
1845
1847
|
(a = be.current) == null || a.show({
|
|
1846
1848
|
sections: (e = E.sections) != null ? e : [],
|
|
@@ -1852,14 +1854,14 @@ const wr = Kn(function(s, k) {
|
|
|
1852
1854
|
pasteBehavior: (u = (o = r.current) == null ? void 0 : o.getPasteBehavior()) != null ? u : $e,
|
|
1853
1855
|
onRibbonChange: (c, C) => {
|
|
1854
1856
|
const S = { v: 1, sections: c, activeSectionId: C };
|
|
1855
|
-
rt(S),
|
|
1857
|
+
rt(S), $ && ir($, S), Ce(C);
|
|
1856
1858
|
},
|
|
1857
1859
|
onRuntimeChange: (c) => {
|
|
1858
1860
|
var C, S, T, D, me;
|
|
1859
1861
|
c.zoom != null && Fe(c.zoom), c.editable != null && (he.current = c.editable, (C = r.current) == null || C.setEditConfig(ze()), (S = s.onEditableChange) == null || S.call(s, c.editable)), c.cellImageFit != null && (Oe.current = c.cellImageFit, (T = r.current) == null || T.setCellImageFit(c.cellImageFit), (D = s.onCellImageFitChange) == null || D.call(s, c.cellImageFit)), c.pasteBehavior != null && ((me = r.current) == null || me.setPasteBehavior(c.pasteBehavior));
|
|
1860
1862
|
},
|
|
1861
1863
|
onReset: () => {
|
|
1862
|
-
|
|
1864
|
+
$ && cr($), rt(null), Ce(sn({ ribbon: s.ribbon, toolbar: s.toolbar, userState: null }).activeSectionId);
|
|
1863
1865
|
}
|
|
1864
1866
|
});
|
|
1865
1867
|
}, Ge = ({ items: e, onPick: t, className: n = "rxl-tb-menu" }) => /* @__PURE__ */ i("div", { className: n, "data-tb-menu": "true", children: e.map((l) => l.type === "separator" ? /* @__PURE__ */ i("div", { className: "sep" }, l.id) : l.input ? /* @__PURE__ */ i(
|
|
@@ -1984,7 +1986,7 @@ const wr = Kn(function(s, k) {
|
|
|
1984
1986
|
items: [
|
|
1985
1987
|
g({ id: "h-xlsx", label: "导出为 Excel (.xlsx)", onClick: () => {
|
|
1986
1988
|
var e;
|
|
1987
|
-
return void ((e = r.current) == null ? void 0 : e.downloadXlsx().catch(
|
|
1989
|
+
return void ((e = r.current) == null ? void 0 : e.downloadXlsx().catch(Z));
|
|
1988
1990
|
} }),
|
|
1989
1991
|
g({ id: "h-csv", label: "导出为 CSV (.csv)", onClick: () => {
|
|
1990
1992
|
var e;
|
|
@@ -1997,7 +1999,7 @@ const wr = Kn(function(s, k) {
|
|
|
1997
1999
|
g({ id: "h-sep1", type: "separator" }),
|
|
1998
2000
|
g({ id: "h-png", label: "导出为图片 (PNG)", onClick: () => {
|
|
1999
2001
|
var e;
|
|
2000
|
-
return void ((e = r.current) == null ? void 0 : e.downloadImage().catch(
|
|
2002
|
+
return void ((e = r.current) == null ? void 0 : e.downloadImage().catch(Z));
|
|
2001
2003
|
} }),
|
|
2002
2004
|
g({ id: "h-pdf", label: "导出为 PDF (位图)", onClick: St }),
|
|
2003
2005
|
g({ id: "h-pdf-vec", label: "导出为 PDF (矢量·文字可选)", onClick: xt }),
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.rxl{display:flex;flex-direction:column;height:100%;width:100%;background:#fff;overflow:hidden}.rxl-toolbar{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.rxl-toolbar .file{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rxl-toolbar .file .modified{color:#e8453c;font-weight:700;margin-right:2px}.rxl-toolbar .tpl{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px}.rxl-toolbar .meta{color:#888}.rxl-toolbar .meta .rough{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.rxl-toolbar .spacer{flex:1}.rxl-export-wrap{position:relative}.rxl-export-btn{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.rxl-export-btn:hover{background:#f0f2f4}.rxl-export-btn .caret{font-size:10px;color:#888}.rxl-tb-menu{position:absolute;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.rxl-tb-menu.header-menu{right:0;top:28px}.rxl-tb-menu .mi{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.rxl-tb-menu .mi:hover:not(:disabled){background:#f0f4ff}.rxl-tb-menu .mi:disabled{color:#bbb;cursor:default}.rxl-tb-menu .mi.active{color:#1a73e8}.rxl-tb-menu .mi .ic{display:inline-flex;width:16px}.rxl-tb-menu .mi .ic-e{width:16px;text-align:center}.rxl-tb-menu .mi .sw{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.rxl-tb-menu .sep{height:1px;background:#eef0f2;margin:4px 2px}.rxl-tb-menu .mi-input{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.rxl-tb-menu .mi-input:focus{border-color:#217346}.rxl-zoom{display:flex;align-items:center;gap:4px}.rxl-zoom button{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.rxl-zoom button:hover{background:#f0f2f4}.rxl-zoom select{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.rxl-ribbon-tabs{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e2e4e7;flex:0 0 auto}.rxl-ribbon-tab{display:inline-flex;align-items:center;padding:0 14px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.rxl-ribbon-tab:hover{color:#217346}.rxl-ribbon-tab.active{color:#217346;border-bottom-color:#217346;font-weight:600}.rxl-rb-panel{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible;flex:0 0 auto}.rxl-rb-sep{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.rxl-rb-group{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.rxl-rb-body{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.rxl-rb-gname{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.rxl-rb-smalls{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.rxl-rb-row{display:flex;align-items:center;gap:2px}.rxl-rb-btn{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.rxl-rb-btn:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.rxl-rb-btn:disabled{color:#c0c3c7;cursor:default}.rxl-rb-btn.active{background:#e2efe6;color:#217346;border-color:#bcd9c6}.rxl-rb-btn.open{background:#e9ece9}.rxl-rb-large{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.rxl-rb-ic-lg{display:inline-flex}.rxl-rb-ic-lg svg{width:22px;height:22px}.rxl-rb-lb{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.rxl-rb-caret-inline{font-size:9px;opacity:.6}.rxl-rb-small{height:26px;padding:0 5px;gap:3px}.rxl-rb-ic-sm{display:inline-flex}.rxl-rb-ic-sm svg{width:16px;height:16px}.rxl-rb-lb-sm{font-size:12px}.rxl-rb-small.combo{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.rxl-rb-caret{display:inline-flex;opacity:.55;margin-left:-1px}.rxl-rb-caret svg{width:11px;height:11px}.rxl-rb-vsep{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.rxl-ribbon-gear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.rxl-ribbon-gear:hover{color:#217346;border-color:#217346;background:#f2faf5}.rxl-ribbon-gear .ic{display:inline-flex}.rxl-ribbon-gear .lbl{line-height:1}.rxl-action-toolbar{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.rxl-at-dd{position:relative;display:inline-flex}.rxl-at-tool{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.rxl-at-tool:hover:not(:disabled){background:#f0f2f4}.rxl-at-tool:disabled{color:#bbb;cursor:default}.rxl-at-tool.active{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.rxl-at-tool.open{background:#eef0f2}.rxl-at-ic{display:inline-flex}.rxl-at-ic-e{font-size:13px;line-height:1}.rxl-at-caret{display:inline-flex;opacity:.6;margin-left:-2px}.rxl-at-caret svg{width:12px;height:12px}.rxl-at-divider{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.rxl-at-dd .rxl-tb-menu{top:30px;left:0}.rxl-formula-bar{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.rxl-formula-bar .addr{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.rxl-formula-bar .fx{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.rxl-formula-bar .content{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.rxl-formula-bar textarea.content{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;background:transparent;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;line-height:1.4}.rxl-formula-bar .content-input:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.rxl-render-area{position:relative;flex:1 1 auto;overflow:hidden;min-height:0}.rxl-canvas{position:absolute;inset:0;z-index:1}.rxl-ov{position:absolute;z-index:2;overflow:hidden;pointer-events:none}.rxl-scroller{position:absolute;inset:0;z-index:3;overflow:auto;cursor:cell;outline:none}.rxl-spacer{pointer-events:none}.rxl-ov-slot{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}.rxl-ov-slot>div>*{pointer-events:auto}.rxl-editor-slot{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.rxl-editor-slot>*{pointer-events:auto}.rxl-tooltip{position:absolute;z-index:6;max-width:380px;padding:5px 9px;background:#2b2f33;color:#fff;font-size:12px;line-height:1.4;border-radius:4px;box-shadow:0 2px 8px #00000040;pointer-events:none;white-space:pre-wrap;word-break:break-all}.rxl-tooltip.comment{background:#fdfcdc;color:#333;border:1px solid #d9d27e;max-width:300px}.ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}.ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}.ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.rxl-status-bar{display:flex;align-items:center;gap:16px;height:24px;flex:0 0 auto;padding:0 12px;border-top:1px solid #e2e4e7;background:#fbfbfb;font-size:12px;color:#555}.rxl-status-bar .grow{flex:1}.rxl-tabs{display:flex;align-items:center;gap:2px;height:30px;flex:0 0 auto;padding:0 8px;border-top:1px solid #e2e4e7;background:#f3f4f6;overflow-x:auto}.rxl-tabs button{height:24px;padding:0 12px;border:1px solid transparent;border-bottom:none;border-radius:4px 4px 0 0;background:transparent;font-size:13px;cursor:pointer;white-space:nowrap}.rxl-tabs button.active{background:#fff;border-color:#d6d8da;font-weight:600}.rxl-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;background:#fff;color:#888;font-size:14px}.rxl-state.error{color:#c0392b}.rxl-export-progress{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.rxl-export-progress .card{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.rxl-export-progress .title{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.rxl-export-progress .bar{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.rxl-export-progress .bar .fill{height:100%;background:#21a366;transition:width .12s linear}.rxl-export-progress .bar.indeterminate:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:rxl-export-ind 1.2s infinite}@keyframes rxl-export-ind{0%{transform:translate(-100%)}to{transform:translate(100%)}}.rxl-export-progress .row{display:flex;align-items:center;justify-content:space-between}.rxl-export-progress .pct{color:#6b7280;font-size:12px}.rxl-export-progress .cancel{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.rxl-export-progress .cancel:hover{background:#f5f6f7}.toolbar[data-v-55f10e63]{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.file .modified[data-v-55f10e63]{color:#e8453c;font-weight:700;margin-right:2px}.file[data-v-55f10e63]{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file .tpl[data-v-55f10e63]{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px;white-space:nowrap}.meta[data-v-55f10e63]{color:#888}.meta .rough[data-v-55f10e63]{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.spacer[data-v-55f10e63]{flex:1}.export-wrap[data-v-55f10e63]{position:relative}.export-btn[data-v-55f10e63]{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.export-btn[data-v-55f10e63]:hover{background:#f0f2f4}.export-btn .caret[data-v-55f10e63]{font-size:10px;color:#888}.menu[data-v-55f10e63]{position:absolute;right:0;top:28px;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.menu button[data-v-55f10e63]{text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.menu button[data-v-55f10e63]:hover{background:#f0f4ff}.menu .sep[data-v-55f10e63]{height:1px;background:#eef0f2;margin:4px 2px}.zoom[data-v-55f10e63]{display:flex;align-items:center;gap:4px}.zoom button[data-v-55f10e63]{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.zoom button[data-v-55f10e63]:hover{background:#f0f2f4}.zoom select[data-v-55f10e63]{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.sheet-tabs[data-v-431b6f9c]{display:flex;align-items:stretch;height:30px;background:#f3f4f6;border-top:1px solid #d8dadd;overflow-x:auto;flex:0 0 auto}.tab[data-v-431b6f9c]{border:none;background:transparent;border-right:1px solid #e0e2e5;padding:0 16px;font-size:12.5px;color:#555;cursor:pointer;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.tab[data-v-431b6f9c]:hover{background:#e9ebee}.tab.active[data-v-431b6f9c]{background:#fff;color:#166534;font-weight:600;box-shadow:inset 0 2px #21a366}.dlg-mask[data-v-544df24f]{position:absolute;inset:0;z-index:30;background:#00000052;display:flex;align-items:center;justify-content:center}.dlg[data-v-544df24f]{width:420px;max-width:92%;background:#fff;border-radius:10px;box-shadow:0 12px 40px #00000040;font-size:13px;color:#333;overflow:hidden}.dlg-head[data-v-544df24f]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-weight:600;border-bottom:1px solid #eef0f2}.dlg-head .x[data-v-544df24f]{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:#999}.dlg-head .x[data-v-544df24f]:hover{color:#444}.dlg-body[data-v-544df24f]{padding:8px 16px 4px}.field[data-v-544df24f]{display:flex;align-items:flex-start;gap:12px;padding:9px 0;border-bottom:1px solid #f4f5f6}.field[data-v-544df24f]:last-child{border-bottom:none}.lbl[data-v-544df24f]{width:72px;flex:0 0 auto;color:#666;padding-top:3px}.opts[data-v-544df24f]{display:flex;flex-direction:column;gap:6px}.opts.inline[data-v-544df24f]{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.opts label[data-v-544df24f]{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.opts label.disabled[data-v-544df24f]{color:#bbb;cursor:not-allowed}.hint[data-v-544df24f]{color:#99a;font-size:12px}select[data-v-544df24f]{height:26px;border:1px solid #d0d3d6;border-radius:4px;background:#fff;padding:0 6px}.dlg-foot[data-v-544df24f]{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #eef0f2;background:#fafbfc}.dlg-foot .grow[data-v-544df24f]{flex:1}.dlg-foot button[data-v-544df24f]{height:30px;padding:0 14px;border:1px solid #d0d3d6;border-radius:5px;background:#fff;cursor:pointer;font-size:13px;color:#333}.dlg-foot button[data-v-544df24f]:hover{background:#f0f2f4}.dlg-foot button.ghost[data-v-544df24f]{border-color:transparent;color:#888}.dlg-foot button.primary[data-v-544df24f]{background:#21a366;border-color:#21a366;color:#fff}.dlg-foot button.primary[data-v-544df24f]:hover{background:#1c8f59}.tb-menu[data-v-35d480c3]{position:absolute;top:30px;left:0;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.mi[data-v-35d480c3]{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.mi[data-v-35d480c3]:hover:not(:disabled){background:#f0f4ff}.mi[data-v-35d480c3]:disabled{color:#bbb;cursor:default}.mi.active[data-v-35d480c3]{color:#1a73e8}.mi .ic[data-v-35d480c3]{display:inline-flex;width:16px}.mi .ic-e[data-v-35d480c3]{width:16px;text-align:center}.mi .sw[data-v-35d480c3]{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.sep[data-v-35d480c3]{height:1px;background:#eef0f2;margin:4px 2px}.mi-input[data-v-35d480c3]{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.mi-input[data-v-35d480c3]:focus{border-color:#217346}.action-toolbar[data-v-d4df1c57]{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.measure[data-v-d4df1c57]{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;height:0;overflow:hidden;display:flex;gap:4px}.dd[data-v-d4df1c57]{position:relative;display:inline-flex}.tool[data-v-d4df1c57]{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.tool[data-v-d4df1c57]:hover:not(:disabled){background:#f0f2f4}.tool[data-v-d4df1c57]:disabled{color:#bbb;cursor:default}.tool.active[data-v-d4df1c57]{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.tool.open[data-v-d4df1c57]{background:#eef0f2}.tool .ic[data-v-d4df1c57]{display:inline-flex}.tool .ic-e[data-v-d4df1c57]{font-size:13px;line-height:1}.tool .caret[data-v-d4df1c57]{display:inline-flex;opacity:.6;margin-left:-2px}.tool .caret[data-v-d4df1c57] svg{width:12px;height:12px}.divider[data-v-d4df1c57]{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.ribbon[data-v-669e85fe]{display:flex;flex-direction:column;flex:0 0 auto;background:#fff}.ribbon-tabs[data-v-669e85fe]{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e7e9ec}.ribbon-tab[data-v-669e85fe]{display:inline-flex;align-items:center;padding:0 16px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.ribbon-tab[data-v-669e85fe]:hover{color:#217346}.ribbon-tab.active[data-v-669e85fe]{color:#217346;border-bottom-color:#217346;font-weight:600}.ribbon-tabs-spacer[data-v-669e85fe]{flex:1 1 auto}.ribbon-gear[data-v-669e85fe]{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.ribbon-gear[data-v-669e85fe]:hover{color:#217346;border-color:#217346;background:#f2faf5}.ribbon-gear .ic[data-v-669e85fe]{display:inline-flex}.ribbon-gear .lbl[data-v-669e85fe]{line-height:1}.ribbon-panel[data-v-669e85fe]{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.rb-sep[data-v-669e85fe]{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.rb-group[data-v-669e85fe]{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.rb-group-body[data-v-669e85fe]{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.rb-group-name[data-v-669e85fe]{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.rb-dd[data-v-669e85fe]{position:relative;display:inline-flex}.rb-btn[data-v-669e85fe]{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.rb-btn[data-v-669e85fe]:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.rb-btn[data-v-669e85fe]:disabled{color:#c0c3c7;cursor:default}.rb-btn.active[data-v-669e85fe]{background:#e2efe6;color:#217346;border-color:#bcd9c6}.rb-btn.open[data-v-669e85fe]{background:#e9ece9}.rb-large[data-v-669e85fe]{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.rb-large .ic-lg[data-v-669e85fe]{display:inline-flex}.rb-large .ic-lg[data-v-669e85fe] svg{width:22px;height:22px}.rb-large .lb[data-v-669e85fe]{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.rb-large .caret-inline[data-v-669e85fe]{font-size:9px;opacity:.6}.rb-smalls[data-v-669e85fe]{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.rb-row[data-v-669e85fe]{display:flex;align-items:center;gap:2px}.rb-small[data-v-669e85fe]{height:26px;padding:0 5px;gap:3px}.rb-small .ic-sm[data-v-669e85fe]{display:inline-flex}.rb-small .ic-sm[data-v-669e85fe] svg{width:16px;height:16px}.rb-small .lb-sm[data-v-669e85fe]{font-size:12px}.rb-small.combo[data-v-669e85fe]{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.rb-small .caret[data-v-669e85fe]{display:inline-flex;opacity:.55;margin-left:-1px}.rb-small .caret[data-v-669e85fe] svg{width:11px;height:11px}.rb-vsep[data-v-669e85fe]{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.export-progress-overlay[data-v-629027ad]{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.card[data-v-629027ad]{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.title[data-v-629027ad]{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.bar[data-v-629027ad]{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.bar .fill[data-v-629027ad]{height:100%;background:#21a366;transition:width .12s linear}.bar.indeterminate[data-v-629027ad]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:ind-629027ad 1.2s infinite}@keyframes ind-629027ad{0%{transform:translate(-100%)}to{transform:translate(100%)}}.row[data-v-629027ad]{display:flex;align-items:center;justify-content:space-between}.pct[data-v-629027ad]{color:#6b7280;font-size:12px}.cancel[data-v-629027ad]{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.cancel[data-v-629027ad]:hover{background:#f5f6f7}.excel-viewer[data-v-d5f5d23e]{display:flex;flex-direction:column;height:100%;width:100%;background:#fff;overflow:hidden}.render-area[data-v-d5f5d23e]{position:relative;flex:1 1 auto;overflow:hidden;min-height:0}.grid-canvas[data-v-d5f5d23e]{position:absolute;inset:0;z-index:1}.ov[data-v-d5f5d23e]{position:absolute;z-index:2;overflow:hidden;pointer-events:none}.ov-slot[data-v-d5f5d23e]{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}.ov-slot[data-v-d5f5d23e] *{pointer-events:auto}.editor-slot[data-v-d5f5d23e]{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.editor-slot[data-v-d5f5d23e] *{pointer-events:auto}.scroller[data-v-d5f5d23e]{position:absolute;inset:0;z-index:3;overflow:auto;cursor:cell;outline:none}.spacer[data-v-d5f5d23e]{pointer-events:none}.formula-bar[data-v-d5f5d23e]{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.formula-bar .addr[data-v-d5f5d23e]{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.formula-bar .fx[data-v-d5f5d23e]{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.formula-bar .content[data-v-d5f5d23e]{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.formula-bar textarea.content[data-v-d5f5d23e]{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;align-items:stretch;line-height:1.4}.formula-bar .content-input[data-v-d5f5d23e]{border:none;outline:none;height:100%;background:transparent;font-size:13px}.formula-bar .content-input[data-v-d5f5d23e]:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.status-bar[data-v-d5f5d23e]{display:flex;align-items:center;gap:16px;height:24px;flex:0 0 auto;padding:0 12px;border-top:1px solid #e2e4e7;background:#fbfbfb;font-size:12px;color:#555}.status-bar .grow[data-v-d5f5d23e]{flex:1}.status-bar .sel[data-v-d5f5d23e]{color:#888}.cell-tooltip[data-v-d5f5d23e]{position:absolute;z-index:6;max-width:380px;padding:5px 9px;background:#2b2f33;color:#fff;font-size:12px;line-height:1.4;border-radius:4px;box-shadow:0 2px 8px #00000040;pointer-events:none;white-space:pre-wrap;word-break:break-all}.cell-tooltip.comment[data-v-d5f5d23e]{background:#fdfcdc;color:#333;border:1px solid #d9d27e;box-shadow:0 2px 10px #0000002e;max-width:300px}[data-v-d5f5d23e] .ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}[data-v-d5f5d23e] .ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}[data-v-d5f5d23e] .ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-v-d5f5d23e] .ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.state[data-v-d5f5d23e]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;background:#fff;color:#888;font-size:14px}.state.error[data-v-d5f5d23e]{color:#c0392b}.state.hint[data-v-d5f5d23e]{color:#aaa}.loader[data-v-d5f5d23e]{width:260px;max-width:60%}.loader-label[data-v-d5f5d23e]{font-size:13px;color:#555;margin-bottom:8px;text-align:center}.loader-track[data-v-d5f5d23e]{height:6px;border-radius:3px;background:#eceef0;overflow:hidden}.loader-fill[data-v-d5f5d23e]{height:100%;background:#21a366;border-radius:3px;transition:width .15s ease}.loader-fill.indeterminate[data-v-d5f5d23e]{width:40%;transition:none;animation:loader-pulse-d5f5d23e 1.1s ease-in-out infinite}@keyframes loader-pulse-d5f5d23e{0%{margin-left:-40%}to{margin-left:100%}}
|
|
1
|
+
.rxl{display:flex;flex-direction:column;height:100%;width:100%;background:#fff;overflow:hidden}.rxl-toolbar{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.rxl-toolbar .file{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rxl-toolbar .file .modified{color:#e8453c;font-weight:700;margin-right:2px}.rxl-toolbar .tpl{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px}.rxl-toolbar .meta{color:#888}.rxl-toolbar .meta .rough{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.rxl-toolbar .spacer{flex:1}.rxl-export-wrap{position:relative}.rxl-export-btn{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.rxl-export-btn:hover{background:#f0f2f4}.rxl-export-btn .caret{font-size:10px;color:#888}.rxl-tb-menu{position:absolute;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.rxl-tb-menu.header-menu{right:0;top:28px}.rxl-tb-menu .mi{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.rxl-tb-menu .mi:hover:not(:disabled){background:#f0f4ff}.rxl-tb-menu .mi:disabled{color:#bbb;cursor:default}.rxl-tb-menu .mi.active{color:#1a73e8}.rxl-tb-menu .mi .ic{display:inline-flex;width:16px}.rxl-tb-menu .mi .ic-e{width:16px;text-align:center}.rxl-tb-menu .mi .sw{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.rxl-tb-menu .sep{height:1px;background:#eef0f2;margin:4px 2px}.rxl-tb-menu .mi-input{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.rxl-tb-menu .mi-input:focus{border-color:#217346}.rxl-zoom{display:flex;align-items:center;gap:4px}.rxl-zoom button{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.rxl-zoom button:hover{background:#f0f2f4}.rxl-zoom select{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.rxl-ribbon-tabs{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e2e4e7;flex:0 0 auto}.rxl-ribbon-tab{display:inline-flex;align-items:center;padding:0 14px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.rxl-ribbon-tab:hover{color:#217346}.rxl-ribbon-tab.active{color:#217346;border-bottom-color:#217346;font-weight:600}.rxl-rb-panel{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible;flex:0 0 auto}.rxl-rb-sep{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.rxl-rb-group{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.rxl-rb-body{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.rxl-rb-gname{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.rxl-rb-smalls{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.rxl-rb-row{display:flex;align-items:center;gap:2px}.rxl-rb-btn{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.rxl-rb-btn:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.rxl-rb-btn:disabled{color:#c0c3c7;cursor:default}.rxl-rb-btn.active{background:#e2efe6;color:#217346;border-color:#bcd9c6}.rxl-rb-btn.open{background:#e9ece9}.rxl-rb-large{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.rxl-rb-ic-lg{display:inline-flex}.rxl-rb-ic-lg svg{width:22px;height:22px}.rxl-rb-lb{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.rxl-rb-caret-inline{font-size:9px;opacity:.6}.rxl-rb-small{height:26px;padding:0 5px;gap:3px}.rxl-rb-ic-sm{display:inline-flex}.rxl-rb-ic-sm svg{width:16px;height:16px}.rxl-rb-lb-sm{font-size:12px}.rxl-rb-small.combo{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.rxl-rb-caret{display:inline-flex;opacity:.55;margin-left:-1px}.rxl-rb-caret svg{width:11px;height:11px}.rxl-rb-vsep{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.rxl-ribbon-gear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.rxl-ribbon-gear:hover{color:#217346;border-color:#217346;background:#f2faf5}.rxl-ribbon-gear .ic{display:inline-flex}.rxl-ribbon-gear .lbl{line-height:1}.rxl-action-toolbar{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.rxl-at-dd{position:relative;display:inline-flex}.rxl-at-tool{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.rxl-at-tool:hover:not(:disabled){background:#f0f2f4}.rxl-at-tool:disabled{color:#bbb;cursor:default}.rxl-at-tool.active{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.rxl-at-tool.open{background:#eef0f2}.rxl-at-ic{display:inline-flex}.rxl-at-ic-e{font-size:13px;line-height:1}.rxl-at-caret{display:inline-flex;opacity:.6;margin-left:-2px}.rxl-at-caret svg{width:12px;height:12px}.rxl-at-divider{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.rxl-at-dd .rxl-tb-menu{top:30px;left:0}.rxl-formula-bar{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.rxl-formula-bar .addr{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.rxl-formula-bar .fx{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.rxl-formula-bar .content{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.rxl-formula-bar textarea.content{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;background:transparent;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;line-height:1.4}.rxl-formula-bar .content-input:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.rxl-render-area{position:relative;flex:1 1 auto;overflow:hidden;min-height:0}.rxl-canvas{position:absolute;inset:0;z-index:1}.rxl-ov{position:absolute;z-index:2;overflow:hidden;pointer-events:none}.rxl-scroller{position:absolute;inset:0;z-index:3;overflow:auto;cursor:cell;outline:none;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.rxl-spacer{pointer-events:none}.rxl-ov-slot{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}.rxl-ov-slot>div>*{pointer-events:auto}.rxl-editor-slot{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.rxl-editor-slot>*{pointer-events:auto}.rxl-tooltip{position:absolute;z-index:6;max-width:380px;padding:5px 9px;background:#2b2f33;color:#fff;font-size:12px;line-height:1.4;border-radius:4px;box-shadow:0 2px 8px #00000040;pointer-events:none;white-space:pre-wrap;word-break:break-all}.rxl-tooltip.comment{background:#fdfcdc;color:#333;border:1px solid #d9d27e;max-width:300px}.ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}.ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}.ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.rxl-status-bar{display:flex;align-items:center;gap:16px;height:24px;flex:0 0 auto;padding:0 12px;border-top:1px solid #e2e4e7;background:#fbfbfb;font-size:12px;color:#555}.rxl-status-bar .grow{flex:1}.rxl-tabs{display:flex;align-items:center;gap:2px;height:30px;flex:0 0 auto;padding:0 8px;border-top:1px solid #e2e4e7;background:#f3f4f6;overflow-x:auto}.rxl-tabs button{height:24px;padding:0 12px;border:1px solid transparent;border-bottom:none;border-radius:4px 4px 0 0;background:transparent;font-size:13px;cursor:pointer;white-space:nowrap}.rxl-tabs button.active{background:#fff;border-color:#d6d8da;font-weight:600}.rxl-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;background:#fff;color:#888;font-size:14px}.rxl-state.error{color:#c0392b}.rxl-export-progress{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.rxl-export-progress .card{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.rxl-export-progress .title{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.rxl-export-progress .bar{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.rxl-export-progress .bar .fill{height:100%;background:#21a366;transition:width .12s linear}.rxl-export-progress .bar.indeterminate:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:rxl-export-ind 1.2s infinite}@keyframes rxl-export-ind{0%{transform:translate(-100%)}to{transform:translate(100%)}}.rxl-export-progress .row{display:flex;align-items:center;justify-content:space-between}.rxl-export-progress .pct{color:#6b7280;font-size:12px}.rxl-export-progress .cancel{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.rxl-export-progress .cancel:hover{background:#f5f6f7}.toolbar[data-v-55f10e63]{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.file .modified[data-v-55f10e63]{color:#e8453c;font-weight:700;margin-right:2px}.file[data-v-55f10e63]{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file .tpl[data-v-55f10e63]{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px;white-space:nowrap}.meta[data-v-55f10e63]{color:#888}.meta .rough[data-v-55f10e63]{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.spacer[data-v-55f10e63]{flex:1}.export-wrap[data-v-55f10e63]{position:relative}.export-btn[data-v-55f10e63]{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.export-btn[data-v-55f10e63]:hover{background:#f0f2f4}.export-btn .caret[data-v-55f10e63]{font-size:10px;color:#888}.menu[data-v-55f10e63]{position:absolute;right:0;top:28px;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.menu button[data-v-55f10e63]{text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.menu button[data-v-55f10e63]:hover{background:#f0f4ff}.menu .sep[data-v-55f10e63]{height:1px;background:#eef0f2;margin:4px 2px}.zoom[data-v-55f10e63]{display:flex;align-items:center;gap:4px}.zoom button[data-v-55f10e63]{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.zoom button[data-v-55f10e63]:hover{background:#f0f2f4}.zoom select[data-v-55f10e63]{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.sheet-tabs[data-v-431b6f9c]{display:flex;align-items:stretch;height:30px;background:#f3f4f6;border-top:1px solid #d8dadd;overflow-x:auto;flex:0 0 auto}.tab[data-v-431b6f9c]{border:none;background:transparent;border-right:1px solid #e0e2e5;padding:0 16px;font-size:12.5px;color:#555;cursor:pointer;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.tab[data-v-431b6f9c]:hover{background:#e9ebee}.tab.active[data-v-431b6f9c]{background:#fff;color:#166534;font-weight:600;box-shadow:inset 0 2px #21a366}.dlg-mask[data-v-544df24f]{position:absolute;inset:0;z-index:30;background:#00000052;display:flex;align-items:center;justify-content:center}.dlg[data-v-544df24f]{width:420px;max-width:92%;background:#fff;border-radius:10px;box-shadow:0 12px 40px #00000040;font-size:13px;color:#333;overflow:hidden}.dlg-head[data-v-544df24f]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-weight:600;border-bottom:1px solid #eef0f2}.dlg-head .x[data-v-544df24f]{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:#999}.dlg-head .x[data-v-544df24f]:hover{color:#444}.dlg-body[data-v-544df24f]{padding:8px 16px 4px}.field[data-v-544df24f]{display:flex;align-items:flex-start;gap:12px;padding:9px 0;border-bottom:1px solid #f4f5f6}.field[data-v-544df24f]:last-child{border-bottom:none}.lbl[data-v-544df24f]{width:72px;flex:0 0 auto;color:#666;padding-top:3px}.opts[data-v-544df24f]{display:flex;flex-direction:column;gap:6px}.opts.inline[data-v-544df24f]{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.opts label[data-v-544df24f]{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.opts label.disabled[data-v-544df24f]{color:#bbb;cursor:not-allowed}.hint[data-v-544df24f]{color:#99a;font-size:12px}select[data-v-544df24f]{height:26px;border:1px solid #d0d3d6;border-radius:4px;background:#fff;padding:0 6px}.dlg-foot[data-v-544df24f]{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #eef0f2;background:#fafbfc}.dlg-foot .grow[data-v-544df24f]{flex:1}.dlg-foot button[data-v-544df24f]{height:30px;padding:0 14px;border:1px solid #d0d3d6;border-radius:5px;background:#fff;cursor:pointer;font-size:13px;color:#333}.dlg-foot button[data-v-544df24f]:hover{background:#f0f2f4}.dlg-foot button.ghost[data-v-544df24f]{border-color:transparent;color:#888}.dlg-foot button.primary[data-v-544df24f]{background:#21a366;border-color:#21a366;color:#fff}.dlg-foot button.primary[data-v-544df24f]:hover{background:#1c8f59}.tb-menu[data-v-35d480c3]{position:absolute;top:30px;left:0;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.mi[data-v-35d480c3]{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.mi[data-v-35d480c3]:hover:not(:disabled){background:#f0f4ff}.mi[data-v-35d480c3]:disabled{color:#bbb;cursor:default}.mi.active[data-v-35d480c3]{color:#1a73e8}.mi .ic[data-v-35d480c3]{display:inline-flex;width:16px}.mi .ic-e[data-v-35d480c3]{width:16px;text-align:center}.mi .sw[data-v-35d480c3]{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.sep[data-v-35d480c3]{height:1px;background:#eef0f2;margin:4px 2px}.mi-input[data-v-35d480c3]{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.mi-input[data-v-35d480c3]:focus{border-color:#217346}.action-toolbar[data-v-d4df1c57]{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.measure[data-v-d4df1c57]{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;height:0;overflow:hidden;display:flex;gap:4px}.dd[data-v-d4df1c57]{position:relative;display:inline-flex}.tool[data-v-d4df1c57]{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.tool[data-v-d4df1c57]:hover:not(:disabled){background:#f0f2f4}.tool[data-v-d4df1c57]:disabled{color:#bbb;cursor:default}.tool.active[data-v-d4df1c57]{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.tool.open[data-v-d4df1c57]{background:#eef0f2}.tool .ic[data-v-d4df1c57]{display:inline-flex}.tool .ic-e[data-v-d4df1c57]{font-size:13px;line-height:1}.tool .caret[data-v-d4df1c57]{display:inline-flex;opacity:.6;margin-left:-2px}.tool .caret[data-v-d4df1c57] svg{width:12px;height:12px}.divider[data-v-d4df1c57]{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.ribbon[data-v-669e85fe]{display:flex;flex-direction:column;flex:0 0 auto;background:#fff}.ribbon-tabs[data-v-669e85fe]{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e7e9ec}.ribbon-tab[data-v-669e85fe]{display:inline-flex;align-items:center;padding:0 16px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.ribbon-tab[data-v-669e85fe]:hover{color:#217346}.ribbon-tab.active[data-v-669e85fe]{color:#217346;border-bottom-color:#217346;font-weight:600}.ribbon-tabs-spacer[data-v-669e85fe]{flex:1 1 auto}.ribbon-gear[data-v-669e85fe]{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.ribbon-gear[data-v-669e85fe]:hover{color:#217346;border-color:#217346;background:#f2faf5}.ribbon-gear .ic[data-v-669e85fe]{display:inline-flex}.ribbon-gear .lbl[data-v-669e85fe]{line-height:1}.ribbon-panel[data-v-669e85fe]{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.rb-sep[data-v-669e85fe]{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.rb-group[data-v-669e85fe]{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.rb-group-body[data-v-669e85fe]{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.rb-group-name[data-v-669e85fe]{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.rb-dd[data-v-669e85fe]{position:relative;display:inline-flex}.rb-btn[data-v-669e85fe]{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.rb-btn[data-v-669e85fe]:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.rb-btn[data-v-669e85fe]:disabled{color:#c0c3c7;cursor:default}.rb-btn.active[data-v-669e85fe]{background:#e2efe6;color:#217346;border-color:#bcd9c6}.rb-btn.open[data-v-669e85fe]{background:#e9ece9}.rb-large[data-v-669e85fe]{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.rb-large .ic-lg[data-v-669e85fe]{display:inline-flex}.rb-large .ic-lg[data-v-669e85fe] svg{width:22px;height:22px}.rb-large .lb[data-v-669e85fe]{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.rb-large .caret-inline[data-v-669e85fe]{font-size:9px;opacity:.6}.rb-smalls[data-v-669e85fe]{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.rb-row[data-v-669e85fe]{display:flex;align-items:center;gap:2px}.rb-small[data-v-669e85fe]{height:26px;padding:0 5px;gap:3px}.rb-small .ic-sm[data-v-669e85fe]{display:inline-flex}.rb-small .ic-sm[data-v-669e85fe] svg{width:16px;height:16px}.rb-small .lb-sm[data-v-669e85fe]{font-size:12px}.rb-small.combo[data-v-669e85fe]{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.rb-small .caret[data-v-669e85fe]{display:inline-flex;opacity:.55;margin-left:-1px}.rb-small .caret[data-v-669e85fe] svg{width:11px;height:11px}.rb-vsep[data-v-669e85fe]{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.export-progress-overlay[data-v-629027ad]{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.card[data-v-629027ad]{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.title[data-v-629027ad]{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.bar[data-v-629027ad]{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.bar .fill[data-v-629027ad]{height:100%;background:#21a366;transition:width .12s linear}.bar.indeterminate[data-v-629027ad]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:ind-629027ad 1.2s infinite}@keyframes ind-629027ad{0%{transform:translate(-100%)}to{transform:translate(100%)}}.row[data-v-629027ad]{display:flex;align-items:center;justify-content:space-between}.pct[data-v-629027ad]{color:#6b7280;font-size:12px}.cancel[data-v-629027ad]{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.cancel[data-v-629027ad]:hover{background:#f5f6f7}.excel-viewer[data-v-fb0591c2]{display:flex;flex-direction:column;height:100%;width:100%;background:#fff;overflow:hidden}.render-area[data-v-fb0591c2]{position:relative;flex:1 1 auto;overflow:hidden;min-height:0}.grid-canvas[data-v-fb0591c2]{position:absolute;inset:0;z-index:1}.ov[data-v-fb0591c2]{position:absolute;z-index:2;overflow:hidden;pointer-events:none}.ov-slot[data-v-fb0591c2]{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}.ov-slot[data-v-fb0591c2] *{pointer-events:auto}.editor-slot[data-v-fb0591c2]{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.editor-slot[data-v-fb0591c2] *{pointer-events:auto}.scroller[data-v-fb0591c2]{position:absolute;inset:0;z-index:3;overflow:auto;cursor:cell;outline:none;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.spacer[data-v-fb0591c2]{pointer-events:none}.formula-bar[data-v-fb0591c2]{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.formula-bar .addr[data-v-fb0591c2]{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.formula-bar .fx[data-v-fb0591c2]{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.formula-bar .content[data-v-fb0591c2]{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.formula-bar textarea.content[data-v-fb0591c2]{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;align-items:stretch;line-height:1.4}.formula-bar .content-input[data-v-fb0591c2]{border:none;outline:none;height:100%;background:transparent;font-size:13px}.formula-bar .content-input[data-v-fb0591c2]:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.status-bar[data-v-fb0591c2]{display:flex;align-items:center;gap:16px;height:24px;flex:0 0 auto;padding:0 12px;border-top:1px solid #e2e4e7;background:#fbfbfb;font-size:12px;color:#555}.status-bar .grow[data-v-fb0591c2]{flex:1}.status-bar .sel[data-v-fb0591c2]{color:#888}.cell-tooltip[data-v-fb0591c2]{position:absolute;z-index:6;max-width:380px;padding:5px 9px;background:#2b2f33;color:#fff;font-size:12px;line-height:1.4;border-radius:4px;box-shadow:0 2px 8px #00000040;pointer-events:none;white-space:pre-wrap;word-break:break-all}.cell-tooltip.comment[data-v-fb0591c2]{background:#fdfcdc;color:#333;border:1px solid #d9d27e;box-shadow:0 2px 10px #0000002e;max-width:300px}[data-v-fb0591c2] .ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}[data-v-fb0591c2] .ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}[data-v-fb0591c2] .ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-v-fb0591c2] .ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.state[data-v-fb0591c2]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;background:#fff;color:#888;font-size:14px}.state.error[data-v-fb0591c2]{color:#c0392b}.state.hint[data-v-fb0591c2]{color:#aaa}.loader[data-v-fb0591c2]{width:260px;max-width:60%}.loader-label[data-v-fb0591c2]{font-size:13px;color:#555;margin-bottom:8px;text-align:center}.loader-track[data-v-fb0591c2]{height:6px;border-radius:3px;background:#eceef0;overflow:hidden}.loader-fill[data-v-fb0591c2]{height:100%;background:#21a366;border-radius:3px;transition:width .15s ease}.loader-fill.indeterminate[data-v-fb0591c2]{width:40%;transition:none;animation:loader-pulse-fb0591c2 1.1s ease-in-out infinite}@keyframes loader-pulse-fb0591c2{0%{margin-left:-40%}to{margin-left:100%}}
|
package/dist/vue2.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ooxml-excel-viewer{display:flex;flex-direction:column;height:100%;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--green: #21a366;background:#fff}.ooxml-excel-viewer .ov-toolbar{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.ooxml-excel-viewer .ov-toolbar .file{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-excel-viewer .ov-toolbar .file .modified{color:#e8453c;font-weight:700;margin-right:2px}.ooxml-excel-viewer .ov-toolbar .tpl{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px}.ooxml-excel-viewer .ov-toolbar .meta{color:#888}.ooxml-excel-viewer .ov-toolbar .meta .rough{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.ooxml-excel-viewer .ov-toolbar .spacer{flex:1}.ooxml-excel-viewer .ov-export-wrap{position:relative}.ooxml-excel-viewer .ov-export-btn{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.ooxml-excel-viewer .ov-export-btn:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-export-btn .caret{font-size:10px;color:#888}.ooxml-excel-viewer .ov-tb-menu{position:absolute;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.ooxml-excel-viewer .ov-tb-menu.header-menu{right:0;top:28px}.ooxml-excel-viewer .ov-tb-menu .mi{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.ooxml-excel-viewer .ov-tb-menu .mi:hover:not(:disabled){background:#f0f4ff}.ooxml-excel-viewer .ov-tb-menu .mi:disabled{color:#bbb;cursor:default}.ooxml-excel-viewer .ov-tb-menu .mi.active{color:#1a73e8}.ooxml-excel-viewer .ov-tb-menu .mi .ic{display:inline-flex;width:16px}.ooxml-excel-viewer .ov-tb-menu .mi .ic-e{width:16px;text-align:center}.ooxml-excel-viewer .ov-tb-menu .mi .sw{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.ooxml-excel-viewer .ov-tb-menu .sep{height:1px;background:#eef0f2;margin:4px 2px}.ooxml-excel-viewer .ov-tb-menu .mi-input{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.ooxml-excel-viewer .ov-tb-menu .mi-input:focus{border-color:#217346}.ooxml-excel-viewer .ov-zoom{display:flex;align-items:center;gap:4px}.ooxml-excel-viewer .ov-zoom button{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.ooxml-excel-viewer .ov-zoom button:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-zoom select{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.ooxml-excel-viewer .ov-ribbon-tabs{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e2e4e7;flex:0 0 auto}.ooxml-excel-viewer .ov-ribbon-tab{display:inline-flex;align-items:center;padding:0 14px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.ooxml-excel-viewer .ov-ribbon-tab:hover{color:#217346}.ooxml-excel-viewer .ov-ribbon-tab.active{color:#217346;border-bottom-color:#217346;font-weight:600}.ooxml-excel-viewer .ov-rb-panel{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible;flex:0 0 auto}.ooxml-excel-viewer .ov-rb-sep{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.ooxml-excel-viewer .ov-rb-group{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.ooxml-excel-viewer .ov-rb-body{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.ooxml-excel-viewer .ov-rb-gname{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.ooxml-excel-viewer .ov-rb-smalls{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.ooxml-excel-viewer .ov-rb-row{display:flex;align-items:center;gap:2px}.ooxml-excel-viewer .ov-rb-btn{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.ooxml-excel-viewer .ov-rb-btn:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.ooxml-excel-viewer .ov-rb-btn:disabled{color:#c0c3c7;cursor:default}.ooxml-excel-viewer .ov-rb-btn.active{background:#e2efe6;color:#217346;border-color:#bcd9c6}.ooxml-excel-viewer .ov-rb-btn.open{background:#e9ece9}.ooxml-excel-viewer .ov-rb-large{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.ooxml-excel-viewer .ov-rb-ic-lg{display:inline-flex}.ooxml-excel-viewer .ov-rb-ic-lg svg{width:22px;height:22px}.ooxml-excel-viewer .ov-rb-lb{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.ooxml-excel-viewer .ov-rb-caret-inline{font-size:9px;opacity:.6}.ooxml-excel-viewer .ov-rb-small{height:26px;padding:0 5px;gap:3px}.ooxml-excel-viewer .ov-rb-ic-sm{display:inline-flex}.ooxml-excel-viewer .ov-rb-ic-sm svg{width:16px;height:16px}.ooxml-excel-viewer .ov-rb-lb-sm{font-size:12px}.ooxml-excel-viewer .ov-rb-small.combo{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.ooxml-excel-viewer .ov-rb-caret{display:inline-flex;opacity:.55;margin-left:-1px}.ooxml-excel-viewer .ov-rb-caret svg{width:11px;height:11px}.ooxml-excel-viewer .ov-rb-vsep{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.ooxml-excel-viewer .ov-ribbon-spacer{flex:1 1 auto}.ooxml-excel-viewer .ov-ribbon-gear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.ooxml-excel-viewer .ov-ribbon-gear:hover{color:#217346;border-color:#217346;background:#f2faf5}.ooxml-excel-viewer .ov-ribbon-gear .ic{display:inline-flex}.ooxml-excel-viewer .ov-ribbon-gear .lbl{line-height:1}.ooxml-excel-viewer .ov-action-toolbar{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.ooxml-excel-viewer .ov-at-dd{position:relative;display:inline-flex}.ooxml-excel-viewer .ov-at-tool{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.ooxml-excel-viewer .ov-at-tool:hover:not(:disabled){background:#f0f2f4}.ooxml-excel-viewer .ov-at-tool:disabled{color:#bbb;cursor:default}.ooxml-excel-viewer .ov-at-tool.active{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.ooxml-excel-viewer .ov-at-tool.open{background:#eef0f2}.ooxml-excel-viewer .ov-at-ic{display:inline-flex}.ooxml-excel-viewer .ov-at-ic-e{font-size:13px;line-height:1}.ooxml-excel-viewer .ov-at-caret{display:inline-flex;opacity:.6;margin-left:-2px}.ooxml-excel-viewer .ov-at-caret svg{width:12px;height:12px}.ooxml-excel-viewer .ov-at-divider{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.ooxml-excel-viewer .ov-at-dd .ov-tb-menu{top:30px;left:0}.ooxml-excel-viewer .ov-formula-bar{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.ooxml-excel-viewer .ov-formula-bar .addr{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.ooxml-excel-viewer .ov-formula-bar .fx{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.ooxml-excel-viewer .ov-formula-bar .content{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.ooxml-excel-viewer .ov-formula-bar textarea.content{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;background:transparent;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;line-height:1.4}.ooxml-excel-viewer .ov-formula-bar .content-input:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.ooxml-excel-viewer .ov-render-area{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.ooxml-excel-viewer .ov-grid-canvas{position:absolute;inset:0;display:block}.ooxml-excel-viewer .ov{position:absolute;inset:0;pointer-events:none;overflow:hidden}.ooxml-excel-viewer .ov-plugin{z-index:5}.ooxml-excel-viewer .ov-editor-slot{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.ooxml-excel-viewer .ov-editor-slot>*{pointer-events:auto}.ooxml-excel-viewer .ov-scroller{position:absolute;inset:0;z-index:7;overflow:auto;outline:none}.ooxml-excel-viewer .ov-spacer{position:relative;pointer-events:none}.ooxml-excel-viewer .ov-state{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:#ffffffd9;color:#444;font-size:13px;pointer-events:none}.ooxml-excel-viewer .ov-state-error{color:#c1272d;font-weight:600}.ooxml-excel-viewer .ov-state-hint{color:#888}.ooxml-excel-viewer .ov-loader{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:240px}.ooxml-excel-viewer .ov-loader-label{font-size:13px;color:#21a366;font-weight:600}.ooxml-excel-viewer .ov-loader-track{width:240px;height:6px;background:#e2e4e7;border-radius:3px;overflow:hidden}.ooxml-excel-viewer .ov-loader-fill{height:100%;background:#21a366;transition:width .18s ease}.ooxml-excel-viewer .ov-loader-fill.indeterminate{width:35%;animation:ov-loader-slide 1.2s ease-in-out infinite}@keyframes ov-loader-slide{0%{transform:translate(-100%)}to{transform:translate(380%)}}.ooxml-excel-viewer .ov-status-bar{display:flex;align-items:center;gap:12px;padding:0 12px;height:26px;flex:0 0 auto;background:#f5f7fa;border-top:1px solid #e2e4e7;font-size:12px;color:#444}.ooxml-excel-viewer .ov-status-bar .sel{color:#888;font-family:Consolas,monospace}.ooxml-excel-viewer .ov-status-bar .grow{flex:1 1 auto}.ooxml-excel-viewer .ov-cell-tooltip{position:absolute;z-index:9;background:#333;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;pointer-events:none;max-width:320px;box-shadow:0 2px 8px #0003;white-space:pre-wrap}.ooxml-excel-viewer .ov-cell-tooltip.comment{background:#fffce8;color:#5a4a00;border:1px solid #f0c542}.ooxml-excel-viewer .ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}.ooxml-excel-viewer .ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}.ooxml-excel-viewer .ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-excel-viewer .ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.ov-export-progress{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.ov-export-progress .card{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.ov-export-progress .title{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.ov-export-progress .bar{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.ov-export-progress .bar .fill{height:100%;background:#21a366;transition:width .12s linear}.ov-export-progress .bar.indeterminate:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:ov-export-ind 1.2s infinite}@keyframes ov-export-ind{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ov-export-progress .row{display:flex;align-items:center;justify-content:space-between}.ov-export-progress .pct{color:#6b7280;font-size:12px}.ov-export-progress .cancel{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.ov-export-progress .cancel:hover{background:#f5f6f7}.ooxml-excel-viewer .ov-user-slot{position:absolute;inset:0;pointer-events:none;z-index:5}.ooxml-excel-viewer .ov-user-slot>*{pointer-events:auto}.ooxml-excel-viewer .ov-dlg-mask{position:absolute;inset:0;z-index:30;background:#00000052;display:flex;align-items:center;justify-content:center}.ooxml-excel-viewer .ov-dlg{width:420px;max-width:92%;background:#fff;border-radius:10px;box-shadow:0 12px 40px #00000040;font-size:13px;color:#333;overflow:hidden}.ooxml-excel-viewer .ov-dlg-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-weight:600;border-bottom:1px solid #eef0f2}.ooxml-excel-viewer .ov-dlg-head .x{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:#999}.ooxml-excel-viewer .ov-dlg-head .x:hover{color:#444}.ooxml-excel-viewer .ov-dlg-body{padding:8px 16px 4px}.ooxml-excel-viewer .ov-dlg-body .field{display:flex;align-items:flex-start;gap:12px;padding:9px 0;border-bottom:1px solid #f4f5f6}.ooxml-excel-viewer .ov-dlg-body .field:last-child{border-bottom:none}.ooxml-excel-viewer .ov-dlg-body .lbl{width:72px;flex:0 0 auto;color:#666;padding-top:3px}.ooxml-excel-viewer .ov-dlg-body .opts{display:flex;flex-direction:column;gap:6px}.ooxml-excel-viewer .ov-dlg-body .opts.inline{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.ooxml-excel-viewer .ov-dlg-body .opts label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.ooxml-excel-viewer .ov-dlg-body .opts label.disabled{color:#bbb;cursor:not-allowed}.ooxml-excel-viewer .ov-dlg-body .hint{color:#99a;font-size:12px}.ooxml-excel-viewer .ov-dlg-body select{height:26px;border:1px solid #d0d3d6;border-radius:4px;background:#fff;padding:0 6px}.ooxml-excel-viewer .ov-dlg-foot{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #eef0f2;background:#fafbfc}.ooxml-excel-viewer .ov-dlg-foot .grow{flex:1}.ooxml-excel-viewer .ov-dlg-foot button{height:30px;padding:0 14px;border:1px solid #d0d3d6;border-radius:5px;background:#fff;cursor:pointer;font-size:13px;color:#333}.ooxml-excel-viewer .ov-dlg-foot button:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-dlg-foot button.ghost{border-color:transparent;color:#888}.ooxml-excel-viewer .ov-dlg-foot button.primary{background:#21a366;border-color:#21a366;color:#fff}.ooxml-excel-viewer .ov-dlg-foot button.primary:hover{background:#1c8f59}.ooxml-excel-viewer .ov-sheet-tabs{display:flex;align-items:stretch;gap:2px;padding:4px 8px;background:#f5f7fa;border-top:1px solid #e2e4e7;flex:0 0 auto;overflow-x:auto}.ooxml-excel-viewer .ov-sheet-tabs .tab{background:transparent;border:1px solid transparent;color:#707481;padding:4px 12px;border-radius:4px 4px 0 0;font-size:12px;cursor:pointer;white-space:nowrap}.ooxml-excel-viewer .ov-sheet-tabs .tab:hover{background:#eef3fe}.ooxml-excel-viewer .ov-sheet-tabs .tab.active{background:#fff;color:#21a366;font-weight:600;border-color:#e2e4e7;border-bottom-color:#fff}
|
|
1
|
+
.ooxml-excel-viewer{display:flex;flex-direction:column;height:100%;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--green: #21a366;background:#fff}.ooxml-excel-viewer .ov-toolbar{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:#fbfbfb;border-bottom:1px solid #e2e4e7;font-size:13px;color:#444;flex:0 0 auto}.ooxml-excel-viewer .ov-toolbar .file{font-weight:600;max-width:460px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-excel-viewer .ov-toolbar .file .modified{color:#e8453c;font-weight:700;margin-right:2px}.ooxml-excel-viewer .ov-toolbar .tpl{font-weight:400;color:#6b7280;font-size:12px;margin-left:4px}.ooxml-excel-viewer .ov-toolbar .meta{color:#888}.ooxml-excel-viewer .ov-toolbar .meta .rough{font-size:10px;color:#b0b4ba;margin-left:2px;vertical-align:1px}.ooxml-excel-viewer .ov-toolbar .spacer{flex:1}.ooxml-excel-viewer .ov-export-wrap{position:relative}.ooxml-excel-viewer .ov-export-btn{height:24px;padding:0 10px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:13px;color:#444;display:flex;align-items:center;gap:4px}.ooxml-excel-viewer .ov-export-btn:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-export-btn .caret{font-size:10px;color:#888}.ooxml-excel-viewer .ov-tb-menu{position:absolute;z-index:20;min-width:160px;background:#fff;border:1px solid #d8dbde;border-radius:6px;box-shadow:0 4px 16px #00000024;padding:4px;display:flex;flex-direction:column}.ooxml-excel-viewer .ov-tb-menu.header-menu{right:0;top:28px}.ooxml-excel-viewer .ov-tb-menu .mi{display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;border:none;background:none;border-radius:4px;cursor:pointer;font-size:13px;color:#333;white-space:nowrap}.ooxml-excel-viewer .ov-tb-menu .mi:hover:not(:disabled){background:#f0f4ff}.ooxml-excel-viewer .ov-tb-menu .mi:disabled{color:#bbb;cursor:default}.ooxml-excel-viewer .ov-tb-menu .mi.active{color:#1a73e8}.ooxml-excel-viewer .ov-tb-menu .mi .ic{display:inline-flex;width:16px}.ooxml-excel-viewer .ov-tb-menu .mi .ic-e{width:16px;text-align:center}.ooxml-excel-viewer .ov-tb-menu .mi .sw{width:15px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}.ooxml-excel-viewer .ov-tb-menu .sep{height:1px;background:#eef0f2;margin:4px 2px}.ooxml-excel-viewer .ov-tb-menu .mi-input{margin:3px 6px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:4px;font:inherit;font-size:13px;outline:none}.ooxml-excel-viewer .ov-tb-menu .mi-input:focus{border-color:#217346}.ooxml-excel-viewer .ov-zoom{display:flex;align-items:center;gap:4px}.ooxml-excel-viewer .ov-zoom button{width:24px;height:24px;border:1px solid #d0d3d6;background:#fff;border-radius:4px;cursor:pointer;font-size:15px;line-height:1}.ooxml-excel-viewer .ov-zoom button:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-zoom select{height:24px;border:1px solid #d0d3d6;border-radius:4px;background:#fff}.ooxml-excel-viewer .ov-ribbon-tabs{display:flex;align-items:stretch;height:32px;padding:0 8px;gap:2px;background:#f7f8fa;border-bottom:1px solid #e2e4e7;flex:0 0 auto}.ooxml-excel-viewer .ov-ribbon-tab{display:inline-flex;align-items:center;padding:0 14px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:#555;white-space:nowrap}.ooxml-excel-viewer .ov-ribbon-tab:hover{color:#217346}.ooxml-excel-viewer .ov-ribbon-tab.active{color:#217346;border-bottom-color:#217346;font-weight:600}.ooxml-excel-viewer .ov-rb-panel{display:flex;align-items:stretch;height:78px;padding:3px 4px 0;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible;flex:0 0 auto}.ooxml-excel-viewer .ov-rb-sep{width:1px;align-self:center;height:58px;margin:0 4px;background:#edeef0;flex:0 0 auto}.ooxml-excel-viewer .ov-rb-group{display:flex;flex-direction:column;flex:0 0 auto;padding:0 2px}.ooxml-excel-viewer .ov-rb-body{flex:1 1 auto;display:flex;align-items:center;gap:3px;padding:2px 2px 0}.ooxml-excel-viewer .ov-rb-gname{flex:0 0 auto;text-align:center;font-size:11px;color:#9aa0a6;line-height:16px;padding-bottom:1px}.ooxml-excel-viewer .ov-rb-smalls{display:flex;flex-direction:column;justify-content:center;height:58px;gap:2px}.ooxml-excel-viewer .ov-rb-row{display:flex;align-items:center;gap:2px}.ooxml-excel-viewer .ov-rb-btn{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;color:#3c3c3c;white-space:nowrap;font:inherit}.ooxml-excel-viewer .ov-rb-btn:hover:not(:disabled){background:#eef3ef;border-color:#dfe6e1}.ooxml-excel-viewer .ov-rb-btn:disabled{color:#c0c3c7;cursor:default}.ooxml-excel-viewer .ov-rb-btn.active{background:#e2efe6;color:#217346;border-color:#bcd9c6}.ooxml-excel-viewer .ov-rb-btn.open{background:#e9ece9}.ooxml-excel-viewer .ov-rb-large{flex-direction:column;justify-content:center;gap:2px;min-width:46px;height:58px;padding:4px 6px}.ooxml-excel-viewer .ov-rb-ic-lg{display:inline-flex}.ooxml-excel-viewer .ov-rb-ic-lg svg{width:22px;height:22px}.ooxml-excel-viewer .ov-rb-lb{font-size:12px;line-height:1.1;display:inline-flex;align-items:center;gap:1px}.ooxml-excel-viewer .ov-rb-caret-inline{font-size:9px;opacity:.6}.ooxml-excel-viewer .ov-rb-small{height:26px;padding:0 5px;gap:3px}.ooxml-excel-viewer .ov-rb-ic-sm{display:inline-flex}.ooxml-excel-viewer .ov-rb-ic-sm svg{width:16px;height:16px}.ooxml-excel-viewer .ov-rb-lb-sm{font-size:12px}.ooxml-excel-viewer .ov-rb-small.combo{min-width:58px;justify-content:space-between;border:1px solid #dfe1e4;background:#fff}.ooxml-excel-viewer .ov-rb-caret{display:inline-flex;opacity:.55;margin-left:-1px}.ooxml-excel-viewer .ov-rb-caret svg{width:11px;height:11px}.ooxml-excel-viewer .ov-rb-vsep{width:1px;align-self:center;height:22px;margin:0 2px;background:#edeef0}.ooxml-excel-viewer .ov-ribbon-spacer{flex:1 1 auto}.ooxml-excel-viewer .ov-ribbon-gear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-right:4px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;cursor:pointer;color:#475467;font-size:12px}.ooxml-excel-viewer .ov-ribbon-gear:hover{color:#217346;border-color:#217346;background:#f2faf5}.ooxml-excel-viewer .ov-ribbon-gear .ic{display:inline-flex}.ooxml-excel-viewer .ov-ribbon-gear .lbl{line-height:1}.ooxml-excel-viewer .ov-action-toolbar{position:relative;display:flex;align-items:center;gap:4px;height:34px;flex:0 0 auto;padding:0 10px;background:#fff;border-bottom:1px solid #e2e4e7;overflow:visible}.ooxml-excel-viewer .ov-at-dd{position:relative;display:inline-flex}.ooxml-excel-viewer .ov-at-tool{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid transparent;border-radius:5px;background:none;cursor:pointer;font-size:13px;color:#444;white-space:nowrap}.ooxml-excel-viewer .ov-at-tool:hover:not(:disabled){background:#f0f2f4}.ooxml-excel-viewer .ov-at-tool:disabled{color:#bbb;cursor:default}.ooxml-excel-viewer .ov-at-tool.active{background:#e8f0fe;color:#1a73e8;border-color:#c5d9fb}.ooxml-excel-viewer .ov-at-tool.open{background:#eef0f2}.ooxml-excel-viewer .ov-at-ic{display:inline-flex}.ooxml-excel-viewer .ov-at-ic-e{font-size:13px;line-height:1}.ooxml-excel-viewer .ov-at-caret{display:inline-flex;opacity:.6;margin-left:-2px}.ooxml-excel-viewer .ov-at-caret svg{width:12px;height:12px}.ooxml-excel-viewer .ov-at-divider{width:1px;align-self:stretch;margin:6px 4px;background:#e2e4e7}.ooxml-excel-viewer .ov-at-dd .ov-tb-menu{top:30px;left:0}.ooxml-excel-viewer .ov-formula-bar{display:flex;align-items:stretch;min-height:28px;flex:0 0 auto;border-bottom:1px solid #e2e4e7;background:#fff;font-size:13px}.ooxml-excel-viewer .ov-formula-bar .addr{width:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e2e4e7;color:#444;font-weight:600;flex:0 0 auto}.ooxml-excel-viewer .ov-formula-bar .fx{width:34px;display:flex;align-items:center;justify-content:center;color:#999;font-style:italic;flex:0 0 auto}.ooxml-excel-viewer .ov-formula-bar .content{flex:1;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#222;font-family:Consolas,Courier New,monospace;display:flex;align-items:center;line-height:1.4}.ooxml-excel-viewer .ov-formula-bar textarea.content{white-space:pre-wrap;overflow:auto;text-overflow:clip;resize:none;border:none;outline:none;background:transparent;font-family:Consolas,Courier New,monospace;font-size:13px;display:block;min-height:22px;max-height:108px;line-height:1.4}.ooxml-excel-viewer .ov-formula-bar .content-input:focus{background:#f5fbf7;box-shadow:inset 0 0 0 1px #21a366}.ooxml-excel-viewer .ov-render-area{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.ooxml-excel-viewer .ov-grid-canvas{position:absolute;inset:0;display:block}.ooxml-excel-viewer .ov{position:absolute;inset:0;pointer-events:none;overflow:hidden}.ooxml-excel-viewer .ov-plugin{z-index:5}.ooxml-excel-viewer .ov-editor-slot{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.ooxml-excel-viewer .ov-editor-slot>*{pointer-events:auto}.ooxml-excel-viewer .ov-scroller{position:absolute;inset:0;z-index:7;overflow:auto;outline:none;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.ooxml-excel-viewer .ov-spacer{position:relative;pointer-events:none}.ooxml-excel-viewer .ov-state{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:#ffffffd9;color:#444;font-size:13px;pointer-events:none}.ooxml-excel-viewer .ov-state-error{color:#c1272d;font-weight:600}.ooxml-excel-viewer .ov-state-hint{color:#888}.ooxml-excel-viewer .ov-loader{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:240px}.ooxml-excel-viewer .ov-loader-label{font-size:13px;color:#21a366;font-weight:600}.ooxml-excel-viewer .ov-loader-track{width:240px;height:6px;background:#e2e4e7;border-radius:3px;overflow:hidden}.ooxml-excel-viewer .ov-loader-fill{height:100%;background:#21a366;transition:width .18s ease}.ooxml-excel-viewer .ov-loader-fill.indeterminate{width:35%;animation:ov-loader-slide 1.2s ease-in-out infinite}@keyframes ov-loader-slide{0%{transform:translate(-100%)}to{transform:translate(380%)}}.ooxml-excel-viewer .ov-status-bar{display:flex;align-items:center;gap:12px;padding:0 12px;height:26px;flex:0 0 auto;background:#f5f7fa;border-top:1px solid #e2e4e7;font-size:12px;color:#444}.ooxml-excel-viewer .ov-status-bar .sel{color:#888;font-family:Consolas,monospace}.ooxml-excel-viewer .ov-status-bar .grow{flex:1 1 auto}.ooxml-excel-viewer .ov-cell-tooltip{position:absolute;z-index:9;background:#333;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;pointer-events:none;max-width:320px;box-shadow:0 2px 8px #0003;white-space:pre-wrap}.ooxml-excel-viewer .ov-cell-tooltip.comment{background:#fffce8;color:#5a4a00;border:1px solid #f0c542}.ooxml-excel-viewer .ooxml-pivot-button{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:0 3px 0 6px;border:1px solid #9aa7b2;border-radius:2px;background:linear-gradient(#fff,#e8edf2);color:#1f2329;font:12px/1.2 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;box-shadow:inset 0 1px #ffffffbf;pointer-events:auto;overflow:hidden;cursor:default}.ooxml-excel-viewer .ooxml-pivot-button:hover{border-color:#6e879e;background:linear-gradient(#fff,#dde8f4)}.ooxml-excel-viewer .ooxml-pivot-button .ooxml-pivot-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ooxml-excel-viewer .ooxml-pivot-button .ooxml-pivot-caret{flex:0 0 auto;color:#3c4a57;font-size:10px}.ov-export-progress{position:fixed;inset:0;z-index:9999;background:#0000006b;display:flex;align-items:center;justify-content:center;font:13px/1.5 -apple-system,Segoe UI,sans-serif}.ov-export-progress .card{min-width:320px;max-width:480px;background:#fff;border-radius:10px;box-shadow:0 10px 32px #00000047;padding:18px 20px}.ov-export-progress .title{font-size:14px;font-weight:600;color:#1f2329;margin-bottom:12px}.ov-export-progress .bar{position:relative;height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-bottom:10px}.ov-export-progress .bar .fill{height:100%;background:#21a366;transition:width .12s linear}.ov-export-progress .bar.indeterminate:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#21a366 40%,#21a366 60%,transparent);animation:ov-export-ind 1.2s infinite}@keyframes ov-export-ind{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ov-export-progress .row{display:flex;align-items:center;justify-content:space-between}.ov-export-progress .pct{color:#6b7280;font-size:12px}.ov-export-progress .cancel{border:1px solid #d8dbde;background:#fff;color:#1f2329;padding:5px 14px;border-radius:5px;cursor:pointer;font-size:13px}.ov-export-progress .cancel:hover{background:#f5f6f7}.ooxml-excel-viewer .ov-user-slot{position:absolute;inset:0;pointer-events:none;z-index:5}.ooxml-excel-viewer .ov-user-slot>*{pointer-events:auto}.ooxml-excel-viewer .ov-dlg-mask{position:absolute;inset:0;z-index:30;background:#00000052;display:flex;align-items:center;justify-content:center}.ooxml-excel-viewer .ov-dlg{width:420px;max-width:92%;background:#fff;border-radius:10px;box-shadow:0 12px 40px #00000040;font-size:13px;color:#333;overflow:hidden}.ooxml-excel-viewer .ov-dlg-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-weight:600;border-bottom:1px solid #eef0f2}.ooxml-excel-viewer .ov-dlg-head .x{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:#999}.ooxml-excel-viewer .ov-dlg-head .x:hover{color:#444}.ooxml-excel-viewer .ov-dlg-body{padding:8px 16px 4px}.ooxml-excel-viewer .ov-dlg-body .field{display:flex;align-items:flex-start;gap:12px;padding:9px 0;border-bottom:1px solid #f4f5f6}.ooxml-excel-viewer .ov-dlg-body .field:last-child{border-bottom:none}.ooxml-excel-viewer .ov-dlg-body .lbl{width:72px;flex:0 0 auto;color:#666;padding-top:3px}.ooxml-excel-viewer .ov-dlg-body .opts{display:flex;flex-direction:column;gap:6px}.ooxml-excel-viewer .ov-dlg-body .opts.inline{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.ooxml-excel-viewer .ov-dlg-body .opts label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.ooxml-excel-viewer .ov-dlg-body .opts label.disabled{color:#bbb;cursor:not-allowed}.ooxml-excel-viewer .ov-dlg-body .hint{color:#99a;font-size:12px}.ooxml-excel-viewer .ov-dlg-body select{height:26px;border:1px solid #d0d3d6;border-radius:4px;background:#fff;padding:0 6px}.ooxml-excel-viewer .ov-dlg-foot{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #eef0f2;background:#fafbfc}.ooxml-excel-viewer .ov-dlg-foot .grow{flex:1}.ooxml-excel-viewer .ov-dlg-foot button{height:30px;padding:0 14px;border:1px solid #d0d3d6;border-radius:5px;background:#fff;cursor:pointer;font-size:13px;color:#333}.ooxml-excel-viewer .ov-dlg-foot button:hover{background:#f0f2f4}.ooxml-excel-viewer .ov-dlg-foot button.ghost{border-color:transparent;color:#888}.ooxml-excel-viewer .ov-dlg-foot button.primary{background:#21a366;border-color:#21a366;color:#fff}.ooxml-excel-viewer .ov-dlg-foot button.primary:hover{background:#1c8f59}.ooxml-excel-viewer .ov-sheet-tabs{display:flex;align-items:stretch;gap:2px;padding:4px 8px;background:#f5f7fa;border-top:1px solid #e2e4e7;flex:0 0 auto;overflow-x:auto}.ooxml-excel-viewer .ov-sheet-tabs .tab{background:transparent;border:1px solid transparent;color:#707481;padding:4px 12px;border-radius:4px 4px 0 0;font-size:12px;cursor:pointer;white-space:nowrap}.ooxml-excel-viewer .ov-sheet-tabs .tab:hover{background:#eef3fe}.ooxml-excel-viewer .ov-sheet-tabs .tab.active{background:#fff;color:#21a366;font-weight:600;border-color:#e2e4e7;border-bottom-color:#fff}
|
package/dist/vue2.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as s, C as o, a as r, D as l, b as t, E as n, c as i, F as m, d as g, G as d, K as k, O as u, P as c, e as C, V as E, W as y, f as S, g as T, h as b, i as F, j as f, k as h, l as p, m as v, n as I, o as R, p as O, q as A, r as W, s as B, t as w, u as D, c as x, v as _, w as N, x as U, y as V, A as H, H as M, I as P, J as L, L as J, M as j, N as z, Q as G, R as K, S as X, T as Y, U as q, X as Q, Y as Z, Z as $, _ as aa, v as ea, $ as sa, a0 as oa, a1 as ra, a2 as la, a3 as ta, a4 as na, a5 as ia, a6 as ma, a7 as ga, a8 as da, a9 as ka, aa as ua, ab as ca, ac as Ca, ad as Ea, ae as ya, af as Sa, ag as Ta, ah as ba, ai as Fa, aj as fa, ak as ha, al as pa, am as va, an as Ia, ao as Ra, ap as Oa, aq as Aa, ar as Wa, as as Ba, at as wa, au as Da, av as xa, aw as _a, ax as Na, ay as Ua, az as Va, aA as Ha } from "./chunks/index-
|
|
1
|
+
import { B as s, C as o, a as r, D as l, b as t, E as n, c as i, F as m, d as g, G as d, K as k, O as u, P as c, e as C, V as E, W as y, f as S, g as T, h as b, i as F, j as f, k as h, l as p, m as v, n as I, o as R, p as O, q as A, r as W, s as B, t as w, u as D, c as x, v as _, w as N, x as U, y as V, A as H, H as M, I as P, J as L, L as J, M as j, N as z, Q as G, R as K, S as X, T as Y, U as q, X as Q, Y as Z, Z as $, _ as aa, v as ea, $ as sa, a0 as oa, a1 as ra, a2 as la, a3 as ta, a4 as na, a5 as ia, a6 as ma, a7 as ga, a8 as da, a9 as ka, aa as ua, ab as ca, ac as Ca, ad as Ea, ae as ya, af as Sa, ag as Ta, ah as ba, ai as Fa, aj as fa, ak as ha, al as pa, am as va, an as Ia, ao as Ra, ap as Oa, aq as Aa, ar as Wa, as as Ba, at as wa, au as Da, av as xa, aw as _a, ax as Na, ay as Ua, az as Va, aA as Ha } from "./chunks/index-DKKEwcK8.js";
|
|
2
2
|
export {
|
|
3
3
|
s as BuiltinFormulaEngine,
|
|
4
4
|
o as CanvasRenderer,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ooxml-excel-editor",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.2",
|
|
4
4
|
"description": "High-fidelity OOXML (.xlsx) preview & editor — canvas renderer, framework-agnostic core with Vue 3, Vue 2 and React shells (1:1 UI across all shells). Read-only by default; opt-in editing with undo/redo, formula recalc, and export back to .xlsx/JSON/CSV.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|