@sheetxl/studio-vanilla 0.4.19 → 0.4.21
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/browser/cjs/index.cjs +80 -2
- package/browser/cjs/{BJIfDlGWvnC0eGUi.cjs → n6CXzSocLW_BCO8w.cjs} +6 -6
- package/browser/esm/{DiGLoJDZqriVp152.mjs → NBuS53B7u8hItiXf.mjs} +933 -937
- package/browser/esm/index.mjs +176 -4
- package/cdn/assets/CY8njwo06MWkoPz2.js +21 -0
- package/cdn/index.js +2 -2
- package/cdn/loader.js +1 -1
- package/package.json +3 -3
- package/browser/cjs/1FbLU-GkjsXMtg8T.cjs +0 -15
- package/browser/cjs/3xnum9EEG0qokR90.cjs +0 -12
- package/browser/cjs/5i4FVjROedZEnZNH.cjs +0 -6
- package/browser/cjs/9yZt9CqVSMBE7LUX.cjs +0 -6
- package/browser/cjs/B7V2ifI29G13Ypfn.cjs +0 -378
- package/browser/cjs/BCBl10fgrkZ5JX8E.cjs +0 -161
- package/browser/cjs/BCVApYTYfHlRzbCn.cjs +0 -6
- package/browser/cjs/BjW-ykzXN9S3TMzb.cjs +0 -11
- package/browser/cjs/Bn5tlfH0oqJI1Lk9.cjs +0 -6
- package/browser/cjs/BnD8IArw964iF-Zg.cjs +0 -1501
- package/browser/cjs/BnwSPi6FOdqxr7z1.cjs +0 -19
- package/browser/cjs/BxpKhdqadWDARG9W.cjs +0 -16
- package/browser/cjs/C8FEOglWYUtglsLP.cjs +0 -6
- package/browser/cjs/CDd6P2SfTKp4v-QA.cjs +0 -6
- package/browser/cjs/CFfq2Z-VQyMwMJKP.cjs +0 -6
- package/browser/cjs/CG1FkANzsujO3FLU.cjs +0 -6
- package/browser/cjs/CGD07mOjjl6zfCzK.cjs +0 -15
- package/browser/cjs/CMO36tnnJHrXso4Q.cjs +0 -7
- package/browser/cjs/CMfyyxtrIHPMnrBl.cjs +0 -6
- package/browser/cjs/CNue1AsHpswiVYJx.cjs +0 -6
- package/browser/cjs/C_bqbac1bCl1H0Bn.cjs +0 -6
- package/browser/cjs/C_jIzbaCWis1jB7f.cjs +0 -32
- package/browser/cjs/CaFeiasVg3jafLwL.cjs +0 -6
- package/browser/cjs/CaWJjQ_KmjWp1ooU.cjs +0 -145
- package/browser/cjs/CahVr7pzDRu3h4G3.cjs +0 -6
- package/browser/cjs/CaswMUSE1R9Noewr.cjs +0 -6
- package/browser/cjs/CfX6-fSMFgAg6iL9.cjs +0 -124
- package/browser/cjs/CkhCXLhqA4a2CnSJ.cjs +0 -6
- package/browser/cjs/CkriFKrE5BBPFQWm.cjs +0 -6
- package/browser/cjs/CuX_ftSJWqfRsXHy.cjs +0 -6
- package/browser/cjs/CznEff7u33FYbOSn.cjs +0 -6
- package/browser/cjs/D-fNsTpgGyZHdYEp.cjs +0 -6
- package/browser/cjs/DCxlQuW8eB70ZbcJ.cjs +0 -6
- package/browser/cjs/DFet-I-_FYR9s_ET.cjs +0 -6
- package/browser/cjs/DKQmNMiW6vEz1i7V.cjs +0 -6
- package/browser/cjs/DMOCfhgdy7Z8GoD-.cjs +0 -13
- package/browser/cjs/DVVk6WU7lfgpQLZG.cjs +0 -6
- package/browser/cjs/DYMFAMQ13cX03167.cjs +0 -7
- package/browser/cjs/DZVJ234kMQwb5dEy.cjs +0 -6
- package/browser/cjs/DZqqUVtfn36E0rIk.cjs +0 -6
- package/browser/cjs/DguzXHidCk2s1uCY.cjs +0 -6
- package/browser/cjs/Dhik7yBvR-5iyJcR.cjs +0 -6
- package/browser/cjs/Dms2LCMINwYEtl3S.cjs +0 -6
- package/browser/cjs/DnHgK81nepMuvMim.cjs +0 -6
- package/browser/cjs/DuJlHux5dLU53d80.cjs +0 -6
- package/browser/cjs/Dz5uLsJ16GF2Cyov.cjs +0 -6
- package/browser/cjs/Io_6AEq6KpjrZEfL.cjs +0 -6
- package/browser/cjs/R7ToEkyr-cbP0Q3N.cjs +0 -6
- package/browser/cjs/TGD3vlMtB_qnQE-M.cjs +0 -11
- package/browser/cjs/XFsZZevZgfk9vB1r.cjs +0 -6
- package/browser/cjs/bGVtUGltyeHuGKLB.cjs +0 -6
- package/browser/cjs/f-w9NYC1mTi7W9HY.cjs +0 -6
- package/browser/cjs/kGBvcCWaH3h23Ojp.cjs +0 -7
- package/browser/cjs/mUwYCSHSRCUQJ4uV.cjs +0 -42
- package/browser/cjs/qLyXB7fJpKBbTC_N.cjs +0 -6
- package/browser/cjs/s2JuJCqW6ny4lxQX.cjs +0 -6
- package/browser/esm/2Fopggi4LREIIXpY.mjs +0 -13208
- package/browser/esm/4ZXEcNsjnqWXAiUa.mjs +0 -2344
- package/browser/esm/4yxl564v_Wx022xz.mjs +0 -633
- package/browser/esm/5Ovf_TtcBCG7hgdY.mjs +0 -20
- package/browser/esm/6X4p3ajMgDNtcmLW.mjs +0 -10
- package/browser/esm/8F0vFRAXlzH-vmJl.mjs +0 -52354
- package/browser/esm/B1L8rEDpskxCqnhJ.mjs +0 -10
- package/browser/esm/BENg2ibY7Hr-SYp3.mjs +0 -10
- package/browser/esm/BHzg_9TpgdKnIlaX.mjs +0 -10
- package/browser/esm/BY9rDUy2rHkqh6hH.mjs +0 -820
- package/browser/esm/Bd2yJknZG5WTZ26u.mjs +0 -10
- package/browser/esm/BlH_AWoPr-w3-qdS.mjs +0 -10
- package/browser/esm/BmeozQuzbqa81PvH.mjs +0 -41
- package/browser/esm/BprECrKMFGb2UK2v.mjs +0 -2174
- package/browser/esm/Br_6r7a5IjKksr00.mjs +0 -390
- package/browser/esm/ByJuiohpCMXnDKmL.mjs +0 -47
- package/browser/esm/C04_X_6DkiZCUmwB.mjs +0 -1702
- package/browser/esm/C3pNOQaLBsTUp2CW.mjs +0 -10
- package/browser/esm/C4gnsPTE7_xP3Mz_.mjs +0 -1575
- package/browser/esm/C8kq7JNW8ivhRL1S.mjs +0 -3934
- package/browser/esm/CGquHZGGYOxATF73.mjs +0 -10
- package/browser/esm/CKwR5AWlnckKQRc-.mjs +0 -10
- package/browser/esm/CLSpsTCV3Onb_QXV.mjs +0 -84
- package/browser/esm/CMrXKGbxBR_LxLxN.mjs +0 -3755
- package/browser/esm/CN-UcSPqkcXnkJCx.mjs +0 -1365
- package/browser/esm/CQJsDOnipkhuGkKg.mjs +0 -56
- package/browser/esm/CTIgStBt9DOpau5q.mjs +0 -1665
- package/browser/esm/CXL9mY2kUT053cTN.mjs +0 -1346
- package/browser/esm/CZ54d8Ueai6uZgy6.mjs +0 -10
- package/browser/esm/CZM2uNUNI4W8qUw3.mjs +0 -10
- package/browser/esm/CaaAGrJF7OxdprqB.mjs +0 -10
- package/browser/esm/CnRJWnfDHzunp3N5.mjs +0 -472
- package/browser/esm/CpGYH9QSPqM4ejyF.mjs +0 -421
- package/browser/esm/CqLIq6VVhQnv6ZP4.mjs +0 -10
- package/browser/esm/CqTn7MLxDJZX7aIA.mjs +0 -10
- package/browser/esm/D3RHh0FQuMAKk4JL.mjs +0 -10
- package/browser/esm/D8hxrXJDfvDRoouY.mjs +0 -147
- package/browser/esm/DMwYqCQzDDwbzt8K.mjs +0 -44
- package/browser/esm/DNV2yXFlJ5hRF5ME.mjs +0 -46
- package/browser/esm/DUxcExPcvgbBrSXX.mjs +0 -5582
- package/browser/esm/DbTEH7CjzsjIc-ew.mjs +0 -21
- package/browser/esm/Df2lY3OJ73BCDQo6.mjs +0 -24
- package/browser/esm/DlUeNEy_cp31Am5t.mjs +0 -39
- package/browser/esm/DovESggwbqQKJEkM.mjs +0 -10
- package/browser/esm/DpNpusKUeZXcDNra.mjs +0 -29
- package/browser/esm/Dx-FJghQY8rpWJi1.mjs +0 -10
- package/browser/esm/DxObRtwZ98tP8NM3.mjs +0 -10
- package/browser/esm/FT-XJjpzjdyq4pin.mjs +0 -48
- package/browser/esm/HnfOytlj72v4rd6y.mjs +0 -425
- package/browser/esm/IChTkXO9eDekfSb7.mjs +0 -10
- package/browser/esm/KcDpdRfEgTnFwlSh.mjs +0 -21
- package/browser/esm/TVfGpAQkvkA9mx4E.mjs +0 -10
- package/browser/esm/pqikV5IyVMBYUDqP.mjs +0 -10
- package/browser/esm/qfHSXgWX4yZd3nwZ.mjs +0 -1466
- package/browser/esm/xWvOAH67Iwyf2Zge.mjs +0 -10
- package/browser/esm/xaJvLe6JwO1rQiE-.mjs +0 -12
- package/cdn/assets/15AvUM5aNUAfFLU7.js +0 -58
- package/cdn/assets/2Fopggi4LREIIXpY.js +0 -13208
- package/cdn/assets/4yxl564v_Wx022xz.js +0 -633
- package/cdn/assets/6X4p3ajMgDNtcmLW.js +0 -10
- package/cdn/assets/B1L8rEDpskxCqnhJ.js +0 -10
- package/cdn/assets/B1y38xd4JTLIrdUW.js +0 -1702
- package/cdn/assets/BENg2ibY7Hr-SYp3.js +0 -10
- package/cdn/assets/BHzg_9TpgdKnIlaX.js +0 -10
- package/cdn/assets/BXRf5zCAUE8kGNat.js +0 -46
- package/cdn/assets/BZdjtacH2DTSHsdG.js +0 -22
- package/cdn/assets/Bd2yJknZG5WTZ26u.js +0 -10
- package/cdn/assets/BlH_AWoPr-w3-qdS.js +0 -10
- package/cdn/assets/C3pNOQaLBsTUp2CW.js +0 -10
- package/cdn/assets/C6yX85fw0aO70N0-.js +0 -2346
- package/cdn/assets/CGquHZGGYOxATF73.js +0 -10
- package/cdn/assets/CKwR5AWlnckKQRc-.js +0 -10
- package/cdn/assets/CN-UcSPqkcXnkJCx.js +0 -1365
- package/cdn/assets/CSBAnGx7ebIRyjML.js +0 -21
- package/cdn/assets/CTIgStBt9DOpau5q.js +0 -1665
- package/cdn/assets/CXL9mY2kUT053cTN.js +0 -1346
- package/cdn/assets/CZ54d8Ueai6uZgy6.js +0 -10
- package/cdn/assets/CZM2uNUNI4W8qUw3.js +0 -10
- package/cdn/assets/CaaAGrJF7OxdprqB.js +0 -10
- package/cdn/assets/Cfgui52VcoZakyBi.js +0 -50
- package/cdn/assets/Ck6R7vI9j0vG-mKU.js +0 -390
- package/cdn/assets/ClTJpu1UdRW0KLAX.js +0 -23
- package/cdn/assets/Co1yPh9LPeUa-tCm.js +0 -29
- package/cdn/assets/CpGYH9QSPqM4ejyF.js +0 -421
- package/cdn/assets/CppP22dM3wzxzf_R.js +0 -3934
- package/cdn/assets/CqLIq6VVhQnv6ZP4.js +0 -10
- package/cdn/assets/CqTn7MLxDJZX7aIA.js +0 -10
- package/cdn/assets/D3RHh0FQuMAKk4JL.js +0 -10
- package/cdn/assets/DCmJyecz9jzS5Hh5.js +0 -41
- package/cdn/assets/DEHd1h8uAHbt7JQl.js +0 -425
- package/cdn/assets/DK25k4g9SWrBiPDl.js +0 -43
- package/cdn/assets/DL18SWHzmNBC5_Sq.js +0 -472
- package/cdn/assets/DZz8nVXsYYFIaomy.js +0 -3756
- package/cdn/assets/Df2lY3OJ73BCDQo6.js +0 -24
- package/cdn/assets/DidmQocPR2LUv5_-.js +0 -84
- package/cdn/assets/DifkJcFEihfAmrz6.js +0 -5582
- package/cdn/assets/Dj-9L-ifpIi1HChy.js +0 -52185
- package/cdn/assets/DovESggwbqQKJEkM.js +0 -10
- package/cdn/assets/Dwy3QqzGL-q3IHdC.js +0 -49
- package/cdn/assets/Dx-FJghQY8rpWJi1.js +0 -10
- package/cdn/assets/DxObRtwZ98tP8NM3.js +0 -10
- package/cdn/assets/IChTkXO9eDekfSb7.js +0 -10
- package/cdn/assets/KcDpdRfEgTnFwlSh.js +0 -21
- package/cdn/assets/R-6SrokApX5Vs5h6.js +0 -12
- package/cdn/assets/TVfGpAQkvkA9mx4E.js +0 -10
- package/cdn/assets/ZfVobc-p41aYisnX.js +0 -46
- package/cdn/assets/_QS_SgWjAGVcBh2y.js +0 -2177
- package/cdn/assets/_bKdjn1gFyUlsKF8.js +0 -149
- package/cdn/assets/cgKx_r-dAv2kc57N.js +0 -1575
- package/cdn/assets/lxv3lfQ08L2wD1S3.js +0 -820
- package/cdn/assets/pqikV5IyVMBYUDqP.js +0 -10
- package/cdn/assets/wXUNHjkvpeSH2dQZ.js +0 -1466
- package/cdn/assets/xWvOAH67Iwyf2Zge.js +0 -10
- package/cdn/assets/xaJvLe6JwO1rQiE-.js +0 -12
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import { aP as E, j as t, r as o, aQ as p, h as b, w as M, E as le, K as ae, O as re, P as ce, B as O, aR as g, a2 as m, aS as pe, aT as j, aU as de, a as Y, b as R, ay as ue, aV as fe, aW as xe, aX as ge, U as T, aY as _, aZ as me, a_ as he, Z as Oe, M as je, F as Ce, I as ye, G as be } from "./8F0vFRAXlzH-vmJl.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.19
|
|
4
|
-
*
|
|
5
|
-
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
6
|
-
* License: The license can be found at https://www.sheetxl.com/license.
|
|
7
|
-
*/
|
|
8
|
-
const Re = E(t.jsx("path", { d: "M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20z" }), "ArrowBack"), Te = E(t.jsx("path", { d: "m20 12-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8z" }), "ArrowDownward"), ve = E(t.jsx("path", { d: "m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z" }), "ArrowForward"), ke = E(t.jsx("path", { d: "m4 12 1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8z" }), "ArrowUpward"), A = o.memo((v) => {
|
|
9
|
-
const { label: h, value: c, options: l, onSelect: d, tabIndex: C = 0, ...F } = v, [I, y] = o.useState(() => ee(c, l));
|
|
10
|
-
o.useEffect(() => {
|
|
11
|
-
y(ee(c, l));
|
|
12
|
-
}, [c, l]);
|
|
13
|
-
const L = M((u) => {
|
|
14
|
-
y(u.target.value), d?.(l[u.target.value]);
|
|
15
|
-
}, [d, l]), a = o.useMemo(() => Object.keys(l).map((u) => t.jsx(je, { value: u, children: u }, u)), [l]);
|
|
16
|
-
return t.jsxs(Ce, { sx: { minWidth: 135 }, size: "small", children: [t.jsx(ye, { children: h }), t.jsx(be, { inputProps: { tabIndex: C }, value: I, label: h, onChange: L, sx: { backgroundImage: `linear-gradient(${R("#fff", T(5))}, ${R("#fff", T(5))})` }, ...F, children: a })] });
|
|
17
|
-
}), q = { Workbook: "workbook", Sheet: "sheet" }, J = { enter: 140, exit: 140 }, ne = { Formulas: p.Content.Formulas, Values: p.Content.Values, Notes: p.Content.Notes, Comments: p.Content.Comments }, te = { ...ne };
|
|
18
|
-
delete te.Values;
|
|
19
|
-
const Se = { "By Rows": !0, "By Columns": !1 }, ee = (v, h) => {
|
|
20
|
-
const c = Object.keys(h);
|
|
21
|
-
for (let l = 0; l < c.length; l++) {
|
|
22
|
-
const d = c[l];
|
|
23
|
-
if (h[d] === v) return d;
|
|
24
|
-
}
|
|
25
|
-
}, Ee = o.memo((v) => {
|
|
26
|
-
const { replace: h = !1, findText: c, replaceText: l, findOptions: d, replaceOptions: C, title: F, onHide: I, onFindOrReplace: y, ...L } = v, a = o.useRef(null), u = o.useRef(null), V = o.useRef(null), z = o.useRef(null), B = o.useRef(null), H = o.useRef(null), $ = (e, n) => {
|
|
27
|
-
n && (n.start(e, { center: !1 }), setTimeout(() => n.stop(e), 180));
|
|
28
|
-
}, [W, w] = o.useState(!1), [D, se] = o.useState(!1), [f, P] = o.useState(h), [N, K] = o.useState(!1), [U, G] = o.useState(!1), [i, r] = o.useState({ findText: null, replaceText: null, replace: h, replaceOptions: {}, findOptions: { matchCase: !1, matchEntireCell: !1, useRegex: !1, orientation: b.Orientation.Row, fields: [p.Content.Formulas] }, scope: q.Sheet }), k = M(async (e, n, s, S) => {
|
|
29
|
-
if (!y) return;
|
|
30
|
-
const x = { ...i };
|
|
31
|
-
x.replaceOptions = { ...x.replaceOptions }, x.findOptions = { ...x.findOptions }, x.replaceOptions.maxCount = s ? void 0 : 1, x.replace = n, n && i.findOptions.fields?.[0] === p.Content.Values && (x.findOptions.fields = [p.Content.Formulas]), x.findOptions.reverse = !e;
|
|
32
|
-
const oe = await y({ autoFocus: S, ...x });
|
|
33
|
-
K(oe === 0);
|
|
34
|
-
}, [i, y]);
|
|
35
|
-
o.useEffect(() => {
|
|
36
|
-
K(!1);
|
|
37
|
-
}, [i, D, f]);
|
|
38
|
-
const X = M((e, n) => {
|
|
39
|
-
if (e.keyCode === le.Enter) {
|
|
40
|
-
if (!i.findText) return;
|
|
41
|
-
let s = !0, S = !1;
|
|
42
|
-
e.shiftKey && (s = !1), n ? (e.ctrlKey && e.altKey && (S = !0), $(e, S ? H.current : B.current)) : $(e, s ? z.current : V.current), k(s, n, S, !1);
|
|
43
|
-
}
|
|
44
|
-
}, [i]), Z = o.useRef(null);
|
|
45
|
-
o.useLayoutEffect(() => {
|
|
46
|
-
r((e) => {
|
|
47
|
-
const n = { ...e };
|
|
48
|
-
n.findText = c && c.length > 0 ? c : e.findText ?? "", w(!0), l !== void 0 && (n.replaceText = l), d && (n.findOptions = { ...n.findOptions, ...d }), n.replaceText || (n.replaceText = ""), n.replaceOptions && (n.replaceOptions = { ...n.replaceOptions }), C && (n.replaceOptions = { ...n.replaceOptions, ...C }), i.findOptions.fields?.[0] || (i.findOptions.fields = [p.Content.Formulas]);
|
|
49
|
-
const s = !(!C && l === void 0);
|
|
50
|
-
return s && P(s), n;
|
|
51
|
-
}), U || Z.current?.focus();
|
|
52
|
-
}, [c, l, d, C]), o.useEffect(() => {
|
|
53
|
-
f ? (i.findOptions.fields[0], p.Content.Values) : w(!0);
|
|
54
|
-
}, [f]), o.useEffect(() => {
|
|
55
|
-
if (W && a.current && i.findText === a.current.value) return a.current === document.activeElement || a.current.contains(document.activeElement) ? (a.current?.select(), void w(!1)) : void a.current.addEventListener("focus", () => {
|
|
56
|
-
a.current?.select(), w(!1);
|
|
57
|
-
}, { once: !0 });
|
|
58
|
-
}, [W, i]);
|
|
59
|
-
const [ie, { width: Q }] = ae();
|
|
60
|
-
return t.jsx(re, { ref: Z, title: F ?? (f ? "Find & Replace" : "Find"), initialPosition: { y: "35" }, autoFocusSel: ".input", onHide: I, onFocus: () => G(!0), onBlur: () => {
|
|
61
|
-
G(!1), K(!1);
|
|
62
|
-
}, PaperProps: { elevation: U ? 3 : 1 }, ...L, children: t.jsxs(ce, { dividers: !0, ref: ie, sx: { display: "flex", flexDirection: "column", paddingLeft: (e) => e.spacing(1.5), paddingRight: (e) => e.spacing(1.5) }, onKeyDown: (e) => {
|
|
63
|
-
if (e.key === "h" && e.ctrlKey) P(!0), a.current?.contains(document.activeElement) && u.current?.focus();
|
|
64
|
-
else if (e.key === "f" && e.ctrlKey) a.current?.focus();
|
|
65
|
-
else if (e.key === "c" && e.altKey) r((n) => {
|
|
66
|
-
const s = { ...n };
|
|
67
|
-
return s.findOptions.matchCase = !n.findOptions.matchCase, s;
|
|
68
|
-
});
|
|
69
|
-
else if (e.key === "e" && e.altKey) r((n) => {
|
|
70
|
-
const s = { ...n };
|
|
71
|
-
return s.findOptions.matchEntireCell = !n.findOptions.matchEntireCell, s;
|
|
72
|
-
});
|
|
73
|
-
else {
|
|
74
|
-
if (e.key !== "r" || !e.altKey) return;
|
|
75
|
-
r((n) => {
|
|
76
|
-
const s = { ...n };
|
|
77
|
-
return s.findOptions.useRegex = !n.findOptions.useRegex, s;
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
e.preventDefault();
|
|
81
|
-
}, children: [t.jsxs(O, { sx: { display: "flex", flexDirection: "row", gap: (e) => e.spacing(1) }, children: [t.jsxs(O, { sx: { display: "flex", flexDirection: "row", alignItems: "start", gap: (e) => e.spacing(0.25), paddingTop: "3px" }, children: [t.jsx(g, { selected: D, onSelectToggle: (e) => {
|
|
82
|
-
se(e);
|
|
83
|
-
}, preventFocus: !0, label: "Toggle Additional Options", icon: m(t.jsx(pe, {})) }), t.jsx(g, { selected: f, onSelectToggle: (e) => {
|
|
84
|
-
P(e);
|
|
85
|
-
}, preventFocus: !0, label: "Toggle Replace", icon: m(t.jsx(de, {})), shortcut: { key: f ? "F" : "H", modifiers: [j.Ctrl] } })] }), t.jsxs(O, { sx: { display: "flex", flexDirection: "column", maxWidth: "100%", boxSizing: "border-box" }, children: [t.jsxs(O, { sx: { display: "flex", flexDirection: "row", alignItems: "center" }, children: [t.jsx(Y, { label: "Find", InputLabelProps: { shrink: !0 }, InputProps: { sx: { paddingRight: (e) => e.spacing(1), minWidth: Q > 460 ? "20em" : void 0, backgroundImage: `linear-gradient(${R("#fff", T(5))}, ${R("#fff", T(5))})` }, inputProps: { draggable: !1, ref: a, className: "input", autoFocus: !0, spellCheck: !1, autoComplete: "off", sx: { paddingTop: (e) => e.spacing(1.25), paddingBottom: (e) => e.spacing(0.75) } }, endAdornment: t.jsx(ue, { sx: { transform: "scale(0.75) translateX(16px)" }, position: "end", children: t.jsxs(O, { sx: { display: "flex", alignItems: "center", flexDirection: "row", gap: "1px" }, children: [t.jsx(g, { selected: i.findOptions.matchCase, onSelectToggle: (e) => {
|
|
86
|
-
r((n) => {
|
|
87
|
-
const s = { ...n };
|
|
88
|
-
return s.findOptions.matchCase = e, s;
|
|
89
|
-
});
|
|
90
|
-
}, label: "Match Case", shortcut: { key: "C", modifiers: [j.Alt] }, icon: m(t.jsx(fe, {})) }), t.jsx(g, { selected: i.findOptions.matchEntireCell, onSelectToggle: (e) => {
|
|
91
|
-
r((n) => {
|
|
92
|
-
const s = { ...n };
|
|
93
|
-
return s.findOptions.matchEntireCell = e, s;
|
|
94
|
-
});
|
|
95
|
-
}, label: "Match Entire Cell", shortcut: { key: "E", modifiers: [j.Alt] }, icon: m(t.jsx(xe, {})) }), t.jsx(g, { selected: i.findOptions.useRegex, onSelectToggle: (e) => {
|
|
96
|
-
r((n) => {
|
|
97
|
-
const s = { ...n };
|
|
98
|
-
return s.findOptions.useRegex = e, s;
|
|
99
|
-
});
|
|
100
|
-
}, label: "Use Regular Expression", shortcut: { key: "R", modifiers: [j.Alt] }, icon: m(t.jsx(ge, {})) })] }) }) }, sx: { flex: "1 1 100%", marginRight: (e) => e.spacing(1), "& .MuiOutlinedInput-notchedOutline": { borderColor: (e) => N ? `${e.palette.error.main} !important` : void 0 }, "& .MuiInputLabel-outlined": { color: (e) => N ? `${e.palette.error.main} !important` : void 0 } }, value: i.findText ?? "", onChange: (e) => {
|
|
101
|
-
r((n) => {
|
|
102
|
-
const s = { ...n };
|
|
103
|
-
return s.findText = e.target.value, s;
|
|
104
|
-
});
|
|
105
|
-
}, onKeyDown: (e) => X(e, !1), onContextMenu: (e) => {
|
|
106
|
-
e.stopPropagation();
|
|
107
|
-
} }), t.jsx(g, { selected: i.findOptions.reverse, onSelectToggle: (e) => {
|
|
108
|
-
k(!1, !1);
|
|
109
|
-
}, touchRippleRef: V, label: "", shortcut: { key: "Enter", modifiers: [j.Shift] }, icon: m(i.findOptions.orientation !== b.Orientation.Column ? t.jsx(Re, {}) : t.jsx(ke, {})), disabled: !i.findText }), t.jsx(g, { selected: !i.findOptions.reverse, onSelectToggle: (e) => {
|
|
110
|
-
k(!0, !1);
|
|
111
|
-
}, touchRippleRef: z, label: "Next Match", shortcut: { key: "Enter" }, icon: m(i.findOptions.orientation !== b.Orientation.Column ? t.jsx(ve, {}) : t.jsx(Te, {})), disabled: !i.findText })] }), t.jsx(_, { in: f, timeout: J, onExit: () => {
|
|
112
|
-
a.current?.focus();
|
|
113
|
-
}, children: t.jsxs(O, { sx: { display: "flex", flexDirection: "row", alignItems: "center", marginTop: (e) => e.spacing(2) }, children: [t.jsx(Y, { label: "Replace", InputLabelProps: { shrink: !0 }, InputProps: { sx: { paddingRight: (e) => e.spacing(1), backgroundImage: `linear-gradient(${R("#fff", T(5))}, ${R("#fff", T(5))})` }, inputProps: { ref: u, className: "input", spellCheck: !1, autoComplete: "off", sx: { paddingTop: (e) => e.spacing(1.25), paddingBottom: (e) => e.spacing(0.75) } } }, sx: { flex: "1 1 100%", marginRight: (e) => e.spacing(1) }, value: i.replaceText ?? "", onChange: (e) => {
|
|
114
|
-
r((n) => {
|
|
115
|
-
const s = { ...n };
|
|
116
|
-
return s.replaceText = e.target.value, s;
|
|
117
|
-
});
|
|
118
|
-
}, onKeyDown: (e) => X(e, !0), onContextMenu: (e) => {
|
|
119
|
-
e.stopPropagation();
|
|
120
|
-
} }), t.jsx(g, { onSelectToggle: (e) => {
|
|
121
|
-
k(!0, !0);
|
|
122
|
-
}, touchRippleRef: B, label: "Replace", shortcut: { key: "Enter" }, icon: m(t.jsx(me, {})), disabled: !i.findText }), t.jsx(g, { onSelectToggle: (e) => {
|
|
123
|
-
k(!0, !0, !0);
|
|
124
|
-
}, touchRippleRef: H, label: "Replace All", shortcut: { key: "Enter", modifiers: [j.Ctrl, j.Alt] }, icon: m(t.jsx(he, {})), disabled: !i.findText })] }) })] })] }), t.jsx(_, { in: D, timeout: J, onExit: () => {
|
|
125
|
-
a.current?.focus();
|
|
126
|
-
}, children: t.jsxs(O, { sx: { minHeight: "10px", flex: "1 1 100%", display: "flex", flexDirection: "column", gap: (e) => e.spacing(0.5), marginTop: (e) => e.spacing(1) }, children: [t.jsx(Oe, { orientation: "horizontal", sx: { marginBottom: (e) => e.spacing(1.5) } }), t.jsxs(O, { sx: { display: "flex", flexDirection: Q >= 413 ? "row" : "column", justifyContent: "space-evenly", alignItems: "center", rowGap: (e) => e.spacing(2) }, tabIndex: -1, children: [t.jsx(A, { label: "Within", value: i.scope, options: q, onSelect: (e) => {
|
|
127
|
-
r((n) => {
|
|
128
|
-
const s = { ...n };
|
|
129
|
-
return s.scope = e, s;
|
|
130
|
-
});
|
|
131
|
-
} }), t.jsx(A, { label: "Search", value: i.findOptions.orientation !== b.Orientation.Column, options: Se, onSelect: (e) => {
|
|
132
|
-
r((n) => {
|
|
133
|
-
const s = { ...n };
|
|
134
|
-
return s.findOptions.orientation = e ? b.Orientation.Row : b.Orientation.Column, s;
|
|
135
|
-
});
|
|
136
|
-
} }), t.jsx(A, { label: "Look in", value: f && i.findOptions.fields?.[0] === p.Content.Values ? p.Content.Formulas : i.findOptions.fields?.[0], options: f ? te : ne, onSelect: (e) => {
|
|
137
|
-
r((n) => {
|
|
138
|
-
const s = { ...n };
|
|
139
|
-
return s.findOptions.fields = [e], s;
|
|
140
|
-
});
|
|
141
|
-
} })] })] }) })] }) });
|
|
142
|
-
});
|
|
143
|
-
export {
|
|
144
|
-
Ee as FindReplaceWindow,
|
|
145
|
-
q as ScopeOptions,
|
|
146
|
-
Ee as default
|
|
147
|
-
};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { r as n, w as x, j as o, $ as L, B as U, F as b, a as O, b as p, U as r } from "./8F0vFRAXlzH-vmJl.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.19
|
|
4
|
-
*
|
|
5
|
-
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
6
|
-
* License: The license can be found at https://www.sheetxl.com/license.
|
|
7
|
-
*/
|
|
8
|
-
const W = ["Ok", "Cancel"], A = n.memo((P) => {
|
|
9
|
-
const { initialHyperlink: s = null, initialDisplay: D = null, onUpdateHyperlink: f, context: l, onOption: m, onValidateOption: d, onDone: u, options: h = W, defaultOption: c = h?.[0], cancelOption: i = "Cancel", sx: F, ...j } = P, w = n.useMemo(() => (s ?? l?.()?.getHyperlink()) !== null, []), k = n.useMemo(() => {
|
|
10
|
-
let e = null, t = null;
|
|
11
|
-
s && (typeof s == "string" ? t = s : e = s);
|
|
12
|
-
const C = e ?? l?.()?.getHyperlink();
|
|
13
|
-
return { address: t ?? C?.getAddress() ?? "", textToDisplay: C?.getDisplayText() ?? "" };
|
|
14
|
-
}, [s, l]), [a, H] = n.useState(k.address), [g, I] = n.useState(() => {
|
|
15
|
-
const e = l?.().toTextUnformatted() ?? D;
|
|
16
|
-
return e === k.address ? "" : e;
|
|
17
|
-
}), [v, y] = n.useState(!1), M = n.useCallback((e) => {
|
|
18
|
-
I(e.target.value);
|
|
19
|
-
}, []), T = n.useCallback(async (e, t) => null, []), $ = x(async (e) => {
|
|
20
|
-
e !== i && f?.(a === "" ? null : { address: a }, g), m?.(e, e === i, e === c), u?.();
|
|
21
|
-
}, [a, g, f, u, m, c, i]), B = x((e) => {
|
|
22
|
-
H(e.target.value), T(e.target.value, null);
|
|
23
|
-
}, [d]), S = x(async (e) => {
|
|
24
|
-
let t = await Promise.resolve(d?.(e));
|
|
25
|
-
try {
|
|
26
|
-
t !== !1 && (t = await T(a, e));
|
|
27
|
-
} catch {
|
|
28
|
-
}
|
|
29
|
-
return t ?? !0;
|
|
30
|
-
}, [d]);
|
|
31
|
-
return o.jsx(L, { title: (w ? "Edit" : "Insert") + " Link", options: h, onDone: u, onOption: (e) => $(e), onValidateOption: S, defaultOption: c, cancelOption: i, autoFocusSel: ".autoFocus", sx: { width: "480px", ...F }, ...j, children: o.jsxs(U, { sx: { paddingTop: (e) => e.spacing(1), paddingBottom: (e) => e.spacing(0), rowGap: (e) => e.spacing(1), display: "flex", flexDirection: "column" }, children: [o.jsx(b, { sx: { paddingTop: (e) => e.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: o.jsx(O, { label: "Address", placeholder: "Enter a url or cell reference.", onFocus: (e) => {
|
|
32
|
-
v || e.target?.select(), y(!0);
|
|
33
|
-
}, sx: { "& .MuiFormHelperText-root": { marginTop: (e) => e.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { className: "autoFocus", spellCheck: !1, autoComplete: "off", sx: { paddingTop: (e) => e.spacing(1.25), paddingBottom: (e) => e.spacing(0.75), backgroundImage: `linear-gradient(${p("#fff", r(5))}, ${p("#fff", r(5))})` } } }, value: a, onChange: B, onContextMenu: (e) => {
|
|
34
|
-
e.stopPropagation();
|
|
35
|
-
} }) }), o.jsx(b, { sx: { paddingTop: (e) => e.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: o.jsx(O, { label: "Display Text", placeholder: a?.startsWith("#") ? a.substring(1) : a, onFocus: () => {
|
|
36
|
-
y(!0);
|
|
37
|
-
}, sx: { "& .MuiFormHelperText-root": { marginTop: (e) => e.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { spellCheck: !1, autoComplete: "off", sx: { paddingTop: (e) => e.spacing(1.25), paddingBottom: (e) => e.spacing(0.75), backgroundImage: `linear-gradient(${p("#fff", r(5))}, ${p("#fff", r(5))})` } } }, value: g, onChange: M, onContextMenu: (e) => {
|
|
38
|
-
e.stopPropagation();
|
|
39
|
-
} }) })] }) });
|
|
40
|
-
});
|
|
41
|
-
export {
|
|
42
|
-
A as HyperlinkDialog,
|
|
43
|
-
A as default
|
|
44
|
-
};
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { g as y, h as C } from "./8F0vFRAXlzH-vmJl.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.19
|
|
4
|
-
*
|
|
5
|
-
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
6
|
-
* License: The license can be found at https://www.sheetxl.com/license.
|
|
7
|
-
*/
|
|
8
|
-
const k = async (a, p) => {
|
|
9
|
-
const { trimLeadingBlankRow: i = !0, trimLeadingBlankColumn: f = !0, excludeHidden: h = !1, sheetKey: o = null, papaParseConfig: m = {} } = p || {}, u = await import("./CpGYH9QSPqM4ejyF.mjs").then((s) => s.p);
|
|
10
|
-
if (!a) throw new Error("workbook must be specified");
|
|
11
|
-
let t = null;
|
|
12
|
-
if (o === null ? t = a.getSelectedSheet() : typeof o == "number" ? t = a.getSheets().search()[o] : typeof o == "string" && (t = a.getSheets().getByName(o)), !t) throw new Error("invalid sheetKey specified");
|
|
13
|
-
let c = null;
|
|
14
|
-
const d = [];
|
|
15
|
-
let e = null, n = t.getUsedRange({ excludeHidden: h });
|
|
16
|
-
if (!n) throw new Error("Nothing to export");
|
|
17
|
-
if (!i || !f) {
|
|
18
|
-
const s = i ? n.getRowStart() : 0, l = f ? n.getColumnStart() : 0;
|
|
19
|
-
n = n.getOffsetTo(s, l);
|
|
20
|
-
}
|
|
21
|
-
n.forEach((s, l) => {
|
|
22
|
-
const w = l.getCoords(), x = l.getCell();
|
|
23
|
-
c !== w.rowIndex && (e && d.push(e), e = [], c = w.rowIndex);
|
|
24
|
-
const S = x.toTextUnformatted() ?? "";
|
|
25
|
-
e.push(S);
|
|
26
|
-
}, { includeEmpty: !0, address: null }), e && d.push(e);
|
|
27
|
-
const r = { ...m }, g = u.unparse(d, r);
|
|
28
|
-
return new TextEncoder().encode(g).buffer;
|
|
29
|
-
}, b = async (a, p) => {
|
|
30
|
-
const { papaParseConfig: i, setValuesOptions: f, createWorkbookOptions: h } = p ?? {}, o = await import("./CpGYH9QSPqM4ejyF.mjs").then((r) => r.p), m = new TextDecoder().decode(a);
|
|
31
|
-
let u = -1;
|
|
32
|
-
const t = new y(h), c = t.getSelectedSheet().getEntireRange().startIncrementalUpdates({ orientation: C.Orientation.Row }), d = p?.onProgress;
|
|
33
|
-
let e = 0;
|
|
34
|
-
const n = { ...i, transform: (r, g) => {
|
|
35
|
-
i?.transform && (r = i.transform(r, g));
|
|
36
|
-
const s = g;
|
|
37
|
-
s === 0 && u++;
|
|
38
|
-
let l = r ?? "";
|
|
39
|
-
return c.pushAt(u, s, l), e++, e % 1e5 == 0 && d?.(e), r;
|
|
40
|
-
} };
|
|
41
|
-
return o.parse(m, n).data, c.apply({ textParser: !0, ...f }), t;
|
|
42
|
-
};
|
|
43
|
-
export {
|
|
44
|
-
b as fromBufferCSV,
|
|
45
|
-
k as toBufferCSV
|
|
46
|
-
};
|