@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,439 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.0.0
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ /**
8
+ * @license @sheetxl/studio-mui - Studio - Spreadsheet UI built with SheetXL SDK using React & MUI. - v0.0.0
9
+ *
10
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
11
+ * License: The license can be found at https://www.sheetxl.com/license.
12
+ */
13
+ /**
14
+ * @license @sheetxl/io - IO - Import/Export Libraries for SheetXL. - v0.0.0
15
+ *
16
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
17
+ * License: The license can be found at https://www.sheetxl.com/license.
18
+ */
19
+ var ct, pt = { exports: {} };
20
+ /* @license
21
+ Papa Parse
22
+ v5.5.3
23
+ https://github.com/mholt/PapaParse
24
+ License: MIT
25
+ */
26
+ const _t = function(Y, Q) {
27
+ for (var b = 0; b < Q.length; b++) {
28
+ const P = Q[b];
29
+ if (typeof P != "string" && !Array.isArray(P)) {
30
+ for (const B in P) if (B !== "default" && !(B in Y)) {
31
+ const J = Object.getOwnPropertyDescriptor(P, B);
32
+ J && Object.defineProperty(Y, B, J.get ? J : { enumerable: !0, get: () => P[B] });
33
+ }
34
+ }
35
+ }
36
+ return Object.freeze(Object.defineProperty(Y, Symbol.toStringTag, { value: "Module" }));
37
+ }({ __proto__: null }, [(ct || (ct = 1, pt.exports = function Y() {
38
+ var Q, b = typeof self < "u" ? self : typeof window < "u" ? window : b !== void 0 ? b : {}, P = !b.document && !!b.postMessage, B = b.IS_PAPA_WORKER || !1, J = {}, gt = 0, a = {};
39
+ function K(t) {
40
+ this._handle = null, this._finished = !1, this._completed = !1, this._halted = !1, this._input = null, this._baseIndex = 0, this._partialLine = "", this._rowCount = 0, this._start = 0, this._nextChunk = null, this.isFirstChunk = !0, this._completeResults = { data: [], errors: [], meta: {} }, function(e) {
41
+ var i = at(e);
42
+ i.chunkSize = parseInt(i.chunkSize), e.step || e.chunk || (i.chunkSize = null), this._handle = new ht(i), (this._handle.streamer = this)._config = i;
43
+ }.call(this, t), this.parseChunk = function(e, i) {
44
+ var n = parseInt(this._config.skipFirstNLines) || 0;
45
+ if (this.isFirstChunk && 0 < n) {
46
+ let l = this._config.newline;
47
+ l || (r = this._config.quoteChar || '"', l = this._handle.guessLineEndings(e, r)), e = [...e.split(l).slice(n)].join(l);
48
+ }
49
+ this.isFirstChunk && y(this._config.beforeFirstChunk) && (r = this._config.beforeFirstChunk(e)) !== void 0 && (e = r), this.isFirstChunk = !1, this._halted = !1, n = this._partialLine + e;
50
+ var r = (this._partialLine = "", this._handle.parse(n, this._baseIndex, !this._finished));
51
+ if (!this._handle.paused() && !this._handle.aborted()) {
52
+ if (e = r.meta.cursor, this._finished || (this._partialLine = n.substring(e - this._baseIndex), this._baseIndex = e), r && r.data && (this._rowCount += r.data.length), n = this._finished || this._config.preview && this._rowCount >= this._config.preview, B) b.postMessage({ results: r, workerId: a.WORKER_ID, finished: n });
53
+ else if (y(this._config.chunk) && !i) {
54
+ if (this._config.chunk(r, this._handle), this._handle.paused() || this._handle.aborted()) return void (this._halted = !0);
55
+ this._completeResults = r = void 0;
56
+ }
57
+ return this._config.step || this._config.chunk || (this._completeResults.data = this._completeResults.data.concat(r.data), this._completeResults.errors = this._completeResults.errors.concat(r.errors), this._completeResults.meta = r.meta), this._completed || !n || !y(this._config.complete) || r && r.meta.aborted || (this._config.complete(this._completeResults, this._input), this._completed = !0), n || r && r.meta.paused || this._nextChunk(), r;
58
+ }
59
+ this._halted = !0;
60
+ }, this._sendError = function(e) {
61
+ y(this._config.error) ? this._config.error(e) : B && this._config.error && b.postMessage({ workerId: a.WORKER_ID, error: e, finished: !1 });
62
+ };
63
+ }
64
+ function it(t) {
65
+ var e;
66
+ (t = t || {}).chunkSize || (t.chunkSize = a.RemoteChunkSize), K.call(this, t), this._nextChunk = P ? function() {
67
+ this._readChunk(), this._chunkLoaded();
68
+ } : function() {
69
+ this._readChunk();
70
+ }, this.stream = function(i) {
71
+ this._input = i, this._nextChunk();
72
+ }, this._readChunk = function() {
73
+ if (this._finished) this._chunkLoaded();
74
+ else {
75
+ if (e = new XMLHttpRequest(), this._config.withCredentials && (e.withCredentials = this._config.withCredentials), P || (e.onload = $(this._chunkLoaded, this), e.onerror = $(this._chunkError, this)), e.open(this._config.downloadRequestBody ? "POST" : "GET", this._input, !P), this._config.downloadRequestHeaders) {
76
+ var i, n = this._config.downloadRequestHeaders;
77
+ for (i in n) e.setRequestHeader(i, n[i]);
78
+ }
79
+ var r;
80
+ this._config.chunkSize && (r = this._start + this._config.chunkSize - 1, e.setRequestHeader("Range", "bytes=" + this._start + "-" + r));
81
+ try {
82
+ e.send(this._config.downloadRequestBody);
83
+ } catch (l) {
84
+ this._chunkError(l.message);
85
+ }
86
+ P && e.status === 0 && this._chunkError();
87
+ }
88
+ }, this._chunkLoaded = function() {
89
+ var i;
90
+ e.readyState === 4 && (e.status < 200 || 400 <= e.status ? this._chunkError() : (this._start += this._config.chunkSize || e.responseText.length, this._finished = !this._config.chunkSize || this._start >= ((i = (i = e).getResponseHeader("Content-Range")) !== null ? parseInt(i.substring(i.lastIndexOf("/") + 1)) : -1), this.parseChunk(e.responseText)));
91
+ }, this._chunkError = function(i) {
92
+ i = e.statusText || i, this._sendError(new Error(i));
93
+ };
94
+ }
95
+ function rt(t) {
96
+ (t = t || {}).chunkSize || (t.chunkSize = a.LocalChunkSize), K.call(this, t);
97
+ var e, i, n = typeof FileReader < "u";
98
+ this.stream = function(r) {
99
+ this._input = r, i = r.slice || r.webkitSlice || r.mozSlice, n ? ((e = new FileReader()).onload = $(this._chunkLoaded, this), e.onerror = $(this._chunkError, this)) : e = new FileReaderSync(), this._nextChunk();
100
+ }, this._nextChunk = function() {
101
+ this._finished || this._config.preview && !(this._rowCount < this._config.preview) || this._readChunk();
102
+ }, this._readChunk = function() {
103
+ var r = this._input, l = (this._config.chunkSize && (l = Math.min(this._start + this._config.chunkSize, this._input.size), r = i.call(r, this._start, l)), e.readAsText(r, this._config.encoding));
104
+ n || this._chunkLoaded({ target: { result: l } });
105
+ }, this._chunkLoaded = function(r) {
106
+ this._start += this._config.chunkSize, this._finished = !this._config.chunkSize || this._start >= this._input.size, this.parseChunk(r.target.result);
107
+ }, this._chunkError = function() {
108
+ this._sendError(e.error);
109
+ };
110
+ }
111
+ function X(t) {
112
+ var e;
113
+ K.call(this, t = t || {}), this.stream = function(i) {
114
+ return e = i, this._nextChunk();
115
+ }, this._nextChunk = function() {
116
+ var i, n;
117
+ if (!this._finished) return i = this._config.chunkSize, e = i ? (n = e.substring(0, i), e.substring(i)) : (n = e, ""), this._finished = !e, this.parseChunk(n);
118
+ };
119
+ }
120
+ function nt(t) {
121
+ K.call(this, t = t || {});
122
+ var e = [], i = !0, n = !1;
123
+ this.pause = function() {
124
+ K.prototype.pause.apply(this, arguments), this._input.pause();
125
+ }, this.resume = function() {
126
+ K.prototype.resume.apply(this, arguments), this._input.resume();
127
+ }, this.stream = function(r) {
128
+ this._input = r, this._input.on("data", this._streamData), this._input.on("end", this._streamEnd), this._input.on("error", this._streamError);
129
+ }, this._checkIsFinished = function() {
130
+ n && e.length === 1 && (this._finished = !0);
131
+ }, this._nextChunk = function() {
132
+ this._checkIsFinished(), e.length ? this.parseChunk(e.shift()) : i = !0;
133
+ }, this._streamData = $(function(r) {
134
+ try {
135
+ e.push(typeof r == "string" ? r : r.toString(this._config.encoding)), i && (i = !1, this._checkIsFinished(), this.parseChunk(e.shift()));
136
+ } catch (l) {
137
+ this._streamError(l);
138
+ }
139
+ }, this), this._streamError = $(function(r) {
140
+ this._streamCleanUp(), this._sendError(r);
141
+ }, this), this._streamEnd = $(function() {
142
+ this._streamCleanUp(), n = !0, this._streamData("");
143
+ }, this), this._streamCleanUp = $(function() {
144
+ this._input.removeListener("data", this._streamData), this._input.removeListener("end", this._streamEnd), this._input.removeListener("error", this._streamError);
145
+ }, this);
146
+ }
147
+ function ht(t) {
148
+ var e, i, n, r, l = Math.pow(2, 53), p = -l, z = /^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/, w = /^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/, _ = this, T = 0, o = 0, I = !1, u = !1, g = [], s = { data: [], errors: [], meta: {} };
149
+ function C(h) {
150
+ return t.skipEmptyLines === "greedy" ? h.join("").trim() === "" : h.length === 1 && h[0].length === 0;
151
+ }
152
+ function R() {
153
+ if (s && n && (M("Delimiter", "UndetectableDelimiter", "Unable to auto-detect delimiting character; defaulted to '" + a.DefaultDelimiter + "'"), n = !1), t.skipEmptyLines && (s.data = s.data.filter(function(f) {
154
+ return !C(f);
155
+ })), L()) {
156
+ let f = function(O, A) {
157
+ y(t.transformHeader) && (O = t.transformHeader(O, A)), g.push(O);
158
+ };
159
+ if (s) if (Array.isArray(s.data[0])) {
160
+ for (var h = 0; L() && h < s.data.length; h++) s.data[h].forEach(f);
161
+ s.data.splice(0, 1);
162
+ } else s.data.forEach(f);
163
+ }
164
+ function c(f, O) {
165
+ for (var A = t.header ? {} : [], v = 0; v < f.length; v++) {
166
+ var k = v, m = f[v];
167
+ m = ((U, d) => {
168
+ return S = U, t.dynamicTypingFunction && t.dynamicTyping[S] === void 0 && (t.dynamicTyping[S] = t.dynamicTypingFunction(S)), (t.dynamicTyping[S] || t.dynamicTyping) === !0 ? d === "true" || d === "TRUE" || d !== "false" && d !== "FALSE" && (((j) => {
169
+ if (z.test(j) && (j = parseFloat(j), p < j && j < l)) return 1;
170
+ })(d) ? parseFloat(d) : w.test(d) ? new Date(d) : d === "" ? null : d) : d;
171
+ var S;
172
+ })(k = t.header ? v >= g.length ? "__parsed_extra" : g[v] : k, m = t.transform ? t.transform(m, k) : m), k === "__parsed_extra" ? (A[k] = A[k] || [], A[k].push(m)) : A[k] = m;
173
+ }
174
+ return t.header && (v > g.length ? M("FieldMismatch", "TooManyFields", "Too many fields: expected " + g.length + " fields but parsed " + v, o + O) : v < g.length && M("FieldMismatch", "TooFewFields", "Too few fields: expected " + g.length + " fields but parsed " + v, o + O)), A;
175
+ }
176
+ var E;
177
+ s && (t.header || t.dynamicTyping || t.transform) && (E = 1, !s.data.length || Array.isArray(s.data[0]) ? (s.data = s.data.map(c), E = s.data.length) : s.data = c(s.data, 0), t.header && s.meta && (s.meta.fields = g), o += E);
178
+ }
179
+ function L() {
180
+ return t.header && g.length === 0;
181
+ }
182
+ function M(h, c, E, f) {
183
+ h = { type: h, code: c, message: E }, f !== void 0 && (h.row = f), s.errors.push(h);
184
+ }
185
+ y(t.step) && (r = t.step, t.step = function(h) {
186
+ s = h, L() ? R() : (R(), s.data.length !== 0 && (T += h.data.length, t.preview && T > t.preview ? i.abort() : (s.data = s.data[0], r(s, _))));
187
+ }), this.parse = function(h, c, E) {
188
+ var f = t.quoteChar || '"';
189
+ return t.newline || (t.newline = this.guessLineEndings(h, f)), n = !1, t.delimiter ? y(t.delimiter) && (t.delimiter = t.delimiter(h), s.meta.delimiter = t.delimiter) : ((f = ((O, A, v, k, m) => {
190
+ var U, d, S, j;
191
+ m = m || [",", " ", "|", ";", a.RECORD_SEP, a.UNIT_SEP];
192
+ for (var Z = 0; Z < m.length; Z++) {
193
+ for (var W, tt = m[Z], F = 0, q = 0, x = 0, D = (S = void 0, new st({ comments: k, delimiter: tt, newline: A, preview: 10 }).parse(O)), H = 0; H < D.data.length; H++) v && C(D.data[H]) ? x++ : (q += W = D.data[H].length, S === void 0 ? S = W : 0 < W && (F += Math.abs(W - S), S = W));
194
+ 0 < D.data.length && (q /= D.data.length - x), (d === void 0 || F <= d) && (j === void 0 || j < q) && 1.99 < q && (d = F, U = tt, j = q);
195
+ }
196
+ return { successful: !!(t.delimiter = U), bestDelimiter: U };
197
+ })(h, t.newline, t.skipEmptyLines, t.comments, t.delimitersToGuess)).successful ? t.delimiter = f.bestDelimiter : (n = !0, t.delimiter = a.DefaultDelimiter), s.meta.delimiter = t.delimiter), f = at(t), t.preview && t.header && f.preview++, e = h, i = new st(f), s = i.parse(e, c, E), R(), I ? { meta: { paused: !0 } } : s || { meta: { paused: !1 } };
198
+ }, this.paused = function() {
199
+ return I;
200
+ }, this.pause = function() {
201
+ I = !0, i.abort(), e = y(t.chunk) ? "" : e.substring(i.getCharIndex());
202
+ }, this.resume = function() {
203
+ _.streamer._halted ? (I = !1, _.streamer.parseChunk(e, !0)) : setTimeout(_.resume, 3);
204
+ }, this.aborted = function() {
205
+ return u;
206
+ }, this.abort = function() {
207
+ u = !0, i.abort(), s.meta.aborted = !0, y(t.complete) && t.complete(s), e = "";
208
+ }, this.guessLineEndings = function(h, c) {
209
+ h = h.substring(0, 1048576), c = new RegExp(V(c) + "([^]*?)" + V(c), "gm");
210
+ var E = (h = h.replace(c, "")).split("\r");
211
+ if (h = 1 < (c = h.split(`
212
+ `)).length && c[0].length < E[0].length, E.length === 1 || h) return `
213
+ `;
214
+ for (var f = 0, O = 0; O < E.length; O++) E[O][0] === `
215
+ ` && f++;
216
+ return f >= E.length / 2 ? `\r
217
+ ` : "\r";
218
+ };
219
+ }
220
+ function V(t) {
221
+ return t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
222
+ }
223
+ function st(t) {
224
+ var e = (t = t || {}).delimiter, i = t.newline, n = t.comments, r = t.step, l = t.preview, p = t.fastMode, z = null, w = !1, _ = t.quoteChar == null ? '"' : t.quoteChar, T = _;
225
+ if (t.escapeChar !== void 0 && (T = t.escapeChar), (typeof e != "string" || -1 < a.BAD_DELIMITERS.indexOf(e)) && (e = ","), n === e) throw new Error("Comment character same as delimiter");
226
+ n === !0 ? n = "#" : (typeof n != "string" || -1 < a.BAD_DELIMITERS.indexOf(n)) && (n = !1), i !== `
227
+ ` && i !== "\r" && i !== `\r
228
+ ` && (i = `
229
+ `);
230
+ var o = 0, I = !1;
231
+ this.parse = function(u, g, s) {
232
+ if (typeof u != "string") throw new Error("Input must be a string");
233
+ var C = u.length, R = e.length, L = i.length, M = n.length, h = y(r), c = [], E = [], f = [], O = o = 0;
234
+ if (!u) return F();
235
+ if (p || p !== !1 && u.indexOf(_) === -1) {
236
+ for (var A = u.split(i), v = 0; v < A.length; v++) {
237
+ if (f = A[v], o += f.length, v !== A.length - 1) o += i.length;
238
+ else if (s) return F();
239
+ if (!n || f.substring(0, M) !== n) {
240
+ if (h) {
241
+ if (c = [], j(f.split(e)), q(), I) return F();
242
+ } else j(f.split(e));
243
+ if (l && l <= v) return c = c.slice(0, l), F(!0);
244
+ }
245
+ }
246
+ return F();
247
+ }
248
+ for (var k = u.indexOf(e, o), m = u.indexOf(i, o), U = new RegExp(V(T) + V(_), "g"), d = u.indexOf(_, o); ; ) if (u[o] === _) for (d = o, o++; ; ) {
249
+ if ((d = u.indexOf(_, d + 1)) === -1) return s || E.push({ type: "Quotes", code: "MissingQuotes", message: "Quoted field unterminated", row: c.length, index: o }), W();
250
+ if (d === C - 1) return W(u.substring(o, d).replace(U, _));
251
+ if (_ === T && u[d + 1] === T) d++;
252
+ else if (_ === T || d === 0 || u[d - 1] !== T) {
253
+ k !== -1 && k < d + 1 && (k = u.indexOf(e, d + 1));
254
+ var S = Z((m = m !== -1 && m < d + 1 ? u.indexOf(i, d + 1) : m) === -1 ? k : Math.min(k, m));
255
+ if (u.substr(d + 1 + S, R) === e) {
256
+ f.push(u.substring(o, d).replace(U, _)), u[o = d + 1 + S + R] !== _ && (d = u.indexOf(_, o)), k = u.indexOf(e, o), m = u.indexOf(i, o);
257
+ break;
258
+ }
259
+ if (S = Z(m), u.substring(d + 1 + S, d + 1 + S + L) === i) {
260
+ if (f.push(u.substring(o, d).replace(U, _)), tt(d + 1 + S + L), k = u.indexOf(e, o), d = u.indexOf(_, o), h && (q(), I)) return F();
261
+ if (l && c.length >= l) return F(!0);
262
+ break;
263
+ }
264
+ E.push({ type: "Quotes", code: "InvalidQuotes", message: "Trailing quote on quoted field is malformed", row: c.length, index: o }), d++;
265
+ }
266
+ }
267
+ else if (n && f.length === 0 && u.substring(o, o + M) === n) {
268
+ if (m === -1) return F();
269
+ o = m + L, m = u.indexOf(i, o), k = u.indexOf(e, o);
270
+ } else if (k !== -1 && (k < m || m === -1)) f.push(u.substring(o, k)), o = k + R, k = u.indexOf(e, o);
271
+ else {
272
+ if (m === -1) break;
273
+ if (f.push(u.substring(o, m)), tt(m + L), h && (q(), I)) return F();
274
+ if (l && c.length >= l) return F(!0);
275
+ }
276
+ return W();
277
+ function j(x) {
278
+ c.push(x), O = o;
279
+ }
280
+ function Z(x) {
281
+ return x !== -1 && (x = u.substring(d + 1, x)) && x.trim() === "" ? x.length : 0;
282
+ }
283
+ function W(x) {
284
+ return s || (x === void 0 && (x = u.substring(o)), f.push(x), o = C, j(f), h && q()), F();
285
+ }
286
+ function tt(x) {
287
+ o = x, j(f), f = [], m = u.indexOf(i, o);
288
+ }
289
+ function F(x) {
290
+ if (t.header && !g && c.length && !w) {
291
+ var D = c[0], H = /* @__PURE__ */ Object.create(null), ot = new Set(D);
292
+ let ft = !1;
293
+ for (let G = 0; G < D.length; G++) {
294
+ let N = D[G];
295
+ if (H[N = y(t.transformHeader) ? t.transformHeader(N, G) : N]) {
296
+ let et, lt = H[N];
297
+ for (; et = N + "_" + lt, lt++, ot.has(et); ) ;
298
+ ot.add(et), D[G] = et, H[N]++, ft = !0, (z = z === null ? {} : z)[et] = N;
299
+ } else H[N] = 1, D[G] = N;
300
+ ot.add(N);
301
+ }
302
+ ft && console.warn("Duplicate headers found and renamed."), w = !0;
303
+ }
304
+ return { data: c, errors: E, meta: { delimiter: e, linebreak: i, aborted: I, truncated: !!x, cursor: O + (g || 0), renamedHeaders: z } };
305
+ }
306
+ function q() {
307
+ r(F()), c = [], E = [];
308
+ }
309
+ }, this.abort = function() {
310
+ I = !0;
311
+ }, this.getCharIndex = function() {
312
+ return o;
313
+ };
314
+ }
315
+ function mt(t) {
316
+ var e = t.data, i = J[e.workerId], n = !1;
317
+ if (e.error) i.userError(e.error, e.file);
318
+ else if (e.results && e.results.data) {
319
+ var r = { abort: function() {
320
+ n = !0, ut(e.workerId, { data: [], errors: [], meta: { aborted: !0 } });
321
+ }, pause: dt, resume: dt };
322
+ if (y(i.userStep)) {
323
+ for (var l = 0; l < e.results.data.length && (i.userStep({ data: e.results.data[l], errors: e.results.errors, meta: e.results.meta }, r), !n); l++) ;
324
+ delete e.results;
325
+ } else y(i.userChunk) && (i.userChunk(e.results, r, e.file), delete e.results);
326
+ }
327
+ e.finished && !n && ut(e.workerId, e.results);
328
+ }
329
+ function ut(t, e) {
330
+ var i = J[t];
331
+ y(i.userComplete) && i.userComplete(e), i.terminate(), delete J[t];
332
+ }
333
+ function dt() {
334
+ throw new Error("Not implemented.");
335
+ }
336
+ function at(t) {
337
+ if (typeof t != "object" || t === null) return t;
338
+ var e, i = Array.isArray(t) ? [] : {};
339
+ for (e in t) i[e] = at(t[e]);
340
+ return i;
341
+ }
342
+ function $(t, e) {
343
+ return function() {
344
+ t.apply(e, arguments);
345
+ };
346
+ }
347
+ function y(t) {
348
+ return typeof t == "function";
349
+ }
350
+ return a.parse = function(t, e) {
351
+ var i, n, r, l, p = (e = e || {}).dynamicTyping || !1;
352
+ if (y(p) && (e.dynamicTypingFunction = p, p = {}), e.dynamicTyping = p, e.transform = !!y(e.transform) && e.transform, !e.worker || !a.WORKERS_SUPPORTED) return p = null, a.NODE_STREAM_INPUT, typeof t == "string" ? (t = (i = t).charCodeAt(0) !== 65279 ? i : i.slice(1), p = new (e.download ? it : X)(e)) : t.readable === !0 && y(t.read) && y(t.on) ? p = new nt(e) : (b.File && t instanceof File || t instanceof Object) && (p = new rt(e)), p.stream(t);
353
+ (p = !!a.WORKERS_SUPPORTED && (r = b.URL || b.webkitURL || null, l = Y.toString(), n = a.BLOB_URL || (a.BLOB_URL = r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ", "(", l, ")();"], { type: "text/javascript" }))), (n = new b.Worker(n)).onmessage = mt, n.id = gt++, J[n.id] = n)).userStep = e.step, p.userChunk = e.chunk, p.userComplete = e.complete, p.userError = e.error, e.step = y(e.step), e.chunk = y(e.chunk), e.complete = y(e.complete), e.error = y(e.error), delete e.worker, p.postMessage({ input: t, config: e, workerId: p.id });
354
+ }, a.unparse = function(t, e) {
355
+ var i = !1, n = !0, r = ",", l = `\r
356
+ `, p = '"', z = p + p, w = !1, _ = null, T = !1, o = ((() => {
357
+ if (typeof e == "object") {
358
+ if (typeof e.delimiter != "string" || a.BAD_DELIMITERS.filter(function(g) {
359
+ return e.delimiter.indexOf(g) !== -1;
360
+ }).length || (r = e.delimiter), typeof e.quotes != "boolean" && typeof e.quotes != "function" && !Array.isArray(e.quotes) || (i = e.quotes), typeof e.skipEmptyLines != "boolean" && typeof e.skipEmptyLines != "string" || (w = e.skipEmptyLines), typeof e.newline == "string" && (l = e.newline), typeof e.quoteChar == "string" && (p = e.quoteChar), typeof e.header == "boolean" && (n = e.header), Array.isArray(e.columns)) {
361
+ if (e.columns.length === 0) throw new Error("Option columns is empty");
362
+ _ = e.columns;
363
+ }
364
+ e.escapeChar !== void 0 && (z = e.escapeChar + p), e.escapeFormulae instanceof RegExp ? T = e.escapeFormulae : typeof e.escapeFormulae == "boolean" && e.escapeFormulae && (T = /^[=+\-@\t\r].*$/);
365
+ }
366
+ })(), new RegExp(V(p), "g"));
367
+ if (typeof t == "string" && (t = JSON.parse(t)), Array.isArray(t)) {
368
+ if (!t.length || Array.isArray(t[0])) return I(null, t, w);
369
+ if (typeof t[0] == "object") return I(_ || Object.keys(t[0]), t, w);
370
+ } else if (typeof t == "object") return typeof t.data == "string" && (t.data = JSON.parse(t.data)), Array.isArray(t.data) && (t.fields || (t.fields = t.meta && t.meta.fields || _), t.fields || (t.fields = Array.isArray(t.data[0]) ? t.fields : typeof t.data[0] == "object" ? Object.keys(t.data[0]) : []), Array.isArray(t.data[0]) || typeof t.data[0] == "object" || (t.data = [t.data])), I(t.fields || [], t.data || [], w);
371
+ throw new Error("Unable to serialize unrecognized input");
372
+ function I(g, s, C) {
373
+ var R = "", L = (typeof g == "string" && (g = JSON.parse(g)), typeof s == "string" && (s = JSON.parse(s)), Array.isArray(g) && 0 < g.length), M = !Array.isArray(s[0]);
374
+ if (L && n) {
375
+ for (var h = 0; h < g.length; h++) 0 < h && (R += r), R += u(g[h], h);
376
+ 0 < s.length && (R += l);
377
+ }
378
+ for (var c = 0; c < s.length; c++) {
379
+ var E = (L ? g : s[c]).length, f = !1, O = L ? Object.keys(s[c]).length === 0 : s[c].length === 0;
380
+ if (C && !L && (f = C === "greedy" ? s[c].join("").trim() === "" : s[c].length === 1 && s[c][0].length === 0), C === "greedy" && L) {
381
+ for (var A = [], v = 0; v < E; v++) {
382
+ var k = M ? g[v] : v;
383
+ A.push(s[c][k]);
384
+ }
385
+ f = A.join("").trim() === "";
386
+ }
387
+ if (!f) {
388
+ for (var m = 0; m < E; m++) {
389
+ 0 < m && !O && (R += r);
390
+ var U = L && M ? g[m] : m;
391
+ R += u(s[c][U], m);
392
+ }
393
+ c < s.length - 1 && (!C || 0 < E && !O) && (R += l);
394
+ }
395
+ }
396
+ return R;
397
+ }
398
+ function u(g, s) {
399
+ var C, R;
400
+ return g == null ? "" : g.constructor === Date ? JSON.stringify(g).slice(1, 25) : (R = !1, T && typeof g == "string" && T.test(g) && (g = "'" + g, R = !0), C = g.toString().replace(o, z), (R = R || i === !0 || typeof i == "function" && i(g, s) || Array.isArray(i) && i[s] || ((L, M) => {
401
+ for (var h = 0; h < M.length; h++) if (-1 < L.indexOf(M[h])) return !0;
402
+ return !1;
403
+ })(C, a.BAD_DELIMITERS) || -1 < C.indexOf(r) || C.charAt(0) === " " || C.charAt(C.length - 1) === " ") ? p + C + p : C);
404
+ }
405
+ }, a.RECORD_SEP = "", a.UNIT_SEP = "", a.BYTE_ORDER_MARK = "\uFEFF", a.BAD_DELIMITERS = ["\r", `
406
+ `, '"', a.BYTE_ORDER_MARK], a.WORKERS_SUPPORTED = !P && !!b.Worker, a.NODE_STREAM_INPUT = 1, a.LocalChunkSize = 10485760, a.RemoteChunkSize = 5242880, a.DefaultDelimiter = ",", a.Parser = st, a.ParserHandle = ht, a.NetworkStreamer = it, a.FileStreamer = rt, a.StringStreamer = X, a.ReadableStreamStreamer = nt, b.jQuery && ((Q = b.jQuery).fn.parse = function(t) {
407
+ var e = t.config || {}, i = [];
408
+ return this.each(function(l) {
409
+ if (Q(this).prop("tagName").toUpperCase() !== "INPUT" || Q(this).attr("type").toLowerCase() !== "file" || !b.FileReader || !this.files || this.files.length === 0) return !0;
410
+ for (var p = 0; p < this.files.length; p++) i.push({ file: this.files[p], inputElem: this, instanceConfig: Q.extend({}, e) });
411
+ }), n(), this;
412
+ function n() {
413
+ if (i.length === 0) y(t.complete) && t.complete();
414
+ else {
415
+ var l, p, z, w = i[0];
416
+ if (y(t.before)) {
417
+ var _ = t.before(w.file, w.inputElem);
418
+ if (typeof _ == "object") {
419
+ if (_.action === "abort") return l = w.file, p = w.inputElem, z = _.reason, void (y(t.error) && t.error({ name: "AbortError" }, l, p, z));
420
+ if (_.action === "skip") return void r();
421
+ typeof _.config == "object" && (w.instanceConfig = Q.extend(w.instanceConfig, _.config));
422
+ } else if (_ === "skip") return void r();
423
+ }
424
+ var T = w.instanceConfig.complete;
425
+ w.instanceConfig.complete = function(o) {
426
+ y(T) && T(o, w.file, w.inputElem), r();
427
+ }, a.parse(w.file, w.instanceConfig);
428
+ }
429
+ }
430
+ function r() {
431
+ i.splice(0, 1), n();
432
+ }
433
+ }), B && (b.onmessage = function(t) {
434
+ t = t.data, a.WORKER_ID === void 0 && t && (a.WORKER_ID = t.workerId), typeof t.input == "string" ? b.postMessage({ workerId: a.WORKER_ID, results: a.parse(t.input, t.config), finished: !0 }) : (b.File && t.input instanceof File || t.input instanceof Object) && (t = a.parse(t.input, t.config)) && b.postMessage({ workerId: a.WORKER_ID, results: t, finished: !0 });
435
+ }), (it.prototype = Object.create(K.prototype)).constructor = it, (rt.prototype = Object.create(K.prototype)).constructor = rt, (X.prototype = Object.create(X.prototype)).constructor = X, (nt.prototype = Object.create(K.prototype)).constructor = nt, a;
436
+ }()), pt.exports)]);
437
+ export {
438
+ _t as p
439
+ };
@@ -0,0 +1,56 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { memo as E, useMemo as M, useState as x, useCallback as j } from "react";
3
+ import { a7 as r, d as S, B as V, F as $, T as z, f as h, b6 as C } from "./CLdcRW7BQK3JCguC.js";
4
+ /**
5
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.0.0
6
+ *
7
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
8
+ * License: The license can be found at https://www.sheetxl.com/license.
9
+ */
10
+ /**
11
+ * @license @sheetxl/studio-mui - Studio - Spreadsheet UI built with SheetXL SDK using React & MUI. - v0.0.0
12
+ *
13
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
14
+ * License: The license can be found at https://www.sheetxl.com/license.
15
+ */
16
+ const G = ["Ok", "Cancel"], U = E((O) => {
17
+ const { initialComments: F = null, onUpdateComments: m, context: T, onOption: u, onValidateOption: l, onDone: p, options: d = G, defaultOption: c = d?.[0], cancelOption: s = "Cancel", sx: b, ...k } = O, g = M(() => {
18
+ const n = F ?? T?.()?.getComments();
19
+ let t = "";
20
+ if (n && n.content && n.content.runs) {
21
+ const a = n.content.runs;
22
+ for (let o = 0; o < a.length; o++) {
23
+ const B = a[o];
24
+ t += B?.text;
25
+ }
26
+ }
27
+ return t;
28
+ }, []), [e, w] = x(g), [y, P] = x(!1), f = j(async (n, t) => null, []), v = r(async (n) => {
29
+ const t = e === "" ? [] : e.split(`
30
+ `);
31
+ if (n !== s) {
32
+ const a = [];
33
+ for (let o = 0; o < t.length; o++) a.push({ text: t[o] });
34
+ m?.({ content: { runs: a } });
35
+ }
36
+ u?.(n, n === s, n === c), p?.();
37
+ }, [e, m, p, u, c, s]), D = r((n) => {
38
+ w(n.target.value), f(n.target.value, null);
39
+ }, [l]), I = r(async (n) => {
40
+ let t = await Promise.resolve(l?.(n));
41
+ try {
42
+ t !== !1 && (t = await f(e, n));
43
+ } catch {
44
+ }
45
+ return t ?? !0;
46
+ }, [l, e]);
47
+ return i(S, { title: (g ? "Edit" : "Insert") + " Comments", options: d, onDone: p, onOption: (n) => v(n), onValidateOption: I, defaultOption: c, cancelOption: s, autoFocusSel: ".autoFocus", sx: { width: "480px", ...b }, ...k, children: i(V, { sx: { paddingTop: (n) => n.spacing(1), paddingBottom: (n) => n.spacing(0), rowGap: (n) => n.spacing(1), display: "flex", flexDirection: "column" }, children: i($, { sx: { paddingTop: (n) => n.spacing(1.5), minWidth: 135, width: "100%" }, size: "small", children: i(z, { label: "Comments", placeholder: "Enter a comment.", onFocus: (n) => {
48
+ y || n.target?.select(), P(!0);
49
+ }, sx: { "& .MuiFormHelperText-root": { marginTop: (n) => n.spacing(0.5) } }, InputLabelProps: { shrink: !0 }, InputProps: { inputProps: { className: "autoFocus", spellCheck: !1, autoComplete: "off", sx: { paddingTop: (n) => n.spacing(1.25), paddingBottom: (n) => n.spacing(0.75), backgroundImage: `linear-gradient(${h("#fff", C(5))}, ${h("#fff", C(5))})` } } }, value: e, onChange: D, onContextMenu: (n) => {
50
+ n.stopPropagation();
51
+ } }) }) }) });
52
+ });
53
+ export {
54
+ U as CommentsDialog,
55
+ U as default
56
+ };