@sheetxl/studio-vanilla 0.4.10 → 0.4.12

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 (159) hide show
  1. package/browser/cjs/B35OZ0mE8aINQPP9.cjs +7 -0
  2. package/browser/cjs/BPzEQNENF-gEBkg9.cjs +7 -0
  3. package/browser/cjs/BUokV6yuzE-_8MyK.cjs +7 -0
  4. package/browser/cjs/BeZHmOKfa37mFNAu.cjs +7 -0
  5. package/browser/cjs/BflJ_0gT9lQtDvY_.cjs +7 -0
  6. package/browser/cjs/BwN8vKi5o3-PbIMo.cjs +7 -0
  7. package/browser/cjs/C3OizZPVuxO2fjSG.cjs +7 -0
  8. package/browser/cjs/CBL6KkiWI2RPflEN.cjs +7 -0
  9. package/browser/cjs/CN6-6xpZMpFqSS8M.cjs +7 -0
  10. package/browser/cjs/CTrEV_UpxC0W6cZZ.cjs +7 -0
  11. package/browser/cjs/CU30GVjjFXl44vEU.cjs +7 -0
  12. package/browser/cjs/CZWBxvUXzfpn_zmc.cjs +7 -0
  13. package/browser/cjs/Ccs2ouvlLekaLGH0.cjs +7 -0
  14. package/browser/cjs/Ce-8L4Viq3I_6j0i.cjs +7 -0
  15. package/browser/cjs/CtNjLzIHB8WX63Bl.cjs +7 -0
  16. package/browser/cjs/DAHpsyykuPBkoh-Z.cjs +7 -0
  17. package/browser/cjs/DJbKKxeeTEHHA1gR.cjs +107 -0
  18. package/browser/cjs/D_VQzwC1zzTJyKtG.cjs +7 -0
  19. package/browser/cjs/GrsZZ_mEdsM5dEMA.cjs +7 -0
  20. package/browser/cjs/JKEGlXjMwGnXk_Gv.cjs +7 -0
  21. package/browser/cjs/L1iE_VcelYZIy0wI.cjs +7 -0
  22. package/browser/cjs/Q_VvA-yUQx3xFKiJ.cjs +7 -0
  23. package/browser/cjs/fTGpiXzFm3K_u2Fm.cjs +7 -0
  24. package/browser/cjs/hwDUzorB6aCvH1eL.cjs +7 -0
  25. package/browser/cjs/index.cjs +4 -3
  26. package/browser/cjs/no5c2H18QD2qmOH6.cjs +7 -0
  27. package/browser/esm/B4Mm5gczpI_k2zzN.mjs +7 -0
  28. package/browser/esm/B8ISUdOxsJMYWzNN.mjs +7 -0
  29. package/browser/esm/BnJiF38TGudjoHzT.mjs +7 -0
  30. package/browser/esm/Bts4nCgfCAUpTfxz.mjs +7 -0
  31. package/browser/esm/C3cyAbIH8Qc8MIFN.mjs +107 -0
  32. package/browser/esm/C4jlaVv8bELgiHyE.mjs +7 -0
  33. package/browser/esm/CYIhGb86r-kKOrP5.mjs +7 -0
  34. package/browser/esm/CcpskguvlvemArQn.mjs +7 -0
  35. package/browser/esm/CeRfALx1iU5fqOUg.mjs +7 -0
  36. package/browser/esm/CfYWmP_Hots5f0f6.mjs +7 -0
  37. package/browser/esm/CkarbqNx_lhlBnw7.mjs +7 -0
  38. package/browser/esm/D2PlWNQjrTgf6GuR.mjs +7 -0
  39. package/browser/esm/D3KNxvnrwR6_fTJE.mjs +7 -0
  40. package/browser/esm/DIJyH94oCzUnlcNZ.mjs +7 -0
  41. package/browser/esm/DVAG1NxFe3cMjLE1.mjs +7 -0
  42. package/browser/esm/DVqga7g7j0FUiM6p.mjs +7 -0
  43. package/browser/esm/DcX8yGEBX6qi9RCe.mjs +7 -0
  44. package/browser/esm/DeXfOSxGE_Ez7DZq.mjs +7 -0
  45. package/browser/esm/DzgM_rkwyIHsCb6I.mjs +7 -0
  46. package/browser/esm/M4hZ25330e96seUM.mjs +7 -0
  47. package/browser/esm/Qp2Toeh_EbJH_f_6.mjs +7 -0
  48. package/browser/esm/SAyRTPVprOHZ8Up8.mjs +7 -0
  49. package/browser/esm/_ft7JYO6QdDbIu3d.mjs +7 -0
  50. package/browser/esm/dpdy0BU4GGI5lZrX.mjs +7 -0
  51. package/browser/esm/index.mjs +2 -8
  52. package/browser/esm/oLCocGFRAwsVsOSE.mjs +7 -0
  53. package/cdn/assets/7_O6nILzn1fSVvkO.js +13449 -0
  54. package/cdn/assets/B3kbBB6oxKBErwzn.js +27 -0
  55. package/cdn/assets/BB66NDz7S3ocEfRB.js +150 -0
  56. package/cdn/assets/BCK7yhx9JfzU2rF0.js +22 -0
  57. package/{browser/esm/DIGFi66CQPMV3HsL.mjs → cdn/assets/BSAH88RG1oubICau.js} +25 -25
  58. package/cdn/assets/{B-9FcTf3xBEVGdjV.js → BT5EcMEFBsphczwC.js} +536 -534
  59. package/cdn/assets/BcWoqhD_sX85c7Mh.js +1701 -0
  60. package/cdn/assets/BoOefjrM4kZ-YXxa.js +90 -0
  61. package/cdn/assets/BtweFYnoj_aEfydW.js +1371 -0
  62. package/cdn/assets/Bv0Xb6DdcQbPYJKo.js +24 -0
  63. package/cdn/assets/CC-S4NMYhLg3WgqO.js +3875 -0
  64. package/cdn/assets/CJhyHcQcrhbtC33r.js +50 -0
  65. package/cdn/assets/CUc6gRjjRGTFWSHD.js +50 -0
  66. package/{browser/esm/D47D26mVYSAdb5C8.mjs → cdn/assets/CfObTzh8pGdd8D23.js} +560 -555
  67. package/cdn/assets/CiY3HumGDc_5bMtR.js +58 -0
  68. package/cdn/assets/CpPLN0-hDsTIFHZV.js +46 -0
  69. package/{browser/esm/C_Zx1tYjI3n7KKZH.mjs → cdn/assets/Cq94woVmlxhjWVRI.js} +2 -2
  70. package/cdn/assets/CsjftXmSYQRHNKdq.js +41 -0
  71. package/cdn/assets/DBL4jY0AVc53RGNm.js +637 -0
  72. package/cdn/assets/DDW1WJ2IM_9ZUfKm.js +36 -0
  73. package/cdn/assets/{Bt1JSlSpWXDOBfq3.js → DJQOS9qxVAlpgDMt.js} +5 -4
  74. package/cdn/assets/DWJE3K3jMKMTCi3o.js +393 -0
  75. package/cdn/assets/D_5RgqgwXsoqLJDR.js +241 -0
  76. package/cdn/assets/DfmaL8DmDaFAv8M_.js +6481 -0
  77. package/cdn/assets/DgLPO_EQ9DYoGgec.js +423 -0
  78. package/cdn/assets/{B3J6oAmsS7oLNFPd.js → DkS6quwH1okWaho6.js} +3 -3
  79. package/cdn/assets/DxMu6URURFWj9aXM.js +2373 -0
  80. package/cdn/assets/Jhm2DAcrfAqiM-Y-.js +26490 -0
  81. package/cdn/assets/MRBi3juXAW0lA_mj.js +1358 -0
  82. package/cdn/assets/dk2teWHDODYNarJY.js +27 -0
  83. package/cdn/assets/phYz0vGgqIEQ2hco.js +12 -0
  84. package/cdn/assets/qA23x9VVBL9R4qxN.js +43 -0
  85. package/cdn/index.js +8 -8
  86. package/cdn/loader.js +1 -1
  87. package/package.json +5 -5
  88. package/browser/cjs/B1UGqZP_7Z0Ewpog.cjs +0 -6
  89. package/browser/cjs/B6m9VXoFseD4zuZ5.cjs +0 -6
  90. package/browser/cjs/BKePSaEpM6Z063z-.cjs +0 -161
  91. package/browser/cjs/Bqn0ZeP_srNfL9rG.cjs +0 -6
  92. package/browser/cjs/C-izbj62pQuZjOrT.cjs +0 -304
  93. package/browser/cjs/C-w-GX8N54TxTjjf.cjs +0 -6
  94. package/browser/cjs/C1QGdcqJ-9sdGTQR.cjs +0 -6
  95. package/browser/cjs/C38aiRglHLxZ8KRY.cjs +0 -6
  96. package/browser/cjs/C4JMn_hMnlOnDpQO.cjs +0 -6
  97. package/browser/cjs/CApEj4LhhPUvQjIG.cjs +0 -16
  98. package/browser/cjs/CFcJbmmXjWjl6fQH.cjs +0 -6
  99. package/browser/cjs/CKiDbCZ6rGgXK7yN.cjs +0 -42
  100. package/browser/cjs/CM8btXQsJbnFKXUm.cjs +0 -6
  101. package/browser/cjs/Cb0K3Wzp7BAa4zni.cjs +0 -15
  102. package/browser/cjs/CiAUhPU7v1BK-8Bb.cjs +0 -7
  103. package/browser/cjs/CsXS-EN0N5SZHTnQ.cjs +0 -145
  104. package/browser/cjs/Cu2eUomoF0HToa4l.cjs +0 -6
  105. package/browser/cjs/Cy7ii9B_Vqx94pbu.cjs +0 -19
  106. package/browser/cjs/CzI4ZcsmzsyPBpWN.cjs +0 -12
  107. package/browser/cjs/DKHzUx2gKXwboKy1.cjs +0 -11
  108. package/browser/cjs/DKc8wAq8dwbDddQn.cjs +0 -11
  109. package/browser/cjs/DMyKApbUVRtNYC4e.cjs +0 -6
  110. package/browser/cjs/DROR08HMGyg7rizQ.cjs +0 -6
  111. package/browser/cjs/DfGDZlbFVknGyu_X.cjs +0 -6
  112. package/browser/cjs/OQdqVM_6m78kE5Aj.cjs +0 -7
  113. package/browser/cjs/v4OEtYXaUw_GeiXM.cjs +0 -12
  114. package/browser/esm/4uEr84M4w57AMyDg.mjs +0 -1703
  115. package/browser/esm/B8Ja5DlyKAy8xfQD.mjs +0 -1365
  116. package/browser/esm/B9bN60uAvy62vnwt.mjs +0 -22
  117. package/browser/esm/BAOzSQdzHl43K9Hd.mjs +0 -50
  118. package/browser/esm/BQYSD5Nb35y0WeeV.mjs +0 -421
  119. package/browser/esm/BVcaNvORp_uKPQgJ.mjs +0 -46
  120. package/browser/esm/BqXO_cQhrMJu7JoQ.mjs +0 -3756
  121. package/browser/esm/C18A_DcIEHNYBDvR.mjs +0 -46
  122. package/browser/esm/C7FoKZbSzjvuY3UB.mjs +0 -43
  123. package/browser/esm/CCIJpHSbFPjTEF8S.mjs +0 -1665
  124. package/browser/esm/CHNPjJxb0GY_naLa.mjs +0 -25025
  125. package/browser/esm/CKHsU9LUNYowimxS.mjs +0 -1346
  126. package/browser/esm/Cm-m3bZh0V44y0li.mjs +0 -390
  127. package/browser/esm/D1e_ccSgcNXvWHgy.mjs +0 -151
  128. package/browser/esm/D9CdO3PtV12RnK8K.mjs +0 -1467
  129. package/browser/esm/D9x-Q8y57gePf-tE.mjs +0 -944
  130. package/browser/esm/DHhXutXh7b5LsU1m.mjs +0 -2346
  131. package/browser/esm/DamiTeQsSMP2Cwld.mjs +0 -58
  132. package/browser/esm/DhD48oFrbrnZ6Zg5.mjs +0 -13208
  133. package/browser/esm/Ln2ZalJgj1CiJJue.mjs +0 -50
  134. package/browser/esm/S9fgUO7h8YgZxoKH.mjs +0 -633
  135. package/browser/esm/qVAHcpq07IhtAaQc.mjs +0 -24
  136. package/browser/esm/xrzJ8ILZHb118Oyt.mjs +0 -41
  137. package/cdn/assets/2-xJlw77WsCoyz09.js +0 -24872
  138. package/cdn/assets/B-p1i2SNRMunPXCF.js +0 -43
  139. package/cdn/assets/B8Ja5DlyKAy8xfQD.js +0 -1365
  140. package/cdn/assets/BG3YTMAzNKPRGoLs.js +0 -50
  141. package/cdn/assets/BQYSD5Nb35y0WeeV.js +0 -421
  142. package/cdn/assets/BbzUpvQOkxsN-yIH.js +0 -2346
  143. package/cdn/assets/BqXO_cQhrMJu7JoQ.js +0 -3756
  144. package/cdn/assets/CCIJpHSbFPjTEF8S.js +0 -1665
  145. package/cdn/assets/CKHsU9LUNYowimxS.js +0 -1346
  146. package/cdn/assets/CWLJZwD2GVXljoWG.js +0 -46
  147. package/cdn/assets/Cm-m3bZh0V44y0li.js +0 -390
  148. package/cdn/assets/CtQlXGkNWgI-vtGy.js +0 -2178
  149. package/cdn/assets/DIGFi66CQPMV3HsL.js +0 -84
  150. package/cdn/assets/DK4S0DbayChkfTD6.js +0 -58
  151. package/cdn/assets/DQvsBz9F1GS_S7r9.js +0 -50
  152. package/cdn/assets/DTOgv_zwXSur-yCq.js +0 -151
  153. package/cdn/assets/DYZjOnD8WWQkCYuH.js +0 -944
  154. package/cdn/assets/DhD48oFrbrnZ6Zg5.js +0 -13208
  155. package/cdn/assets/DhyAyTCDkMBf392P.js +0 -21
  156. package/cdn/assets/P7HeVw5SHROLSWBz.js +0 -24
  157. package/cdn/assets/S4Z0SN8x6EltjsHT.js +0 -22
  158. package/cdn/assets/S9fgUO7h8YgZxoKH.js +0 -633
  159. package/cdn/assets/guYe4C_6pE93QsDV.js +0 -41
@@ -0,0 +1,58 @@
1
+ import { a } from "./DDW1WJ2IM_9ZUfKm.js";
2
+ import { r as n } from "./dk2teWHDODYNarJY.js";
3
+ import { ae as L, a1 as O, af as E, ag as M, S as h, V as A, D as V, B as o, ah as W, ai as k, ad as u, aj as q, ak as G, al as f, a3 as y, am as b, an as j } from "./Jhm2DAcrfAqiM-Y-.js";
4
+ /**
5
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.12
6
+ *
7
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
8
+ * License: The license can be found at https://www.sheetxl.com/license.
9
+ */
10
+ const Y = n.memo((w) => {
11
+ const { title: S, onHide: C, autoFocusSel: N = ".range-input input", context: R, notifier: l = L, command: r, commands: c, ...v } = w, [T, d] = n.useState(!1), [g, m] = n.useState(!1), x = n.useRef(null), [J, D] = n.useReducer((e) => e + 1, 0), [F, { width: K }] = O();
12
+ E(r);
13
+ const s = R ?? r.context(), t = s.table(), [B, H] = n.useState(() => t ? s.getNames().getRanges(t.getRange()) : null), I = n.useMemo(() => t?.getName() ?? "", [t]);
14
+ M(s.table(), { onAnchorCoordsChange(e) {
15
+ H(s.getNames().getRanges(e.getRange()));
16
+ }, onProtectedChange(e) {
17
+ D();
18
+ } });
19
+ const P = h((e) => {
20
+ s?.table().setName(e);
21
+ }, [s]), z = h((e) => {
22
+ s?.table().resize(e.at(0));
23
+ }, [s]);
24
+ let p = null;
25
+ return s.table() || (p = a.jsx("div", { style: { position: "absolute", top: "0", left: "0", width: "100%", height: "100%", opacity: 1, display: "flex", alignItems: "center", justifyItems: "center", justifyContent: "center", boxSizing: "border-box" }, children: a.jsx("div", { children: "No table selected" }) })), a.jsx(A, { ref: x, title: S ?? "Table Details", initialPosition: { y: "35" }, autoFocusSel: N, onHide: C, onFocus: () => d(!0), onBlur: (e) => {
26
+ x?.current?.contains(e.relatedTarget) || d(!1);
27
+ }, PaperProps: { elevation: T ? 3 : 1 }, ...v, children: a.jsxs(V, { dividers: !0, ref: F, sx: { display: "flex", flexDirection: "column", position: "relative", paddingLeft: (e) => e.spacing(1.5), paddingRight: (e) => e.spacing(1.5) }, children: [a.jsxs(o, { sx: { display: "flex", flexDirection: "column", transition: "opacity 60ms", opacity: s.table() ? 1 : 0 }, children: [a.jsx(o, { sx: { display: "flex", flexDirection: "row", gap: (e) => e.spacing(1) }, children: a.jsx(o, { sx: { display: "flex", flexDirection: "column", maxWidth: "100%", boxSizing: "border-box", paddingLeft: (e) => e.spacing(2), paddingRight: (e) => e.spacing(2) }, children: a.jsxs(o, { sx: { display: "flex", flexDirection: "column", alignItems: "center" }, children: [a.jsx(W, { formName: "name", defaultInput: I, value: t?.getName() ?? "No table", onChangeInput: P, onValidate: (e) => {
28
+ t && t.getName().toLowerCase() === e.toLowerCase() || s?.getNames().validateName(e);
29
+ }, disabled: t?.isProtected() ?? !0, onFocus: (e) => {
30
+ g || e.target?.select(), m(!0);
31
+ } }), a.jsx(k, { formName: "range", value: B, onChangeInput: z, resolvedAddress: s.getNames().getRanges.bind(s.getNames()), disabled: t?.isProtected() ?? !0, onFocus: (e) => {
32
+ g || e.target?.select(), m(!0);
33
+ } })] }) }) }), a.jsxs(o, { sx: { minHeight: "10px", flex: "1 1 100%", display: "flex", flexDirection: "column", gap: (e) => e.spacing(0.5), marginTop: (e) => e.spacing(1) }, children: [a.jsx(u, { orientation: "horizontal", sx: { marginTop: (e) => e.spacing(1.5), marginBottom: (e) => e.spacing(0.75) } }), a.jsx(q, { disabled: t?.isProtected(), styleOptions: t?.getStyleOptions() ?? null, onStyleOptionsChange: (e) => {
34
+ t.updateStyleOptions(e);
35
+ }, showHeaderRow: t?.getShowHeaders(), onShowHeaderRowChange: (e) => {
36
+ try {
37
+ t.setShowHeaders(e);
38
+ } catch (i) {
39
+ l.showError(i);
40
+ }
41
+ }, showTotalRow: t?.getShowTotals(), onShowTotalRowChange: (e) => {
42
+ try {
43
+ t.setShowTotals(e);
44
+ } catch (i) {
45
+ l.showError(i);
46
+ }
47
+ }, showFilterButton: t?.getFilter() ? t.getShowFilterButton() : null, onShowFilterButtonChange: (e) => {
48
+ try {
49
+ t.setShowFilterButton(e);
50
+ } catch (i) {
51
+ l.showError(i);
52
+ }
53
+ } }), a.jsx(o, { sx: { display: "flex", alignItems: "center", justifyContent: "center", flexDirection: "column", marginTop: (e) => e.spacing(2), marginBottom: (e) => e.spacing(1) }, children: a.jsx(G, { table: t, styles: s.styles(), bodyStyle: s.bodyStyle(), cellHeight: 30, isLive: !0 }) }), a.jsx(u, { orientation: "horizontal" }), a.jsxs(o, { sx: { display: "flex", flexDirection: "column", justifyContent: "center" }, children: [a.jsx(f, { variant: b.Menuitem, command: c.getCommand("convertTableToRange"), commandState: t, icon: y(a.jsx(j, {})) }), a.jsx(f, { variant: b.Menuitem, commandState: t, command: c.getCommand("deleteTable"), icon: y(a.jsx(j, {})) })] })] })] }), p] }) });
54
+ });
55
+ export {
56
+ Y as TableDetailsWindow,
57
+ Y as default
58
+ };
@@ -0,0 +1,46 @@
1
+ import { a as s } from "./DDW1WJ2IM_9ZUfKm.js";
2
+ import { r as n } from "./dk2teWHDODYNarJY.js";
3
+ import { S as x, s as L, B as W, F as b, T as O, a as p, v as r } from "./Jhm2DAcrfAqiM-Y-.js";
4
+ /**
5
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.12
6
+ *
7
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
8
+ * License: The license can be found at https://www.sheetxl.com/license.
9
+ */
10
+ const z = ["Ok", "Cancel"], V = n.memo((P) => {
11
+ const { initialHyperlink: o = null, initialDisplay: D = null, onUpdateHyperlink: f, context: i, onOption: h, onValidateOption: d, onDone: u, options: k = z, defaultOption: c = k?.[0], cancelOption: l = "Cancel", sx: F, ...v } = P, H = n.useMemo(() => (o ?? i?.()?.getHyperlink()) !== null, []), y = n.useMemo(() => {
12
+ let t = null, a = null;
13
+ o && (typeof o == "string" ? a = o : t = o);
14
+ const m = t ?? i?.()?.getHyperlink();
15
+ return { address: a ?? m?.getAddress() ?? "", textToDisplay: m?.getDisplayText() ?? "" };
16
+ }, [o, i]), [e, I] = n.useState(y.address), [g, j] = n.useState(() => {
17
+ const t = i?.().toTextUnformatted() ?? D;
18
+ return t === y.address ? "" : t;
19
+ }), [w, T] = n.useState(!1), M = n.useCallback((t) => {
20
+ j(t.target.value);
21
+ }, []), C = n.useCallback(async (t, a) => null, []), S = x(async (t) => {
22
+ t !== l && f?.(e === "" ? null : { address: e }, g), h?.(t, t === l, t === c), u?.();
23
+ }, [e, g, f, u, h, c, l]), B = x((t) => {
24
+ I(t.target.value), C(t.target.value, null);
25
+ }, [d]), $ = x(async (t) => {
26
+ let a = await Promise.resolve(d?.(t));
27
+ try {
28
+ a !== !1 && (a = await C(e, t));
29
+ } catch {
30
+ }
31
+ return a ?? !0;
32
+ }, [d]);
33
+ return s.jsx(L, { title: (H ? "Edit" : "Insert") + " Link", options: k, onDone: u, onOption: (t) => S(t), onValidateOption: $, defaultOption: c, cancelOption: l, autoFocusSel: ".autoFocus", sx: { width: "480px", ...F }, ...v, children: s.jsxs(W, { sx: { paddingTop: (t) => t.spacing(1), paddingBottom: (t) => t.spacing(0), rowGap: (t) => t.spacing(1), display: "flex", flexDirection: "column" }, children: [s.jsx(b, { sx: { paddingTop: (t) => t.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: s.jsx(O, { label: "Address", placeholder: "Enter a url or cell reference.", onFocus: (t) => {
34
+ w || t.target?.select(), T(!0);
35
+ }, sx: { "& .MuiFormHelperText-root": { marginTop: (t) => t.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { className: "autoFocus", spellCheck: !1, autoComplete: "off", sx: { paddingTop: (t) => t.spacing(1.25), paddingBottom: (t) => t.spacing(0.75), backgroundImage: `linear-gradient(${p("#fff", r(5))}, ${p("#fff", r(5))})` } } }, value: e, onChange: B, onContextMenu: (t) => {
36
+ t.stopPropagation();
37
+ } }) }), s.jsx(b, { sx: { paddingTop: (t) => t.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: s.jsx(O, { label: "Display Text", placeholder: e?.startsWith("#") ? e.substring(1) : e, onFocus: () => {
38
+ T(!0);
39
+ }, sx: { "& .MuiFormHelperText-root": { marginTop: (t) => t.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { spellCheck: !1, autoComplete: "off", sx: { paddingTop: (t) => t.spacing(1.25), paddingBottom: (t) => t.spacing(0.75), backgroundImage: `linear-gradient(${p("#fff", r(5))}, ${p("#fff", r(5))})` } } }, value: g, onChange: M, onContextMenu: (t) => {
40
+ t.stopPropagation();
41
+ } }) })] }) });
42
+ });
43
+ export {
44
+ V as HyperlinkDialog,
45
+ V as default
46
+ };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.10
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.12
3
3
  *
4
4
  * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
@@ -13,7 +13,7 @@ const i = { reactUrl: "https://esm.sh/react@19.1.0", reactJsxTransform: "https:/
13
13
  e.type = "importmap", e.textContent = JSON.stringify({ imports: { react: n, "react/jsx-runtime": a, "react-dom": s, "react-dom/client": c } }), document.head.appendChild(e), console.log("SheetXL: Import map injected:", e.textContent);
14
14
  }
15
15
  await new Promise((e) => setTimeout(e, 0));
16
- const o = await Promise.all([import("react"), import("react/jsx-runtime"), import("react-dom"), import("react-dom/client"), import("./CHNPjJxb0GY_naLa.mjs").then((e) => e.b7)]);
16
+ const o = await Promise.all([import("./dk2teWHDODYNarJY.js").then((e) => e.R), import("./DDW1WJ2IM_9ZUfKm.js").then((e) => e.j), import("./B3kbBB6oxKBErwzn.js").then((e) => e.i), import("./DfmaL8DmDaFAv8M_.js").then((e) => e.c), import("./Jhm2DAcrfAqiM-Y-.js").then((e) => e.ao)]);
17
17
  return console.log("SheetXL: Dependencies resolved:", o), { React: o[0], ReactJSXTransform: o[1], ReactDOM: o[2], ReactDOMClient: o[3], StudioMUI: o[4] };
18
18
  })(), r));
19
19
  export {
@@ -0,0 +1,41 @@
1
+ import { a as i } from "./DDW1WJ2IM_9ZUfKm.js";
2
+ import { r as n } from "./dk2teWHDODYNarJY.js";
3
+ import { t as e, q as $, s as q, B as z, F as E, T as R, a as O, b as W, K as y } from "./Jhm2DAcrfAqiM-Y-.js";
4
+ /**
5
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.12
6
+ *
7
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
8
+ * License: The license can be found at https://www.sheetxl.com/license.
9
+ */
10
+ const A = ["Input"], U = n.memo(n.forwardRef((w, T) => {
11
+ const { initialValue: F = "", onOption: I, onValidateOption: l, onInputOption: u, onValidateInputOption: p, onDone: c, inputProps: d, inputLabel: P, inputType: S, inputPlaceHolder: b, options: g = A, autoFocusSel: v = ".autoFocus", cancelOption: m, defaultOption: f = g?.[0], ...C } = w, [j, k] = n.useState(!1), [a, V] = n.useState(F), [B, D] = n.useState(""), [H, K] = n.useState(!0), s = e(async (t, o) => {
12
+ if (!p) return !0;
13
+ const r = await p?.(t, o);
14
+ D(r?.message ?? "");
15
+ const x = r?.valid ?? !0;
16
+ return K(x), x;
17
+ }, [p]), h = e(async (t) => {
18
+ u?.(a, t);
19
+ }, [a, u, c, I, m, f]), L = e(async (t) => {
20
+ t.keyCode === $.Enter && await s?.(a, null);
21
+ }, [a, h]), M = e((t) => {
22
+ V(t.target.value), s?.(t.target.value, null);
23
+ }, [l]), N = e(async (t) => {
24
+ let o = await s(a, t);
25
+ try {
26
+ o !== !1 && (o = await s(a, t));
27
+ } catch {
28
+ }
29
+ return o ?? !0;
30
+ }, [a, l]);
31
+ return i.jsx(q, { options: g, onDone: c, onOption: (t, o) => {
32
+ o || h(t);
33
+ }, onValidateOption: N, cancelOption: m, defaultOption: f, autoFocusSel: v, ref: T, ...C, children: i.jsx(z, { sx: { paddingTop: (t) => t.spacing(1), paddingBottom: (t) => t.spacing(0) }, children: i.jsx(E, { sx: { paddingTop: (t) => t.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: i.jsx(R, { onFocus: (t) => {
34
+ j || t.target?.select(), k(!0);
35
+ }, type: S, label: P, helperText: B || " ", sx: { width: "100%", "& .MuiFormHelperText-root": { marginTop: (t) => t.spacing(0.5), color: H ? void 0 : "error.main" } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { placeholder: b, spellCheck: !1, autoComplete: "off", ...d, className: W("autoFocus", d?.className), sx: { paddingTop: (t) => t.spacing(1.25), paddingBottom: (t) => t.spacing(0.75), backgroundImage: `linear-gradient(${O("#fff", y(5))}, ${O("#fff", y(5))})` } } }, value: a, onChange: M, onKeyDown: L, onContextMenu: (t) => {
36
+ t.stopPropagation();
37
+ } }) }) }) });
38
+ }));
39
+ export {
40
+ U as default
41
+ };