@sheetxl/studio-vanilla 0.4.21 → 0.4.22
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/-AkvO2DXLOxJTxam.cjs +6 -0
- package/browser/cjs/3CSmmG7E8ziDB1mP.cjs +6 -0
- package/browser/cjs/7nEG2wj_Ohie6CwI.cjs +6 -0
- package/browser/cjs/{n6CXzSocLW_BCO8w.cjs → B0aLqzqegePPgpc2.cjs} +6 -6
- package/browser/cjs/B9GyERAqyIxdqS4D.cjs +145 -0
- package/browser/cjs/BO8oGaHWFtHyxmQ1.cjs +6 -0
- package/browser/cjs/BPODmSH7Z1MR1rHr.cjs +15 -0
- package/browser/cjs/BS0bGW4PmNinQUvL.cjs +42 -0
- package/browser/cjs/BY3tZiH_cfwBkpN8.cjs +6 -0
- package/browser/cjs/BYRBdz-9UGZ0b_AO.cjs +7 -0
- package/browser/cjs/BZvC7PqILOVRl2ij.cjs +6 -0
- package/browser/cjs/Bc6lVP0c3mEzf_yK.cjs +6 -0
- package/browser/cjs/Bdm_fGdkK4-pZ0tW.cjs +6 -0
- package/browser/cjs/Bi2-QXq5KvbsAXoB.cjs +6 -0
- package/browser/cjs/Bk2cFYnTKxP7WbLy.cjs +6 -0
- package/browser/cjs/BlojFx4yQfY8ahEJ.cjs +12 -0
- package/browser/cjs/BvEv8i6SisfC24C1.cjs +7 -0
- package/browser/cjs/Bzntg1YSzOszdwLy.cjs +6 -0
- package/browser/cjs/C9oIS5xxO9B7vS3W.cjs +6 -0
- package/browser/cjs/C9xTKWx1tr6NZFC8.cjs +6 -0
- package/browser/cjs/CCu9cK1DUD4oa3Nj.cjs +6 -0
- package/browser/cjs/CIeiC9TKv80O2_fQ.cjs +6 -0
- package/browser/cjs/COuRf_8YbqEsDQOC.cjs +6 -0
- package/browser/cjs/CQRZm8lGq26oKY31.cjs +6 -0
- package/browser/cjs/CYmpgLiDS0ZlbG11.cjs +6 -0
- package/browser/cjs/CZltonq1gEczLRHi.cjs +32 -0
- package/browser/cjs/Cf1j7hiCbQ8xo4_U.cjs +7 -0
- package/browser/cjs/CknjEH7DZBnqyPfk.cjs +6 -0
- package/browser/cjs/ClEc15AqSTFOf5zG.cjs +6 -0
- package/browser/cjs/CrUZUIz00uPDq4EA.cjs +6 -0
- package/browser/cjs/Cv1BFY5pqPtJd8qO.cjs +6 -0
- package/browser/cjs/CvvHAxM5SO6mwsyq.cjs +161 -0
- package/browser/cjs/Cvwrl86aXHFXJVZZ.cjs +6 -0
- package/browser/cjs/CwgzE59YUQ1eOTBi.cjs +6 -0
- package/browser/cjs/D3qzZXPgfAtKIAP9.cjs +11 -0
- package/browser/cjs/D7q2GFLhv9QRTZJe.cjs +6 -0
- package/browser/cjs/DB2WR3LaeOhkCAXY.cjs +6 -0
- package/browser/cjs/DFJ4dyRxiUF1XPPZ.cjs +15 -0
- package/browser/cjs/DJMpu6kYQUW3FWjs.cjs +6 -0
- package/browser/cjs/DL7DCFUaFkr2LYhZ.cjs +6 -0
- package/browser/cjs/DMMZr350oW-Zan7x.cjs +124 -0
- package/browser/cjs/DMfk3didwdGQLc0i.cjs +1501 -0
- package/browser/cjs/DaEdjRWwuNebE2hn.cjs +6 -0
- package/browser/cjs/Dd7vDdIeQaFScMRQ.cjs +6 -0
- package/browser/cjs/Df9S9eEGYxA_EcEr.cjs +6 -0
- package/browser/cjs/DgSAPPq-D_vlo9jE.cjs +6 -0
- package/browser/cjs/DmtZLv1wnSxRzPiR.cjs +6 -0
- package/browser/cjs/DqlFSswn_reXyFz8.cjs +6 -0
- package/browser/cjs/Dws_eDddoJKDPps_.cjs +6 -0
- package/browser/cjs/HyVntu9KkvdKrJEt.cjs +16 -0
- package/browser/cjs/Iek_K8QW1doYx_eo.cjs +6 -0
- package/browser/cjs/QJFc55OPrJyuRvDO.cjs +19 -0
- package/browser/cjs/QxU4KIgsHZuVigdy.cjs +329 -0
- package/browser/cjs/cOAjfOdF1cb-xgQG.cjs +6 -0
- package/browser/cjs/index.cjs +2 -80
- package/browser/cjs/kQ8wVygFJMcxlUv-.cjs +6 -0
- package/browser/cjs/tVbeAmLkaH_1Jy7R.cjs +6 -0
- package/browser/cjs/wNoDw92hvq2txBki.cjs +11 -0
- package/browser/esm/2d2eGHpsnUoCOFMT.mjs +47 -0
- package/browser/esm/AVmCEk8Fmiw2k_yK.mjs +425 -0
- package/browser/esm/B0A2aLiKDPGGU4k-.mjs +44515 -0
- package/browser/esm/BBov1fpR61VyhE3Z.mjs +10 -0
- package/browser/esm/BJD32_Zv5gkabGc0.mjs +10 -0
- package/browser/esm/BJqIPJDvrhWpZc4S.mjs +10 -0
- package/browser/esm/BKYjPTKdwG8Dn1_Z.mjs +21 -0
- package/browser/esm/BQfnqD12mz41DOr_.mjs +10 -0
- package/browser/esm/BSdVpOzJ8SL3EBhP.mjs +10 -0
- package/browser/esm/BVuoKgnuqrUwY6Fv.mjs +44 -0
- package/browser/esm/Ba4SdTfCAvYS7a3O.mjs +29 -0
- package/browser/esm/BajFlIH_X_nvDNfp.mjs +2344 -0
- package/browser/esm/Bb0W3ByMVowTViNK.mjs +10 -0
- package/browser/esm/BmyjN5txj3iMw_DE.mjs +10 -0
- package/browser/esm/BpFA0UU_TF4JO3dh.mjs +10 -0
- package/browser/esm/Btr2FDDtI_fht0WU.mjs +1466 -0
- package/browser/esm/Bzg-D_R4sXN-wyMx.mjs +10 -0
- package/browser/esm/C2xOGr0pDSHSMKoW.mjs +1366 -0
- package/browser/esm/CAal3t8F-VfdmgAH.mjs +10 -0
- package/browser/esm/CBPeZuyUIf9scEwn.mjs +2081 -0
- package/browser/esm/CCjuiVOyesh1IQpA.mjs +3936 -0
- package/browser/esm/CDnNRZ7jINT_Dr0K.mjs +46 -0
- package/browser/esm/CQaM4Ka20cP71fl0.mjs +10 -0
- package/browser/esm/CVlIOg6F8qrZdlQ1.mjs +10 -0
- package/browser/esm/Cbq2K4YGny5wwFEf.mjs +10 -0
- package/browser/esm/CfeqmUm-TkCE2XpK.mjs +260 -0
- package/browser/esm/Ckb6l6osoWh90VXn.mjs +10 -0
- package/browser/esm/CkccSfJEU471_Sui.mjs +1702 -0
- package/browser/esm/Cl0mB61JgZYfTh4S.mjs +24 -0
- package/browser/esm/Cm7pnWH_xgLwX_lZ.mjs +10 -0
- package/browser/esm/Co_HyodT3prcEvNJ.mjs +10 -0
- package/browser/esm/CsBIABPdnqpcZcvJ.mjs +10 -0
- package/browser/esm/CslKfn0zxkGKrM4-.mjs +48 -0
- package/browser/esm/Cx0a1WWRvJgDg4qb.mjs +21 -0
- package/browser/esm/D-QFKqWRP5dKwynV.mjs +10 -0
- package/browser/esm/DWgbhx4Y4WzyAP3Z.mjs +1575 -0
- package/browser/esm/DgFIjoPrM5dmrLHT.mjs +392 -0
- package/browser/esm/Dk_OZhcDLapTaNma.mjs +10 -0
- package/browser/esm/Dp--KMDeqecbq_Wc.mjs +10 -0
- package/browser/esm/Dva_qJrZGvFYbRxZ.mjs +21 -0
- package/browser/esm/DxJfUV0HFQT8g6H_.mjs +39 -0
- package/browser/esm/Dxqx7qwqE6wbYSpB.mjs +147 -0
- package/browser/esm/ObudKUELIfmbm87W.mjs +10 -0
- package/browser/esm/SGprYj0-SzDtrM3y.mjs +56 -0
- package/browser/esm/SmC3rmOCw-Ynredz.mjs +1672 -0
- package/browser/esm/T263hpnj_sMd1bmD.mjs +84 -0
- package/browser/esm/Ys1OCodY6sXUkZ6-.mjs +424 -0
- package/browser/esm/aqvSzH4m6bf7ODc6.mjs +10 -0
- package/browser/esm/d49_A3euUkzKZure.mjs +633 -0
- package/browser/esm/d8r4AqRUASAMCbBC.mjs +1352 -0
- package/browser/esm/fgXzhDR19HBK6PEW.mjs +20 -0
- package/browser/esm/g2unVUs-HBGBvXMs.mjs +12 -0
- package/browser/esm/gzl_ozUgkS0mr_32.mjs +13391 -0
- package/browser/esm/index.mjs +4 -176
- package/browser/esm/kbK4ZGVl1tl5F-UA.mjs +41 -0
- package/browser/esm/oAfM3SU0EgMxfDc0.mjs +3802 -0
- package/browser/esm/{NBuS53B7u8hItiXf.mjs → oUl7lbkOPMCi30tO.mjs} +937 -933
- package/browser/esm/tAl8qMu6C0Vlq5p-.mjs +5585 -0
- package/cdn/assets/1we1udiYEDagZ5XN.js +241 -0
- package/cdn/assets/8d4z_mUqWF_BnOt4.js +6481 -0
- package/cdn/assets/B-ol51_1jHaCVeGO.js +3802 -0
- package/cdn/assets/B2I5EC8Y3LkhqzOe.js +50 -0
- package/cdn/assets/B44RkeFF8g1ncaGw.js +49 -0
- package/cdn/assets/BBov1fpR61VyhE3Z.js +10 -0
- package/cdn/assets/BCEDMsB3yP73FGo4.js +260 -0
- package/cdn/assets/BERonPR_jlfR0j1B.js +46 -0
- package/cdn/assets/BJD32_Zv5gkabGc0.js +10 -0
- package/cdn/assets/BJqIPJDvrhWpZc4S.js +10 -0
- package/cdn/assets/BKYjPTKdwG8Dn1_Z.js +21 -0
- package/cdn/assets/BPQvYX3Tn3_XfM55.js +2346 -0
- package/cdn/assets/BQfnqD12mz41DOr_.js +10 -0
- package/cdn/assets/BSdVpOzJ8SL3EBhP.js +10 -0
- package/cdn/assets/BWHiFslK55rPiaTT.js +21 -0
- package/cdn/assets/BWhbbP9qvpjw1m3d.js +21 -0
- package/cdn/assets/B_gWDLoUXJ58kUTF.js +5585 -0
- package/cdn/assets/Bb0W3ByMVowTViNK.js +10 -0
- package/cdn/assets/Bk7mWQ4jJ591qT5U.js +1702 -0
- package/cdn/assets/BmyjN5txj3iMw_DE.js +10 -0
- package/cdn/assets/BnEb6t4xIVuW37yn.js +29 -0
- package/cdn/assets/BpFA0UU_TF4JO3dh.js +10 -0
- package/cdn/assets/Bzg-D_R4sXN-wyMx.js +10 -0
- package/cdn/assets/C2xOGr0pDSHSMKoW.js +1366 -0
- package/cdn/assets/CAal3t8F-VfdmgAH.js +10 -0
- package/cdn/assets/CGImeT9zAECbU9zM.js +43 -0
- package/cdn/assets/CIdfxx6BkkxIdU4J.js +36 -0
- package/cdn/assets/CQaM4Ka20cP71fl0.js +10 -0
- package/cdn/assets/CVgQlKevn28IBavQ.js +44342 -0
- package/cdn/assets/CVlIOg6F8qrZdlQ1.js +10 -0
- package/cdn/assets/Cbq2K4YGny5wwFEf.js +10 -0
- package/cdn/assets/CcE9nC_34k_5iKdO.js +425 -0
- package/cdn/assets/CcP-5SrDsnDeT6SQ.js +2083 -0
- package/cdn/assets/Ckb6l6osoWh90VXn.js +10 -0
- package/cdn/assets/Cl0mB61JgZYfTh4S.js +24 -0
- package/cdn/assets/Cm7pnWH_xgLwX_lZ.js +10 -0
- package/cdn/assets/Co_HyodT3prcEvNJ.js +10 -0
- package/cdn/assets/CsBIABPdnqpcZcvJ.js +10 -0
- package/cdn/assets/Ct1wZ_TFb7_zG9uz.js +22 -0
- package/cdn/assets/D-QFKqWRP5dKwynV.js +10 -0
- package/cdn/assets/D8hsneNA-W9ryUa9.js +27 -0
- package/cdn/assets/DBzbchpZyNJVqFwJ.js +1575 -0
- package/cdn/assets/DIBJnPf-ZLpoUAyv.js +90 -0
- package/cdn/assets/DKaNurhCUtSDI3-Y.js +3936 -0
- package/cdn/assets/DQmcuM6zJj_UBR4j.js +58 -0
- package/cdn/assets/DXWy4_H6I-dyOLr6.js +46 -0
- package/cdn/assets/DXlz010r4VFvz1TS.js +23 -0
- package/cdn/assets/Dk_OZhcDLapTaNma.js +10 -0
- package/cdn/assets/Dp--KMDeqecbq_Wc.js +10 -0
- package/cdn/assets/DqRiTlxxpGv8z6hB.js +392 -0
- package/cdn/assets/Dt6M8k8ljeGubAJ5.js +1466 -0
- package/cdn/assets/Dzb_e1lRgdeWlKbP.js +27 -0
- package/cdn/assets/ObudKUELIfmbm87W.js +10 -0
- package/cdn/assets/QtHcsa9O7bxZgew4.js +12 -0
- package/cdn/assets/SmC3rmOCw-Ynredz.js +1672 -0
- package/cdn/assets/UBuQw1PVtmH3a9bE.js +84 -0
- package/cdn/assets/Ys1OCodY6sXUkZ6-.js +424 -0
- package/cdn/assets/aqvSzH4m6bf7ODc6.js +10 -0
- package/cdn/assets/d49_A3euUkzKZure.js +633 -0
- package/cdn/assets/d8r4AqRUASAMCbBC.js +1352 -0
- package/cdn/assets/g2unVUs-HBGBvXMs.js +12 -0
- package/cdn/assets/gzl_ozUgkS0mr_32.js +13391 -0
- package/cdn/assets/o1yNcQczZA65rwUv.js +41 -0
- package/cdn/assets/u_xPkr1quUnZRgrA.js +149 -0
- package/cdn/index.js +2 -2
- package/cdn/loader.js +1 -1
- package/package.json +3 -3
- package/cdn/assets/CY8njwo06MWkoPz2.js +0 -21
package/browser/esm/index.mjs
CHANGED
|
@@ -1,183 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import * as C from "@sheetxl/studio-mui";
|
|
1
|
+
import { aO as t, aO as f } from "./B0A2aLiKDPGGU4k-.mjs";
|
|
3
2
|
/**
|
|
4
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.
|
|
3
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.22
|
|
5
4
|
*
|
|
6
5
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
7
6
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
8
7
|
*/
|
|
9
|
-
function N(t, o) {
|
|
10
|
-
for (var e = 0; e < o.length; e++) {
|
|
11
|
-
const n = o[e];
|
|
12
|
-
if (typeof n != "string" && !Array.isArray(n)) {
|
|
13
|
-
for (const i in n) if (i !== "default" && !(i in t)) {
|
|
14
|
-
const l = Object.getOwnPropertyDescriptor(n, i);
|
|
15
|
-
l && Object.defineProperty(t, i, l.get ? l : { enumerable: !0, get: () => n[i] });
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return Object.freeze(Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }));
|
|
20
|
-
}
|
|
21
|
-
const S = /* @__PURE__ */ new Map(), R = (t, o = {}) => {
|
|
22
|
-
const { message: e, icon: n, customElement: i, hide: l = !1, className: a, cssVars: u = {} } = o;
|
|
23
|
-
if (l) return;
|
|
24
|
-
const c = typeof t == "string" ? document.querySelector(t) : t;
|
|
25
|
-
if (!c) return void console.warn(`Element with selector "${t}" not found for panel.`);
|
|
26
|
-
let r;
|
|
27
|
-
if (f(t), i) r = i;
|
|
28
|
-
else {
|
|
29
|
-
r = document.createElement("div"), r.className = a ? `sheetxl-panel ${a}` : "sheetxl-panel";
|
|
30
|
-
const m = Object.entries(u).map(([s, y]) => `--sheetxl-panel-${s}: ${y};`).join(" "), g = `
|
|
31
|
-
@keyframes sheetxl-spin {
|
|
32
|
-
from { transform: rotate(0deg); }
|
|
33
|
-
to { transform: rotate(360deg); }
|
|
34
|
-
}
|
|
35
|
-
.sheetxl-panel {
|
|
36
|
-
position: absolute;
|
|
37
|
-
top: 0;
|
|
38
|
-
left: 0;
|
|
39
|
-
right: 0;
|
|
40
|
-
bottom: 0;
|
|
41
|
-
display: flex;
|
|
42
|
-
flex-direction: column;
|
|
43
|
-
align-items: center;
|
|
44
|
-
justify-content: center;
|
|
45
|
-
backdrop-filter: blur(4px);
|
|
46
|
-
border-radius: 4px;
|
|
47
|
-
z-index: 9999;
|
|
48
|
-
gap: 16px;
|
|
49
|
-
|
|
50
|
-
/* CSS variables with fallbacks */
|
|
51
|
-
color: var(--sheetxl-panel-color, #333);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.sheetxl-panel.dark {
|
|
55
|
-
color: var(--sheetxl-panel-color, #e0e0e0);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
.sheetxl-icon {
|
|
59
|
-
width: 24px;
|
|
60
|
-
height: 24px;
|
|
61
|
-
color: var(--sheetxl-panel-icon-color, #1976d2);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.sheetxl-panel.loading {
|
|
65
|
-
/* Loading panel defaults */
|
|
66
|
-
color: var(--sheetxl-panel-color, #333);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.sheetxl-panel.loading.dark {
|
|
70
|
-
color: var(--sheetxl-panel-color, #e0e0e0);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.sheetxl-panel.error {
|
|
74
|
-
/* Error panel defaults */
|
|
75
|
-
color: var(--sheetxl-panel-color, #d32f2f);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.sheetxl-panel.error.dark {
|
|
79
|
-
color: var(--sheetxl-panel-color, #f44336);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.sheetxl-panel.error .sheetxl-icon {
|
|
83
|
-
color: var(--sheetxl-panel-icon-color, #d32f2f);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.sheetxl-panel.error.dark .sheetxl-icon {
|
|
87
|
-
color: var(--sheetxl-panel-icon-color, #f44336);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.sheetxl-message {
|
|
91
|
-
font-size: 1.1em;
|
|
92
|
-
font-weight: 500;
|
|
93
|
-
letter-spacing: 0.1px;
|
|
94
|
-
text-align: center;
|
|
95
|
-
margin: 0;
|
|
96
|
-
}
|
|
97
|
-
`, h = document.createElement("style");
|
|
98
|
-
if (h.textContent = g, r.appendChild(h), n) {
|
|
99
|
-
const s = document.createElement("div");
|
|
100
|
-
s.className = "sheetxl-icon", typeof n == "string" ? s.innerHTML = n : n instanceof HTMLElement && s.appendChild(n), r.appendChild(s);
|
|
101
|
-
}
|
|
102
|
-
if (e) {
|
|
103
|
-
const s = document.createElement("div");
|
|
104
|
-
s.className = "sheetxl-message", s.textContent = e, r.appendChild(s);
|
|
105
|
-
}
|
|
106
|
-
m && (r.style.cssText += m), window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches && r.classList.add("dark");
|
|
107
|
-
}
|
|
108
|
-
window.getComputedStyle(c).position === "static" && (c.style.position = "relative"), c.appendChild(r), S.set(t, r);
|
|
109
|
-
}, f = (t) => {
|
|
110
|
-
const o = S.get(t);
|
|
111
|
-
o && o.parentNode && (o.parentNode.removeChild(o), S.delete(t));
|
|
112
|
-
}, O = (t, o = {}) => {
|
|
113
|
-
R(t, { icon: `
|
|
114
|
-
<svg width="24" height="24" viewBox="0 0 24 24" style="animation: sheetxl-spin 1s linear infinite;">
|
|
115
|
-
<circle cx="12" cy="12" r="10" fill="none" stroke="currentColor" stroke-width="2" stroke-dasharray="31.416" stroke-dashoffset="31.416">
|
|
116
|
-
<animate attributeName="stroke-dasharray" dur="2s" values="0 31.416;15.708 15.708;0 31.416" repeatCount="indefinite"/>
|
|
117
|
-
<animate attributeName="stroke-dashoffset" dur="2s" values="0;-15.708;-31.416" repeatCount="indefinite"/>
|
|
118
|
-
</circle>
|
|
119
|
-
</svg>
|
|
120
|
-
`, className: "loading", ...o });
|
|
121
|
-
}, j = (t, o = {}) => {
|
|
122
|
-
R(t, { message: "Failed to load SheetXL", icon: `
|
|
123
|
-
<svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
124
|
-
<path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"/>
|
|
125
|
-
</svg>
|
|
126
|
-
`, className: "error", ...o });
|
|
127
|
-
}, x = /* @__PURE__ */ new Map(), T = b(D());
|
|
128
|
-
var M = F();
|
|
129
|
-
const X = N({ __proto__: null, default: b(M) }, [M]);
|
|
130
|
-
var k = I();
|
|
131
|
-
const z = N({ __proto__: null, default: b(k) }, [k]);
|
|
132
|
-
let w;
|
|
133
|
-
const U = async (t) => {
|
|
134
|
-
if (w) return w;
|
|
135
|
-
if (C.Studio === void 0) throw new Error("StudioMUI.Studio is undefined. Make sure @sheetxl/studio-mui is correctly installed.");
|
|
136
|
-
return w = await (async (o, e) => {
|
|
137
|
-
typeof e == "string" && (e = { selector: e });
|
|
138
|
-
try {
|
|
139
|
-
if (e?.selector && O(e?.selector, e?.loading), !o) throw new Error("No runtime provided");
|
|
140
|
-
e?.licenseKey && await o.StudioMUI.LicenseManager.setLicenseKey(e.licenseKey), e?.selector && f(e?.selector);
|
|
141
|
-
} catch (n) {
|
|
142
|
-
throw e?.selector && (f(e.selector), j(e.selector, { message: `Failed to initialize: ${n instanceof Error ? n.message : String(n)}`, ...e?.error })), console.error("Failed to initialize:", n), n;
|
|
143
|
-
}
|
|
144
|
-
return o;
|
|
145
|
-
})({ React: T, ReactJSXTransform: X, ReactDOM: z, ReactDOMClient: z, StudioMUI: C }, typeof t == "object" ? t : void 0), w;
|
|
146
|
-
};
|
|
147
|
-
let p;
|
|
148
|
-
const L = async (t) => p || await U(t), q = { attachStudio: async (t, o) => (p || (p = await L(t)), (async (e, n, i, l) => {
|
|
149
|
-
if (!n) throw new Error("Either a 'selector' or a 'InitializationOptions' must be provided to attach.");
|
|
150
|
-
const a = typeof n == "string" ? n : n.selector || "#sheetxl", u = typeof a == "string" ? document.querySelector(a) : a;
|
|
151
|
-
if (!u) throw new Error(`Element with selector "${a}" not found.`);
|
|
152
|
-
if (x.has(a) && x.get(a) !== null) throw new Error(`SheetXL already attached to "${a}". Detach first if you want to re-attach.`);
|
|
153
|
-
const c = typeof n == "object" ? n : null;
|
|
154
|
-
O(a, c?.loading);
|
|
155
|
-
try {
|
|
156
|
-
f(a);
|
|
157
|
-
const r = e.ReactDOMClient.createRoot(u), m = e.React.createRef(), g = e.StudioMUI[i];
|
|
158
|
-
let h = null;
|
|
159
|
-
await new Promise((v) => {
|
|
160
|
-
r.render(e.React.createElement(g, { ...l, ref: (d) => {
|
|
161
|
-
d && (h = d, v());
|
|
162
|
-
} }));
|
|
163
|
-
});
|
|
164
|
-
const y = { runtime: e, root: r };
|
|
165
|
-
x.set(a, y);
|
|
166
|
-
let E = !1;
|
|
167
|
-
return new Proxy(h, { get(v, d, $) {
|
|
168
|
-
if (E) throw new Error(`SheetXL instance attached to "${a}" has been detached. Cannot access properties.`);
|
|
169
|
-
return d === "update" ? (_) => {
|
|
170
|
-
const P = { ...l, ..._, ref: m };
|
|
171
|
-
return r.render(e.React.createElement(g, P)), Promise.resolve();
|
|
172
|
-
} : d === "detach" ? () => (x.delete(a), r.unmount(), E = !0, Promise.resolve()) : Reflect.get(v, d, $);
|
|
173
|
-
} });
|
|
174
|
-
} catch (r) {
|
|
175
|
-
throw f(a), j(a, { message: `Failed to initialize: ${r instanceof Error ? r.message : String(r)}`, ...c?.error }), console.error("Failed to initialize:", r), r;
|
|
176
|
-
}
|
|
177
|
-
})(p, t, "Studio", o)), async initialize(t) {
|
|
178
|
-
await L(t);
|
|
179
|
-
} };
|
|
180
8
|
export {
|
|
181
|
-
|
|
182
|
-
|
|
9
|
+
t as SheetXL,
|
|
10
|
+
f as default
|
|
183
11
|
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { r as n, c as p, j as r, L as b, B as k, Q as B, R as I } from "./B0A2aLiKDPGGU4k-.mjs";
|
|
2
|
+
/**
|
|
3
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.22
|
|
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 L = ["Ok", "Cancel"], A = n.memo((V) => {
|
|
9
|
+
const { value: a = null, context: t, onOption: c, onValidateOption: E, onDone: g, onUpdate: m, options: x = L, defaultOption: f = x?.[0], cancelOption: N = "Cancel", sx: C, ...R } = V, y = n.useMemo(() => t?.getNames().findValidName("Range1"), []), d = n.useMemo(() => {
|
|
10
|
+
if (!a) return !0;
|
|
11
|
+
}, []), [l, h] = n.useState({ displayText: a?.getName() ?? y, errorText: null }), [s, v] = n.useState({ displayValue: a?.getRanges() ?? t?.selection() ?? null, errorText: null }), [T, O] = n.useState(!1), j = n.useCallback(async (e) => !l.errorText && !s.errorText, [t]), w = p((e, o, u) => {
|
|
12
|
+
if (!o) {
|
|
13
|
+
let i = null;
|
|
14
|
+
d ? i = t?.getNames().addReference(l?.displayText, s?.displayValue, !1) : (a.getType() === "reference" && a.doBatch(() => {
|
|
15
|
+
a.setName(l?.displayText), a.setReference(s?.displayValue);
|
|
16
|
+
}, `Edit Named '${l?.displayText}'`), i = a), i && (i.select(), m(i, d));
|
|
17
|
+
}
|
|
18
|
+
c?.(e, o, u), g?.();
|
|
19
|
+
}, [t, l, s, g, c, f, N, m]), D = p((e) => {
|
|
20
|
+
let o = null;
|
|
21
|
+
try {
|
|
22
|
+
t?.getNames().validateName(e);
|
|
23
|
+
} catch (u) {
|
|
24
|
+
o = u.message;
|
|
25
|
+
}
|
|
26
|
+
h({ displayText: e, errorText: o });
|
|
27
|
+
}, []), F = p((e) => {
|
|
28
|
+
a && a.getName().toLowerCase() === e.toLowerCase() || t?.getNames().validateName(e);
|
|
29
|
+
}, [t, a]), S = n.useCallback((e) => {
|
|
30
|
+
v({ displayValue: e ?? null, errorText: null });
|
|
31
|
+
}, []);
|
|
32
|
+
return r.jsx(b, { title: (d ? "Define" : "Edit") + " Range", options: x, onOption: w, onValidateOption: j, defaultOption: f, cancelOption: N, autoFocusSel: ".autoFocus", sx: { width: "460px", ...C }, ...R, children: r.jsxs(k, { sx: { paddingTop: (e) => e.spacing(1), paddingBottom: (e) => e.spacing(0), rowGap: (e) => e.spacing(1), range: "flex", flexDirection: "column" }, children: [r.jsx(B, { formName: "name", defaultInput: y, value: l.displayText, onChangeInput: D, onValidate: F, onFocus: (e) => {
|
|
33
|
+
T || e.target?.select(), O(!0);
|
|
34
|
+
} }), r.jsx(I, { formName: "range", value: s.displayValue, onChangeInput: S, resolvedAddress: t.getNames().getRanges.bind(t.getNames()), onFocus: (e) => {
|
|
35
|
+
T || e.target?.select(), O(!0);
|
|
36
|
+
} })] }) });
|
|
37
|
+
});
|
|
38
|
+
export {
|
|
39
|
+
A as NamedReferenceDialog,
|
|
40
|
+
A as default
|
|
41
|
+
};
|