@sheetxl/studio-vanilla 0.4.21 → 0.4.22

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