@sheetxl/studio-vanilla 0.4.21 → 0.5.0

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.
Files changed (184) hide show
  1. package/browser/cjs/2QmtjcI-saz2rkIA.cjs +6 -0
  2. package/browser/cjs/3UFq2FybsZfoS4JL.cjs +6 -0
  3. package/browser/cjs/B-fFQgxMHns-eg-y.cjs +6 -0
  4. package/browser/cjs/{n6CXzSocLW_BCO8w.cjs → B2hhcNzdkhGrH1O6.cjs} +6 -6
  5. package/browser/cjs/BASsCVA0ArIVtY7I.cjs +6 -0
  6. package/browser/cjs/BAxy7pwmXg8SI_oi.cjs +6 -0
  7. package/browser/cjs/BCwHln5zBNJSn0bb.cjs +6 -0
  8. package/browser/cjs/BQYUcoxlHrpI0-pX.cjs +6 -0
  9. package/browser/cjs/BVbQCweLw_r05vPF.cjs +15 -0
  10. package/browser/cjs/BYJxHR3K0UQJ8mYe.cjs +6 -0
  11. package/browser/cjs/Ba8eoGTjjWBH8TbP.cjs +6 -0
  12. package/browser/cjs/BdCoVNJwhPpWfQw2.cjs +6 -0
  13. package/browser/cjs/BkZzUVGQfrUTPE_K.cjs +6 -0
  14. package/browser/cjs/BlpCu5z9eT8rzsZl.cjs +6 -0
  15. package/browser/cjs/BlqTaZ2U_mKVK2lb.cjs +6 -0
  16. package/browser/cjs/BpeteRa_oZ-wN4Yl.cjs +6 -0
  17. package/browser/cjs/BxqDS9XynU5GFbP7.cjs +16 -0
  18. package/browser/cjs/ByB_fmjdLNTv0T0U.cjs +145 -0
  19. package/browser/cjs/C-6TpShR6Bn0HnEd.cjs +7 -0
  20. package/browser/cjs/C5T_oiCG4PwTFSZA.cjs +6 -0
  21. package/browser/cjs/C5e1IjdRuLyAQqNX.cjs +7 -0
  22. package/browser/cjs/CAZoVQtxsVdAtVKy.cjs +6 -0
  23. package/browser/cjs/CBS2kMyEf0c_PUbQ.cjs +12 -0
  24. package/browser/cjs/CO7VEOXret0qr-X3.cjs +6 -0
  25. package/browser/cjs/CVIlAq9nwlOXfHMl.cjs +161 -0
  26. package/browser/cjs/CZEOikBcE4OIr49t.cjs +6 -0
  27. package/browser/cjs/Ce8AVRntRnXZtgzH.cjs +6 -0
  28. package/browser/cjs/ClEZHGlmkSIz6S1O.cjs +6 -0
  29. package/browser/cjs/CvO-oyQ3syx7EGUA.cjs +6 -0
  30. package/browser/cjs/CwqvcNlwUtXJrzsk.cjs +6 -0
  31. package/browser/cjs/D-su0R92LmYTQVL3.cjs +11 -0
  32. package/browser/cjs/D178aT-dgy-ngzYG.cjs +6 -0
  33. package/browser/cjs/D5z-zqUVI3G9JXBC.cjs +1501 -0
  34. package/browser/cjs/D68uE8Ovq38Aj-88.cjs +330 -0
  35. package/browser/cjs/D8mjDoZ4Yyous_Fc.cjs +6 -0
  36. package/browser/cjs/DASsVvQwE2-IWxLR.cjs +6 -0
  37. package/browser/cjs/DBavSByKdf-juvFm.cjs +32 -0
  38. package/browser/cjs/DHRZzqw46ad6Mtw6.cjs +6 -0
  39. package/browser/cjs/DJZBxKlTP03_1kyT.cjs +6 -0
  40. package/browser/cjs/DKq35Q191eW-MovK.cjs +6 -0
  41. package/browser/cjs/DMUFBhoYpT3ai2Sb.cjs +6 -0
  42. package/browser/cjs/DX2XUDUIVBx4UFrJ.cjs +6 -0
  43. package/browser/cjs/DdzEWCcupF-0WS8y.cjs +11 -0
  44. package/browser/cjs/Dg9j6yGv8nrILfzN.cjs +6 -0
  45. package/browser/cjs/DjB9MJwDT6_HgF4U.cjs +6 -0
  46. package/browser/cjs/Dl5mwbo0ahDUm0he.cjs +6 -0
  47. package/browser/cjs/DmT6vIsFpZJ2c8cx.cjs +15 -0
  48. package/browser/cjs/Hi6aVJR9PyRbNYjO.cjs +6 -0
  49. package/browser/cjs/K7QHOvYV_yvLLjsS.cjs +6 -0
  50. package/browser/cjs/LhLQSvaxn8yxAIwj.cjs +6 -0
  51. package/browser/cjs/MgEzGw411nlqjqfH.cjs +42 -0
  52. package/browser/cjs/WJXT0W6bS3bZdAUV.cjs +6 -0
  53. package/browser/cjs/f_Vbi-Lelt9tKZrz.cjs +19 -0
  54. package/browser/cjs/index.cjs +2 -80
  55. package/browser/cjs/tNT3tUxdeIp_Iq2Y.cjs +7 -0
  56. package/browser/cjs/vNEwUuTKk3qucC3P.cjs +6 -0
  57. package/browser/cjs/xMzLyo_gIl82xG8k.cjs +6 -0
  58. package/browser/cjs/yc1bXLJ1yRhBFy0X.cjs +124 -0
  59. package/browser/esm/2fFz5u9jPgrNzcVF.mjs +21 -0
  60. package/browser/esm/2kXHnuU_uz-F9i1S.mjs +44550 -0
  61. package/browser/esm/5F1_gQbzWEFsWO0i.mjs +84 -0
  62. package/browser/esm/9MchcnSGrYDjX4zQ.mjs +46 -0
  63. package/browser/esm/Af7aikoKHz0rpjfv.mjs +10 -0
  64. package/browser/esm/B1Kc7dS9N2PVqxMT.mjs +10 -0
  65. package/browser/esm/B8ePgT5XZ0JlU3T6.mjs +1352 -0
  66. package/browser/esm/B8uy0BSOVjfUw27f.mjs +12 -0
  67. package/browser/esm/BFweWj2oKpTGl7m3.mjs +1672 -0
  68. package/browser/esm/BLseM2hNBI2PgQaX.mjs +13391 -0
  69. package/browser/esm/BUNUi9F3xbjfUKty.mjs +24 -0
  70. package/browser/esm/BV3ROKbw5yMVArqX.mjs +10 -0
  71. package/browser/esm/BXKXqOluLdKs4-V0.mjs +3802 -0
  72. package/browser/esm/BZpMA4DGM1kbVAKF.mjs +10 -0
  73. package/browser/esm/Bg59p3YlNG6o7-M3.mjs +260 -0
  74. package/browser/esm/BlFzVqIUaXFtDy81.mjs +10 -0
  75. package/browser/esm/BtBECeJ4mwD7SUx8.mjs +3936 -0
  76. package/browser/esm/Buw1VxSLsNI8pSYS.mjs +5585 -0
  77. package/browser/esm/BxoWypkKac-_VAm5.mjs +39 -0
  78. package/browser/esm/By3EkyTg3ZYh63C7.mjs +56 -0
  79. package/browser/esm/CDu4VlyMAQ3nxTQG.mjs +10 -0
  80. package/browser/esm/CJ9ZL3uskq3W6s-m.mjs +10 -0
  81. package/browser/esm/CP_sGa9QGT2Nq5ym.mjs +1702 -0
  82. package/browser/esm/CaIFrnjL0xBOtFfM.mjs +10 -0
  83. package/browser/esm/CeP-AnEtOGkuxLqE.mjs +10 -0
  84. package/browser/esm/CjScjxhY2mD7nPZA.mjs +633 -0
  85. package/browser/esm/CozWNYg-NXzV84fz.mjs +10 -0
  86. package/browser/esm/Cprnt9pNXzIiMmkN.mjs +29 -0
  87. package/browser/esm/Cq-wjvtZ92uenxU1.mjs +20 -0
  88. package/browser/esm/CsVeeu8D1A8I-BbH.mjs +1575 -0
  89. package/browser/esm/CzMxOWYq4nqRtKmm.mjs +1366 -0
  90. package/browser/esm/D9MGSJr45cVRF75O.mjs +1466 -0
  91. package/browser/esm/DAUV_w2uv0nHdk5N.mjs +10 -0
  92. package/browser/esm/DIypkIIonThPr-Vt.mjs +47 -0
  93. package/browser/esm/DOG1CaEQVF1sTUFi.mjs +10 -0
  94. package/browser/esm/DOv9FndcEVmQ2LJK.mjs +392 -0
  95. package/browser/esm/DSCVDOwTpDzUVuFj.mjs +10 -0
  96. package/browser/esm/DYF-8AnNDaQUy3aL.mjs +2344 -0
  97. package/browser/esm/Dd0avXHDTPFrx-ot.mjs +44 -0
  98. package/browser/esm/DdQY6IuT4OziHv5i.mjs +48 -0
  99. package/browser/esm/DfRKIODWn8ElqMWa.mjs +425 -0
  100. package/browser/esm/Dfbzljrnj4KrvtaN.mjs +10 -0
  101. package/browser/esm/DfdWpPG9ZcbRBGUg.mjs +10 -0
  102. package/browser/esm/Di8JLQMx61fnrhOn.mjs +10 -0
  103. package/browser/esm/DirXlaTG7TKxrqSR.mjs +10 -0
  104. package/browser/esm/DjGdyf6zsnIMRkQb.mjs +41 -0
  105. package/browser/esm/Dm4Fun7UoovVHafs.mjs +147 -0
  106. package/browser/esm/DwpS4SI4gT1eqfOs.mjs +10 -0
  107. package/browser/esm/DzZDYedlR-CIW2TI.mjs +21 -0
  108. package/browser/esm/HlyDPlaZCA3IOmF2.mjs +2081 -0
  109. package/browser/esm/PzIeb5aTX9JzTTfm.mjs +424 -0
  110. package/browser/esm/{NBuS53B7u8hItiXf.mjs → QPkYQWSepZNIhJst.mjs} +937 -933
  111. package/browser/esm/UENfAV2nBd83yFu7.mjs +10 -0
  112. package/browser/esm/YYqCu_-Z9nzvEseu.mjs +10 -0
  113. package/browser/esm/aEhgzbKqmuKv1oqm.mjs +10 -0
  114. package/browser/esm/bxGRTnY732xGNtpL.mjs +10 -0
  115. package/browser/esm/index.mjs +4 -176
  116. package/browser/esm/zQSjT9VbN7kMDV88.mjs +21 -0
  117. package/cdn/assets/2fFz5u9jPgrNzcVF.js +21 -0
  118. package/cdn/assets/7ZUzaBw_VH3Cvii1.js +1702 -0
  119. package/cdn/assets/7bmIdE8Moi7orOeU.js +50 -0
  120. package/cdn/assets/Af7aikoKHz0rpjfv.js +10 -0
  121. package/cdn/assets/B1Kc7dS9N2PVqxMT.js +10 -0
  122. package/cdn/assets/B6QHusAaPSos46yi.js +3802 -0
  123. package/cdn/assets/B8ePgT5XZ0JlU3T6.js +1352 -0
  124. package/cdn/assets/B8uy0BSOVjfUw27f.js +12 -0
  125. package/cdn/assets/BFweWj2oKpTGl7m3.js +1672 -0
  126. package/cdn/assets/BGF-bSrwdriQTytG.js +1466 -0
  127. package/cdn/assets/BLseM2hNBI2PgQaX.js +13391 -0
  128. package/cdn/assets/BQvzpOcCO8uM_ZaF.js +46 -0
  129. package/cdn/assets/BUNUi9F3xbjfUKty.js +24 -0
  130. package/cdn/assets/BV3ROKbw5yMVArqX.js +10 -0
  131. package/cdn/assets/BZpMA4DGM1kbVAKF.js +10 -0
  132. package/cdn/assets/BlFzVqIUaXFtDy81.js +10 -0
  133. package/cdn/assets/BrwV_8GjxcVuWuUk.js +44377 -0
  134. package/cdn/assets/C7SHJrlOqTIZCB3t.js +41 -0
  135. package/cdn/assets/CCbJipmDawMQQxRJ.js +36 -0
  136. package/cdn/assets/CDu4VlyMAQ3nxTQG.js +10 -0
  137. package/cdn/assets/CEcpUxbZ1W-G1EPq.js +2346 -0
  138. package/cdn/assets/CJ9ZL3uskq3W6s-m.js +10 -0
  139. package/cdn/assets/CaIFrnjL0xBOtFfM.js +10 -0
  140. package/cdn/assets/CaN0O_koLgCkhgEh.js +1575 -0
  141. package/cdn/assets/CeP-AnEtOGkuxLqE.js +10 -0
  142. package/cdn/assets/CjScjxhY2mD7nPZA.js +633 -0
  143. package/cdn/assets/ClkFsS16G5memDzX.js +22 -0
  144. package/cdn/assets/CmUGAy0Bu36DiwJO.js +84 -0
  145. package/cdn/assets/CozWNYg-NXzV84fz.js +10 -0
  146. package/cdn/assets/CsYr_9x-OIQSqGIL.js +27 -0
  147. package/cdn/assets/CzEv6qEIPTHOwOdU.js +2083 -0
  148. package/cdn/assets/CzMF1riupKc6HLGE.js +6481 -0
  149. package/cdn/assets/CzMxOWYq4nqRtKmm.js +1366 -0
  150. package/cdn/assets/D-W_ANt_qJ9dfGy9.js +425 -0
  151. package/cdn/assets/DAI9BFZBDQlMP1v4.js +149 -0
  152. package/cdn/assets/DAUV_w2uv0nHdk5N.js +10 -0
  153. package/cdn/assets/DOG1CaEQVF1sTUFi.js +10 -0
  154. package/cdn/assets/DSCVDOwTpDzUVuFj.js +10 -0
  155. package/cdn/assets/DSv3gXCV9xifjdta.js +23 -0
  156. package/cdn/assets/DaYZ-afnc3QhJo5R.js +58 -0
  157. package/cdn/assets/Dfbzljrnj4KrvtaN.js +10 -0
  158. package/cdn/assets/DfdWpPG9ZcbRBGUg.js +10 -0
  159. package/cdn/assets/Di8JLQMx61fnrhOn.js +10 -0
  160. package/cdn/assets/DirXlaTG7TKxrqSR.js +10 -0
  161. package/cdn/assets/DivRRrwWTqpDEOsE.js +392 -0
  162. package/cdn/assets/DlGa-wREL0uZB2Nx.js +43 -0
  163. package/cdn/assets/DlMH1vSjXgvZMwQJ.js +90 -0
  164. package/cdn/assets/Dml7K4XhLTRwUDTY.js +27 -0
  165. package/cdn/assets/DwpS4SI4gT1eqfOs.js +10 -0
  166. package/cdn/assets/G0GROjU63_EPzAF7.js +241 -0
  167. package/cdn/assets/NoCZPCkSed8lQpNi.js +46 -0
  168. package/cdn/assets/O-MB9oo65vbYOjfG.js +260 -0
  169. package/cdn/assets/PzIeb5aTX9JzTTfm.js +424 -0
  170. package/cdn/assets/UENfAV2nBd83yFu7.js +10 -0
  171. package/cdn/assets/V2bW77WyjoyjJMvZ.js +5585 -0
  172. package/cdn/assets/YJiNeqIJTFYDQPxS.js +3936 -0
  173. package/cdn/assets/YYqCu_-Z9nzvEseu.js +10 -0
  174. package/cdn/assets/Yp0FxpbZyyvU_u6y.js +49 -0
  175. package/cdn/assets/aEhgzbKqmuKv1oqm.js +10 -0
  176. package/cdn/assets/bxGRTnY732xGNtpL.js +10 -0
  177. package/cdn/assets/djN8Su_7GYF42GqX.js +21 -0
  178. package/cdn/assets/m-A0SfNBx32zKuZU.js +29 -0
  179. package/cdn/assets/uvZYEIW4EfvcdsXG.js +12 -0
  180. package/cdn/assets/zZGhctwBXNlAYrJr.js +21 -0
  181. package/cdn/index.js +2 -2
  182. package/cdn/loader.js +1 -1
  183. package/package.json +3 -3
  184. package/cdn/assets/CY8njwo06MWkoPz2.js +0 -21
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ const e = { ENCODEURL: { s: "Returns a URL-encoded string", p: { text: { d: "is a string to be URL encoded" } } }, WEBSERVICE: { s: "Retrieves data from a web service.", p: { url: { d: "is the URL of the web service" } } } };
8
+ export {
9
+ e as default
10
+ };
@@ -0,0 +1,49 @@
1
+ import { a as t } from "./CCbJipmDawMQQxRJ.js";
2
+ import { r as s } from "./Dml7K4XhLTRwUDTY.js";
3
+ import { T as p, t as L, l as n, S as R, B as j, o as O, I as W, p as q, q as c, s as u, v as A, x as S, A as G } from "./BrwV_8GjxcVuWuUk.js";
4
+ /**
5
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
6
+ *
7
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
8
+ * License: The license can be found at https://www.sheetxl.com/license.
9
+ */
10
+ const H = ["Ok", "Cancel"], U = s.memo((F) => {
11
+ const { initialValue: w, context: f, onOption: h, onValidateOption: d, onInputOption: C, onDone: m, options: b = H, defaultOption: r = b?.[0], cancelOption: g = "Cancel", sx: P, ...D } = F, [a, v] = s.useState(w), [I, $] = s.useState(!1), x = s.useCallback(async (e, o) => !0, []), y = p(async (e) => {
12
+ C?.(a, e), h?.(e, e === g, e === r), m?.();
13
+ }, [a, C, m, h, g, r]), M = p(async (e) => {
14
+ e.keyCode === L.Enter && await x?.(a, null) !== !1 && y(r);
15
+ }, [a, y]), N = p((e) => {
16
+ v(e.target.value), x?.(e.target.value, null);
17
+ }, [d]), V = p(async (e) => {
18
+ let o = await Promise.resolve(d?.(e));
19
+ try {
20
+ o !== !1 && (o = await Promise.resolve(x?.(a, e)) ?? !0);
21
+ } catch {
22
+ }
23
+ return o ?? !0;
24
+ }, [d]), [T, k] = s.useState(n.Styles.lookupStyle(a).formatType ?? n.Type.Custom);
25
+ s.useEffect(() => {
26
+ k(n.Styles.lookupStyle(a).formatType ?? n.Type.Custom);
27
+ }, [a]);
28
+ const B = s.useMemo(() => {
29
+ const e = n.Styles.lookupPrimary(), o = (l) => t.jsx(G, { value: l, children: l }, l), i = Object.keys(e).map((l) => o(e[l].formatType));
30
+ return i.push(o(n.Type.Custom)), i;
31
+ }, []), z = s.useCallback((e) => {
32
+ const o = e.target.value;
33
+ k(o);
34
+ const i = n.Styles.lookupDefault(o);
35
+ i && v(i);
36
+ }, []), E = s.useMemo(() => {
37
+ const e = f();
38
+ return e.createTemporaryCell({ value: e.getValue() ?? 12345, style: { numberFormat: a } });
39
+ }, [T, a, f]);
40
+ return t.jsx(R, { title: "Number Format", options: b, onDone: m, onOption: (e) => y(e), onValidateOption: V, defaultOption: r, cancelOption: g, autoFocusSel: ".autoFocus", sx: { width: "580px", ...P }, ...D, children: t.jsxs(j, { sx: { paddingTop: (e) => e.spacing(1), paddingBottom: (e) => e.spacing(0), rowGap: (e) => e.spacing(1), display: "flex", flexDirection: "column" }, children: [t.jsxs(O, { sx: { minWidth: 135 }, size: "small", children: [t.jsx(W, { children: "Category" }), t.jsx(q, { value: T, label: "Category", onChange: z, sx: { backgroundImage: `linear-gradient(${c("#fff", u(5))}, ${c("#fff", u(5))})` }, children: B })] }), t.jsx(O, { sx: { paddingTop: (e) => e.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: t.jsx(A, { label: "Code", onFocus: (e) => {
41
+ I || e.target?.select(), $(!0);
42
+ }, 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(${c("#fff", u(5))}, ${c("#fff", u(5))})` } } }, value: a, onChange: N, onKeyDown: M, onContextMenu: (e) => {
43
+ e.stopPropagation();
44
+ } }) }), t.jsxs(j, { children: [t.jsx(S, { variant: "caption", component: "div", sx: { paddingLeft: (e) => e.spacing(2) }, children: "Preview" }), t.jsx(S, { variant: "body2", component: "div", sx: { borderRadius: (e) => `${e.shape.borderRadius}px`, padding: (e) => e.spacing(1), border: (e) => `1px solid ${e.palette.grey[400]}` }, children: E.getNumberFormat().displayText || "(empty)" })] })] }) });
45
+ });
46
+ export {
47
+ U as NumberFormatDialog,
48
+ U as default
49
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ const e = { CUBEKPIMEMBER: { s: "Returns a key performance indicator (KPI) property and displays the KPI name in the cell.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, kpiName: { d: "is the KPI name" }, kpiProperty: { d: "is the KPI property" }, caption: { d: "is the caption to be displayed in the cell" } }, h: "Unimplemented" }, CUBEMEMBER: { s: "Returns a member or tuple from the cube.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, memberExpression: { d: "is the expression representing the name of a member or tuple in the OLAP cube" }, caption: { d: "is the caption to be displayed in the cell" } }, h: "Unimplemented" }, CUBEMEMBERPROPERTY: { s: "Returns the value of a member property from the cube.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, memberExpression: { d: "is the expression representing the name of a member in the OLAP cube" }, kpiProperty: { d: "is the property name" } }, h: "Unimplemented" }, CUBERANKEDMEMBER: { s: "Returns the nth, or ranked, member in a set.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, setExpression: { d: "is the set from which the element is to be retrieved" }, rank: { d: "is the rank of the element to be retrieved" }, caption: { d: "is the caption to be displayed in the cell" } }, h: "Unimplemented" }, CUBESET: { s: "Defines a calculated set of members or tuples by sending a set expression to the cube on the server, which creates the set, and then returns that set to Microsoft Excel.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, setExpression: { d: "is the expression for the set" }, caption: { d: "is the caption to be displayed in the cell" }, sortOrder: { d: "is the sort order" }, sortBy: { d: "is the sort by" } }, h: "Unimplemented" }, CUBESETCOUNT: { s: "Returns the number of items in a set.", p: { set: { d: "is the set whose elements are to be counted" } }, h: "Unimplemented" }, CUBEVALUE: { s: "Returns an aggregated value from the cube.", p: { connection: { d: "is the name of a connection to an OLAP cube" }, memberExpression: {} }, h: "Unimplemented" } };
8
+ export {
9
+ e as default
10
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ const e = { AVEDEV: { s: "Returns the average of the absolute deviations of data points from their mean. Arguments can be numbers or names, arrays, or references that contain numbers", p: { number: { d: "number1,number2,... are 1 to 255 arguments for which you want the average of the absolute deviations" } } }, AVERAGE: { s: "Returns the average (arithmetic mean) of its arguments, which can be numbers or names, arrays, or references that contain numbers", p: { number: { d: "number1,number2,... are 1 to 255 numeric arguments for which you want the average" } } }, AVERAGEA: { s: "Returns the average (arithmetic mean) of its arguments, evaluating text and FALSE in arguments as 0; TRUE evaluates as 1. Arguments can be numbers, names, arrays, or references", p: { value: { d: "value1,value2,... are 1 to 255 arguments for which you want the average" } } }, AVERAGEIF: { s: "Finds average(arithmetic mean) for the cells specified by a given condition or criteria", p: { range: { d: "is the range of cells you want evaluated" }, criteria: { d: "is the condition or criteria in the form of a number, expression, or text that defines which cells will be used to find the average" }, averageRange: { d: "are the actual cells to be used to find the average. If omitted, the cells in range are used" } }, h: "Unimplemented" }, AVERAGEIFS: { s: "Finds average(arithmetic mean) for the cells specified by a given set of conditions or criteria", p: { averageRange: { d: "are the actual cells to be used to find the average." }, criteriaRange: { d: "criteria_range1,criteria_range2,... is the range of cells you want evaluated for the particular condition" }, criteria: { d: "criteria1,criteria2,... is the condition or criteria in the form of a number, expression, or text that defines which cells will be used to find the average" } }, h: "Unimplemented" }, COUNT: { s: "Counts the number of cells in a range that contain numbers", p: { number: { d: "value1,value2,... are 1 to 255 arguments that can contain or refer to a variety of different types of data, but only numbers are counted" } } }, COUNTA: { s: "Counts the number of cells in a range that are not empty", p: { value: { d: "value1,value2,... are 1 to 255 arguments representing the values and cells you want to count. Values can be any type of information" } } }, COUNTBLANK: { s: "Counts the number of empty cells in a specified range of cells", p: { range: { d: "is the range from which you want to count the empty cells" } }, h: "Unimplemented" }, COUNTIF: { s: "Counts the number of cells within a range that meet the given condition", p: { range: { d: "is the range of cells from which you want to count nonblank cells" }, criteria: { d: "is the condition in the form of a number, expression, or text that defines which cells will be counted" } }, h: "Unimplemented" }, COUNTIFS: { s: "Counts the number of cells specified by a given set of conditions or criteria", p: { criteriaRange: { d: "criteria_range1,criteria_range2,... is the range of cells you want evaluated for the particular condition" }, criteria: { d: "criteria1,criteria2,... is the condition in the form of a number, expression, or text that defines which cells will be counted" } }, h: "Unimplemented" }, LARGE: { s: "Returns the k-th largest value in a data set. For example, the fifth largest number.", p: { array: { d: "is the array or range of data for which you want to determine the k-th largest value." }, k: { d: "is the position (from the largest) in the array or cell range of the value to return." } } }, MAX: { s: "Returns the largest value in a set of values. Ignores logical values and text", p: { number: { d: "number1,number2,... are 1 to 255 numbers, empty cells, logical values, or text numbers for which you want the maximum" } } }, MAXA: { s: "Returns the largest value in a set of values. Does not ignore logical values and text", p: { value: { d: "value1,value2,... are 1 to 255 numbers, empty cells, logical values, or text numbers for which you want the maximum" } } }, MAXIFS: { s: "Returns the maximum value among cells specified by a given set of conditions or criteria", p: { maxRange: { d: "the cells in which to determine the maximum value" }, criteriaRange: { d: "criteria_range1,criteria_range2,... is the range of cells you want to evaluate for the particular condition" }, criteria: { d: "criteria1,criteria2,... is the condition or criteria in the form of a number, expression, or text that defines which cells will be included when determining the maximum value" } }, h: "Unimplemented" }, MEDIAN: { s: "Returns the median, or the number in the middle of the set of given numbers", p: { number: { d: "number1,number2,... are 1 to 255 numbers or names, arrays, or references that contain numbers for which you want the median" } } }, MIN: { s: "Returns the smallest number in a set of values. Ignores logical values and text", p: { number: { d: "number1,number2,... are 1 to 255 numbers, empty cells, logical values, or text numbers for which you want the minimum" } } }, MINA: { s: "Returns the smallest value in a set of values. Does not ignore logical values and text", p: { value: { d: "value1,value2,... are 1 to 255 numbers, empty cells, logical values, or text numbers for which you want the minimum" } } }, MINIFS: { s: "Returns the minimum value among cells specified by a given set of conditions or criteria", p: { maxRange: { d: "is the range of cells to evaluate for the minimum value" }, criteriaRange: { d: "is the range of cells to evaluate against the criteria" }, criteria: { d: "is the criteria to evaluate against the criteria range" } }, h: "Unimplemented" }, PERMUT: { s: "Returns the number of permutations for a given number of objects that can be selected from the total objects", p: { number: { d: "is the total number of objects" }, numberChoosen: { d: "is the number of objects in each permutation" } }, h: "Unimplemented" }, PERMUTATIONA: { s: "Returns the number of permutations for a given number of objects (with repetitions) that can be selected from the total objects", p: { number: { d: "is the total number of objects" }, numberChoosen: { d: "is the number of objects in each permutation" } }, h: "Unimplemented" }, SMALL: { s: "Returns the k-th smallest value in a data set. For example, the fifth smallest number", p: { array: { d: "is an array or range of numerical data for which you want to determine the k-th smallest value" }, k: { d: "is the position (from the smallest) in the array or range of the value to return" } } } };
8
+ export {
9
+ e as default
10
+ };
@@ -0,0 +1,21 @@
1
+ import { Y as o } from "./BrwV_8GjxcVuWuUk.js";
2
+ /**
3
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
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
+ let i = null, n = null, e = null;
9
+ const p = Object.freeze({ compileTypescript: async function(t) {
10
+ if (!t?.source) return null;
11
+ if (n && o.deepEqual(n, t)) return i;
12
+ const l = await async function() {
13
+ if (e) return e;
14
+ const { TypeScriptCompiler: c } = await import("./m-A0SfNBx32zKuZU.js");
15
+ return e = new c(), e;
16
+ }(), r = await l.compileModule(t);
17
+ return i = r, n = t, r;
18
+ } });
19
+ export {
20
+ p as ScriptingUtils
21
+ };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ class o {
8
+ constructor(r = {}) {
9
+ this.workerWrapper = null;
10
+ }
11
+ async getWorkerWrapper() {
12
+ if (this.workerWrapper) return this.workerWrapper;
13
+ const { createCompilerWorker: r } = await import("./CaN0O_koLgCkhgEh.js");
14
+ return this.workerWrapper = await r(), this.workerWrapper;
15
+ }
16
+ async compileModule(r) {
17
+ try {
18
+ return (await this.getWorkerWrapper()).execute(r);
19
+ } catch (e) {
20
+ throw console.error("Failed to compile using worker:", e), e;
21
+ }
22
+ }
23
+ terminate() {
24
+ this.workerWrapper?.terminate(), this.workerWrapper = null;
25
+ }
26
+ }
27
+ export {
28
+ o as TypeScriptCompiler
29
+ };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ function e(t) {
8
+ return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
9
+ }
10
+ export {
11
+ e as g
12
+ };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ let a = null;
8
+ const m = { reactUrl: "https://esm.sh/react@19.1.0", reactJsxTransform: "https://esm.sh/react@19.1.0/jsx-runtime", reactDomUrl: "https://esm.sh/react-dom@19.1.0", reactDomUrlClient: "https://esm.sh/react-dom@19.1.0/client" }, i = (e) => (e = { ...e, ...m }, a || (a = (async () => {
9
+ const c = e.reactUrl, s = e.reactDomUrl, n = e.reactDomUrlClient, o = e.reactJsxTransform;
10
+ if (document.querySelector('script[type="importmap"]')) console.warn("SheetXL: Import map already exists. Skipping injection.");
11
+ else {
12
+ const t = document.createElement("script");
13
+ t.type = "importmap", t.textContent = JSON.stringify({ imports: { react: c, "react/jsx-runtime": o, "react-dom": s, "react-dom/client": n } }), document.head.appendChild(t);
14
+ }
15
+ await new Promise((t) => setTimeout(t, 0));
16
+ const r = await Promise.all([import("./Dml7K4XhLTRwUDTY.js").then((t) => t.R), import("./CCbJipmDawMQQxRJ.js").then((t) => t.j), import("./CsYr_9x-OIQSqGIL.js").then((t) => t.i), import("./CzMF1riupKc6HLGE.js").then((t) => t.c), import("./BrwV_8GjxcVuWuUk.js").then((t) => t.aL)]);
17
+ return { React: r[0], ReactJSXTransform: r[1], ReactDOM: r[2], ReactDOMClient: r[3], StudioMUI: r[4] };
18
+ })(), a));
19
+ export {
20
+ i as resolveDependencies
21
+ };
package/cdn/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.21
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
3
  *
4
4
  * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
@@ -114,7 +114,7 @@ const S = /* @__PURE__ */ new Map(), k = (e, o = {}) => {
114
114
  let d;
115
115
  const C = async (e) => {
116
116
  if (d) return d;
117
- const { resolveDependencies: o } = await import("./assets/CY8njwo06MWkoPz2.js"), s = await o(typeof e == "object" ? e?.dependencies : void 0);
117
+ const { resolveDependencies: o } = await import("./assets/zZGhctwBXNlAYrJr.js"), s = await o(typeof e == "object" ? e?.dependencies : void 0);
118
118
  return d = await (async (a, n) => {
119
119
  typeof n == "string" && (n = { selector: n });
120
120
  try {
package/cdn/loader.js CHANGED
@@ -1,5 +1,5 @@
1
1
  (function(e){typeof define=="function"&&define.amd?define(e):e()})(function(){"use strict";/**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.21
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
3
3
  *
4
4
  * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sheetxl/studio-vanilla",
3
3
  "description": "SheetXL Studio - Vanilla entry point for integrating SheetXL UI.",
4
- "version": "0.4.21",
4
+ "version": "0.5.0",
5
5
  "license": "SEE LICENSE IN <LICENSE>",
6
6
  "type": "module",
7
7
  "main": "./browser/esm/index.mjs",
@@ -41,8 +41,8 @@
41
41
  "@mui/styled-engine": "^6.5.0",
42
42
  "@mui/system": "^6.5.0",
43
43
  "@mui/utils": "^6.4.9",
44
- "@sheetxl/studio-mui": "^0.4.21",
45
- "@sheetxl/sdk": "^0.4.21",
44
+ "@sheetxl/studio-mui": "^0.5.0",
45
+ "@sheetxl/sdk": "^0.5.0",
46
46
  "react": "^19.1.0",
47
47
  "react-dom": "^19.1.0",
48
48
  "csstype": "^3.1.3",
@@ -1,21 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.21
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- let a = null;
8
- const i = { reactUrl: "https://esm.sh/react@19.1.0", reactJsxTransform: "https://esm.sh/react@19.1.0/jsx-runtime", reactDomUrl: "https://esm.sh/react-dom@19.1.0", reactDomUrlClient: "https://esm.sh/react-dom@19.1.0/client" }, n = (t) => (t = { ...t, ...i }, a || (a = (async () => {
9
- const c = t.reactUrl, o = t.reactDomUrl, s = t.reactDomUrlClient, m = t.reactJsxTransform;
10
- if (document.querySelector('script[type="importmap"]')) console.warn("SheetXL: Import map already exists. Skipping injection.");
11
- else {
12
- const r = document.createElement("script");
13
- r.type = "importmap", r.textContent = JSON.stringify({ imports: { react: c, "react/jsx-runtime": m, "react-dom": o, "react-dom/client": s } }), document.head.appendChild(r);
14
- }
15
- await new Promise((r) => setTimeout(r, 0));
16
- const e = await Promise.all([import("react"), import("react/jsx-runtime"), import("react-dom"), import("react-dom/client"), import("@sheetxl/studio-mui")]);
17
- return { React: e[0], ReactJSXTransform: e[1], ReactDOM: e[2], ReactDOMClient: e[3], StudioMUI: e[4] };
18
- })(), a));
19
- export {
20
- n as resolveDependencies
21
- };