@sheetxl/studio-vanilla 0.1.98

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/LICENSE.md +11 -0
  2. package/README.md +100 -0
  3. package/build/browser/cjs/1q6_3-jGNZllbF3R.cjs +6 -0
  4. package/build/browser/cjs/5KDindu3wyLVvG7F.cjs +6 -0
  5. package/build/browser/cjs/87m5i_TKPbDn6tke.cjs +30 -0
  6. package/build/browser/cjs/B0L2YQ9agsyHWOu2.cjs +6 -0
  7. package/build/browser/cjs/B3HvYH5kqySWdJ0f.cjs +6 -0
  8. package/build/browser/cjs/B6AOUko0HYRy2MPw.cjs +6 -0
  9. package/build/browser/cjs/BC5MKXBhHGdPeiJ3.cjs +21 -0
  10. package/build/browser/cjs/BG0RxkPyZY6Be7Lk.cjs +6 -0
  11. package/build/browser/cjs/BJsJYwvFiJBFxTov.cjs +6 -0
  12. package/build/browser/cjs/BMVMyi5NiMBuQrl9.cjs +52 -0
  13. package/build/browser/cjs/BS_QXQWoKRl_7MiR.cjs +17 -0
  14. package/build/browser/cjs/BZPhmHWsFBTIA3BQ.cjs +210 -0
  15. package/build/browser/cjs/B_5ro-VEKfZDMSn_.cjs +6 -0
  16. package/build/browser/cjs/B_c3i0fXSlX7dH12.cjs +1521 -0
  17. package/build/browser/cjs/BarieqwSecnaFn0d.cjs +6 -0
  18. package/build/browser/cjs/BfNo_1u55uW2HhAa.cjs +6 -0
  19. package/build/browser/cjs/Bl6FyLoMkFiQqhvc.cjs +7 -0
  20. package/build/browser/cjs/Bsyzteo6tD31A45e.cjs +11 -0
  21. package/build/browser/cjs/Btzizuqo7zQ_grdS.cjs +16 -0
  22. package/build/browser/cjs/BxBOlXY9P3Ymi6oT.cjs +6 -0
  23. package/build/browser/cjs/C0AP85yKTJU5XzPW.cjs +6 -0
  24. package/build/browser/cjs/C0Pjx18ua-OCdtpy.cjs +6 -0
  25. package/build/browser/cjs/CA2wSX6txFrM5nXD.cjs +6 -0
  26. package/build/browser/cjs/CB3jEtNo5ZsjfE5p.cjs +6 -0
  27. package/build/browser/cjs/CDiYZ1cSoLW8U5Mz.cjs +6 -0
  28. package/build/browser/cjs/CHD5c5FdcMm6vLyG.cjs +155 -0
  29. package/build/browser/cjs/COCpf8tSdkj2O19V.cjs +134 -0
  30. package/build/browser/cjs/CTV1KRGhkieiY4Rf.cjs +42 -0
  31. package/build/browser/cjs/CUw8AoM-rVbp1W3s.cjs +6 -0
  32. package/build/browser/cjs/CVTydWBioXRZeoNf.cjs +6 -0
  33. package/build/browser/cjs/C_uXPPlfjY68-QA8.cjs +6 -0
  34. package/build/browser/cjs/CaNR-X0TWW9OF1S0.cjs +33 -0
  35. package/build/browser/cjs/CiySKEsfDr8XnkZh.cjs +6 -0
  36. package/build/browser/cjs/CtBikymnhpcCzP3X.cjs +6 -0
  37. package/build/browser/cjs/CyF7bxA0DO13ETpx.cjs +30 -0
  38. package/build/browser/cjs/D-vkFAlNHXwUvmUT.cjs +16 -0
  39. package/build/browser/cjs/D2OU29-ZPOAWFVJB.cjs +22 -0
  40. package/build/browser/cjs/DFX31uXp449or-Xs.cjs +6 -0
  41. package/build/browser/cjs/DLqNXuHYff_kQuj1.cjs +6 -0
  42. package/build/browser/cjs/DMKZDMHHXLePvLy3.cjs +524 -0
  43. package/build/browser/cjs/DP8biA0GQqyPKLyq.cjs +6 -0
  44. package/build/browser/cjs/DcYrNx0uy99yQNMl.cjs +21 -0
  45. package/build/browser/cjs/Dcyg_YxTfBgi_6cp.cjs +26 -0
  46. package/build/browser/cjs/DeR9YbwO2xDBKVWN.cjs +21 -0
  47. package/build/browser/cjs/DfNbgyjaLMn81dqP.cjs +6 -0
  48. package/build/browser/cjs/DirazCTz5IsFWrUv.cjs +22 -0
  49. package/build/browser/cjs/Dix4vuDuOzj4WGCJ.cjs +19 -0
  50. package/build/browser/cjs/DqbTRjj97q78RuGC.cjs +6 -0
  51. package/build/browser/cjs/Dy28YI90qj65PHFO.cjs +17 -0
  52. package/build/browser/cjs/Nkl33Tt1_oEy9kjk.cjs +6 -0
  53. package/build/browser/cjs/S1S-AvD0w8s-LV8O.cjs +6 -0
  54. package/build/browser/cjs/bnPgbgGBTq7DESzd.cjs +6 -0
  55. package/build/browser/cjs/d9tJGmGw-3KZjpAx.cjs +17 -0
  56. package/build/browser/cjs/dke2gbIUS44QXwEl.cjs +6 -0
  57. package/build/browser/cjs/index.cjs +6 -0
  58. package/build/browser/cjs/mPpQR06-jf99r2jM.cjs +6 -0
  59. package/build/browser/cjs/wq0Sm3fu9rxt43OK.cjs +6 -0
  60. package/build/browser/cjs/xM54FRmGddZFVTTI.cjs +6 -0
  61. package/build/browser/cjs/xgGpGg5b8fu3GAnL.cjs +33 -0
  62. package/build/browser/esm/1Jl9rrRJdbPsUP_1.mjs +13222 -0
  63. package/build/browser/esm/3RX6dP_O-47yXKHQ.mjs +1492 -0
  64. package/build/browser/esm/5F5MTh8R-sIiPq0h.mjs +22 -0
  65. package/build/browser/esm/B3_l6_TLa9ImyRmW.mjs +5572 -0
  66. package/build/browser/esm/B7odLLxNfEmKGWX6.mjs +49 -0
  67. package/build/browser/esm/BAjCWyggrIkCz6wr.mjs +22 -0
  68. package/build/browser/esm/BE4io65W825i_dzC.mjs +58 -0
  69. package/build/browser/esm/BEZ41ST3hkC4W-_9.mjs +22 -0
  70. package/build/browser/esm/BKkD05hqNTBap4Oc.mjs +22 -0
  71. package/build/browser/esm/BOiR2dTlvcgYjz8P.mjs +402 -0
  72. package/build/browser/esm/BOjAZRs_NVerYv4t.mjs +22 -0
  73. package/build/browser/esm/BRkMPyIUXMixnL8d.mjs +22 -0
  74. package/build/browser/esm/BSS_RvWzDRX8_EJd.mjs +1684 -0
  75. package/build/browser/esm/BXC9rQVV2gq5x8br.mjs +22 -0
  76. package/build/browser/esm/BYmMkbrRTsNuR3aY.mjs +1358 -0
  77. package/build/browser/esm/BaSzK17p3_gCvNVV.mjs +24 -0
  78. package/build/browser/esm/BdtlmF31h4Y7RgUj.mjs +22 -0
  79. package/build/browser/esm/Be3zRnYQ13HUcsRW.mjs +150 -0
  80. package/build/browser/esm/BiSk8LRROMF0Bl4-.mjs +92 -0
  81. package/build/browser/esm/BlfHOASL_bJ6Hy0y.mjs +40 -0
  82. package/build/browser/esm/C-jC-wgAoMOxrVvv.mjs +1377 -0
  83. package/build/browser/esm/C0Lw5hMgKbooA6Jl.mjs +22 -0
  84. package/build/browser/esm/C32FpMEFLbDnBtO3.mjs +22 -0
  85. package/build/browser/esm/C9uN8RnLjnGSimTA.mjs +439 -0
  86. package/build/browser/esm/CB0UHheTgg0735hj.mjs +52 -0
  87. package/build/browser/esm/CU55zbw8Xbwap6Tl.mjs +22 -0
  88. package/build/browser/esm/CWRCdxOg103AFis3.mjs +3926 -0
  89. package/build/browser/esm/CpJdzwQYkBw7IPnN.mjs +22 -0
  90. package/build/browser/esm/CprFmxuwGvaUtLG2.mjs +22 -0
  91. package/build/browser/esm/CtZxtE4tRmMGFT5o.mjs +22 -0
  92. package/build/browser/esm/D-Oj36iQScXAKSMA.mjs +53 -0
  93. package/build/browser/esm/D2yyUr4KbJEFsxKC.mjs +21 -0
  94. package/build/browser/esm/D8HF2X8hvAkV29oq.mjs +55 -0
  95. package/build/browser/esm/DCauh523moR7slpq.mjs +22 -0
  96. package/build/browser/esm/DIA-Gy5mdjefjUaA.mjs +22 -0
  97. package/build/browser/esm/DJjdfX9aUyVGMkri.mjs +47 -0
  98. package/build/browser/esm/DMWb8cCaNVRcm-tT.mjs +2352 -0
  99. package/build/browser/esm/DP7HVKT0w_4L2vMQ.mjs +844 -0
  100. package/build/browser/esm/DToiYU1jffn1g7TH.mjs +639 -0
  101. package/build/browser/esm/DgSuz0WKGy36a2cp.mjs +22 -0
  102. package/build/browser/esm/Dgw3FTbNKuo2CIxP.mjs +22 -0
  103. package/build/browser/esm/DnV_Y9xoMPSav0-o.mjs +56 -0
  104. package/build/browser/esm/Do7pHqmnwO45_ymt.mjs +22 -0
  105. package/build/browser/esm/DqvZDTDIyX-qv4r9.mjs +29 -0
  106. package/build/browser/esm/Ds8V__cRAClpmjZn.mjs +1714 -0
  107. package/build/browser/esm/DtQdtXJDZgNEIz9d.mjs +440 -0
  108. package/build/browser/esm/DtpBQqwK7XXBMTB-.mjs +1598 -0
  109. package/build/browser/esm/DuzJ1k0LbZ29l8oN.mjs +945 -0
  110. package/build/browser/esm/Dxl4WJXcEhDAw_yE.mjs +42 -0
  111. package/build/browser/esm/LblYfFi1ns9H1ueN.mjs +28 -0
  112. package/build/browser/esm/NBkvFJzfLU32Pkup.mjs +496 -0
  113. package/build/browser/esm/SrBQAOpMKiDW0mGB.mjs +22 -0
  114. package/build/browser/esm/VLa1cYMb7h6UD253.mjs +64 -0
  115. package/build/browser/esm/YOEDF-U1QTzbXeMV.mjs +3826 -0
  116. package/build/browser/esm/a3tuiJ83MwzLMWaL.mjs +22 -0
  117. package/build/browser/esm/ai2Jw3PRL29E1T8h.mjs +22 -0
  118. package/build/browser/esm/ajBoEmoL9hCBQYYm.mjs +2175 -0
  119. package/build/browser/esm/index.mjs +13 -0
  120. package/build/browser/esm/k9kWmEk0ZT8y9Gii.mjs +48740 -0
  121. package/build/cdn/assets/1Jl9rrRJdbPsUP_1.js +13222 -0
  122. package/build/cdn/assets/4u46flV9M6Bwb7d3.js +29 -0
  123. package/build/cdn/assets/5F5MTh8R-sIiPq0h.js +22 -0
  124. package/build/cdn/assets/B3oMCEEls1lRVrGd.js +5572 -0
  125. package/build/cdn/assets/B4QYfmNd300iFLAx.js +945 -0
  126. package/build/cdn/assets/BAjCWyggrIkCz6wr.js +22 -0
  127. package/build/cdn/assets/BEZ41ST3hkC4W-_9.js +22 -0
  128. package/build/cdn/assets/BJIsFTUdHtUKsFJs.js +28 -0
  129. package/build/cdn/assets/BKkD05hqNTBap4Oc.js +22 -0
  130. package/build/cdn/assets/BOiR2dTlvcgYjz8P.js +402 -0
  131. package/build/cdn/assets/BOjAZRs_NVerYv4t.js +22 -0
  132. package/build/cdn/assets/BPFW3UexkNNh1lLK.js +2352 -0
  133. package/build/cdn/assets/BRkMPyIUXMixnL8d.js +22 -0
  134. package/build/cdn/assets/BSS_RvWzDRX8_EJd.js +1684 -0
  135. package/build/cdn/assets/BXC9rQVV2gq5x8br.js +22 -0
  136. package/build/cdn/assets/BY2sO3ExW1ShzKnX.js +1714 -0
  137. package/build/cdn/assets/BYmMkbrRTsNuR3aY.js +1358 -0
  138. package/build/cdn/assets/BaSzK17p3_gCvNVV.js +24 -0
  139. package/build/cdn/assets/BbpmcI-KEp3PqrdL.js +496 -0
  140. package/build/cdn/assets/BdtlmF31h4Y7RgUj.js +22 -0
  141. package/build/cdn/assets/BjgtkLR9U00HgSRn.js +58 -0
  142. package/build/cdn/assets/BlfHOASL_bJ6Hy0y.js +40 -0
  143. package/build/cdn/assets/C-jC-wgAoMOxrVvv.js +1377 -0
  144. package/build/cdn/assets/C0Lw5hMgKbooA6Jl.js +22 -0
  145. package/build/cdn/assets/C32FpMEFLbDnBtO3.js +22 -0
  146. package/build/cdn/assets/C7CDwp-nhN2WFzUs.js +844 -0
  147. package/build/cdn/assets/C9uN8RnLjnGSimTA.js +439 -0
  148. package/build/cdn/assets/CEq_C1Sim0pQ6fj0.js +56 -0
  149. package/build/cdn/assets/CLdcRW7BQK3JCguC.js +48587 -0
  150. package/build/cdn/assets/CU55zbw8Xbwap6Tl.js +22 -0
  151. package/build/cdn/assets/C_L_pvQemfhI00iS.js +150 -0
  152. package/build/cdn/assets/CkhSGQneqlTRflfQ.js +47 -0
  153. package/build/cdn/assets/CpJdzwQYkBw7IPnN.js +22 -0
  154. package/build/cdn/assets/CprFmxuwGvaUtLG2.js +22 -0
  155. package/build/cdn/assets/CtZxtE4tRmMGFT5o.js +22 -0
  156. package/build/cdn/assets/CvbyGDitUPabmYBl.js +64 -0
  157. package/build/cdn/assets/D06aHumWZLILF489.js +3926 -0
  158. package/build/cdn/assets/D2pceTwrS_dagByu.js +21 -0
  159. package/build/cdn/assets/D4ZBjoUG2QO1RO3t.js +1492 -0
  160. package/build/cdn/assets/DARyg_kqL8Eu81Fa.js +2175 -0
  161. package/build/cdn/assets/DCauh523moR7slpq.js +22 -0
  162. package/build/cdn/assets/DIA-Gy5mdjefjUaA.js +22 -0
  163. package/build/cdn/assets/DLHK1pMyNN3B2g-j.js +52 -0
  164. package/build/cdn/assets/DMoEzt3UKZedfext.js +1598 -0
  165. package/build/cdn/assets/DMwOymY267-LxmJ_.js +49 -0
  166. package/build/cdn/assets/DToiYU1jffn1g7TH.js +639 -0
  167. package/build/cdn/assets/DUUO52IRQCve_iCM.js +440 -0
  168. package/build/cdn/assets/DgSuz0WKGy36a2cp.js +22 -0
  169. package/build/cdn/assets/Dgw3FTbNKuo2CIxP.js +22 -0
  170. package/build/cdn/assets/Do7pHqmnwO45_ymt.js +22 -0
  171. package/build/cdn/assets/Dxl4WJXcEhDAw_yE.js +42 -0
  172. package/build/cdn/assets/QXzPuadwi3BBJC2-.js +53 -0
  173. package/build/cdn/assets/SrBQAOpMKiDW0mGB.js +22 -0
  174. package/build/cdn/assets/W3SqjN4yIzwYTvvj.js +55 -0
  175. package/build/cdn/assets/YOEDF-U1QTzbXeMV.js +3826 -0
  176. package/build/cdn/assets/a3tuiJ83MwzLMWaL.js +22 -0
  177. package/build/cdn/assets/ai2Jw3PRL29E1T8h.js +22 -0
  178. package/build/cdn/assets/fWcbv7BXhriCYeod.js +92 -0
  179. package/build/cdn/index.js +171 -0
  180. package/build/cdn/loader.js +6 -0
  181. package/build/licenses/dependencies.txt +1 -0
  182. package/build/package.json +61 -0
  183. package/build/types/index.d.ts +151 -0
  184. package/package.json +92 -0
@@ -0,0 +1,945 @@
1
+ import { jsx as g, jsxs as se, Fragment as Gt } from "react/jsx-runtime";
2
+ import * as ve from "react";
3
+ import T, { memo as Me, forwardRef as ce, useRef as le, useMemo as te, useState as ae, useEffect as K, useLayoutEffect as dt, useCallback as ne, Component as Kt, createElement as fe, createContext as xn, useContext as yn, isValidElement as wn, cloneElement as vn } from "react";
4
+ import { D as xt, E as yt, G as Je, N as En, P as Cn, V as Sn, W as Ln, X as Mn, Z as He, _ as wt, a0 as vt, a1 as Mt, a2 as Dn, a3 as Tn, a4 as Zt, a5 as On, a6 as Wn, a7 as ie, a8 as Xt, a9 as Dt, r as nt, aa as pt, ab as Fn, ac as Nn, i as Tt, ad as ye, ae as Qt, af as An, ag as Jt, ah as Rn, ai as mt, aj as Yt, ak as In, al as Pn, am as Hn, an as jn, ao as zn, ap as _n, aq as qn, B as xe, ar as Bn, J as Vn, as as $n, at as ht, au as Un, av as Gn, aw as Kn, ax as Zn, ay as Xn, az as Qn, y as Jn, aA as ee, aB as We, aC as Ot, aD as Yn, aE as eo, aF as to, aG as no, aH as oo, aI as ro, aJ as ot, aK as Fe, aL as ao, aM as io, aN as so, aO as lo, aP as Wt, aQ as Ft, aR as co, aS as uo, aT as po, aU as mo, aV as _e, aW as ho } from "./CLdcRW7BQK3JCguC.js";
5
+ import { createPortal as fo } from "react-dom";
6
+ /**
7
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.0.0
8
+ *
9
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
10
+ * License: The license can be found at https://www.sheetxl.com/license.
11
+ */
12
+ function go(e) {
13
+ return xt("MuiCollapse", e);
14
+ }
15
+ yt("MuiCollapse", ["root", "horizontal", "vertical", "entered", "hidden", "wrapper", "wrapperInner"]);
16
+ const ko = He("div", { name: "MuiCollapse", slot: "Root", overridesResolver: (e, o) => {
17
+ const { ownerState: r } = e;
18
+ return [o.root, o[r.orientation], r.state === "entered" && o.entered, r.state === "exited" && !r.in && r.collapsedSize === "0px" && o.hidden];
19
+ } })(Dn(({ theme: e }) => ({ height: 0, overflow: "hidden", transition: e.transitions.create("height"), variants: [{ props: { orientation: "horizontal" }, style: { height: "auto", width: 0, transition: e.transitions.create("width") } }, { props: { state: "entered" }, style: { height: "auto", overflow: "visible" } }, { props: { state: "entered", orientation: "horizontal" }, style: { width: "auto" } }, { props: ({ ownerState: o }) => o.state === "exited" && !o.in && o.collapsedSize === "0px", style: { visibility: "hidden" } }] }))), bo = He("div", { name: "MuiCollapse", slot: "Wrapper", overridesResolver: (e, o) => o.wrapper })({ display: "flex", width: "100%", variants: [{ props: { orientation: "horizontal" }, style: { width: "auto", height: "100%" } }] }), xo = He("div", { name: "MuiCollapse", slot: "WrapperInner", overridesResolver: (e, o) => o.wrapperInner })({ width: "100%", variants: [{ props: { orientation: "horizontal" }, style: { width: "auto", height: "100%" } }] }), ft = ve.forwardRef(function(e, o) {
20
+ const r = Je({ props: e, name: "MuiCollapse" }), { addEndListener: t, children: n, className: a, collapsedSize: i = "0px", component: l, easing: s, in: c, onEnter: u, onEntered: m, onEntering: k, onExit: y, onExited: b, onExiting: f, orientation: x = "vertical", style: h, timeout: d = En.standard, TransitionComponent: L = Cn, ...w } = r, R = { ...r, orientation: x, collapsedSize: i }, M = ((C) => {
21
+ const { orientation: W, classes: V } = C;
22
+ return vt({ root: ["root", `${W}`], entered: ["entered"], hidden: ["hidden"], wrapper: ["wrapper", `${W}`], wrapperInner: ["wrapperInner", `${W}`] }, go, V);
23
+ })(R), H = Sn(), q = Ln(), N = ve.useRef(null), z = ve.useRef(), G = typeof i == "number" ? `${i}px` : i, Q = x === "horizontal", I = Q ? "width" : "height", oe = ve.useRef(null), A = Mn(o, oe), E = (C) => (W) => {
24
+ if (C) {
25
+ const V = oe.current;
26
+ W === void 0 ? C(V) : C(V, W);
27
+ }
28
+ }, S = () => N.current ? N.current[Q ? "clientWidth" : "clientHeight"] : 0, P = E((C, W) => {
29
+ N.current && Q && (N.current.style.position = "absolute"), C.style[I] = G, u && u(C, W);
30
+ }), D = E((C, W) => {
31
+ const V = S();
32
+ N.current && Q && (N.current.style.position = "");
33
+ const { duration: re, easing: me } = Mt({ style: h, timeout: d, easing: s }, { mode: "enter" });
34
+ if (d === "auto") {
35
+ const ue = H.transitions.getAutoHeightDuration(V);
36
+ C.style.transitionDuration = `${ue}ms`, z.current = ue;
37
+ } else C.style.transitionDuration = typeof re == "string" ? re : `${re}ms`;
38
+ C.style[I] = `${V}px`, C.style.transitionTimingFunction = me, k && k(C, W);
39
+ }), B = E((C, W) => {
40
+ C.style[I] = "auto", m && m(C, W);
41
+ }), _ = E((C) => {
42
+ C.style[I] = `${S()}px`, y && y(C);
43
+ }), J = E(b), j = E((C) => {
44
+ const W = S(), { duration: V, easing: re } = Mt({ style: h, timeout: d, easing: s }, { mode: "exit" });
45
+ if (d === "auto") {
46
+ const me = H.transitions.getAutoHeightDuration(W);
47
+ C.style.transitionDuration = `${me}ms`, z.current = me;
48
+ } else C.style.transitionDuration = typeof V == "string" ? V : `${V}ms`;
49
+ C.style[I] = G, C.style.transitionTimingFunction = re, f && f(C);
50
+ });
51
+ return g(L, { in: c, onEnter: P, onEntered: B, onEntering: D, onExit: _, onExited: J, onExiting: j, addEndListener: (C) => {
52
+ d === "auto" && q.start(z.current || 0, C), t && t(oe.current, C);
53
+ }, nodeRef: oe, timeout: d === "auto" ? null : d, ...w, children: (C, { ownerState: W, ...V }) => g(ko, { as: l, className: wt(M.root, a, { entered: M.entered, exited: !c && G === "0px" && M.hidden }[C]), style: { [Q ? "minWidth" : "minHeight"]: G, ...h }, ref: A, ownerState: { ...R, state: C }, ...V, children: g(bo, { ownerState: { ...R, state: C }, className: M.wrapper, ref: N, children: g(xo, { ownerState: { ...R, state: C }, className: M.wrapperInner, children: n }) }) }) });
54
+ });
55
+ function yo(e) {
56
+ return xt("MuiCard", e);
57
+ }
58
+ ft && (ft.muiSupportAuto = !0), yt("MuiCard", ["root"]);
59
+ const wo = He(Tn, { name: "MuiCard", slot: "Root", overridesResolver: (e, o) => o.root })({ overflow: "hidden" }), vo = ve.forwardRef(function(e, o) {
60
+ const r = Je({ props: e, name: "MuiCard" }), { className: t, raised: n = !1, ...a } = r, i = { ...r, raised: n }, l = ((s) => {
61
+ const { classes: c } = s;
62
+ return vt({ root: ["root"] }, yo, c);
63
+ })(i);
64
+ return g(wo, { className: wt(l.root, t), elevation: n ? 8 : void 0, ref: o, ownerState: i, ...a });
65
+ });
66
+ function Eo(e) {
67
+ return xt("MuiCardActions", e);
68
+ }
69
+ yt("MuiCardActions", ["root", "spacing"]);
70
+ const Co = He("div", { name: "MuiCardActions", slot: "Root", overridesResolver: (e, o) => {
71
+ const { ownerState: r } = e;
72
+ return [o.root, !r.disableSpacing && o.spacing];
73
+ } })({ display: "flex", alignItems: "center", padding: 8, variants: [{ props: { disableSpacing: !1 }, style: { "& > :not(style) ~ :not(style)": { marginLeft: 8 } } }] }), So = ve.forwardRef(function(e, o) {
74
+ const r = Je({ props: e, name: "MuiCardActions" }), { disableSpacing: t = !1, className: n, ...a } = r, i = { ...r, disableSpacing: t }, l = ((s) => {
75
+ const { classes: c, disableSpacing: u } = s;
76
+ return vt({ root: ["root", !u && "spacing"] }, Eo, c);
77
+ })(i);
78
+ return g(Co, { className: wt(l.root, n), ownerState: i, ref: o, ...a });
79
+ }), gt = typeof Zt({}) == "function", Lo = (e, o) => ({ WebkitFontSmoothing: "antialiased", MozOsxFontSmoothing: "grayscale", boxSizing: "border-box", WebkitTextSizeAdjust: "100%", ...o && !e.vars && { colorScheme: e.palette.mode } }), Mo = (e) => ({ color: (e.vars || e).palette.text.primary, ...e.typography.body1, backgroundColor: (e.vars || e).palette.background.default, "@media print": { backgroundColor: (e.vars || e).palette.common.white } }), Nt = (e, o = !1) => {
80
+ const r = {};
81
+ o && e.colorSchemes && typeof e.getColorSchemeSelector == "function" && Object.entries(e.colorSchemes).forEach(([a, i]) => {
82
+ const l = e.getColorSchemeSelector(a);
83
+ l.startsWith("@") ? r[l] = { ":root": { colorScheme: i.palette?.mode } } : r[l.replace(/\s*&/, "")] = { colorScheme: i.palette?.mode };
84
+ });
85
+ let t = { html: Lo(e, o), "*, *::before, *::after": { boxSizing: "inherit" }, "strong, b": { fontWeight: e.typography.fontWeightBold }, body: { margin: 0, ...Mo(e), "&::backdrop": { backgroundColor: (e.vars || e).palette.background.default } }, ...r };
86
+ const n = e.components?.MuiCssBaseline?.styleOverrides;
87
+ return n && (t = [t, n]), t;
88
+ }, Ze = "mui-ecs", Do = Zt(gt ? ({ theme: e, enableColorScheme: o }) => Nt(e, o) : ({ theme: e }) => ((o) => {
89
+ const r = Nt(o, !1), t = Array.isArray(r) ? r[0] : r;
90
+ return !o.vars && t && (t.html[`:root:has(${Ze})`] = { colorScheme: o.palette.mode }), o.colorSchemes && Object.entries(o.colorSchemes).forEach(([n, a]) => {
91
+ const i = o.getColorSchemeSelector(n);
92
+ i.startsWith("@") ? t[i] = { [`:root:not(:has(.${Ze}))`]: { colorScheme: a.palette?.mode } } : t[i.replace(/\s*&/, "")] = { [`&:not(:has(.${Ze}))`]: { colorScheme: a.palette?.mode } };
93
+ }), r;
94
+ })(e));
95
+ function To(e) {
96
+ const o = Je({ props: e, name: "MuiCssBaseline" }), { children: r, enableColorScheme: t = !1 } = o;
97
+ return se(ve.Fragment, { children: [gt && g(Do, { enableColorScheme: t }), !gt && !t && g("span", { className: Ze, style: { display: "none" } }), r] });
98
+ }
99
+ const Oo = On(g("path", { d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m3.59-13L12 10.59 8.41 7 7 8.41 10.59 12 7 15.59 8.41 17 12 13.41 15.59 17 17 15.59 13.41 12 17 8.41z" }), "CancelOutlined"), Wo = xn(null), rt = { didCatch: !1, error: null };
100
+ /**
101
+ * @license @sheetxl/studio-mui - Studio - Spreadsheet UI built with SheetXL SDK using React & MUI. - v0.0.0
102
+ *
103
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
104
+ * License: The license can be found at https://www.sheetxl.com/license.
105
+ */
106
+ class Fo extends Kt {
107
+ constructor(o) {
108
+ super(o), this.resetErrorBoundary = this.resetErrorBoundary.bind(this), this.state = rt;
109
+ }
110
+ static getDerivedStateFromError(o) {
111
+ return { didCatch: !0, error: o };
112
+ }
113
+ resetErrorBoundary() {
114
+ const { error: o } = this.state;
115
+ if (o !== null) {
116
+ for (var r, t, n = arguments.length, a = new Array(n), i = 0; i < n; i++) a[i] = arguments[i];
117
+ (r = (t = this.props).onReset) === null || r === void 0 || r.call(t, { args: a, reason: "imperative-api" }), this.setState(rt);
118
+ }
119
+ }
120
+ componentDidCatch(o, r) {
121
+ var t, n;
122
+ (t = (n = this.props).onError) === null || t === void 0 || t.call(n, o, r);
123
+ }
124
+ componentDidUpdate(o, r) {
125
+ const { didCatch: t } = this.state, { resetKeys: n } = this.props;
126
+ var a, i;
127
+ t && r.error !== null && function() {
128
+ let l = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
129
+ return l.length !== s.length || l.some((c, u) => !Object.is(c, s[u]));
130
+ }(o.resetKeys, n) && ((a = (i = this.props).onReset) === null || a === void 0 || a.call(i, { next: n, prev: o.resetKeys, reason: "keys" }), this.setState(rt));
131
+ }
132
+ render() {
133
+ const { children: o, fallbackRender: r, FallbackComponent: t, fallback: n } = this.props, { didCatch: a, error: i } = this.state;
134
+ let l = o;
135
+ if (a) {
136
+ const s = { error: i, resetErrorBoundary: this.resetErrorBoundary };
137
+ if (typeof r == "function") l = r(s);
138
+ else if (t) l = fe(t, s);
139
+ else {
140
+ if (n === void 0) throw i;
141
+ l = n;
142
+ }
143
+ }
144
+ return fe(Wo.Provider, { value: { didCatch: a, error: i, resetErrorBoundary: this.resetErrorBoundary } }, l);
145
+ }
146
+ }
147
+ function en(e) {
148
+ var o, r, t = "";
149
+ if (typeof e == "string" || typeof e == "number") t += e;
150
+ else if (typeof e == "object") if (Array.isArray(e)) for (o = 0; o < e.length; o++) e[o] && (r = en(e[o])) && (t && (t += " "), t += r);
151
+ else for (o in e) e[o] && (t && (t += " "), t += o);
152
+ return t;
153
+ }
154
+ function ge() {
155
+ for (var e, o, r = 0, t = ""; r < arguments.length; ) (e = arguments[r++]) && (o = en(e)) && (t && (t += " "), t += o);
156
+ return t;
157
+ }
158
+ let No = { data: "" }, Ao = /(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g, Ro = /\/\*[^]*?\*\/| +/g, At = /\n+/g, we = (e, o) => {
159
+ let r = "", t = "", n = "";
160
+ for (let a in e) {
161
+ let i = e[a];
162
+ a[0] == "@" ? a[1] == "i" ? r = a + " " + i + ";" : t += a[1] == "f" ? we(i, a) : a + "{" + we(i, a[1] == "k" ? "" : o) + "}" : typeof i == "object" ? t += we(i, o ? o.replace(/([^,])+/g, (l) => a.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g, (s) => /&/.test(s) ? s.replace(/&/g, l) : l ? l + " " + s : s)) : a) : i != null && (a = /^--/.test(a) ? a : a.replace(/[A-Z]/g, "-$&").toLowerCase(), n += we.p ? we.p(a, i) : a + ":" + i + ";");
163
+ }
164
+ return r + (o && n ? o + "{" + n + "}" : n) + t;
165
+ }, de = {}, tn = (e) => {
166
+ if (typeof e == "object") {
167
+ let o = "";
168
+ for (let r in e) o += r + tn(e[r]);
169
+ return o;
170
+ }
171
+ return e;
172
+ };
173
+ function kt(e) {
174
+ let o = this || {}, r = e.call ? e(o.p) : e;
175
+ return ((i, l, s, c, u) => {
176
+ let m = tn(i), k = de[m] || (de[m] = ((d) => {
177
+ let L = 0, w = 11;
178
+ for (; L < d.length; ) w = 101 * w + d.charCodeAt(L++) >>> 0;
179
+ return "go" + w;
180
+ })(m));
181
+ if (!de[k]) {
182
+ let d = m !== i ? i : ((L) => {
183
+ let w, R, M = [{}];
184
+ for (; w = Ao.exec(L.replace(Ro, "")); ) w[4] ? M.shift() : w[3] ? (R = w[3].replace(At, " ").trim(), M.unshift(M[0][R] = M[0][R] || {})) : M[0][w[1]] = w[2].replace(At, " ").trim();
185
+ return M[0];
186
+ })(i);
187
+ de[k] = we(u ? { ["@keyframes " + k]: d } : d, s ? "" : "." + k);
188
+ }
189
+ let y = s && de.g ? de.g : null;
190
+ return s && (de.g = de[k]), b = de[k], f = l, x = c, (h = y) ? f.data = f.data.replace(h, b) : f.data.indexOf(b) === -1 && (f.data = x ? b + f.data : f.data + b), k;
191
+ var b, f, x, h;
192
+ })(r.unshift ? r.raw ? (t = r, n = [].slice.call(arguments, 1), a = o.p, t.reduce((i, l, s) => {
193
+ let c = n[s];
194
+ if (c && c.call) {
195
+ let u = c(a), m = u && u.props && u.props.className || /^go/.test(u) && u;
196
+ c = m ? "." + m : u && typeof u == "object" ? u.props ? "" : we(u, "") : u === !1 ? "" : u;
197
+ }
198
+ return i + l + (c ?? "");
199
+ }, "")) : r.reduce((i, l) => Object.assign(i, l && l.call ? l(o.p) : l), {}) : r, ((i) => typeof window == "object" ? ((i ? i.querySelector("#_goober") : window._goober) || Object.assign((i || document.head).appendChild(document.createElement("style")), { innerHTML: " ", id: "_goober" })).firstChild : i || No)(o.target), o.g, o.o, o.k);
200
+ var t, n, a;
201
+ }
202
+ function nn(e, o, r) {
203
+ return o && function(t, n) {
204
+ for (var a = 0; a < n.length; a++) {
205
+ var i = n[a];
206
+ i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i);
207
+ }
208
+ }(e.prototype, o), e;
209
+ }
210
+ function O() {
211
+ return O = Object.assign || function(e) {
212
+ for (var o = 1; o < arguments.length; o++) {
213
+ var r = arguments[o];
214
+ for (var t in r) Object.prototype.hasOwnProperty.call(r, t) && (e[t] = r[t]);
215
+ }
216
+ return e;
217
+ }, O.apply(this, arguments);
218
+ }
219
+ function on(e, o) {
220
+ e.prototype = Object.create(o.prototype), e.prototype.constructor = e, e.__proto__ = o;
221
+ }
222
+ function je(e, o) {
223
+ if (e == null) return {};
224
+ var r, t, n = {}, a = Object.keys(e);
225
+ for (t = 0; t < a.length; t++) r = a[t], o.indexOf(r) >= 0 || (n[r] = e[r]);
226
+ return n;
227
+ }
228
+ function Rt(e) {
229
+ if (e === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
230
+ return e;
231
+ }
232
+ kt.bind({ g: 1 }), kt.bind({ k: 1 });
233
+ var It = function() {
234
+ return "";
235
+ }, rn = T.createContext({ enqueueSnackbar: It, closeSnackbar: It }), at = "@media (max-width:599.95px)", Xe = "@media (min-width:600px)", Pt = function(e) {
236
+ return e.charAt(0).toUpperCase() + e.slice(1);
237
+ }, Et = function(e) {
238
+ return "" + Pt(e.vertical) + Pt(e.horizontal);
239
+ }, qe = function(e) {
240
+ return !!e || e === 0;
241
+ }, Be = "unmounted", Ee = "exited", Ce = "entering", Ne = "entered", Ht = "exiting", Ct = function(e) {
242
+ function o(t) {
243
+ var n;
244
+ n = e.call(this, t) || this;
245
+ var a, i = t.appear;
246
+ return n.appearStatus = null, t.in ? i ? (a = Ee, n.appearStatus = Ce) : a = Ne : a = t.unmountOnExit || t.mountOnEnter ? Be : Ee, n.state = { status: a }, n.nextCallback = null, n;
247
+ }
248
+ on(o, e), o.getDerivedStateFromProps = function(t, n) {
249
+ return t.in && n.status === Be ? { status: Ee } : null;
250
+ };
251
+ var r = o.prototype;
252
+ return r.componentDidMount = function() {
253
+ this.updateStatus(!0, this.appearStatus);
254
+ }, r.componentDidUpdate = function(t) {
255
+ var n = null;
256
+ if (t !== this.props) {
257
+ var a = this.state.status;
258
+ this.props.in ? a !== Ce && a !== Ne && (n = Ce) : a !== Ce && a !== Ne || (n = Ht);
259
+ }
260
+ this.updateStatus(!1, n);
261
+ }, r.componentWillUnmount = function() {
262
+ this.cancelNextCallback();
263
+ }, r.getTimeouts = function() {
264
+ var t = this.props.timeout, n = t, a = t;
265
+ return t != null && typeof t != "number" && typeof t != "string" && (a = t.exit, n = t.enter), { exit: a, enter: n };
266
+ }, r.updateStatus = function(t, n) {
267
+ t === void 0 && (t = !1), n !== null ? (this.cancelNextCallback(), n === Ce ? this.performEnter(t) : this.performExit()) : this.props.unmountOnExit && this.state.status === Ee && this.setState({ status: Be });
268
+ }, r.performEnter = function(t) {
269
+ var n = this, a = this.props.enter, i = t, l = this.getTimeouts();
270
+ t || a ? (this.props.onEnter && this.props.onEnter(this.node, i), this.safeSetState({ status: Ce }, function() {
271
+ n.props.onEntering && n.props.onEntering(n.node, i), n.onTransitionEnd(l.enter, function() {
272
+ n.safeSetState({ status: Ne }, function() {
273
+ n.props.onEntered && n.props.onEntered(n.node, i);
274
+ });
275
+ });
276
+ })) : this.safeSetState({ status: Ne }, function() {
277
+ n.props.onEntered && n.props.onEntered(n.node, i);
278
+ });
279
+ }, r.performExit = function() {
280
+ var t = this, n = this.props.exit, a = this.getTimeouts();
281
+ n ? (this.props.onExit && this.props.onExit(this.node), this.safeSetState({ status: Ht }, function() {
282
+ t.props.onExiting && t.props.onExiting(t.node), t.onTransitionEnd(a.exit, function() {
283
+ t.safeSetState({ status: Ee }, function() {
284
+ t.props.onExited && t.props.onExited(t.node);
285
+ });
286
+ });
287
+ })) : this.safeSetState({ status: Ee }, function() {
288
+ t.props.onExited && t.props.onExited(t.node);
289
+ });
290
+ }, r.cancelNextCallback = function() {
291
+ this.nextCallback !== null && this.nextCallback.cancel && (this.nextCallback.cancel(), this.nextCallback = null);
292
+ }, r.safeSetState = function(t, n) {
293
+ n = this.setNextCallback(n), this.setState(t, n);
294
+ }, r.setNextCallback = function(t) {
295
+ var n = this, a = !0;
296
+ return this.nextCallback = function() {
297
+ a && (a = !1, n.nextCallback = null, t());
298
+ }, this.nextCallback.cancel = function() {
299
+ a = !1;
300
+ }, this.nextCallback;
301
+ }, r.onTransitionEnd = function(t, n) {
302
+ this.setNextCallback(n);
303
+ var a = t == null && !this.props.addEndListener;
304
+ this.node && !a ? (this.props.addEndListener && this.props.addEndListener(this.node, this.nextCallback), t != null && setTimeout(this.nextCallback, t)) : setTimeout(this.nextCallback, 0);
305
+ }, r.render = function() {
306
+ var t = this.state.status;
307
+ if (t === Be) return null;
308
+ var n = this.props;
309
+ return (0, n.children)(t, je(n, ["children", "in", "mountOnEnter", "unmountOnExit", "appear", "enter", "exit", "timeout", "addEndListener", "onEnter", "onEntering", "onEntered", "onExit", "onExiting", "onExited", "nodeRef"]));
310
+ }, nn(o, [{ key: "node", get: function() {
311
+ var t, n = (t = this.props.nodeRef) === null || t === void 0 ? void 0 : t.current;
312
+ if (!n) throw new Error("notistack - Custom snackbar is not refForwarding");
313
+ return n;
314
+ } }]), o;
315
+ }(T.Component);
316
+ function Se() {
317
+ }
318
+ function jt(e, o) {
319
+ typeof e == "function" ? e(o) : e && (e.current = o);
320
+ }
321
+ function bt(e, o) {
322
+ return te(function() {
323
+ return e == null && o == null ? null : function(r) {
324
+ jt(e, r), jt(o, r);
325
+ };
326
+ }, [e, o]);
327
+ }
328
+ function Qe(e) {
329
+ var o = e.timeout, r = e.style, t = r === void 0 ? {} : r, n = e.mode;
330
+ return { duration: typeof o == "object" ? o[n] || 0 : o, easing: t.transitionTimingFunction, delay: t.transitionDelay };
331
+ }
332
+ Ct.defaultProps = { in: !1, mountOnEnter: !1, unmountOnExit: !1, appear: !1, enter: !0, exit: !0, onEnter: Se, onEntering: Se, onEntered: Se, onExit: Se, onExiting: Se, onExited: Se };
333
+ var an = function(e) {
334
+ e.scrollTop = e.scrollTop;
335
+ }, zt = function(e) {
336
+ return Math.round(e) + "ms";
337
+ };
338
+ function Le(e, o) {
339
+ e === void 0 && (e = ["all"]);
340
+ var r = o || {}, t = r.duration, n = t === void 0 ? 300 : t, a = r.easing, i = a === void 0 ? "cubic-bezier(0.4, 0, 0.2, 1)" : a, l = r.delay, s = l === void 0 ? 0 : l;
341
+ return (Array.isArray(e) ? e : [e]).map(function(c) {
342
+ var u = typeof n == "string" ? n : zt(n), m = typeof s == "string" ? s : zt(s);
343
+ return c + " " + u + " " + i + " " + m;
344
+ }).join(",");
345
+ }
346
+ function sn(e) {
347
+ var o;
348
+ return ((o = e) && o.ownerDocument || document).defaultView || window;
349
+ }
350
+ function Ve(e, o) {
351
+ if (o) {
352
+ var r = function(t, n) {
353
+ var a, i = n.getBoundingClientRect(), l = sn(n);
354
+ if (n.fakeTransform) a = n.fakeTransform;
355
+ else {
356
+ var s = l.getComputedStyle(n);
357
+ a = s.getPropertyValue("-webkit-transform") || s.getPropertyValue("transform");
358
+ }
359
+ var c = 0, u = 0;
360
+ if (a && a !== "none" && typeof a == "string") {
361
+ var m = a.split("(")[1].split(")")[0].split(",");
362
+ c = parseInt(m[4], 10), u = parseInt(m[5], 10);
363
+ }
364
+ switch (t) {
365
+ case "left":
366
+ return "translateX(" + (l.innerWidth + c - i.left) + "px)";
367
+ case "right":
368
+ return "translateX(-" + (i.left + i.width - c) + "px)";
369
+ case "up":
370
+ return "translateY(" + (l.innerHeight + u - i.top) + "px)";
371
+ default:
372
+ return "translateY(-" + (i.top + i.height - u) + "px)";
373
+ }
374
+ }(e, o);
375
+ r && (o.style.webkitTransform = r, o.style.transform = r);
376
+ }
377
+ }
378
+ var ln = ce(function(e, o) {
379
+ var r = e.children, t = e.direction, n = t === void 0 ? "down" : t, a = e.in, i = e.style, l = e.timeout, s = l === void 0 ? 0 : l, c = e.onEnter, u = e.onEntered, m = e.onExit, k = e.onExited, y = je(e, ["children", "direction", "in", "style", "timeout", "onEnter", "onEntered", "onExit", "onExited"]), b = le(null), f = bt(r.ref, b), x = bt(f, o), h = ne(function() {
380
+ b.current && Ve(n, b.current);
381
+ }, [n]);
382
+ return K(function() {
383
+ if (!a && n !== "down" && n !== "right") {
384
+ var d = function(w, R) {
385
+ var M;
386
+ function H() {
387
+ for (var q = this, N = arguments.length, z = new Array(N), G = 0; G < N; G++) z[G] = arguments[G];
388
+ clearTimeout(M), M = setTimeout(function() {
389
+ w.apply(q, z);
390
+ }, R);
391
+ }
392
+ return R === void 0 && (R = 166), H.clear = function() {
393
+ clearTimeout(M);
394
+ }, H;
395
+ }(function() {
396
+ b.current && Ve(n, b.current);
397
+ }), L = sn(b.current);
398
+ return L.addEventListener("resize", d), function() {
399
+ d.clear(), L.removeEventListener("resize", d);
400
+ };
401
+ }
402
+ }, [n, a]), K(function() {
403
+ a || h();
404
+ }, [a, h]), fe(Ct, Object.assign({ appear: !0, nodeRef: b, onEnter: function(d, L) {
405
+ Ve(n, d), an(d), c && c(d, L);
406
+ }, onEntered: u, onEntering: function(d) {
407
+ var L = Qe({ timeout: s, mode: "enter", style: O({}, i, { transitionTimingFunction: i?.transitionTimingFunction || "cubic-bezier(0.0, 0, 0.2, 1)" }) });
408
+ d.style.webkitTransition = Le("-webkit-transform", L), d.style.transition = Le("transform", L), d.style.webkitTransform = "none", d.style.transform = "none";
409
+ }, onExit: function(d) {
410
+ var L = Qe({ timeout: s, mode: "exit", style: O({}, i, { transitionTimingFunction: i?.transitionTimingFunction || "cubic-bezier(0.4, 0, 0.6, 1)" }) });
411
+ d.style.webkitTransition = Le("-webkit-transform", L), d.style.transition = Le("transform", L), Ve(n, d), m && m(d);
412
+ }, onExited: function(d) {
413
+ d.style.webkitTransition = "", d.style.transition = "", k && k(d);
414
+ }, in: a, timeout: s }, y), function(d, L) {
415
+ return vn(r, O({ ref: x, style: O({ visibility: d !== "exited" || a ? void 0 : "hidden" }, i, {}, r.props.style) }, L));
416
+ });
417
+ });
418
+ ln.displayName = "Slide";
419
+ var $e = function(e) {
420
+ return T.createElement("svg", Object.assign({ viewBox: "0 0 24 24", focusable: "false", style: { fontSize: 20, marginInlineEnd: 8, userSelect: "none", width: "1em", height: "1em", display: "inline-block", fill: "currentColor", flexShrink: 0 } }, e));
421
+ }, be = { maxSnack: 3, persist: !1, hideIconVariant: !1, disableWindowBlurListener: !1, variant: "default", autoHideDuration: 5e3, iconVariant: { default: void 0, success: T.createElement(function() {
422
+ return T.createElement($e, null, T.createElement("path", { d: `M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M10 17L5 12L6.41
423
+ 10.59L10 14.17L17.59 6.58L19 8L10 17Z` }));
424
+ }, null), warning: T.createElement(function() {
425
+ return T.createElement($e, null, T.createElement("path", { d: "M13,14H11V10H13M13,18H11V16H13M1,21H23L12,2L1,21Z" }));
426
+ }, null), error: T.createElement(function() {
427
+ return T.createElement($e, null, T.createElement("path", { d: `M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,
428
+ 6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,
429
+ 13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z` }));
430
+ }, null), info: T.createElement(function() {
431
+ return T.createElement($e, null, T.createElement("path", { d: `M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,
432
+ 0 22,12A10,10 0 0,0 12,2Z` }));
433
+ }, null) }, anchorOrigin: { vertical: "bottom", horizontal: "left" }, TransitionComponent: ln, transitionDuration: { enter: 225, exit: 195 } };
434
+ function ze(e) {
435
+ return Object.entries(e).reduce(function(o, r) {
436
+ var t, n = r[0], a = r[1];
437
+ return O({}, o, ((t = {})[n] = kt(a), t));
438
+ }, {});
439
+ }
440
+ var cn = "notistack-CollapseWrapper", Io = function(e) {
441
+ return "notistack-MuiContent-" + e;
442
+ }, _t = ze({ root: { height: 0 }, entered: { height: "auto" } }), it = "0px", un = ce(function(e, o) {
443
+ var r = e.children, t = e.in, n = e.onExited, a = le(null), i = le(null), l = bt(o, i), s = function() {
444
+ return a.current ? a.current.clientHeight : 0;
445
+ };
446
+ return fe(Ct, { in: t, unmountOnExit: !0, onEnter: function(c) {
447
+ c.style.height = it;
448
+ }, onEntered: function(c) {
449
+ c.style.height = "auto";
450
+ }, onEntering: function(c) {
451
+ var u = s(), m = Qe({ timeout: 175, mode: "enter" }), k = m.duration, y = m.easing;
452
+ c.style.transitionDuration = typeof k == "string" ? k : k + "ms", c.style.height = u + "px", c.style.transitionTimingFunction = y || "";
453
+ }, onExit: function(c) {
454
+ c.style.height = s() + "px";
455
+ }, onExited: n, onExiting: function(c) {
456
+ an(c);
457
+ var u = Qe({ timeout: 175, mode: "exit" }), m = u.duration, k = u.easing;
458
+ c.style.transitionDuration = typeof m == "string" ? m : m + "ms", c.style.height = it, c.style.transitionTimingFunction = k || "";
459
+ }, nodeRef: i, timeout: 175 }, function(c, u) {
460
+ return fe("div", Object.assign({ ref: l, className: ge(_t.root, c === "entered" && _t.entered), style: O({ pointerEvents: "all", overflow: "hidden", minHeight: it, transition: Le("height") }, c === "entered" && { overflow: "visible" }, {}, c === "exited" && !t && { visibility: "hidden" }) }, u), fe("div", { ref: a, className: cn, style: { display: "flex", width: "100%" } }, r));
461
+ });
462
+ });
463
+ un.displayName = "Collapse";
464
+ var qt = { right: "left", left: "right", bottom: "up", top: "down" }, Po = function(e) {
465
+ return "anchorOrigin" + Et(e);
466
+ }, Ho = function() {
467
+ };
468
+ function Pe(e, o) {
469
+ return e.reduce(function(r, t) {
470
+ return t == null ? r : function() {
471
+ for (var n = arguments.length, a = new Array(n), i = 0; i < n; i++) a[i] = arguments[i];
472
+ var l = [].concat(a);
473
+ o && l.indexOf(o) === -1 && l.push(o), r.apply(this, l), t.apply(this, l);
474
+ };
475
+ }, Ho);
476
+ }
477
+ var jo = typeof window < "u" ? dt : K;
478
+ function Bt(e) {
479
+ var o = le(e);
480
+ return jo(function() {
481
+ o.current = e;
482
+ }), ne(function() {
483
+ return o.current.apply(void 0, arguments);
484
+ }, []);
485
+ }
486
+ var st, dn = ce(function(e, o) {
487
+ var r = e.children, t = e.className, n = e.autoHideDuration, a = e.disableWindowBlurListener, i = a !== void 0 && a, l = e.onClose, s = e.id, c = e.open, u = e.SnackbarProps, m = u === void 0 ? {} : u, k = le(), y = Bt(function() {
488
+ l && l.apply(void 0, arguments);
489
+ }), b = Bt(function(h) {
490
+ l && h != null && (k.current && clearTimeout(k.current), k.current = setTimeout(function() {
491
+ y(null, "timeout", s);
492
+ }, h));
493
+ });
494
+ K(function() {
495
+ return c && b(n), function() {
496
+ k.current && clearTimeout(k.current);
497
+ };
498
+ }, [c, n, b]);
499
+ var f = function() {
500
+ k.current && clearTimeout(k.current);
501
+ }, x = ne(function() {
502
+ n != null && b(0.5 * n);
503
+ }, [n, b]);
504
+ return K(function() {
505
+ if (!i && c) return window.addEventListener("focus", x), window.addEventListener("blur", f), function() {
506
+ window.removeEventListener("focus", x), window.removeEventListener("blur", f);
507
+ };
508
+ }, [i, x, c]), fe("div", Object.assign({ ref: o }, m, { className: ge("notistack-Snackbar", t), onMouseEnter: function(h) {
509
+ m.onMouseEnter && m.onMouseEnter(h), f();
510
+ }, onMouseLeave: function(h) {
511
+ m.onMouseLeave && m.onMouseLeave(h), x();
512
+ } }), r);
513
+ });
514
+ dn.displayName = "Snackbar";
515
+ var zo = ze({ root: (st = { display: "flex", flexWrap: "wrap", flexGrow: 1 }, st[Xe] = { flexGrow: "initial", minWidth: "288px" }, st) }), St = ce(function(e, o) {
516
+ var r = e.className, t = je(e, ["className"]);
517
+ return T.createElement("div", Object.assign({ ref: o, className: ge(zo.root, r) }, t));
518
+ });
519
+ St.displayName = "SnackbarContent";
520
+ var Ae = ze({ root: { backgroundColor: "#313131", fontSize: "0.875rem", lineHeight: 1.43, letterSpacing: "0.01071em", color: "#fff", alignItems: "center", padding: "6px 16px", borderRadius: "4px", boxShadow: "0px 3px 5px -1px rgba(0,0,0,0.2),0px 6px 10px 0px rgba(0,0,0,0.14),0px 1px 18px 0px rgba(0,0,0,0.12)" }, lessPadding: { paddingLeft: "20px" }, default: { backgroundColor: "#313131" }, success: { backgroundColor: "#43a047" }, error: { backgroundColor: "#d32f2f" }, warning: { backgroundColor: "#ff9800" }, info: { backgroundColor: "#2196f3" }, message: { display: "flex", alignItems: "center", padding: "8px 0" }, action: { display: "flex", alignItems: "center", marginLeft: "auto", paddingLeft: "16px", marginRight: "-8px" } }), Vt = "notistack-snackbar", pn = ce(function(e, o) {
521
+ var r = e.id, t = e.message, n = e.action, a = e.iconVariant, i = e.variant, l = e.hideIconVariant, s = e.style, c = e.className, u = a[i], m = n;
522
+ return typeof m == "function" && (m = m(r)), T.createElement(St, { ref: o, role: "alert", "aria-describedby": Vt, style: s, className: ge("notistack-MuiContent", Io(i), Ae.root, Ae[i], c, !l && u && Ae.lessPadding) }, T.createElement("div", { id: Vt, className: Ae.message }, l ? null : u, t), m && T.createElement("div", { className: Ae.action }, m));
523
+ });
524
+ pn.displayName = "MaterialDesignContent";
525
+ var Re, lt, Ue, Ge, ct, _o = Me(pn), qo = ze({ wrappedRoot: { width: "100%", position: "relative", transform: "translateX(0)", top: 0, right: 0, bottom: 0, left: 0, minWidth: "288px" } }), Bo = function(e) {
526
+ var o = le(), r = ae(!0), t = r[0], n = r[1], a = Pe([e.snack.onClose, e.onClose]), i = ne(function() {
527
+ o.current = setTimeout(function() {
528
+ n(function(q) {
529
+ return !q;
530
+ });
531
+ }, 125);
532
+ }, []);
533
+ K(function() {
534
+ return function() {
535
+ o.current && clearTimeout(o.current);
536
+ };
537
+ }, []);
538
+ var l, s = e.snack, c = e.classes, u = e.Component, m = u === void 0 ? _o : u, k = te(function() {
539
+ return function(q) {
540
+ q === void 0 && (q = {});
541
+ var N = { containerRoot: !0, containerAnchorOriginTopCenter: !0, containerAnchorOriginBottomCenter: !0, containerAnchorOriginTopRight: !0, containerAnchorOriginBottomRight: !0, containerAnchorOriginTopLeft: !0, containerAnchorOriginBottomLeft: !0 };
542
+ return Object.keys(q).filter(function(z) {
543
+ return !N[z];
544
+ }).reduce(function(z, G) {
545
+ var Q;
546
+ return O({}, z, ((Q = {})[G] = q[G], Q));
547
+ }, {});
548
+ }(c);
549
+ }, [c]), y = s.open, b = s.SnackbarProps, f = s.TransitionComponent, x = s.TransitionProps, h = s.transitionDuration, d = s.disableWindowBlurListener, L = s.content, w = je(s, ["open", "SnackbarProps", "TransitionComponent", "TransitionProps", "transitionDuration", "disableWindowBlurListener", "content", "entered", "requestClose", "onEnter", "onEntered", "onExit", "onExited"]), R = O({ direction: (l = w.anchorOrigin, l.horizontal !== "center" ? qt[l.horizontal] : qt[l.vertical]), timeout: h }, x), M = L;
550
+ typeof M == "function" && (M = M(w.id, w.message));
551
+ var H = ["onEnter", "onEntered", "onExit", "onExited"].reduce(function(q, N) {
552
+ var z;
553
+ return O({}, q, ((z = {})[N] = Pe([e.snack[N], e[N]], w.id), z));
554
+ }, {});
555
+ return T.createElement(un, { in: t, onExited: H.onExited }, T.createElement(dn, { open: y, id: w.id, disableWindowBlurListener: d, autoHideDuration: w.autoHideDuration, className: ge(qo.wrappedRoot, k.root, k[Po(w.anchorOrigin)]), SnackbarProps: b, onClose: a }, T.createElement(f, Object.assign({}, R, { appear: !0, in: y, onExit: H.onExit, onExited: i, onEnter: H.onEnter, onEntered: Pe([H.onEntered, function() {
556
+ e.snack.requestClose && a(null, "instructed", e.snack.id);
557
+ }], w.id) }), M || T.createElement(m, Object.assign({}, w)))));
558
+ }, Ie = 20, ut = 6, Vo = 2, $t = "." + cn, Ke = ze({ root: (Re = { boxSizing: "border-box", display: "flex", maxHeight: "100%", position: "fixed", zIndex: 1400, height: "auto", width: "auto", transition: Le(["top", "right", "bottom", "left", "max-width"], { duration: 300, easing: "ease" }), pointerEvents: "none" }, Re[$t] = { padding: ut + "px 0px", transition: "padding 300ms ease 0ms" }, Re.maxWidth = "calc(100% - " + 2 * Ie + "px)", Re[at] = { width: "100%", maxWidth: "calc(100% - 32px)" }, Re), rootDense: (lt = {}, lt[$t] = { padding: Vo + "px 0px" }, lt), top: { top: Ie - ut + "px", flexDirection: "column" }, bottom: { bottom: Ie - ut + "px", flexDirection: "column-reverse" }, left: (Ue = { left: Ie + "px" }, Ue[Xe] = { alignItems: "flex-start" }, Ue[at] = { left: "16px" }, Ue), right: (Ge = { right: Ie + "px" }, Ge[Xe] = { alignItems: "flex-end" }, Ge[at] = { right: "16px" }, Ge), center: (ct = { left: "50%", transform: "translateX(-50%)" }, ct[Xe] = { alignItems: "center" }, ct) }), $o = Me(function(e) {
559
+ var o = e.classes, r = o === void 0 ? {} : o, t = e.anchorOrigin, n = e.dense, a = e.children, i = ge("notistack-SnackbarContainer", Ke[t.vertical], Ke[t.horizontal], Ke.root, r.containerRoot, r["containerAnchorOrigin" + Et(t)], n && Ke.rootDense);
560
+ return T.createElement("div", { className: i }, a);
561
+ }), Ut = function(e) {
562
+ return !(typeof e == "string" || wn(e));
563
+ }, Uo = function(e) {
564
+ function o(r) {
565
+ var t;
566
+ return (t = e.call(this, r) || this).enqueueSnackbar = function(n, a) {
567
+ if (a === void 0 && (a = {}), n == null) throw new Error("enqueueSnackbar called with invalid argument");
568
+ var i = Ut(n) ? n : a, l = Ut(n) ? n.message : n, s = i.key, c = i.preventDuplicate, u = je(i, ["key", "preventDuplicate"]), m = qe(s), k = m ? s : (/* @__PURE__ */ new Date()).getTime() + Math.random(), y = /* @__PURE__ */ function(f, x) {
569
+ return function(h, d) {
570
+ return d === void 0 && (d = !1), d ? O({}, be[h], {}, x[h], {}, f[h]) : h === "autoHideDuration" ? (M = f.autoHideDuration, H = x.autoHideDuration, (q = function(N) {
571
+ return typeof N == "number" || N === null;
572
+ })(M) ? M : q(H) ? H : be.autoHideDuration) : h === "transitionDuration" ? (L = f.transitionDuration, w = x.transitionDuration, (R = function(N, z) {
573
+ return z.some(function(G) {
574
+ return typeof N === G;
575
+ });
576
+ })(L, ["string", "number"]) ? L : R(L, ["object"]) ? O({}, be.transitionDuration, {}, R(w, ["object"]) && w, {}, L) : R(w, ["string", "number"]) ? w : R(w, ["object"]) ? O({}, be.transitionDuration, {}, w) : be.transitionDuration) : f[h] || x[h] || be[h];
577
+ var L, w, R, M, H, q;
578
+ };
579
+ }(u, t.props), b = O({ id: k }, u, { message: l, open: !0, entered: !1, requestClose: !1, persist: y("persist"), action: y("action"), content: y("content"), variant: y("variant"), anchorOrigin: y("anchorOrigin"), disableWindowBlurListener: y("disableWindowBlurListener"), autoHideDuration: y("autoHideDuration"), hideIconVariant: y("hideIconVariant"), TransitionComponent: y("TransitionComponent"), transitionDuration: y("transitionDuration"), TransitionProps: y("TransitionProps", !0), iconVariant: y("iconVariant", !0), style: y("style", !0), SnackbarProps: y("SnackbarProps", !0), className: ge(t.props.className, u.className) });
580
+ return b.persist && (b.autoHideDuration = void 0), t.setState(function(f) {
581
+ if (c === void 0 && t.props.preventDuplicate || c) {
582
+ var x = function(L) {
583
+ return m ? L.id === k : L.message === l;
584
+ }, h = f.queue.findIndex(x) > -1, d = f.snacks.findIndex(x) > -1;
585
+ if (h || d) return f;
586
+ }
587
+ return t.handleDisplaySnack(O({}, f, { queue: [].concat(f.queue, [b]) }));
588
+ }), k;
589
+ }, t.handleDisplaySnack = function(n) {
590
+ return n.snacks.length >= t.maxSnack ? t.handleDismissOldest(n) : t.processQueue(n);
591
+ }, t.processQueue = function(n) {
592
+ var a = n.queue, i = n.snacks;
593
+ return a.length > 0 ? O({}, n, { snacks: [].concat(i, [a[0]]), queue: a.slice(1, a.length) }) : n;
594
+ }, t.handleDismissOldest = function(n) {
595
+ if (n.snacks.some(function(s) {
596
+ return !s.open || s.requestClose;
597
+ })) return n;
598
+ var a = !1, i = !1;
599
+ n.snacks.reduce(function(s, c) {
600
+ return s + (c.open && c.persist ? 1 : 0);
601
+ }, 0) === t.maxSnack && (i = !0);
602
+ var l = n.snacks.map(function(s) {
603
+ return a || s.persist && !i ? O({}, s) : (a = !0, s.entered ? (s.onClose && s.onClose(null, "maxsnack", s.id), t.props.onClose && t.props.onClose(null, "maxsnack", s.id), O({}, s, { open: !1 })) : O({}, s, { requestClose: !0 }));
604
+ });
605
+ return O({}, n, { snacks: l });
606
+ }, t.handleEnteredSnack = function(n, a, i) {
607
+ if (!qe(i)) throw new Error("handleEnteredSnack Cannot be called with undefined key");
608
+ t.setState(function(l) {
609
+ return { snacks: l.snacks.map(function(s) {
610
+ return s.id === i ? O({}, s, { entered: !0 }) : O({}, s);
611
+ }) };
612
+ });
613
+ }, t.handleCloseSnack = function(n, a, i) {
614
+ t.props.onClose && t.props.onClose(n, a, i);
615
+ var l = i === void 0;
616
+ t.setState(function(s) {
617
+ var c = s.snacks, u = s.queue;
618
+ return { snacks: c.map(function(m) {
619
+ return l || m.id === i ? m.entered ? O({}, m, { open: !1 }) : O({}, m, { requestClose: !0 }) : O({}, m);
620
+ }), queue: u.filter(function(m) {
621
+ return m.id !== i;
622
+ }) };
623
+ });
624
+ }, t.closeSnackbar = function(n) {
625
+ var a = t.state.snacks.find(function(i) {
626
+ return i.id === n;
627
+ });
628
+ qe(n) && a && a.onClose && a.onClose(null, "instructed", n), t.handleCloseSnack(null, "instructed", n);
629
+ }, t.handleExitedSnack = function(n, a) {
630
+ if (!qe(a)) throw new Error("handleExitedSnack Cannot be called with undefined key");
631
+ t.setState(function(i) {
632
+ var l = t.processQueue(O({}, i, { snacks: i.snacks.filter(function(s) {
633
+ return s.id !== a;
634
+ }) }));
635
+ return l.queue.length === 0 ? l : t.handleDismissOldest(l);
636
+ });
637
+ }, t.enqueueSnackbar, t.closeSnackbar, t.state = { snacks: [], queue: [], contextValue: { enqueueSnackbar: t.enqueueSnackbar.bind(Rt(t)), closeSnackbar: t.closeSnackbar.bind(Rt(t)) } }, t;
638
+ }
639
+ return on(o, e), o.prototype.render = function() {
640
+ var r = this, t = this.state.contextValue, n = this.props, a = n.domRoot, i = n.children, l = n.dense, s = l !== void 0 && l, c = n.Components, u = c === void 0 ? {} : c, m = n.classes, k = this.state.snacks.reduce(function(b, f) {
641
+ var x, h = Et(f.anchorOrigin), d = b[h] || [];
642
+ return O({}, b, ((x = {})[h] = [].concat(d, [f]), x));
643
+ }, {}), y = Object.keys(k).map(function(b) {
644
+ var f = k[b], x = f[0];
645
+ return T.createElement($o, { key: b, dense: s, anchorOrigin: x.anchorOrigin, classes: m }, f.map(function(h) {
646
+ return T.createElement(Bo, { key: h.id, snack: h, classes: m, Component: u[h.variant], onClose: r.handleCloseSnack, onEnter: r.props.onEnter, onExit: r.props.onExit, onExited: Pe([r.handleExitedSnack, r.props.onExited], h.id), onEntered: Pe([r.handleEnteredSnack, r.props.onEntered], h.id) });
647
+ }));
648
+ });
649
+ return T.createElement(rn.Provider, { value: t }, i, a ? fo(y, a) : y);
650
+ }, nn(o, [{ key: "maxSnack", get: function() {
651
+ return this.props.maxSnack || be.maxSnack;
652
+ } }]), o;
653
+ }(Kt), mn = function() {
654
+ return yn(rn);
655
+ };
656
+ const pe = { card: "_card_r6a8n_13", actionRoot: "_actionRoot_r6a8n_21", icons: "_icons_r6a8n_31", expand: "_expand_r6a8n_43", expandOpen: "_expandOpen_r6a8n_57", stackTraceContainer: "_stackTraceContainer_r6a8n_65" }, hn = ce((e, o) => {
657
+ const { id: r, message: t, iconVariant: n, error: a, hideIconVariant: i, ...l } = e, { closeSnackbar: s } = mn(), c = Vn(), [u, m] = ae(!1), k = ne(() => {
658
+ m((f) => !f);
659
+ }, []), y = ne(() => {
660
+ s(r);
661
+ }, [r, s]), b = a?.message || String(t);
662
+ return g(St, { ref: o, className: mt(pe.root, "error-snackbar"), children: se(vo, { className: pe.card, style: { backgroundColor: c.palette.error.dark, border: `1px solid ${c.palette.error.dark}` }, children: [se(So, { className: pe.actionRoot, children: [i ? null : n?.error, g($n, { variant: "body2", component: "div", className: pe.typography, style: { color: c.palette.text.primary }, children: b }), g("div", { style: { flex: "1 1 auto" } }), se("div", { className: pe.icons, children: [a ? g(ht, { "aria-label": "Show more", size: "small", className: mt(pe.expand, { [pe.expandOpen]: u }), style: { color: c.palette.action.active }, onClick: k, children: g(Un, {}) }) : null, g(ht, { size: "small", className: pe.expand, style: { color: c.palette.action.active }, onClick: y, children: g(Gn, { fontSize: "small" }) })] })] }), a ? g(ft, { in: u, timeout: "auto", unmountOnExit: !0, children: g("div", { className: pe.stackTraceContainer, style: { backgroundColor: c.palette.error.light, borderTop: `1px solid ${c.palette.error.main}` }, children: g(Kn, { error: a, hideLineNumbers: !0 }) }) }) : null] }) });
663
+ });
664
+ hn.displayName = "ToastError";
665
+ const fn = Me(ce((e, o) => {
666
+ const { commands: r, commandHook: t, scope: n = "workbook", disabled: a = !1, ...i } = e, l = ie((c) => {
667
+ const u = { variant: ao.Menuitem, parentFloat: c.floatReference, commandHook: t, scope: n, disabled: a }, m = se(Gt, { children: [g(ot, { ...u, command: r.getCommand("newWorkbook"), icon: Fe(g(io, {})) }), g(so, { orientation: "horizontal" }), g(ot, { ...u, command: r.getCommand("openWorkbook"), icon: Fe(g(lo, {})) }), g(Wt, { ...u, commands: r, quickCommand: "saveWorkbook", icon: Fe(g(po, {})), createPopupPanel: (k) => {
668
+ const y = { ...u, parentFloat: k.floatReference, scope: "saveWorkbook" }, b = [];
669
+ return ye.getWriteFormats().forEach((f) => {
670
+ if (f.isDefault) return;
671
+ let x = null;
672
+ f.key === "CSV" ? x = Fe(g(co, {})) : f.key === "Excel" && (x = Fe(g(uo, {})));
673
+ const h = r.getCommand(`saveWorkbookAs${f.key}`);
674
+ h ? b.push(fe(ot, { ...y, key: f.key, command: h, icon: x })) : console.warn(`Unable to resolve command: 'saveWorkbookAs${f.key}'`);
675
+ }), Ft({ ...k, children: b, onClick: () => {
676
+ k.closeFloatAll();
677
+ } });
678
+ } })] });
679
+ return Ft({ ...c, children: m, onClick: (k) => {
680
+ k.isDefaultPrevented || c.closeFloatAll();
681
+ } });
682
+ }, [a, r, t, n]), s = "File";
683
+ return g(Wt, { commands: r, disabled: a, commandHook: t, scope: n, label: s, tooltip: "Options for saving and loading the workbook.", sx: { paddingBottom: "0px", "& button": { paddingTop: "0px", paddingBottom: "0px", height: (c) => `calc(1.25rem + ${c.spacing(2)}px)` } }, ...i, createPopupPanel: l, icon: g(mo, { className: "label", icon: null, label: s }) });
684
+ }));
685
+ fn.displayName = "StandaloneFileCommandButton";
686
+ const Go = g(oo, { label: "SheetXL", description: "Visit me at sheetxl.com.", children: g(xe, { sx: { width: "24px", height: "24px", marginBottom: "4px", marginLeft: "6px" }, children: g(ro, { onClick: () => {
687
+ window?.open("https://www.sheetxl.com", "_blank");
688
+ }, style: { width: "24px", height: "24px", cursor: "pointer" } }) }) }), gn = Me(ce((e, o) => {
689
+ const { commands: r, workbook: t, logo: n = Go, mainElement: a, showFileMenu: i = !0, showAppearanceMenu: l = !0, ...s } = e, { reference: c } = zn(), [u, { width: m }] = _n(), k = m < 530, y = i ? g(fn, { commands: r, commandHook: { beforeExecute() {
690
+ c?.closeAll();
691
+ }, onError(h, d, L) {
692
+ } } }) : null, b = l ? g(qn, { commands: r, commandHook: { beforeExecute() {
693
+ c?.closeAll();
694
+ }, onError(h, d, L) {
695
+ } } }) : null, f = te(() => ({ paddingLeft: (h) => h.spacing(1), paddingRight: (h) => h.spacing(1) }), []), x = le(null);
696
+ return g(xe, { ref: Yt([x, u, o]), ...s, children: Bn({ commands: r, renderCompact: k, workbook: t, selectWrapper: (h) => se(xe, { sx: { display: "flex", flex: "1", flexDirection: "row", alignItems: "stretch", gap: (d) => d.spacing(1), paddingLeft: (d) => d.spacing(1), paddingRight: (d) => d.spacing(1) }, children: [se(xe, { sx: { display: "flex", flexDirection: "row", alignItems: "center", flex: "1 1 100%", gap: (d) => d.spacing(0.5) }, children: [n, se(xe, { sx: { display: "flex", flexDirection: "row", alignItems: "center", gap: (d) => d.spacing(0.25) }, children: [y, h] })] }), g(xe, { sx: { display: "flex", flexDirection: "row", flex: "1 1 300%", overflow: "hidden", alignItems: "center", justifyContent: "center" }, children: a }), g(xe, { sx: { display: "flex", alignItems: "center", justifyContent: "end", flex: k && !b ? "0 0 auto" : "1 1 100%" }, children: b })] }), selectProps: f, toolbarsProps: { Home: { sx: {} } } }) });
697
+ }));
698
+ gn.displayName = "StandaloneWorkbookToolbar";
699
+ const kn = Me(ce((e, o) => {
700
+ const { workbook: r, setWorkbook: t, refWorkbookTitle: n, titleWorkbook: a, setWorkbookTitle: i, titlePlaceHolder: l, children: s, undoManager: c, commands: u, importExportDisabled: m, themeModeOptions: k } = e, y = mn(), b = y ? y.enqueueSnackbar : () => {
701
+ }, f = y ? y.closeSnackbar : () => {
702
+ }, [x, h] = ae({ isMounted: !1, label: null, starting: /* @__PURE__ */ new Map(), running: /* @__PURE__ */ new Map() }), d = ne(() => {
703
+ h((A) => ({ ...A, isMounted: !0 }));
704
+ }, []), L = ne(() => {
705
+ h((A) => ({ ...A, isMounted: !1 }));
706
+ }, []), w = Zn(), R = Xn(), M = Qn(), H = le(/* @__PURE__ */ new Set()), q = te(() => {
707
+ const A = (E, S) => {
708
+ if (S?.onceKey) {
709
+ if (H.current.has(S.onceKey)) return;
710
+ const D = new Set(H.current);
711
+ D.add(S.onceKey), H.current = D;
712
+ }
713
+ const P = { variant: S?.type ?? _e.Info, anchorOrigin: { vertical: "top", horizontal: "center" }, preventDuplicate: S?.preventDuplicate, persist: S?.persist ?? S?.type === _e.Error, action: (D) => g(ht, { onClick: () => f(D), children: g(Oo, {}) }) };
714
+ S?.enqueueProps && Object.assign(P, S.enqueueProps), E || console.log("message is 'null'", S), b(E ?? "Alert", P);
715
+ };
716
+ return { showMessage: A, showBusy: (E, S) => {
717
+ let P = null;
718
+ const D = new Promise((B) => {
719
+ P = B;
720
+ });
721
+ return h((B) => {
722
+ const _ = new Map(B.starting);
723
+ return _.set(D, P), { ...B, label: E, starting: _ };
724
+ }), D;
725
+ }, showWindow: (E, S, P) => {
726
+ const D = { ...S, onKeyDown: (B) => {
727
+ u?.dispatchToFocusedCommand(B), B.isDefaultPrevented() || B.isPropagationStopped() || S?.onKeyDown?.(B);
728
+ } };
729
+ return w(E, { sort: () => import("./4u46flV9M6Bwb7d3.js"), numberFormat: () => import("./W3SqjN4yIzwYTvvj.js"), hyperlink: () => import("./DLHK1pMyNN3B2g-j.js"), comments: () => import("./CEq_C1Sim0pQ6fj0.js"), find: () => import("./C_L_pvQemfhI00iS.js"), tableDetails: () => import("./CvbyGDitUPabmYBl.js"), tableNew: () => import("./BJIsFTUdHtUKsFJs.js"), namedDetails: () => import("./DMwOymY267-LxmJ_.js") }[E], D, P);
730
+ }, showOptions: R, showInputOptions: M, showError: (E) => {
731
+ let S, P = _e.Error, D = "Unknown Error";
732
+ typeof E == "string" ? D = E : E instanceof Error && (S = E, E.message && (D = E.message)), E instanceof ho && (P = _e.Info), A(D, { type: P, enqueueProps: { error: S } });
733
+ } };
734
+ }, []), N = ne(() => {
735
+ }, []), z = ((A) => {
736
+ const { workbook: E, setWorkbook: S, importExportDisabled: P, workbookTitle: D = "export", setWorkbookTitle: B, notifier: _, requestWorkbookTitle: J, themeModeOptions: j, undoManager: C, commands: W, onExecute: V } = A, re = ie(j?.onForceModeChange, [j?.onForceModeChange]), me = ie(j?.onForceLightGridChange, [j?.onForceLightGridChange]), ue = ie(j?.onForceLightImagesChange, [j?.onForceLightImagesChange]), Ye = ie(async (F = null, X = null) => {
737
+ const p = [];
738
+ let v, $ = null, Y = null;
739
+ if (typeof F == "string" ? Y = F : $ = F, v = $ ? F : await Jn.openFileDialog(Y ?? ye.getAllReadFormatTypeAsString().join(",")), !v) return null;
740
+ const he = { source: v, constructorOptions: X, onWarning: (tt) => {
741
+ p.push(tt);
742
+ } }, Oe = await ye.read(he, _);
743
+ return p.length > 0 && (_?.showMessage?.("Some elements were not able to be imported. See console for details."), console.warn(`Import warnings:
744
+ ` + p.join(`
745
+ `))), Oe;
746
+ }, [V, _, E]), De = ie(async (F, X, p) => {
747
+ if (!X && J) {
748
+ const v = await J("Enter Workbook name to " + (p.isDefault ? "Save." : `Export as ${p.description}.`));
749
+ return v !== null && ye.writeFile(v, F, { formatType: p.key });
750
+ }
751
+ return ye.writeFile(X, F, { formatType: p.key });
752
+ }, [_, E, J]), U = ne(() => ({ contains: (F) => !0, focus() {
753
+ } }), []), ke = te(() => {
754
+ const F = [];
755
+ P || (ye.getWriteFormats().forEach((p) => {
756
+ const v = p.isDefault, $ = { label: v ? "Save Workbook" : `Save Workbook as ${p.description}`, scopedLabels: { workbook: "Save", saveWorkbook: `as ${p.description}` }, tags: p.tags, description: `Save the workbook to the desktop${v ? "" : ` as ${p.description}`}.` };
757
+ v && ($.shortcut = { key: "S", modifiers: [We.Ctrl] }, F.push(new ee("saveWorkbookAs", U, { label: "Save Workbook As…", scopedLabels: { workbook: "Save as…", saveWorkbook: "as…" }, shortcut: [{ key: "S", modifiers: [We.Shift, We.Ctrl] }, { key: "F12" }], description: "Save the workbook to the desktop with the provided name." }, () => {
758
+ De(E, null, p).catch((he) => {
759
+ _?.showError?.(he);
760
+ });
761
+ })));
762
+ const Y = v ? "saveWorkbook" : `saveWorkbookAs${p.key}`;
763
+ F.push(new ee(Y, U, $, (he) => {
764
+ De(E, he ?? D, p).catch((Oe) => {
765
+ _?.showError?.(Oe);
766
+ });
767
+ }));
768
+ }), F.push(new ee("openWorkbook", U, { label: "Open Workbook…", scopedLabels: { workbook: "Open…" }, description: "Open a workbook from the desktop.", shortcut: { key: "O", modifiers: [We.Ctrl] } }, async (p = null) => {
769
+ const v = { date1904: E.isDate1904(), ...E.options };
770
+ try {
771
+ const $ = await Ye(p, v);
772
+ if (!$) return;
773
+ const Y = $.title, he = $.workbook, Oe = he.getSelectedSheet();
774
+ if ($.formatType.mimeType === "text/csv") {
775
+ const tt = E.findValidSheetName(Y);
776
+ await E.doBatch(async () => {
777
+ const Lt = Oe.getUsedRange();
778
+ Lt ? await E.getSheets().add({ name: tt, autoSelect: !0 }).getRange({ colStart: 0, rowStart: 0, colEnd: 0, rowEnd: 0 }).copyFrom(Lt) : _?.showMessage("The file appears to be blank.");
779
+ }, `Import CSV '${Y}'`);
780
+ } else E?.close(), B?.(Y), S(he);
781
+ } catch ($) {
782
+ _?.showError?.($);
783
+ }
784
+ })), F.push(new ee("openWorkbookFromUrl", U, { label: "Open Workbook From Web", scopedLabels: { insert: "From Web", workbook: "From Web…" }, description: "Open a workbook from the web." }, async function(p) {
785
+ if (!p) {
786
+ const v = await _?.showInputOptions?.({ title: "Open Workbook from the Web", description: "Enter the web address for the workbook to open.", inputLabel: "Address", initialValue: "https://www.sheetxl.com/examples/features-checklist.xlsx", inputProps: { style: { minWidth: "440px" } }, options: ["Open"] });
787
+ if (v.option !== "Open") return;
788
+ p = v.input;
789
+ }
790
+ p && console.log("openWorkbookFromUrl", p);
791
+ })));
792
+ let X = [];
793
+ return j && (X = [new ee("themeMode", U, { label: "Light/Dark Mode", scopedLabels: { appearance: "Light/Dark Mode" }, description: "Toggle the application styling between light and dark mode." }), new ee("defaultThemeMode", U, { label: "Use System Light/Dark Mode", scopedLabels: { appearance: "Use System Default" }, description: "Use the system settings to determine styling for light and dark mode." }), new ee("forceLightGrid", U, { label: "Force Light Grid", description: "Force the grid to always render in light mode if dark mode is being used. This is ensures that the grid will render the colors as specified in another tools (for example Excel)." }), new ee("forceLightImages", U, { label: "Force Light Images", description: "Force the images to always render in light mode if dark mode is being used. This is ensures that the images will render the colors as specified in another tools (for example Excel). This only has any effect if the grid is in dark mode." })]), [...F, ...X, new Ot("help", U, { label: "Show Help", description: "Provide Help.", shortcut: { key: "F1" } }, () => {
794
+ }), new Ot("showKeyboardShortcuts", U, { label: "Keyboard Shortcuts", description: "Show keyboard shortcuts.", shortcut: { key: "/", modifiers: [We.Ctrl] } }, () => {
795
+ }), new ee("gotoUrlGithub", U, { label: "Github", description: "Download examples, explore source code, and leave a star." }, () => {
796
+ window?.open("https://github.com/sheetxl/sheetxl");
797
+ }), new ee("gotoUrlDiscord", U, { label: "Discord", description: "Join our community on discord." }, () => {
798
+ window?.open("https://discord.gg/NTKdwUgK9p");
799
+ }), new ee("gotoUrlDocumentation", U, { label: "Documentation", description: "Read the documentation." }, () => {
800
+ window?.open("https://www.sheetxl.com/docs");
801
+ }), new ee("gotoUrlIssue", U, { label: "Create Issue", description: "Create an issue to identify a bug or a feature request." }, () => {
802
+ window?.open("https://github.com/sheetxl/sheetxl/issues");
803
+ })];
804
+ }, [E, D, _, P, j, W, C]), Z = te(() => {
805
+ let F = null;
806
+ return F = W ? W.createChildGroup(U, "standaloneWorkbook", !1) : new Qt(U, "standaloneWorkbook"), F.addCommands(ke, !0), F;
807
+ }, [W, ke]);
808
+ Yn({ manager: C, commands: Z, notifier: _ });
809
+ const { themeMode: Te } = Xt();
810
+ K(() => {
811
+ if (!j || !Z) return;
812
+ const F = j.forceMode === "dark" || !j.forceMode && Te === "dark";
813
+ Z.getCommand("themeMode").update({ state: j.forceMode ?? null, label: F ? "Dark Mode" : "Light Mode", scopedLabels: { appearance: F ? "Dark Mode" : "Light Mode" } }).updateCallback(() => {
814
+ re(F ? pt.Light : pt.Dark);
815
+ }), Z.getCommand("defaultThemeMode").update({ state: !j.forceMode }).updateCallback(() => {
816
+ re(null);
817
+ }), Z.getCommand("forceLightGrid").update({ state: j.forceLightGrid }).updateCallback(() => {
818
+ me(!j.forceLightGrid);
819
+ }), Z.getCommand("forceLightImages").update({ state: j.forceLightImages }).updateCallback(() => {
820
+ ue(!j.forceLightImages);
821
+ });
822
+ }, [Te, j, ke]);
823
+ const { showModal: et } = eo();
824
+ return K(() => {
825
+ const F = () => new Promise((X, p) => {
826
+ const v = T.lazy(() => import("./DARyg_kqL8Eu81Fa.js")), $ = et(v, { title: "Shortcut Keys Reference", commands: Z, onDone: () => {
827
+ $.hide();
828
+ }, TransitionProps: { onExited: () => {
829
+ X(!0);
830
+ } } });
831
+ });
832
+ Z.getCommand("showKeyboardShortcuts").updateCallback(() => F()), Z.getCommand("help").updateCallback(() => F());
833
+ }, [ke, Z]), Z;
834
+ })({ workbook: r, setWorkbook: t, importExportDisabled: m, workbookTitle: a, setWorkbookTitle: i, commands: u, requestWorkbookTitle: (A) => new Promise((E) => {
835
+ n.current ? n.current.requestWorkbookTitle((S, P) => {
836
+ E(S);
837
+ }, { selectAll: !0, requestReason: A }) : E(l);
838
+ }), themeModeOptions: k, undoManager: c, notifier: q, onExecute: N });
839
+ K(() => {
840
+ x.starting.size <= 0 || !x.isMounted || h((A) => {
841
+ const E = new Map(A.running);
842
+ return A.starting.forEach((S, P) => {
843
+ const D = () => {
844
+ h((B) => {
845
+ const _ = new Map(B.running);
846
+ return _.delete(P), { ...B, running: _ };
847
+ });
848
+ };
849
+ E.set(P, D), S(D);
850
+ }), { ...A, starting: /* @__PURE__ */ new Map(), running: E };
851
+ });
852
+ }, [x]);
853
+ const [G, Q] = ae(null);
854
+ K(() => {
855
+ x.starting.size !== 0 || x.running.size !== 0 ? Q(g(Jt, { icon: g(to, { sx: { transform: "scale(0.7)", marginLeft: "-6px" } }), panel: !0, label: x.label, onMount: d, onUnmount: L, sx: { position: "absolute", left: "0", top: "0", width: "100%", height: "100%", zIndex: "9999" } })) : Q(null);
856
+ }, [x.starting, x.running]);
857
+ const I = te(() => g(no, { commands: z, disableHover: !0, sx: { padding: "0" }, buttonProps: { sx: { maxHeight: "22px" } } }), [z]), oe = { notifier: q, commands: z };
858
+ return r && (oe.statusBarProps = { childrenEnd: I }), se(Gt, { children: [G, s ? T.cloneElement(s, oe) : null] });
859
+ }));
860
+ kn.displayName = "SnackbarAndCommandsWrapper";
861
+ const bn = Me(ce((e, o) => {
862
+ const { className: r, sx: t, style: n, onElementLoad: a, onError: i, undoManager: l, errorPanel: s = Wn, onKeyDown: c, workbook: u, createWorkbookOptions: m, onWorkbookChange: k, logo: y, importExportDisabled: b = !1, themeModeOptions: f, autoFocus: x = !1, commands: h, title: d, onTitleChange: L, titleProps: w, ...R } = e, M = le(null), H = ie(k, [k]), q = ie(L ?? w?.onTitleChange, [L ?? w?.onTitleChange]), N = w?.placeHolder ?? "Untitled", z = f?.forceMode, { themeMode: G, source: Q } = Xt({ mode: z }), I = te(() => ({ ...f, light: Dt(!1, nt.deepMerge(f?.theme ?? {}, f?.light ?? {})), dark: Dt(!0, nt.deepMerge(f?.theme ?? {}, f?.dark ?? {})) }), [f]), oe = G === pt.Dark, [A, E] = ae(null);
863
+ K(() => {
864
+ E(l ?? new Fn());
865
+ }, [l]);
866
+ const [S, P] = ae(null), [D, B] = ae(null), _ = Nn();
867
+ dt(() => {
868
+ if (!u || Object.keys(u).length === 0 && !nt.isPromiseLike(u)) {
869
+ const p = { theme: _.getDefaultTheme(), ...m };
870
+ B(new Tt(p));
871
+ } else B(u);
872
+ }, [u]), dt(() => {
873
+ if (D) {
874
+ if (D instanceof Tt) return P({ workbook: D }), void (u !== D && H?.(D));
875
+ (async () => {
876
+ try {
877
+ let p, v = await Promise.resolve(D);
878
+ v && v.source && (v = await ye.read(v)), v.workbook ? (V(v.title), p = v.workbook) : p = v, H?.(p), P({ workbook: p });
879
+ } catch (p) {
880
+ H?.(null), P({ error: p });
881
+ }
882
+ })();
883
+ }
884
+ }, [D]);
885
+ const [J, j] = ae(null);
886
+ K(() => {
887
+ if (!A || !S) return;
888
+ A.clear();
889
+ const p = S?.workbook?.getTransactions();
890
+ return p ? p.addListener({ onCommitEnd: (v) => {
891
+ v.getDescription() ? A.addUndoOperation({ description: v.getDescription(), undo: () => (p.revert(v.getId()), J.source?.focus(), () => {
892
+ p.restore(v.getId()), J.source?.focus();
893
+ }) }) : console.warn("commit has no description", v);
894
+ } }) : void 0;
895
+ }, [A, S, J]);
896
+ const C = ie((p) => {
897
+ p ? A.setRepeatableOperation({ description: p.label(), repeat: async () => p.execute() }) : A.setRepeatableOperation(null);
898
+ }, [A]), [W, V] = ae(d ?? w?.title ?? "");
899
+ K(() => {
900
+ V(d ?? w?.title ?? "");
901
+ }, [d ?? w?.title]), K(() => {
902
+ q?.(W);
903
+ }, [W]);
904
+ const [re, me] = ae(null), ue = te(() => {
905
+ const p = () => ({ contains: (v) => !0, focus() {
906
+ } });
907
+ return h ? h.createChildGroup(p, "application", !1) : new Qt(p, "application");
908
+ }, [h]), Ye = ie((p) => {
909
+ me(p.source.getViewportElement()), j(p), ue.activate("sheet"), a?.(p);
910
+ }, [ue]);
911
+ K(() => {
912
+ J && x && J.source?.focus(typeof x == "object" ? x : void 0);
913
+ }, [J]);
914
+ const De = le(null), U = ne((p) => {
915
+ let v = null;
916
+ return w?.hidden || (v = g(An, { ...w, style: { maxWidth: "100%", ...w?.style }, workbook: M.current, ref: De, title: W, placeHolder: N, onTitleChange: ($) => {
917
+ V($);
918
+ } })), g(gn, { ...p, logo: y, mainElement: v, showFileMenu: !b, showAppearanceMenu: !!(I?.onForceLightGridChange || I?.onForceLightImagesChange || I?.onForceModeChange) });
919
+ }, [y, W, w, I, b, ue]);
920
+ K(() => {
921
+ const p = (v) => v.preventDefault();
922
+ return M.current?.addEventListener("wheel", p, { passive: !1 }), () => {
923
+ M.current?.removeEventListener("wheel", p);
924
+ };
925
+ }, []);
926
+ const ke = te(() => g(Jt, { transparentBackground: !0, sx: t, style: n }), [t, n]), Z = ne(({ error: p }) => (i?.(p), g(s, { sx: t, style: n, error: p ?? "Unable to display empty workbook." })), [t, n, i]), Te = te(() => ({ ...t, "& .SnackbarContainer-root": { position: "absolute !important" }, "& .notistack-Snackbar": { minWidth: "unset" }, "& .notistack-MuiContent *": { fontFamily: (p) => p.typography.fontFamily }, "& #notistack-snackbar": { maxWidth: "560px", whiteSpace: "pre-wrap" }, "*": { userSelect: "none" } }), [t]), et = Yt([M, o]), F = te(() => {
927
+ if (!S) return ke;
928
+ if (S.error || !S.workbook) return Z({ error: S.error });
929
+ let p = null, v = null, $ = !1;
930
+ return I && (p = oe ? I.dark : I.light, v = oe && !I.forceLightGrid ? I.dark : I.light, $ = I.forceLightImages), g(Rn, { sx: Te, style: n, tabIndex: 0, autoFocus: !0, workbook: S.workbook, ref: et, renderToolbar: U, onElementLoad: Ye, onRepeatCommandChange: C, onKeyDown: (Y) => {
931
+ c?.(Y);
932
+ }, gridTheme: v, headersTheme: p, forceLightImages: $, className: mt(r, "sheetxl-workbook"), onContextMenu: (Y) => Y.preventDefault(), ...R }, "WorkbookElement");
933
+ }, [S, W, A, ke, I, R, U, Te]);
934
+ let X = g(Fo, { fallbackRender: Z, children: g(Uo, { maxSnack: 3, domRoot: re, anchorOrigin: { vertical: "bottom", horizontal: "right" }, autoHideDuration: 3500, onClose: (p, v, $) => {
935
+ M.current?.focus();
936
+ }, Components: { error: hn }, iconVariant: { success: g(Hn, { style: { marginRight: "8px" }, children: g("path", { d: "M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z" }) }), error: g(Pn, { style: { marginRight: "8px" } }) }, children: g(In, { children: g(kn, { workbook: S?.workbook, setWorkbook: B, importExportDisabled: b, titlePlaceHolder: N, titleWorkbook: W, setWorkbookTitle: V, refWorkbookTitle: De, commands: ue, undoManager: A, themeModeOptions: I, children: F }) }) }) });
937
+ return I && (X = se(jn, { theme: oe ? I.dark : I.light, children: [I.cssBaseline ? g(To, {}) : null, X] })), X;
938
+ }));
939
+ bn.displayName = "EagerStandaloneWorkbook";
940
+ const Ko = Object.freeze(Object.defineProperty({ __proto__: null, default: bn }, Symbol.toStringTag, { value: "Module" })), Yo = Object.freeze(Object.defineProperty({ __proto__: null, E: Ko, c: ge }, Symbol.toStringTag, { value: "Module" }));
941
+ export {
942
+ ft as C,
943
+ Yo as a,
944
+ ge as f
945
+ };