@sheetxl/studio-vanilla 0.3.4 → 0.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/cjs/-aNm3r-RpjcRRCbw.cjs +6 -0
- package/browser/cjs/6e91IXsvk9_k3W5c.cjs +6 -0
- package/browser/cjs/{BTgA_stiR3dZAHop.cjs → BLHbDre9R0bvyb9G.cjs} +2 -2
- package/browser/cjs/{BlYpCVX1NOGpcNB6.cjs → BN0MiwKQ8NjKXgue.cjs} +3 -3
- package/browser/cjs/BNtn_2pcq6Dd-2HL.cjs +11 -0
- package/browser/cjs/{D-I49Eh-SQg7zJYX.cjs → BW_fZwvTtMLqteuJ.cjs} +1 -1
- package/browser/cjs/{CdVKz1bz20BYztuB.cjs → Bg9KIoDuqtkhIYfN.cjs} +1 -1
- package/browser/cjs/{CpPM7Ir1EZB_8bER.cjs → BiiW2FlRZHxGIWso.cjs} +1 -1
- package/browser/cjs/{WPXWuf9j-uwazW31.cjs → Biyqj-Wu75uxLHv1.cjs} +2 -2
- package/browser/cjs/BwocMiKAPb8s__1Z.cjs +6 -0
- package/browser/cjs/{DzE824T4cXRcKowY.cjs → CdWBtYv7LuuDLPL2.cjs} +1 -1
- package/browser/cjs/CuY7mAREmYhHuYWx.cjs +6 -0
- package/browser/cjs/CvESC6HiL0-peppq.cjs +12 -0
- package/browser/cjs/{BDACVe5nzEmYknRm.cjs → Cxt39d6l0pu9k1vT.cjs} +8 -8
- package/browser/cjs/{CuldnUeQxpcu8oJ7.cjs → D7NgrO__M-IUmM8o.cjs} +1 -1
- package/browser/cjs/{BB5pxJh1jhHsvVZ1.cjs → DCWZ2ZkLp-Horeca.cjs} +1 -1
- package/browser/cjs/DDhq2nYMdw5b7wP6.cjs +301 -0
- package/browser/cjs/{BDmE5OFneHwyeeiD.cjs → DIawrhwQ7E_1l99b.cjs} +6 -6
- package/browser/cjs/{yZrSgyFKPqsiym7z.cjs → DKit140jXAUUSf-_.cjs} +2 -2
- package/browser/cjs/DKsZXMMHWKP9IZ4E.cjs +12 -0
- package/browser/cjs/DeAt9vyyaeB2vbxQ.cjs +6 -0
- package/browser/cjs/Dkl2t2DSaDxPbm2V.cjs +6 -0
- package/browser/cjs/Ya4f5p9go_UndgNy.cjs +6 -0
- package/browser/cjs/{46C8cTP5D1fDfsPs.cjs → hSI9QVPgIxqt3pXc.cjs} +1 -1
- package/browser/cjs/index.cjs +2 -2
- package/browser/cjs/qjPE6k7aYlu-R90s.cjs +6 -0
- package/browser/cjs/{DD0VHDU8F1FiLKcs.cjs → yvA5FY7oe6FILMqB.cjs} +1 -1
- package/{cdn/assets/CGUSbWH383tudMFu.js → browser/esm/BLsIMzjofsOnRFrU.mjs} +12 -12
- package/{cdn/assets/BY5dcSv5nxuvXMsr.js → browser/esm/BTQ-TGJnw7w1Y0CX.mjs} +13 -13
- package/{cdn/assets/CNhPYXS_v3a2ATBg.js → browser/esm/BdLAPrmXIfjGFhhA.mjs} +231 -231
- package/browser/esm/BsDYj6xix3mlXry2.mjs +46 -0
- package/browser/esm/{pxRv4ndPNkOMM_s3.mjs → Btk74VwCVJ1T5LQD.mjs} +13 -13
- package/browser/esm/{s8U6UEvd4LQsvEnH.mjs → C60KakDbde-A4anI.mjs} +1 -1
- package/browser/esm/{BfNo01-WwZl_5N1M.mjs → CAm14rTtmPL5-rvQ.mjs} +220 -219
- package/browser/esm/CLTP12OHGQ2k4_Kt.mjs +50 -0
- package/browser/esm/{qchlbvmOxrybWJep.mjs → CPWh2H15145LP-d5.mjs} +1 -1
- package/browser/esm/CYXzmWJtZn5OJVBF.mjs +24861 -0
- package/{cdn/assets/dQu9CDkkTpS5h580.js → browser/esm/ChMaIhqaEhF3SLLt.mjs} +8 -8
- package/browser/esm/{Dq1oxXMudxqdJaKZ.mjs → CntwHkPpskE88Ixu.mjs} +11 -10
- package/{cdn/assets/C-oc6cc0wXRVBFx2.js → browser/esm/CsVV_QnEl77BQM3V.mjs} +1 -1
- package/browser/esm/{CTdGamCv2VtpI05C.mjs → CvFAAktSd9TQK1h4.mjs} +1 -1
- package/browser/esm/{BjLCBG20KyjNKCpy.mjs → D0-tgawYa4KXYT2c.mjs} +2 -2
- package/browser/esm/{BXMZNx8rs4_V8pQL.mjs → D244UwY3qPC_LNc5.mjs} +2 -2
- package/{cdn/assets/Dl02UNFD2tNwtHQ9.js → browser/esm/DCuLWmzd9eLWgI03.mjs} +1 -1
- package/browser/esm/{C2Ik_RfF43fmFDeS.mjs → DDD5zfwNNPKuc_zZ.mjs} +1 -1
- package/browser/esm/{BNq1DlA_v8-hm8PQ.mjs → DFa_tXqv1VN1OZdv.mjs} +75 -74
- package/browser/esm/{CeWIrhJ_bsxOl7mw.mjs → DJxioSY-hxyM7dmk.mjs} +24 -23
- package/{cdn/assets/ct9ztJbQB16MJoyP.js → browser/esm/DdrICyX8Ead15N32.mjs} +7 -7
- package/browser/esm/Di2tNceI3NodSsgU.mjs +41 -0
- package/browser/esm/{BrWhLiIy81LKNSUX.mjs → Did46-x6ZVwk_-r-.mjs} +1 -1
- package/browser/esm/{DLJ1zBZE-WPdkpt2.mjs → Q1yWEkJBu4cVEF33.mjs} +132 -131
- package/browser/esm/index.mjs +2 -2
- package/{cdn/assets/RWhi_dOrWDICNt1t.js → browser/esm/mq5uPzTIc1x8unBP.mjs} +1 -1
- package/browser/esm/wziCLl5xvHu6Guu_.mjs +22 -0
- package/cdn/assets/{LxoKYdUqZ4Zgxjza.js → B41q92oKD_VR31Dd.js} +13 -13
- package/cdn/assets/{BMb4pCD8O5vK2p1B.js → BOl7blN8JotSzCHJ.js} +2 -2
- package/{browser/esm/Ddm9jggzrr5VJQ68.mjs → cdn/assets/Bs-psXrTRw1jFety.js} +13 -13
- package/cdn/assets/{COFTB6OufFls7NP1.js → BzptX9H_YCM2l0DE.js} +11 -10
- package/cdn/assets/{s8U6UEvd4LQsvEnH.js → C60KakDbde-A4anI.js} +1 -1
- package/cdn/assets/C8omEbSXHWI_wNjp.js +41 -0
- package/{browser/esm/CZRLp5H9dSrMEgaI.mjs → cdn/assets/CEXK9SXjFf1dGHZe.js} +12 -12
- package/cdn/assets/{qchlbvmOxrybWJep.js → CPWh2H15145LP-d5.js} +1 -1
- package/cdn/assets/C_E1C68wCcRpC6XN.js +46 -0
- package/cdn/assets/{BKDQtGZxRUUzBmnI.js → ClFGbVy7cnhMW-dO.js} +2 -2
- package/cdn/assets/{Be9YovX6b_0gKXs5.js → CoCIP7n4THmzOggq.js} +75 -74
- package/{browser/esm/C-oc6cc0wXRVBFx2.mjs → cdn/assets/CsVV_QnEl77BQM3V.js} +1 -1
- package/cdn/assets/{CTdGamCv2VtpI05C.js → CvFAAktSd9TQK1h4.js} +1 -1
- package/cdn/assets/{6tFlyQMvtppXfmuU.js → Cz33L9W3cdQckAL5.js} +24 -23
- package/{browser/esm/BoL2rsWK1YyT1PP7.mjs → cdn/assets/DBgbBl_3O65WhfWN.js} +8 -8
- package/{browser/esm/Dl02UNFD2tNwtHQ9.mjs → cdn/assets/DCuLWmzd9eLWgI03.js} +1 -1
- package/cdn/assets/{C2Ik_RfF43fmFDeS.js → DDD5zfwNNPKuc_zZ.js} +1 -1
- package/cdn/assets/{mAWImp_J2v8z8hbZ.js → DLYF-18qErpwF9Q-.js} +132 -131
- package/{browser/esm/Br4TnuxGRULZDhCA.mjs → cdn/assets/DXMyzCcyP7039z13.js} +231 -231
- package/{browser/esm/GbTp1_3jFZu0Ex24.mjs → cdn/assets/DdrICyX8Ead15N32.js} +7 -7
- package/cdn/assets/{BrWhLiIy81LKNSUX.js → Did46-x6ZVwk_-r-.js} +1 -1
- package/cdn/assets/{DYgFWlitgXmKdN_I.js → Dj3GhNedlKE9TeTn.js} +220 -219
- package/cdn/assets/F-RqJeKWiW4i5344.js +24708 -0
- package/cdn/assets/NHbXgEQMftGzY01r.js +50 -0
- package/cdn/assets/lM5it-aJgI7DLNH9.js +22 -0
- package/{browser/esm/RWhi_dOrWDICNt1t.mjs → cdn/assets/mq5uPzTIc1x8unBP.js} +1 -1
- package/cdn/index.js +2 -2
- package/cdn/loader.js +1 -1
- package/package.json +3 -2
- package/browser/cjs/0dkhOl0ItVZXnHg_.cjs +0 -6
- package/browser/cjs/7Xjct_4bBSU-vad1.cjs +0 -6
- package/browser/cjs/B2kFbeodTh3Gk-aQ.cjs +0 -6
- package/browser/cjs/B5UGK4AzAC9SjXJp.cjs +0 -6
- package/browser/cjs/B9kurj8mOePUlJX2.cjs +0 -6
- package/browser/cjs/BG8OR9VWCkyIRwrw.cjs +0 -6
- package/browser/cjs/BML8p6hKVpqMb-13.cjs +0 -124
- package/browser/cjs/BeGusiaaShhfh7Ch.cjs +0 -7
- package/browser/cjs/BgJ-surJf8jSxqmk.cjs +0 -6
- package/browser/cjs/BgJFVvwpAWB3ssLE.cjs +0 -6
- package/browser/cjs/Bi8tk3LAhLkM7IXm.cjs +0 -6
- package/browser/cjs/BnZdvx8z2BIDZv9J.cjs +0 -355
- package/browser/cjs/BvnUfF0WlIXumm-E.cjs +0 -6
- package/browser/cjs/BwGs6fp9j-iFwDlB.cjs +0 -32
- package/browser/cjs/C4JyilwtB4aWsWnG.cjs +0 -6
- package/browser/cjs/C8PUqW17bEbzJthE.cjs +0 -6
- package/browser/cjs/CBTWDt8vxgXfkDfh.cjs +0 -6
- package/browser/cjs/CJ29qM66PMBNE3G9.cjs +0 -6
- package/browser/cjs/CKtzkomrFnDVY5SY.cjs +0 -11
- package/browser/cjs/CLarA_vLTlgU3TCF.cjs +0 -13
- package/browser/cjs/CN8Y9NZjRCPl8CqY.cjs +0 -6
- package/browser/cjs/CNIPdrSO6Xr2gkt9.cjs +0 -6
- package/browser/cjs/CNkEdWYoHRiw_Uez.cjs +0 -6
- package/browser/cjs/CPFRW8nnIVWYeQYn.cjs +0 -12
- package/browser/cjs/CZih4fqvAIVbCVO4.cjs +0 -6
- package/browser/cjs/Cx3wCYZR6BKbOtgk.cjs +0 -6
- package/browser/cjs/Cx8xafhEESu639Ig.cjs +0 -6
- package/browser/cjs/CzqzVoUeKxH16SDC.cjs +0 -6
- package/browser/cjs/D-GDPxpVRx45cdpQ.cjs +0 -6
- package/browser/cjs/D50Wzp-4UIlO9uVc.cjs +0 -6
- package/browser/cjs/DB9rOzEP0g0ZGfBj.cjs +0 -6
- package/browser/cjs/DIeyUTfGkxwK6bdT.cjs +0 -15
- package/browser/cjs/DX_oDw_K4CB6Ej9i.cjs +0 -6
- package/browser/cjs/DcNRcLtSOkHAK_Mt.cjs +0 -6
- package/browser/cjs/Df8ZAsCgZ69F33-C.cjs +0 -6
- package/browser/cjs/DfCiN8VOEQt4cw-x.cjs +0 -12
- package/browser/cjs/DnkG5azaxDtt-73G.cjs +0 -6
- package/browser/cjs/Dr_HVAdkD1bM9yrW.cjs +0 -6
- package/browser/cjs/KbKjJCMErVEwKqoi.cjs +0 -6
- package/browser/cjs/Px_DbuQFWhjhPilq.cjs +0 -6
- package/browser/cjs/VmYEO_-N9Cn7JpZN.cjs +0 -6
- package/browser/cjs/c4HmqMqg3ugRd4gl.cjs +0 -1501
- package/browser/cjs/jmPMUQMT7KTdf9Sr.cjs +0 -6
- package/browser/cjs/zRbLzzCcfjQpsQ4j.cjs +0 -6
- package/browser/esm/0M23_yfYSvrAB5iY.mjs +0 -472
- package/browser/esm/2sPP8EL_OzSYDsKu.mjs +0 -10
- package/browser/esm/3SiPV9yNzSbQVINg.mjs +0 -10
- package/browser/esm/6CkscKSECxQpy0v6.mjs +0 -10
- package/browser/esm/94SRg1Gxbdr9B75m.mjs +0 -10
- package/browser/esm/B2I1Hudz2EIGw59h.mjs +0 -10
- package/browser/esm/B2fqssq7kMsGIg5g.mjs +0 -10
- package/browser/esm/BBBP9totA24zTbqh.mjs +0 -10
- package/browser/esm/BEYxIKe5B75ADXWP.mjs +0 -5582
- package/browser/esm/BIHHiMjUvXmWQ6w_.mjs +0 -10
- package/browser/esm/BYRVuU6FUEX6XBFW.mjs +0 -10
- package/browser/esm/Bq_HFm6_6_ycs_gE.mjs +0 -48519
- package/browser/esm/Bs6fth_bBoNrYDwE.mjs +0 -21
- package/browser/esm/C-QHwmJCeB3o-mzv.mjs +0 -3934
- package/browser/esm/C0U_bX9Hj97edVC9.mjs +0 -10
- package/browser/esm/CC8aO_pPT-tkJK_H.mjs +0 -10
- package/browser/esm/CGxu5NKxrEXE8QIe.mjs +0 -24
- package/browser/esm/CKHDKAaHkwZHUkoS.mjs +0 -22
- package/browser/esm/CbTDhJiJfpR6Btxp.mjs +0 -10
- package/browser/esm/CsUNORBKkJ7f3diG.mjs +0 -10
- package/browser/esm/CyYXh2ng_dKgHzbE.mjs +0 -29
- package/browser/esm/DRFsMc27LyLwGu56.mjs +0 -820
- package/browser/esm/DT09m4FGTu5N2LZJ.mjs +0 -10
- package/browser/esm/DUgyehn3re1zGQT5.mjs +0 -10
- package/browser/esm/DWOT4LkGXRN4FrJI.mjs +0 -10
- package/browser/esm/Dx1J8HBJdbrROP0v.mjs +0 -10
- package/browser/esm/Dz8v5MSOgkaH_zTd.mjs +0 -49
- package/browser/esm/F7oUe3nLrtaRYTas.mjs +0 -10
- package/browser/esm/FCkxbRy2XiqD3GdL.mjs +0 -41
- package/browser/esm/L5HOBW-m9BjZTUuw.mjs +0 -10
- package/browser/esm/XL9-bWRsLjEvW1Y0.mjs +0 -10
- package/browser/esm/ZXuNMFT0sYh8ui7O.mjs +0 -1575
- package/browser/esm/gX1gbnkwbpalR57F.mjs +0 -12
- package/browser/esm/im3UoVISx3VXhEFp.mjs +0 -46
- package/browser/esm/kagl0zcUDaK1IX_X.mjs +0 -10
- package/browser/esm/t7CffsKJY64LMXgS.mjs +0 -10
- package/browser/esm/x9wy-F3t5pNOvOIp.mjs +0 -425
- package/cdn/assets/2sPP8EL_OzSYDsKu.js +0 -10
- package/cdn/assets/3SiPV9yNzSbQVINg.js +0 -10
- package/cdn/assets/6CkscKSECxQpy0v6.js +0 -10
- package/cdn/assets/94SRg1Gxbdr9B75m.js +0 -10
- package/cdn/assets/B2I1Hudz2EIGw59h.js +0 -10
- package/cdn/assets/B2fqssq7kMsGIg5g.js +0 -10
- package/cdn/assets/BBBP9totA24zTbqh.js +0 -10
- package/cdn/assets/BD1S4plUUe1NPAqV.js +0 -425
- package/cdn/assets/BIHHiMjUvXmWQ6w_.js +0 -10
- package/cdn/assets/BPStm90FUYfOgibU.js +0 -41
- package/cdn/assets/BYRVuU6FUEX6XBFW.js +0 -10
- package/cdn/assets/Bs6fth_bBoNrYDwE.js +0 -21
- package/cdn/assets/BzlAT8jiYfNV3kGy.js +0 -820
- package/cdn/assets/C0U_bX9Hj97edVC9.js +0 -10
- package/cdn/assets/CC8aO_pPT-tkJK_H.js +0 -10
- package/cdn/assets/CG-YuIoWsi12_nu9.js +0 -22
- package/cdn/assets/CGxu5NKxrEXE8QIe.js +0 -24
- package/cdn/assets/CJOmvmuvywU33q7C.js +0 -3934
- package/cdn/assets/CbTDhJiJfpR6Btxp.js +0 -10
- package/cdn/assets/CsUNORBKkJ7f3diG.js +0 -10
- package/cdn/assets/DBq5E3hmvVO5ss1V.js +0 -5582
- package/cdn/assets/DT09m4FGTu5N2LZJ.js +0 -10
- package/cdn/assets/DUgyehn3re1zGQT5.js +0 -10
- package/cdn/assets/DWOT4LkGXRN4FrJI.js +0 -10
- package/cdn/assets/Det1P4Jrl9aZHFGe.js +0 -472
- package/cdn/assets/DjHCn_TmfObC_aJ1.js +0 -46
- package/cdn/assets/Dt3qIbvMvgQhNgeR.js +0 -1575
- package/cdn/assets/Dx1J8HBJdbrROP0v.js +0 -10
- package/cdn/assets/F7oUe3nLrtaRYTas.js +0 -10
- package/cdn/assets/L5HOBW-m9BjZTUuw.js +0 -10
- package/cdn/assets/U_ihCP2tbaRnqD2g.js +0 -48366
- package/cdn/assets/XL9-bWRsLjEvW1Y0.js +0 -10
- package/cdn/assets/Z4Ov3rzhXnezd-gU.js +0 -29
- package/cdn/assets/dR_uwa9znq6_hDmB.js +0 -49
- package/cdn/assets/gX1gbnkwbpalR57F.js +0 -12
- package/cdn/assets/kagl0zcUDaK1IX_X.js +0 -10
- package/cdn/assets/t7CffsKJY64LMXgS.js +0 -10
package/browser/esm/index.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "react";
|
|
2
2
|
import "react/jsx-runtime";
|
|
3
3
|
import "react-dom/client";
|
|
4
|
-
import {
|
|
4
|
+
import { b6 as i } from "./CYXzmWJtZn5OJVBF.mjs";
|
|
5
5
|
/**
|
|
6
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
6
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
7
7
|
*
|
|
8
8
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
9
9
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import C, { memo as ne, useState as _, useRef as m, useCallback as re, useEffect as S } from "react";
|
|
2
2
|
/**
|
|
3
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
3
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
4
4
|
*
|
|
5
5
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
6
6
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as t, jsxs as N } from "react/jsx-runtime";
|
|
2
|
+
import { memo as T, useState as i, useCallback as k } from "react";
|
|
3
|
+
import { t as w, m as j, B as v, aP as y, at as B, au as F } from "./CYXzmWJtZn5OJVBF.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
6
|
+
*
|
|
7
|
+
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
8
|
+
* License: The license can be found at https://www.sheetxl.com/license.
|
|
9
|
+
*/
|
|
10
|
+
const H = ["Ok", "Cancel"], A = T((u) => {
|
|
11
|
+
const { tableOptions: e, context: p, onOption: c, onValidateOption: I, onDone: r, options: d = H, defaultOption: o = d?.[0], cancelOption: s = "Cancel", sx: m, ...h } = u, [x, O] = i(!1), [n, b] = i(() => e?.hasHeader ?? !1), [l, f] = i(() => e?.ranges ?? null), C = w((a) => {
|
|
12
|
+
const g = { ...e, hasHeader: n, ranges: l };
|
|
13
|
+
c?.(a, a === s, a === o), r?.({ option: a, tableOptions: g });
|
|
14
|
+
}, [r, c, o, s, n, l, e]), D = k(async (a, g) => null, []);
|
|
15
|
+
return t(j, { title: "Insert Table", options: d, onDone: C, onValidateOption: D, defaultOption: o, cancelOption: s, autoFocusSel: ".range-input input", sx: { width: "360px", ...m }, ...h, children: N(v, { sx: { paddingTop: (a) => a.spacing(1), paddingBottom: (a) => a.spacing(0), rowGap: (a) => a.spacing(1), display: "flex", flexDirection: "column" }, children: [t(y, { formName: "range", value: l, onChangeInput: (a) => f(a), resolvedAddress: p.getNames().getRanges.bind(p.getNames()), onFocus: (a) => {
|
|
16
|
+
x || a.target?.select(), O(!0);
|
|
17
|
+
} }), t(B, { control: t(F, { checked: n, onChange: () => b(!n) }), label: "Table has headers", labelPlacement: "end" })] }) });
|
|
18
|
+
});
|
|
19
|
+
export {
|
|
20
|
+
A as TableNewDialog,
|
|
21
|
+
A as default
|
|
22
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Workbook as y, IRange as C } from "@sheetxl/sdk";
|
|
2
2
|
/**
|
|
3
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
3
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
4
4
|
*
|
|
5
5
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
6
6
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
7
7
|
*/
|
|
8
8
|
const k = async (a, p) => {
|
|
9
|
-
const { trimLeadingBlankRow: i = !0, trimLeadingBlankColumn: u = !0, excludeHidden: h = !1, sheetKey:
|
|
9
|
+
const { trimLeadingBlankRow: i = !0, trimLeadingBlankColumn: u = !0, excludeHidden: h = !1, sheetKey: r = null, papaParseConfig: m = {} } = p || {}, f = await import("./CsVV_QnEl77BQM3V.js").then((s) => s.p);
|
|
10
10
|
if (!a) throw new Error("workbook must be specified");
|
|
11
11
|
let t = null;
|
|
12
|
-
if (
|
|
12
|
+
if (r === null ? t = a.getSelectedSheet() : typeof r == "number" ? t = a.getSheets().search()[r] : typeof r == "string" && (t = a.getSheets().getByName(r)), !t) throw new Error("invalid sheetKey specified");
|
|
13
13
|
let c = null;
|
|
14
14
|
const d = [];
|
|
15
15
|
let e = null, n = t.getUsedRange({ excludeHidden: h });
|
|
@@ -24,23 +24,23 @@ const k = async (a, p) => {
|
|
|
24
24
|
const S = x.toTextUnformatted() ?? "";
|
|
25
25
|
e.push(S);
|
|
26
26
|
}, { includeEmpty: !0, address: null }), e && d.push(e);
|
|
27
|
-
const
|
|
27
|
+
const o = { ...m }, g = f.unparse(d, o);
|
|
28
28
|
return new TextEncoder().encode(g);
|
|
29
|
-
},
|
|
30
|
-
const { papaParseConfig: i, setValuesOptions: u, constructorOptions: h } = p ?? {},
|
|
29
|
+
}, R = async (a, p) => {
|
|
30
|
+
const { papaParseConfig: i, setValuesOptions: u, constructorOptions: h } = p ?? {}, r = await import("./CsVV_QnEl77BQM3V.js").then((o) => o.p), m = new TextDecoder().decode(a);
|
|
31
31
|
let f = -1;
|
|
32
32
|
const t = new y(h), c = t.getSelectedSheet().getEntireRange().startIncrementalUpdates({ orientation: C.Orientation.Row }), d = p?.onProgress;
|
|
33
33
|
let e = 0;
|
|
34
|
-
const n = { ...i, transform: (
|
|
35
|
-
i?.transform && (
|
|
34
|
+
const n = { ...i, transform: (o, g) => {
|
|
35
|
+
i?.transform && (o = i.transform(o, g));
|
|
36
36
|
const s = g;
|
|
37
37
|
s === 0 && f++;
|
|
38
|
-
let l =
|
|
39
|
-
return c.pushAt(f, s, l), e++, e % 1e5 == 0 && d?.(e),
|
|
38
|
+
let l = o ?? "";
|
|
39
|
+
return c.pushAt(f, s, l), e++, e % 1e5 == 0 && d?.(e), o;
|
|
40
40
|
} };
|
|
41
|
-
return
|
|
41
|
+
return r.parse(m, n).data, c.apply({ textParser: !0, ...u }), t;
|
|
42
42
|
};
|
|
43
43
|
export {
|
|
44
|
-
|
|
44
|
+
R as fromBufferCSV,
|
|
45
45
|
k as toBufferCSV
|
|
46
46
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as z, jsxs as lt } from "react/jsx-runtime";
|
|
2
2
|
import k, { memo as es, useState as pe, useCallback as de, useLayoutEffect as rs, PureComponent as mt, Component as _t, isValidElement as ns } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { D as os, E as as, c as is, B as us, I as Su, _ as ss, w as xt } from "./F-RqJeKWiW4i5344.js";
|
|
4
4
|
/**
|
|
5
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
6
6
|
*
|
|
7
7
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
8
8
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { jsx as a, jsxs as s } from "react/jsx-runtime";
|
|
2
|
-
import { memo as O, useState as r, useRef as
|
|
3
|
-
import {
|
|
2
|
+
import { memo as O, useState as r, useRef as M, useReducer as A, useMemo as E } from "react";
|
|
3
|
+
import { aL as W, V, aM as k, aN as Q, t as x, aA as q, aB as G, B as n, aO as J, aP as K, ak as f, aQ as U, aR as X, ag as y, ah as b, ai as w, aS as S } from "./F-RqJeKWiW4i5344.js";
|
|
4
4
|
/**
|
|
5
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
6
6
|
*
|
|
7
7
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
8
8
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
9
9
|
*/
|
|
10
10
|
const te = O((C) => {
|
|
11
|
-
const { title: N, onHide:
|
|
12
|
-
|
|
13
|
-
const o = T ?? c.context(), t = o.table(), [
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
const { title: N, onHide: R, autoFocusSel: v = ".range-input input", context: T, notifier: l = W, command: c, commands: d, ...D } = C, [F, g] = r(!1), [m, p] = r(!1), h = M(null), [Y, B] = A((e) => e + 1, 0), [H, { width: Z }] = V();
|
|
12
|
+
k(c);
|
|
13
|
+
const o = T ?? c.context(), t = o.table(), [P, I] = r(() => t ? o.getNames().getRanges(t.getRange()) : null), j = E(() => t?.getName() ?? "", [t]);
|
|
14
|
+
Q(o.table(), { onAnchorCoordsChange(e) {
|
|
15
|
+
I(o.getNames().getRanges(e.getRange()));
|
|
16
16
|
}, onProtectedChange(e) {
|
|
17
17
|
B();
|
|
18
18
|
} });
|
|
@@ -22,15 +22,15 @@ const te = O((C) => {
|
|
|
22
22
|
o?.table().resize(e.at(0));
|
|
23
23
|
}, [o]);
|
|
24
24
|
let u = null;
|
|
25
|
-
return o.table() || (u = a("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("div", { children: "No table selected" }) })), a(
|
|
25
|
+
return o.table() || (u = a("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("div", { children: "No table selected" }) })), a(q, { title: N ?? "Table Details", initialPosition: { y: "35" }, autoFocusSel: v, refWindow: h, onHide: R, onFocus: () => g(!0), onBlur: (e) => {
|
|
26
26
|
h?.current?.contains(e.relatedTarget) || g(!1);
|
|
27
|
-
}, PaperProps: { elevation: F ? 3 : 1 }, ...D, children: s(
|
|
27
|
+
}, PaperProps: { elevation: F ? 3 : 1 }, ...D, children: s(G, { dividers: !0, ref: H, sx: { display: "flex", flexDirection: "column", position: "relative", paddingLeft: (e) => e.spacing(1.5), paddingRight: (e) => e.spacing(1.5) }, children: [s(n, { sx: { display: "flex", flexDirection: "column", transition: "opacity 60ms", opacity: o.table() ? 1 : 0 }, children: [a(n, { sx: { display: "flex", flexDirection: "row", gap: (e) => e.spacing(1) }, children: a(n, { sx: { display: "flex", flexDirection: "column", maxWidth: "100%", boxSizing: "border-box", paddingLeft: (e) => e.spacing(2), paddingRight: (e) => e.spacing(2) }, children: s(n, { sx: { display: "flex", flexDirection: "column", alignItems: "center" }, children: [a(J, { formName: "name", defaultInput: j, value: t?.getName() ?? "No table", onChangeInput: L, onValidate: (e) => {
|
|
28
28
|
t && t.getName().toLowerCase() === e.toLowerCase() || o?.getNames().validateName(e);
|
|
29
29
|
}, disabled: t?.isProtected() ?? !0, onFocus: (e) => {
|
|
30
30
|
m || e.target?.select(), p(!0);
|
|
31
|
-
} }), a(
|
|
31
|
+
} }), a(K, { formName: "range", value: P, onChangeInput: z, resolvedAddress: o.getNames().getRanges.bind(o.getNames()), disabled: t?.isProtected() ?? !0, onFocus: (e) => {
|
|
32
32
|
m || e.target?.select(), p(!0);
|
|
33
|
-
} })] }) }) }), s(n, { sx: { minHeight: "10px", flex: "1 1 100%", display: "flex", flexDirection: "column", gap: (e) => e.spacing(0.5), marginTop: (e) => e.spacing(1) }, children: [a(
|
|
33
|
+
} })] }) }) }), s(n, { sx: { minHeight: "10px", flex: "1 1 100%", display: "flex", flexDirection: "column", gap: (e) => e.spacing(0.5), marginTop: (e) => e.spacing(1) }, children: [a(f, { orientation: "horizontal", sx: { marginTop: (e) => e.spacing(1.5), marginBottom: (e) => e.spacing(0.75) } }), a(U, { disabled: t?.isProtected(), styleOptions: t?.getStyleOptions() ?? null, onStyleOptionsChange: (e) => {
|
|
34
34
|
t.updateStyleOptions(e);
|
|
35
35
|
}, showHeaderRow: t?.getShowHeaders(), onShowHeaderRowChange: (e) => {
|
|
36
36
|
try {
|
|
@@ -50,7 +50,7 @@ const te = O((C) => {
|
|
|
50
50
|
} catch (i) {
|
|
51
51
|
l.showError(i);
|
|
52
52
|
}
|
|
53
|
-
} }), a(n, { sx: { display: "flex", alignItems: "center", justifyContent: "center", flexDirection: "column", marginTop: (e) => e.spacing(2), marginBottom: (e) => e.spacing(1) }, children: a(X, { table: t, styles: o.styles(), bodyStyle: o.bodyStyle(), cellHeight: 30, isLive: !0 }) }), a(
|
|
53
|
+
} }), a(n, { sx: { display: "flex", alignItems: "center", justifyContent: "center", flexDirection: "column", marginTop: (e) => e.spacing(2), marginBottom: (e) => e.spacing(1) }, children: a(X, { table: t, styles: o.styles(), bodyStyle: o.bodyStyle(), cellHeight: 30, isLive: !0 }) }), a(f, { orientation: "horizontal" }), s(n, { sx: { display: "flex", flexDirection: "column", justifyContent: "center" }, children: [a(y, { variant: w.Menuitem, command: d.getCommand("convertTableToRange"), commandState: t, icon: b(a(S, {})) }), a(y, { variant: w.Menuitem, commandState: t, command: d.getCommand("deleteTable"), icon: b(a(S, {})) })] })] })] }), u] }) });
|
|
54
54
|
});
|
|
55
55
|
export {
|
|
56
56
|
te as TableDetailsWindow,
|
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import { jsx as n, jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import {
|
|
1
|
+
import { jsx as n, jsxs as h } from "react/jsx-runtime";
|
|
2
|
+
import { useState as C } from "react";
|
|
3
|
+
import { Sort as a, IRange as r } from "@sheetxl/sdk";
|
|
4
|
+
import { t as O, m as S, B as g, at as s, au as l } from "./F-RqJeKWiW4i5344.js";
|
|
4
5
|
/**
|
|
5
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
6
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
6
7
|
*
|
|
7
8
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
8
9
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
9
10
|
*/
|
|
10
|
-
const
|
|
11
|
-
const [t, o] =
|
|
11
|
+
const D = ({ range: m, options: c, cell: p, onDone: d, ...u }) => {
|
|
12
|
+
const [t, o] = C(c ?? a.DefaultRangeOptions), v = O((e) => {
|
|
12
13
|
let i = null;
|
|
13
14
|
e === "Sort" && (i = { ...c, options: t }), d?.(i);
|
|
14
15
|
}, [t, d, c]);
|
|
15
|
-
return n(
|
|
16
|
+
return n(S, { title: "Sort", options: ["Sort", "Cancel"], onDone: v, ...u, children: h(g, { sx: { display: "flex", flexDirection: "column" }, children: [n(s, { control: n(l, { checked: !t.reverse, onChange: () => o((e) => ({ ...e, reverse: !e.reverse })) }), label: "Is Ascending", labelPlacement: "end" }), n(s, { control: n(l, { checked: t.hasHeader, onChange: () => o((e) => ({ ...e, hasHeader: !e.hasHeader })) }), label: "Has Header", labelPlacement: "end" }), n(s, { control: n(l, { checked: t.collatorOptions?.sensitivity === a.CaseSensitiveOptions.sensitivity, onChange: () => o((e) => ({ ...e, collatorOptions: t.collatorOptions?.sensitivity === a.CaseSensitiveOptions.sensitivity ? a.CaseInsensitiveOptions : a.CaseSensitiveOptions })) }), label: "Case Sensitive", labelPlacement: "end" }), n(s, { control: n(l, { checked: t.orientation === r.Orientation.Row, onChange: () => o((e) => {
|
|
16
17
|
const i = e.orientation === r.Orientation.Row ? r.Orientation.Column : r.Orientation.Row;
|
|
17
|
-
return { ...
|
|
18
|
+
return { ...m.getDefaultSortCriteria(i, p).options, includeHidden: e.includeHidden, reverse: e.reverse, orientation: i };
|
|
18
19
|
}) }), label: "Row Sort", labelPlacement: "end" }), n(s, { control: n(l, { checked: t.includeHidden, onChange: () => o((e) => ({ ...e, includeHidden: !e.includeHidden })) }), label: "Include Hidden", labelPlacement: "end" })] }) });
|
|
19
20
|
};
|
|
20
21
|
export {
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
D as SortDialog,
|
|
23
|
+
D as default
|
|
23
24
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
2
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
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.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { memo as j, forwardRef as z, useState as s } from "react";
|
|
3
|
+
import { T as n, s as E, m as G, B as K, F as R, a as W, b as x, X, G as y } from "./F-RqJeKWiW4i5344.js";
|
|
4
|
+
/**
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
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 q = ["Input"], Y = j(z((w, A) => {
|
|
11
|
+
const { initialValue: T = "", onOption: F, onValidateOption: r, onInputOption: l, onValidateInputOption: p, onDone: u, inputProps: c, inputLabel: I, inputType: P, inputPlaceHolder: b, options: d = q, autoFocusSel: v = ".autoFocus", cancelOption: m, defaultOption: g = d?.[0], ...C } = w, [k, V] = s(!1), [o, B] = s(T), [D, S] = s(""), [H, L] = s(!0), e = n(async (a, t) => {
|
|
12
|
+
if (!p) return !0;
|
|
13
|
+
const h = await p?.(a, t);
|
|
14
|
+
S(h?.message ?? "");
|
|
15
|
+
const O = h?.valid ?? !0;
|
|
16
|
+
return L(O), O;
|
|
17
|
+
}, [p]), f = n(async (a) => {
|
|
18
|
+
l?.(o, a);
|
|
19
|
+
}, [o, l, u, F, m, g]), M = n(async (a) => {
|
|
20
|
+
a.keyCode === E.Enter && await e?.(o, null);
|
|
21
|
+
}, [o, f]), N = n((a) => {
|
|
22
|
+
B(a.target.value), e?.(a.target.value, null);
|
|
23
|
+
}, [r]), $ = n(async (a) => {
|
|
24
|
+
let t = await e(o, a);
|
|
25
|
+
try {
|
|
26
|
+
t !== !1 && (t = await e(o, a));
|
|
27
|
+
} catch {
|
|
28
|
+
}
|
|
29
|
+
return t ?? !0;
|
|
30
|
+
}, [o, r]);
|
|
31
|
+
return i(G, { options: d, onDone: u, onOption: (a, t) => {
|
|
32
|
+
t || f(a);
|
|
33
|
+
}, onValidateOption: $, cancelOption: m, defaultOption: g, autoFocusSel: v, ...C, children: i(K, { sx: { paddingTop: (a) => a.spacing(1), paddingBottom: (a) => a.spacing(0) }, children: i(R, { sx: { paddingTop: (a) => a.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: i(W, { onFocus: (a) => {
|
|
34
|
+
k || a.target?.select(), V(!0);
|
|
35
|
+
}, type: P, label: I, helperText: D || " ", sx: { width: "100%", "& .MuiFormHelperText-root": { marginTop: (a) => a.spacing(0.5), color: H ? void 0 : "error.main" } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { placeholder: b, spellCheck: !1, autoComplete: "off", ...c, className: X("autoFocus", c?.className), sx: { paddingTop: (a) => a.spacing(1.25), paddingBottom: (a) => a.spacing(0.75), backgroundImage: `linear-gradient(${x("#fff", y(5))}, ${x("#fff", y(5))})` } } }, value: o, onChange: N, onKeyDown: M, onContextMenu: (a) => {
|
|
36
|
+
a.stopPropagation();
|
|
37
|
+
} }) }) }) });
|
|
38
|
+
}));
|
|
39
|
+
export {
|
|
40
|
+
Y as default
|
|
41
|
+
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsx as d, jsxs as k } from "react/jsx-runtime";
|
|
2
2
|
import { memo as E, useMemo as V, useState as p, useCallback as h } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { t as u, m as L, B as S, aO as A, aP as G } from "./F-RqJeKWiW4i5344.js";
|
|
4
4
|
/**
|
|
5
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
6
6
|
*
|
|
7
7
|
* (C) 2025-present SheetXL Inc. & Michael T. Ford
|
|
8
8
|
* License: The license can be found at https://www.sheetxl.com/license.
|
|
9
9
|
*/
|
|
10
|
-
const M = ["Ok", "Cancel"],
|
|
11
|
-
const { value: a = null, context: t, onOption: c, onValidateOption:
|
|
10
|
+
const M = ["Ok", "Cancel"], z = E((C) => {
|
|
11
|
+
const { value: a = null, context: t, onOption: c, onValidateOption: P, onDone: m, onUpdate: g, options: x = M, defaultOption: f = x?.[0], cancelOption: N = "Cancel", sx: R, ...v } = C, y = V(() => t?.getNames().findValidName("Range1"), []), i = V(() => {
|
|
12
12
|
if (!a) return !0;
|
|
13
|
-
}, []), [n,
|
|
13
|
+
}, []), [n, w] = p({ displayText: a?.getName() ?? y, errorText: null }), [l, D] = p({ displayValue: a?.getRanges() ?? t?.selection() ?? null, errorText: null }), [T, O] = p(!1), F = h(async (e) => !n.errorText && !l.errorText, [t]), B = u((e, s, r) => {
|
|
14
14
|
if (!s) {
|
|
15
15
|
let o = null;
|
|
16
16
|
i ? o = t?.getNames().addReference(n?.displayText, l?.displayValue, !1) : (a.getType() === "reference" && a.doBatch(() => {
|
|
@@ -18,26 +18,26 @@ const M = ["Ok", "Cancel"], H = E((C) => {
|
|
|
18
18
|
}, `Edit Named '${n?.displayText}'`), o = a), o && (o.select(), g(o, i));
|
|
19
19
|
}
|
|
20
20
|
c?.(e, s, r), m?.();
|
|
21
|
-
}, [t, n, l, m, c, f, N, g]),
|
|
21
|
+
}, [t, n, l, m, c, f, N, g]), I = u((e) => {
|
|
22
22
|
let s = null;
|
|
23
23
|
try {
|
|
24
24
|
t?.getNames().validateName(e);
|
|
25
25
|
} catch (r) {
|
|
26
26
|
s = r.message;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
}, []),
|
|
28
|
+
w({ displayText: e, errorText: s });
|
|
29
|
+
}, []), b = u((e) => {
|
|
30
30
|
a && a.getName().toLowerCase() === e.toLowerCase() || t?.getNames().validateName(e);
|
|
31
31
|
}, [t, a]), j = h((e) => {
|
|
32
|
-
|
|
32
|
+
D({ displayValue: e ?? null, errorText: null });
|
|
33
33
|
}, []);
|
|
34
|
-
return d(L, { title: (i ? "Define" : "Edit") + " Range", options: x, onOption:
|
|
34
|
+
return d(L, { title: (i ? "Define" : "Edit") + " Range", options: x, onOption: B, onValidateOption: F, defaultOption: f, cancelOption: N, autoFocusSel: ".autoFocus", sx: { width: "460px", ...R }, ...v, children: k(S, { sx: { paddingTop: (e) => e.spacing(1), paddingBottom: (e) => e.spacing(0), rowGap: (e) => e.spacing(1), range: "flex", flexDirection: "column" }, children: [d(A, { formName: "name", defaultInput: y, value: n.displayText, onChangeInput: I, onValidate: b, onFocus: (e) => {
|
|
35
35
|
T || e.target?.select(), O(!0);
|
|
36
36
|
} }), d(G, { formName: "range", value: l.displayValue, onChangeInput: j, resolvedAddress: t.getNames().getRanges.bind(t.getNames()), onFocus: (e) => {
|
|
37
37
|
T || e.target?.select(), O(!0);
|
|
38
38
|
} })] }) });
|
|
39
39
|
});
|
|
40
40
|
export {
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
z as NamedReferenceDialog,
|
|
42
|
+
z as default
|
|
43
43
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
2
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
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.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx as o, jsxs as A } from "react/jsx-runtime";
|
|
2
|
+
import { memo as E, useMemo as b, useState as g, useCallback as O } from "react";
|
|
3
|
+
import { t as m, m as S, B as U, F as P, a as D, b as l, ay as p } from "./F-RqJeKWiW4i5344.js";
|
|
4
|
+
/**
|
|
5
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
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 V = ["Ok", "Cancel"], J = E((F) => {
|
|
11
|
+
const { initialHyperlink: n = null, initialDisplay: H = null, onUpdateHyperlink: f, context: s, onOption: x, onValidateOption: r, onDone: d, options: h = V, defaultOption: c = h?.[0], cancelOption: i = "Cancel", sx: I, ...v } = F, w = b(() => (n ?? s?.()?.getHyperlink()) !== null, []), y = b(() => {
|
|
12
|
+
let a = null, t = null;
|
|
13
|
+
n && (typeof n == "string" ? t = n : a = n);
|
|
14
|
+
const C = a ?? s?.()?.getHyperlink();
|
|
15
|
+
return { address: t ?? C?.getAddress() ?? "", textToDisplay: C?.getDisplayText() ?? "" };
|
|
16
|
+
}, [n, s]), [e, M] = g(y.address), [u, B] = g(() => {
|
|
17
|
+
const a = s?.().toTextUnformatted() ?? H;
|
|
18
|
+
return a === y.address ? "" : a;
|
|
19
|
+
}), [$, k] = g(!1), L = O((a) => {
|
|
20
|
+
B(a.target.value);
|
|
21
|
+
}, []), T = O(async (a, t) => null, []), W = m(async (a) => {
|
|
22
|
+
a !== i && f?.(e === "" ? null : { address: e }, u), x?.(a, a === i, a === c), d?.();
|
|
23
|
+
}, [e, u, f, d, x, c, i]), j = m((a) => {
|
|
24
|
+
M(a.target.value), T(a.target.value, null);
|
|
25
|
+
}, [r]), z = m(async (a) => {
|
|
26
|
+
let t = await Promise.resolve(r?.(a));
|
|
27
|
+
try {
|
|
28
|
+
t !== !1 && (t = await T(e, a));
|
|
29
|
+
} catch {
|
|
30
|
+
}
|
|
31
|
+
return t ?? !0;
|
|
32
|
+
}, [r]);
|
|
33
|
+
return o(S, { title: (w ? "Edit" : "Insert") + " Link", options: h, onDone: d, onOption: (a) => W(a), onValidateOption: z, defaultOption: c, cancelOption: i, autoFocusSel: ".autoFocus", sx: { width: "480px", ...I }, ...v, children: A(U, { sx: { paddingTop: (a) => a.spacing(1), paddingBottom: (a) => a.spacing(0), rowGap: (a) => a.spacing(1), display: "flex", flexDirection: "column" }, children: [o(P, { sx: { paddingTop: (a) => a.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: o(D, { label: "Address", placeholder: "Enter a url or cell reference.", onFocus: (a) => {
|
|
34
|
+
$ || a.target?.select(), k(!0);
|
|
35
|
+
}, sx: { "& .MuiFormHelperText-root": { marginTop: (a) => a.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { className: "autoFocus", spellCheck: !1, autoComplete: "off", sx: { paddingTop: (a) => a.spacing(1.25), paddingBottom: (a) => a.spacing(0.75), backgroundImage: `linear-gradient(${l("#fff", p(5))}, ${l("#fff", p(5))})` } } }, value: e, onChange: j, onContextMenu: (a) => {
|
|
36
|
+
a.stopPropagation();
|
|
37
|
+
} }) }), o(P, { sx: { paddingTop: (a) => a.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: o(D, { label: "Display Text", placeholder: e?.startsWith("#") ? e.substring(1) : e, onFocus: () => {
|
|
38
|
+
k(!0);
|
|
39
|
+
}, sx: { "& .MuiFormHelperText-root": { marginTop: (a) => a.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { spellCheck: !1, autoComplete: "off", sx: { paddingTop: (a) => a.spacing(1.25), paddingBottom: (a) => a.spacing(0.75), backgroundImage: `linear-gradient(${l("#fff", p(5))}, ${l("#fff", p(5))})` } } }, value: u, onChange: L, onContextMenu: (a) => {
|
|
40
|
+
a.stopPropagation();
|
|
41
|
+
} }) })] }) });
|
|
42
|
+
});
|
|
43
|
+
export {
|
|
44
|
+
J as HyperlinkDialog,
|
|
45
|
+
J as default
|
|
46
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.
|
|
2
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.3.5
|
|
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("./
|
|
16
|
+
const o = await Promise.all([import("react"), import("react/jsx-runtime"), import("react-dom"), import("react-dom/client"), import("./F-RqJeKWiW4i5344.js").then((e) => e.b6)]);
|
|
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 {
|