solve-engine 1.2.0 → 2.1.0

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 (385) hide show
  1. package/README.md +12 -17
  2. package/dist/{BytecodeBuilder-Bp9xeTmX.d.cts → BytecodeBuilder-DGGeByAP.d.cts} +18 -0
  3. package/dist/{BytecodeBuilder-Bp9xeTmX.d.ts → BytecodeBuilder-DGGeByAP.d.ts} +18 -0
  4. package/dist/{Configuration-C9W8tJv_.d.cts → Configuration-B6W0-T67.d.cts} +17 -4
  5. package/dist/{Configuration-C9W8tJv_.d.ts → Configuration-B6W0-T67.d.ts} +17 -4
  6. package/dist/{EngineError-CNA_rHY-.d.cts → EngineError-Ce1lPkjZ.d.cts} +2 -0
  7. package/dist/{EngineError-CNA_rHY-.d.ts → EngineError-Ce1lPkjZ.d.ts} +2 -0
  8. package/dist/{PackageCompatibility-B6NX9IaN.d.cts → PackageCompatibility-Bn5jnBtA.d.cts} +2 -2
  9. package/dist/{PackageCompatibility-Ceg5XdAp.d.ts → PackageCompatibility-CIvq2MP5.d.ts} +2 -2
  10. package/dist/{PackageRegistry-DrCPQNyy.d.ts → PackageRegistry-DzeiWcv4.d.ts} +93 -172
  11. package/dist/{PackageRegistry-DnJYVw9G.d.cts → PackageRegistry-dpdurBVO.d.cts} +93 -172
  12. package/dist/{Parselet-Bhf7d0_W.d.ts → Parselet-B-zoPrTa.d.ts} +8 -5
  13. package/dist/{Parselet-Cv7S7KRt.d.cts → Parselet-C4Wu055_.d.cts} +8 -5
  14. package/dist/{ScopeManager-Bzq87GfA.d.ts → ScopeManager-C2LDOrDx.d.ts} +7 -16
  15. package/dist/{ScopeManager-DRDBVfan.d.cts → ScopeManager-D7uMXbhS.d.cts} +7 -16
  16. package/dist/{VMCheckpoints-C6c17Hbo.d.ts → VMCheckpoints-CGyFhivM.d.ts} +3 -3
  17. package/dist/{VMCheckpoints-dZxSMGHG.d.cts → VMCheckpoints-I9jg3jWR.d.cts} +3 -3
  18. package/dist/{Value-DZNQ_PU7.d.cts → Value-CCi_Eecs.d.cts} +40 -0
  19. package/dist/{Value-DZNQ_PU7.d.ts → Value-CCi_Eecs.d.ts} +40 -0
  20. package/dist/{WorkerError-Djd7GGGa.d.cts → WorkerError-B4p6PNfx.d.cts} +1 -1
  21. package/dist/{WorkerError-B7t7R2-m.d.ts → WorkerError-Dhj9BQ_A.d.ts} +1 -1
  22. package/dist/chunk-2JMFUQZH.js +2 -0
  23. package/dist/chunk-2JMFUQZH.js.map +1 -0
  24. package/dist/chunk-2LFLR3VZ.cjs +2 -0
  25. package/dist/chunk-2LFLR3VZ.cjs.map +1 -0
  26. package/dist/chunk-2RWAXT6O.js +0 -1
  27. package/dist/chunk-32GC2FHC.cjs +2 -0
  28. package/dist/chunk-32GC2FHC.cjs.map +1 -0
  29. package/dist/chunk-4BZIYU7S.cjs +3 -0
  30. package/dist/chunk-4BZIYU7S.cjs.map +1 -0
  31. package/dist/chunk-4E4YVQKK.js +5 -0
  32. package/dist/chunk-4E4YVQKK.js.map +1 -0
  33. package/dist/chunk-4QVBSG6B.cjs +2 -0
  34. package/dist/chunk-4QVBSG6B.cjs.map +1 -0
  35. package/dist/chunk-5FO4PDIG.js +2 -0
  36. package/dist/chunk-5FO4PDIG.js.map +1 -0
  37. package/dist/chunk-5IJD5L3O.cjs +2 -0
  38. package/dist/chunk-5IJD5L3O.cjs.map +1 -0
  39. package/dist/chunk-62LMTO4F.js +2 -0
  40. package/dist/chunk-62LMTO4F.js.map +1 -0
  41. package/dist/chunk-6G3PMEPA.js +2 -0
  42. package/dist/chunk-6G3PMEPA.js.map +1 -0
  43. package/dist/chunk-6INX773F.cjs +2 -0
  44. package/dist/chunk-6INX773F.cjs.map +1 -0
  45. package/dist/chunk-76F3LCIL.js +4 -0
  46. package/dist/chunk-76F3LCIL.js.map +1 -0
  47. package/dist/chunk-7BXPCWKM.cjs +2 -0
  48. package/dist/chunk-7BXPCWKM.cjs.map +1 -0
  49. package/dist/chunk-7GK3XEZF.js +2 -0
  50. package/dist/chunk-7GK3XEZF.js.map +1 -0
  51. package/dist/chunk-AXMQG5TS.cjs +2 -0
  52. package/dist/chunk-AXMQG5TS.cjs.map +1 -0
  53. package/dist/chunk-CIQOK7Q4.cjs +2 -0
  54. package/dist/chunk-CIQOK7Q4.cjs.map +1 -0
  55. package/dist/chunk-E2Q3PQ2G.js +3 -0
  56. package/dist/chunk-E2Q3PQ2G.js.map +1 -0
  57. package/dist/chunk-E6Z4NQAS.js +2 -0
  58. package/dist/chunk-E6Z4NQAS.js.map +1 -0
  59. package/dist/chunk-EFJCC6FJ.cjs +2 -0
  60. package/dist/chunk-EFJCC6FJ.cjs.map +1 -0
  61. package/dist/chunk-ESUN2THE.cjs +2 -0
  62. package/dist/chunk-ESUN2THE.cjs.map +1 -0
  63. package/dist/chunk-EVAOPEO4.js +2 -0
  64. package/dist/chunk-EVAOPEO4.js.map +1 -0
  65. package/dist/chunk-EVI6OHQH.cjs +2 -0
  66. package/dist/chunk-EVI6OHQH.cjs.map +1 -0
  67. package/dist/chunk-FDE5HWDI.cjs +2 -0
  68. package/dist/chunk-FDE5HWDI.cjs.map +1 -0
  69. package/dist/chunk-FWW3M36J.cjs +2 -0
  70. package/dist/chunk-FWW3M36J.cjs.map +1 -0
  71. package/dist/chunk-G7TBEQRQ.js +2 -0
  72. package/dist/chunk-G7TBEQRQ.js.map +1 -0
  73. package/dist/chunk-GK2OHWRF.cjs +5 -0
  74. package/dist/chunk-GK2OHWRF.cjs.map +1 -0
  75. package/dist/chunk-HFKDWQUL.js +2 -0
  76. package/dist/chunk-HFKDWQUL.js.map +1 -0
  77. package/dist/chunk-HLBYHXQD.cjs +3 -0
  78. package/dist/chunk-HLBYHXQD.cjs.map +1 -0
  79. package/dist/chunk-I52MYCVI.js +3 -0
  80. package/dist/chunk-I52MYCVI.js.map +1 -0
  81. package/dist/chunk-IANAMBJQ.cjs +2 -0
  82. package/dist/chunk-IANAMBJQ.cjs.map +1 -0
  83. package/dist/chunk-IJMNVBIS.js +2 -0
  84. package/dist/chunk-IJMNVBIS.js.map +1 -0
  85. package/dist/chunk-J4LZD4ZY.js +3 -0
  86. package/dist/chunk-J4LZD4ZY.js.map +1 -0
  87. package/dist/chunk-JAK3RAFA.cjs +2 -0
  88. package/dist/chunk-JAK3RAFA.cjs.map +1 -0
  89. package/dist/chunk-JFAJN3C2.cjs +2 -0
  90. package/dist/chunk-JFAJN3C2.cjs.map +1 -0
  91. package/dist/chunk-JPFCXLJV.js +2 -0
  92. package/dist/chunk-JPFCXLJV.js.map +1 -0
  93. package/dist/chunk-JUIJ6NRD.cjs +3 -0
  94. package/dist/chunk-JUIJ6NRD.cjs.map +1 -0
  95. package/dist/chunk-MIQBJGGR.js +2 -0
  96. package/dist/chunk-MIQBJGGR.js.map +1 -0
  97. package/dist/chunk-MPB7KUN5.js +3 -0
  98. package/dist/chunk-MPB7KUN5.js.map +1 -0
  99. package/dist/chunk-MSYX32PF.cjs +2 -0
  100. package/dist/chunk-MSYX32PF.cjs.map +1 -0
  101. package/dist/chunk-MVZUTETT.js +2 -0
  102. package/dist/chunk-MVZUTETT.js.map +1 -0
  103. package/dist/chunk-N7N7MPMK.cjs +2 -0
  104. package/dist/chunk-N7N7MPMK.cjs.map +1 -0
  105. package/dist/chunk-NGBBNL4K.cjs +1 -3
  106. package/dist/chunk-OVKDDTXO.cjs +3 -0
  107. package/dist/chunk-OVKDDTXO.cjs.map +1 -0
  108. package/dist/chunk-P6WPEUAJ.cjs +2 -0
  109. package/dist/chunk-P6WPEUAJ.cjs.map +1 -0
  110. package/dist/chunk-PS272DZJ.cjs +2 -0
  111. package/dist/chunk-PS272DZJ.cjs.map +1 -0
  112. package/dist/chunk-R2ENWQ76.js +2 -0
  113. package/dist/chunk-R2ENWQ76.js.map +1 -0
  114. package/dist/chunk-R2SZFJTT.cjs +2 -0
  115. package/dist/chunk-R2SZFJTT.cjs.map +1 -0
  116. package/dist/chunk-RAF57WYO.js +2 -0
  117. package/dist/chunk-RAF57WYO.js.map +1 -0
  118. package/dist/chunk-RSF25YSJ.js +2 -0
  119. package/dist/chunk-RSF25YSJ.js.map +1 -0
  120. package/dist/chunk-SOMGSIO4.cjs +3 -0
  121. package/dist/chunk-SOMGSIO4.cjs.map +1 -0
  122. package/dist/chunk-SYYE3QAX.cjs +2 -0
  123. package/dist/chunk-SYYE3QAX.cjs.map +1 -0
  124. package/dist/chunk-TCZSPH4A.js +2 -0
  125. package/dist/chunk-TCZSPH4A.js.map +1 -0
  126. package/dist/chunk-TLG7VZRX.cjs +2 -0
  127. package/dist/chunk-TLG7VZRX.cjs.map +1 -0
  128. package/dist/chunk-TN5E6JU6.js +2 -0
  129. package/dist/chunk-TN5E6JU6.js.map +1 -0
  130. package/dist/chunk-TRBXW6HW.js +2 -0
  131. package/dist/{chunk-AQNHHJMJ.cjs.map → chunk-TRBXW6HW.js.map} +1 -1
  132. package/dist/chunk-TTFO4YDP.cjs +2 -0
  133. package/dist/chunk-TTFO4YDP.cjs.map +1 -0
  134. package/dist/chunk-TWC7K3ZX.js +2 -0
  135. package/dist/chunk-TWC7K3ZX.js.map +1 -0
  136. package/dist/chunk-U4AEVL5Z.js +2 -0
  137. package/dist/chunk-U4AEVL5Z.js.map +1 -0
  138. package/dist/chunk-UURM7P3P.cjs +4 -0
  139. package/dist/chunk-UURM7P3P.cjs.map +1 -0
  140. package/dist/chunk-VAGS5JS7.cjs +2 -0
  141. package/dist/chunk-VAGS5JS7.cjs.map +1 -0
  142. package/dist/chunk-W2JAR233.js +2 -0
  143. package/dist/chunk-W2JAR233.js.map +1 -0
  144. package/dist/chunk-WGZ3FNHI.js +2 -0
  145. package/dist/chunk-WGZ3FNHI.js.map +1 -0
  146. package/dist/chunk-XEIDV5JP.js +2 -0
  147. package/dist/chunk-XEIDV5JP.js.map +1 -0
  148. package/dist/chunk-XNIWQHXY.js +2 -0
  149. package/dist/chunk-XNIWQHXY.js.map +1 -0
  150. package/dist/chunk-Y7O4D3BJ.cjs +2 -0
  151. package/dist/chunk-Y7O4D3BJ.cjs.map +1 -0
  152. package/dist/chunk-YAHGSBMC.js +2 -0
  153. package/dist/chunk-YAHGSBMC.js.map +1 -0
  154. package/dist/chunk-YAYBVVG2.js +3 -0
  155. package/dist/chunk-YAYBVVG2.js.map +1 -0
  156. package/dist/chunk-YJ2OPULK.js +2 -0
  157. package/dist/chunk-YJ2OPULK.js.map +1 -0
  158. package/dist/chunk-YVKHEAFT.js +2 -0
  159. package/dist/chunk-YVKHEAFT.js.map +1 -0
  160. package/dist/chunk-ZCNBT44X.cjs +2 -0
  161. package/dist/chunk-ZCNBT44X.cjs.map +1 -0
  162. package/dist/chunk-ZLRJ7TDP.cjs +2 -0
  163. package/dist/chunk-ZLRJ7TDP.cjs.map +1 -0
  164. package/dist/constants.cjs +1 -21
  165. package/dist/constants.d.cts +1 -1
  166. package/dist/constants.d.ts +1 -1
  167. package/dist/constants.js +1 -4
  168. package/dist/engine.cjs +1 -94
  169. package/dist/engine.d.cts +10 -11
  170. package/dist/engine.d.ts +10 -11
  171. package/dist/engine.js +1 -37
  172. package/dist/errors.cjs +1 -105
  173. package/dist/errors.d.cts +3 -3
  174. package/dist/errors.d.ts +3 -3
  175. package/dist/errors.js +1 -4
  176. package/dist/format.cjs +1 -26
  177. package/dist/format.d.cts +2 -2
  178. package/dist/format.d.ts +2 -2
  179. package/dist/format.js +1 -9
  180. package/dist/index.cjs +1 -314
  181. package/dist/index.cjs.map +1 -1
  182. package/dist/index.d.cts +52 -20
  183. package/dist/index.d.ts +52 -20
  184. package/dist/index.js +1 -278
  185. package/dist/index.js.map +1 -1
  186. package/dist/language.cjs +1 -369
  187. package/dist/language.cjs.map +1 -1
  188. package/dist/language.d.cts +9 -10
  189. package/dist/language.d.ts +9 -10
  190. package/dist/language.js +1 -348
  191. package/dist/language.js.map +1 -1
  192. package/dist/lexer.cjs +1 -63
  193. package/dist/lexer.js +1 -10
  194. package/dist/normalizer.cjs +1 -39
  195. package/dist/normalizer.js +1 -10
  196. package/dist/packages.cjs +1 -132
  197. package/dist/packages.d.cts +8 -9
  198. package/dist/packages.d.ts +8 -9
  199. package/dist/packages.js +1 -23
  200. package/dist/parser.cjs +1 -54
  201. package/dist/parser.d.cts +8 -8
  202. package/dist/parser.d.ts +8 -8
  203. package/dist/parser.js +1 -9
  204. package/dist/{pipeline-D-PS9gVw.d.ts → pipeline-72QmQlGx.d.ts} +1 -1
  205. package/dist/{pipeline-DtSBJ8TS.d.cts → pipeline-DCQicwWX.d.cts} +1 -1
  206. package/dist/resolvers.cjs +1 -12
  207. package/dist/resolvers.d.cts +2 -2
  208. package/dist/resolvers.d.ts +2 -2
  209. package/dist/resolvers.js +1 -3
  210. package/dist/services.cjs +1 -20
  211. package/dist/services.js +1 -3
  212. package/dist/testing.cjs +3 -477
  213. package/dist/testing.cjs.map +1 -1
  214. package/dist/testing.d.cts +9 -10
  215. package/dist/testing.d.ts +9 -10
  216. package/dist/testing.js +3 -469
  217. package/dist/testing.js.map +1 -1
  218. package/dist/uom.cjs +1 -55
  219. package/dist/uom.d.cts +2 -2
  220. package/dist/uom.d.ts +2 -2
  221. package/dist/uom.js +1 -10
  222. package/dist/utilities.cjs +1 -36
  223. package/dist/utilities.js +1 -7
  224. package/dist/vm.cjs +1 -295
  225. package/dist/vm.cjs.map +1 -1
  226. package/dist/vm.d.cts +22 -10
  227. package/dist/vm.d.ts +22 -10
  228. package/dist/vm.js +1 -193
  229. package/dist/vm.js.map +1 -1
  230. package/dist/worker.cjs +2 -492
  231. package/dist/worker.cjs.map +1 -1
  232. package/dist/worker.d.cts +16 -17
  233. package/dist/worker.d.ts +16 -17
  234. package/dist/worker.js +2 -483
  235. package/dist/worker.js.map +1 -1
  236. package/package.json +1 -13
  237. package/dist/chunk-3BOK2LDK.js +0 -17
  238. package/dist/chunk-3BOK2LDK.js.map +0 -1
  239. package/dist/chunk-3VGDNEE3.js +0 -84
  240. package/dist/chunk-3VGDNEE3.js.map +0 -1
  241. package/dist/chunk-4K5W7EH2.cjs +0 -112
  242. package/dist/chunk-4K5W7EH2.cjs.map +0 -1
  243. package/dist/chunk-5EFKSKMA.js +0 -413
  244. package/dist/chunk-5EFKSKMA.js.map +0 -1
  245. package/dist/chunk-5HRB36DK.js +0 -405
  246. package/dist/chunk-5HRB36DK.js.map +0 -1
  247. package/dist/chunk-5ON7PUAZ.js +0 -12
  248. package/dist/chunk-5ON7PUAZ.js.map +0 -1
  249. package/dist/chunk-7AXJNQMF.cjs +0 -297
  250. package/dist/chunk-7AXJNQMF.cjs.map +0 -1
  251. package/dist/chunk-7JM3F4KL.js +0 -1795
  252. package/dist/chunk-7JM3F4KL.js.map +0 -1
  253. package/dist/chunk-7USV76HV.cjs +0 -341
  254. package/dist/chunk-7USV76HV.cjs.map +0 -1
  255. package/dist/chunk-A2DZ5BEJ.cjs +0 -1930
  256. package/dist/chunk-A2DZ5BEJ.cjs.map +0 -1
  257. package/dist/chunk-ADBA3XBE.cjs +0 -20
  258. package/dist/chunk-ADBA3XBE.cjs.map +0 -1
  259. package/dist/chunk-AKNGX4TZ.cjs +0 -236
  260. package/dist/chunk-AKNGX4TZ.cjs.map +0 -1
  261. package/dist/chunk-ALYRJ72W.cjs +0 -434
  262. package/dist/chunk-ALYRJ72W.cjs.map +0 -1
  263. package/dist/chunk-AMOJYLG2.cjs +0 -1692
  264. package/dist/chunk-AMOJYLG2.cjs.map +0 -1
  265. package/dist/chunk-AOH6UR2L.js +0 -825
  266. package/dist/chunk-AOH6UR2L.js.map +0 -1
  267. package/dist/chunk-AQNHHJMJ.cjs +0 -261
  268. package/dist/chunk-B7LXJ6LC.cjs +0 -36
  269. package/dist/chunk-B7LXJ6LC.cjs.map +0 -1
  270. package/dist/chunk-BESTLPRK.cjs +0 -6919
  271. package/dist/chunk-BESTLPRK.cjs.map +0 -1
  272. package/dist/chunk-BLI4NIQY.js +0 -98
  273. package/dist/chunk-BLI4NIQY.js.map +0 -1
  274. package/dist/chunk-BSPXMGIS.js +0 -455
  275. package/dist/chunk-BSPXMGIS.js.map +0 -1
  276. package/dist/chunk-C2OMO3WN.cjs +0 -2806
  277. package/dist/chunk-C2OMO3WN.cjs.map +0 -1
  278. package/dist/chunk-CSDQMDU2.js +0 -204
  279. package/dist/chunk-CSDQMDU2.js.map +0 -1
  280. package/dist/chunk-EJ3ILXX6.cjs +0 -223
  281. package/dist/chunk-EJ3ILXX6.cjs.map +0 -1
  282. package/dist/chunk-ENRIK36Q.cjs +0 -94
  283. package/dist/chunk-ENRIK36Q.cjs.map +0 -1
  284. package/dist/chunk-F4UB4XIL.js +0 -109
  285. package/dist/chunk-F4UB4XIL.js.map +0 -1
  286. package/dist/chunk-FD5ZZHEU.js +0 -92
  287. package/dist/chunk-FD5ZZHEU.js.map +0 -1
  288. package/dist/chunk-FE4RC37D.js +0 -2801
  289. package/dist/chunk-FE4RC37D.js.map +0 -1
  290. package/dist/chunk-FEAIOR7N.cjs +0 -91
  291. package/dist/chunk-FEAIOR7N.cjs.map +0 -1
  292. package/dist/chunk-FR7RNOPT.cjs +0 -3303
  293. package/dist/chunk-FR7RNOPT.cjs.map +0 -1
  294. package/dist/chunk-G2YPPLGX.cjs +0 -484
  295. package/dist/chunk-G2YPPLGX.cjs.map +0 -1
  296. package/dist/chunk-GCM5JHMX.js +0 -88
  297. package/dist/chunk-GCM5JHMX.js.map +0 -1
  298. package/dist/chunk-GDEU72RG.cjs +0 -829
  299. package/dist/chunk-GDEU72RG.cjs.map +0 -1
  300. package/dist/chunk-HKTQCQ4Z.cjs +0 -8383
  301. package/dist/chunk-HKTQCQ4Z.cjs.map +0 -1
  302. package/dist/chunk-HWHU642X.cjs +0 -316
  303. package/dist/chunk-HWHU642X.cjs.map +0 -1
  304. package/dist/chunk-ICEKS6YC.cjs +0 -507
  305. package/dist/chunk-ICEKS6YC.cjs.map +0 -1
  306. package/dist/chunk-IJGOFP2J.js +0 -6904
  307. package/dist/chunk-IJGOFP2J.js.map +0 -1
  308. package/dist/chunk-IQJGDZOP.js +0 -333
  309. package/dist/chunk-IQJGDZOP.js.map +0 -1
  310. package/dist/chunk-IT74O4BE.cjs +0 -456
  311. package/dist/chunk-IT74O4BE.cjs.map +0 -1
  312. package/dist/chunk-KXDQKVNX.cjs +0 -459
  313. package/dist/chunk-KXDQKVNX.cjs.map +0 -1
  314. package/dist/chunk-L2TE7PMO.cjs +0 -14
  315. package/dist/chunk-L2TE7PMO.cjs.map +0 -1
  316. package/dist/chunk-L5YHV6BQ.js +0 -499
  317. package/dist/chunk-L5YHV6BQ.js.map +0 -1
  318. package/dist/chunk-LO7HU5WB.cjs +0 -209
  319. package/dist/chunk-LO7HU5WB.cjs.map +0 -1
  320. package/dist/chunk-LSALB3IN.js +0 -292
  321. package/dist/chunk-LSALB3IN.js.map +0 -1
  322. package/dist/chunk-MI7OTUHL.cjs +0 -339
  323. package/dist/chunk-MI7OTUHL.cjs.map +0 -1
  324. package/dist/chunk-MIGXCBXT.cjs +0 -381
  325. package/dist/chunk-MIGXCBXT.cjs.map +0 -1
  326. package/dist/chunk-MVTOCRV2.js +0 -213
  327. package/dist/chunk-MVTOCRV2.js.map +0 -1
  328. package/dist/chunk-N7FNVFXW.cjs +0 -32
  329. package/dist/chunk-N7FNVFXW.cjs.map +0 -1
  330. package/dist/chunk-N7OA4WPJ.js +0 -362
  331. package/dist/chunk-N7OA4WPJ.js.map +0 -1
  332. package/dist/chunk-NAWZATKT.js +0 -478
  333. package/dist/chunk-NAWZATKT.js.map +0 -1
  334. package/dist/chunk-NLNDMWZC.js +0 -31
  335. package/dist/chunk-NLNDMWZC.js.map +0 -1
  336. package/dist/chunk-ORM7CHYZ.js +0 -1531
  337. package/dist/chunk-ORM7CHYZ.js.map +0 -1
  338. package/dist/chunk-OUHT5Z36.cjs +0 -393
  339. package/dist/chunk-OUHT5Z36.cjs.map +0 -1
  340. package/dist/chunk-PCZVMMWU.cjs +0 -74
  341. package/dist/chunk-PCZVMMWU.cjs.map +0 -1
  342. package/dist/chunk-RNKDIXDV.js +0 -336
  343. package/dist/chunk-RNKDIXDV.js.map +0 -1
  344. package/dist/chunk-SBUFNJVE.js +0 -258
  345. package/dist/chunk-SBUFNJVE.js.map +0 -1
  346. package/dist/chunk-TC6BTUSU.cjs +0 -1799
  347. package/dist/chunk-TC6BTUSU.cjs.map +0 -1
  348. package/dist/chunk-TPOK3UNI.js +0 -8355
  349. package/dist/chunk-TPOK3UNI.js.map +0 -1
  350. package/dist/chunk-UF6JG5SG.js +0 -312
  351. package/dist/chunk-UF6JG5SG.js.map +0 -1
  352. package/dist/chunk-UKQHXPGW.js +0 -30
  353. package/dist/chunk-UKQHXPGW.js.map +0 -1
  354. package/dist/chunk-V4XG5QF6.js +0 -1685
  355. package/dist/chunk-V4XG5QF6.js.map +0 -1
  356. package/dist/chunk-VEKIWQ3F.cjs +0 -39
  357. package/dist/chunk-VEKIWQ3F.cjs.map +0 -1
  358. package/dist/chunk-WMQRJTAO.js +0 -3266
  359. package/dist/chunk-WMQRJTAO.js.map +0 -1
  360. package/dist/chunk-X6K3HUOY.cjs +0 -86
  361. package/dist/chunk-X6K3HUOY.cjs.map +0 -1
  362. package/dist/chunk-XBTEO4OB.js +0 -391
  363. package/dist/chunk-XBTEO4OB.js.map +0 -1
  364. package/dist/chunk-XIYYHA65.cjs +0 -101
  365. package/dist/chunk-XIYYHA65.cjs.map +0 -1
  366. package/dist/chunk-YJHY7CMN.cjs +0 -1534
  367. package/dist/chunk-YJHY7CMN.cjs.map +0 -1
  368. package/dist/chunk-YLJ4XMA6.js +0 -33
  369. package/dist/chunk-YLJ4XMA6.js.map +0 -1
  370. package/dist/chunk-YNIWOYW6.js +0 -232
  371. package/dist/chunk-YNIWOYW6.js.map +0 -1
  372. package/dist/chunk-Z2XP767T.cjs +0 -35
  373. package/dist/chunk-Z2XP767T.cjs.map +0 -1
  374. package/dist/chunk-Z4X2RWOF.js +0 -37
  375. package/dist/chunk-Z4X2RWOF.js.map +0 -1
  376. package/dist/chunk-ZN6YYPIW.js +0 -67
  377. package/dist/chunk-ZN6YYPIW.js.map +0 -1
  378. package/dist/chunk-ZNFFTYWH.js +0 -1854
  379. package/dist/chunk-ZNFFTYWH.js.map +0 -1
  380. package/dist/variables.cjs +0 -17
  381. package/dist/variables.cjs.map +0 -1
  382. package/dist/variables.d.cts +0 -87
  383. package/dist/variables.d.ts +0 -87
  384. package/dist/variables.js +0 -4
  385. package/dist/variables.js.map +0 -1
package/dist/worker.cjs CHANGED
@@ -1,493 +1,3 @@
1
- 'use strict';
2
-
3
- var chunkPCZVMMWU_cjs = require('./chunk-PCZVMMWU.cjs');
4
- var chunkBESTLPRK_cjs = require('./chunk-BESTLPRK.cjs');
5
- require('./chunk-GDEU72RG.cjs');
6
- require('./chunk-NGBBNL4K.cjs');
7
- require('./chunk-X6K3HUOY.cjs');
8
- require('./chunk-ENRIK36Q.cjs');
9
- require('./chunk-C2OMO3WN.cjs');
10
- require('./chunk-HWHU642X.cjs');
11
- var chunkAKNGX4TZ_cjs = require('./chunk-AKNGX4TZ.cjs');
12
- require('./chunk-N7FNVFXW.cjs');
13
- var chunkHKTQCQ4Z_cjs = require('./chunk-HKTQCQ4Z.cjs');
14
- require('./chunk-MI7OTUHL.cjs');
15
- require('./chunk-ICEKS6YC.cjs');
16
- require('./chunk-ADBA3XBE.cjs');
17
- require('./chunk-4K5W7EH2.cjs');
18
- require('./chunk-Z2XP767T.cjs');
19
- require('./chunk-FR7RNOPT.cjs');
20
- require('./chunk-FEAIOR7N.cjs');
21
- require('./chunk-KXDQKVNX.cjs');
22
- require('./chunk-XIYYHA65.cjs');
23
- require('./chunk-VEKIWQ3F.cjs');
24
- var chunkALYRJ72W_cjs = require('./chunk-ALYRJ72W.cjs');
25
- var chunkA2DZ5BEJ_cjs = require('./chunk-A2DZ5BEJ.cjs');
26
- require('./chunk-IT74O4BE.cjs');
27
- require('./chunk-EJ3ILXX6.cjs');
28
- require('./chunk-LO7HU5WB.cjs');
29
- require('./chunk-7USV76HV.cjs');
30
- require('./chunk-7AXJNQMF.cjs');
31
- require('./chunk-YJHY7CMN.cjs');
32
- require('./chunk-G2YPPLGX.cjs');
33
- require('./chunk-OUHT5Z36.cjs');
34
- require('./chunk-AQNHHJMJ.cjs');
35
- require('./chunk-AMOJYLG2.cjs');
36
- var chunkMIGXCBXT_cjs = require('./chunk-MIGXCBXT.cjs');
37
- require('./chunk-B7LXJ6LC.cjs');
38
-
39
- // src/worker/client.ts
40
- var WorkerEngineClient = class {
41
- constructor(transport) {
42
- this.nextId = 1;
43
- this.pending = /* @__PURE__ */ new Map();
44
- // Broadcast subscribers for async resolutions. Sets, not one callback each, so
45
- // several views can watch the same worker; a resolution is not tied to a
46
- // request id, so these live outside `pending`.
47
- this.resolvedListeners = /* @__PURE__ */ new Set();
48
- this.asyncErrorListeners = /* @__PURE__ */ new Set();
49
- this.terminated = false;
50
- this.transport = transport;
51
- this.transport.onMessage((raw) => this.onMessage(raw));
52
- }
53
- /** Perform the init handshake, resolving once the worker posts `ready`. */
54
- init(options) {
55
- const id = this.nextId++;
56
- return new Promise((resolve, reject) => {
57
- this.pending.set(id, { resolve: () => resolve(), reject });
58
- this.transport.postMessage({
59
- kind: "init",
60
- id,
61
- localeCode: options.localeCode,
62
- diagnosticMode: options.diagnosticMode,
63
- config: options.config,
64
- packages: options.packages,
65
- formatting: options.formatting
66
- });
67
- });
68
- }
69
- parseDocument(input, options) {
70
- const { signal, ...parsing } = options ?? {};
71
- const parseOptions = Object.keys(parsing).length > 0 ? parsing : void 0;
72
- return this.call("parseDocument", [input, parseOptions], signal);
73
- }
74
- evaluateLines(lines, options) {
75
- return this.call("evaluateLines", [lines], options?.signal);
76
- }
77
- evaluateExpression(expression, options) {
78
- return this.call("evaluateExpression", [expression], options?.signal);
79
- }
80
- onResolved(listener) {
81
- this.resolvedListeners.add(listener);
82
- return () => this.resolvedListeners.delete(listener);
83
- }
84
- onAsyncError(listener) {
85
- this.asyncErrorListeners.add(listener);
86
- return () => this.asyncErrorListeners.delete(listener);
87
- }
88
- terminate() {
89
- if (this.terminated) return;
90
- this.terminated = true;
91
- const error = chunkPCZVMMWU_cjs.workerTerminatedError();
92
- for (const entry of this.pending.values()) {
93
- this.unhook(entry);
94
- entry.reject(error);
95
- }
96
- this.pending.clear();
97
- this.resolvedListeners.clear();
98
- this.asyncErrorListeners.clear();
99
- this.transport.terminate();
100
- }
101
- /** Dispatch one request and return the promise that settles on its answer. */
102
- call(method, args, signal) {
103
- if (this.terminated) return Promise.reject(chunkPCZVMMWU_cjs.workerTerminatedError());
104
- if (signal?.aborted) return Promise.reject(chunkPCZVMMWU_cjs.workerCancelledError(method));
105
- const id = this.nextId++;
106
- return new Promise((resolve, reject) => {
107
- const entry = { resolve, reject };
108
- if (signal) {
109
- const onAbort = () => {
110
- if (!this.pending.has(id)) return;
111
- this.pending.delete(id);
112
- this.transport.postMessage({ kind: "cancel", id });
113
- reject(chunkPCZVMMWU_cjs.workerCancelledError(method));
114
- };
115
- entry.signal = signal;
116
- entry.onAbort = onAbort;
117
- signal.addEventListener("abort", onAbort, { once: true });
118
- }
119
- this.pending.set(id, entry);
120
- this.transport.postMessage({ kind: "request", id, method, args });
121
- });
122
- }
123
- /** Route one incoming message to the request that is waiting on its id. */
124
- onMessage(raw) {
125
- const message = raw;
126
- switch (message.kind) {
127
- case "ready":
128
- case "result": {
129
- const value = message.kind === "result" ? message.value : void 0;
130
- this.settle(message.id, (entry) => entry.resolve(value));
131
- break;
132
- }
133
- case "error":
134
- this.settle(message.id, (entry) => entry.reject(chunkPCZVMMWU_cjs.deserializeEngineError(message.error)));
135
- break;
136
- case "async-update":
137
- for (const listener of [...this.resolvedListeners]) listener(message.lines);
138
- break;
139
- case "async-error":
140
- for (const listener of [...this.asyncErrorListeners]) {
141
- listener({
142
- queryKey: message.queryKey,
143
- packageId: message.packageId,
144
- error: chunkPCZVMMWU_cjs.deserializeEngineError(message.error)
145
- });
146
- }
147
- break;
148
- }
149
- }
150
- /** Remove a pending request by id and run the settle callback, if it is still pending. */
151
- settle(id, apply) {
152
- const entry = this.pending.get(id);
153
- if (!entry) return;
154
- this.pending.delete(id);
155
- this.unhook(entry);
156
- apply(entry);
157
- }
158
- /** Detach an entry's abort listener so a settled request leaves nothing on the signal. */
159
- unhook(entry) {
160
- if (entry.signal && entry.onAbort) entry.signal.removeEventListener("abort", entry.onAbort);
161
- }
162
- };
163
- async function createWorkerEngine(options) {
164
- const client = new WorkerEngineClient(options.transport);
165
- await client.init(options);
166
- return client;
167
- }
168
-
169
- // src/worker/serialize.ts
170
- function nonFiniteTag(n) {
171
- return n > 0 ? "Infinity" : n < 0 ? "-Infinity" : "NaN";
172
- }
173
- function serializeMatrix(m) {
174
- const cells = m.data.map((cell) => {
175
- if (typeof cell === "object" && cell !== null) return chunkA2DZ5BEJ_cjs.formatSymbolic(cell);
176
- if (typeof cell === "number" && !Number.isFinite(cell)) return nonFiniteTag(cell);
177
- return cell;
178
- });
179
- return { rows: m.rows, cols: m.cols, cells, hasSymbolic: m.hasSymbolic };
180
- }
181
- function serializeValue(value, settings) {
182
- const reading = value.toNumber();
183
- const dto = {
184
- type: value.type,
185
- text: chunkAKNGX4TZ_cjs.formatValue(value, settings),
186
- // A non-finite reading (1/0, 0/0, an overflow) cannot cross JSON, which
187
- // turns it into null and breaks the round-trip the DTO guarantees. Keep
188
- // `number` finite and name the real value in `nonFinite` instead.
189
- number: Number.isFinite(reading) ? reading : 0
190
- };
191
- if (!Number.isFinite(reading)) {
192
- dto.nonFinite = nonFiniteTag(reading);
193
- }
194
- if (value.unit !== void 0) dto.unit = value.unit;
195
- if (value.timedOut !== void 0) dto.timedOut = value.timedOut;
196
- const raw = value.value;
197
- if (typeof raw === "bigint") {
198
- dto.bigint = raw.toString();
199
- } else if (value.type === 7 /* Matrix */) {
200
- dto.matrix = serializeMatrix(raw);
201
- } else if (value.type === 8 /* Range */) {
202
- const r = raw;
203
- dto.range = { min: r.min, max: r.max };
204
- } else if (value.type === 14 /* Colour */) {
205
- const c = raw;
206
- dto.colour = { hex: chunkALYRJ72W_cjs.toHexString(c), r: c.r, g: c.g, b: c.b, a: c.a, format: c.format, css: chunkALYRJ72W_cjs.formatColour(c) };
207
- }
208
- return dto;
209
- }
210
- function serializeMaybe(value, settings) {
211
- return value ? serializeValue(value, settings) : null;
212
- }
213
- function serializeInlineSolve(solve, settings) {
214
- return {
215
- start: solve.start,
216
- end: solve.end,
217
- expression: solve.expression,
218
- lineNumber: solve.lineNumber,
219
- columnNumber: solve.columnNumber,
220
- result: serializeMaybe(solve.result, settings),
221
- error: solve.error ?? null
222
- };
223
- }
224
- function serializeParsedLine(line, settings) {
225
- return {
226
- lineNumber: line.lineNumber,
227
- text: line.text,
228
- startPosition: line.startPosition,
229
- endPosition: line.endPosition,
230
- isEmpty: line.isEmpty,
231
- hasInlineSolves: line.hasInlineSolves,
232
- inlineSolves: line.inlineSolves.map((solve) => serializeInlineSolve(solve, settings)),
233
- expression: line.expression,
234
- result: serializeMaybe(line.result, settings),
235
- error: line.error
236
- };
237
- }
238
- function serializeParsingResult(result, settings) {
239
- const dto = {
240
- lines: result.lines.map((line) => serializeParsedLine(line, settings)),
241
- totalLines: result.totalLines,
242
- errors: [...result.errors]
243
- };
244
- if (result.diagnostics !== void 0) dto.diagnostics = result.diagnostics;
245
- return dto;
246
- }
247
-
248
- // src/worker/runtime.ts
249
- function resolvePackages(available, names) {
250
- if (names === void 0) return available;
251
- const byName = new Map(available.map((pkg) => [pkg.name, pkg]));
252
- const resolved = [];
253
- for (const name of names) {
254
- const pkg = byName.get(name);
255
- if (!pkg) {
256
- throw chunkMIGXCBXT_cjs.ErrorFactory.config(
257
- chunkPCZVMMWU_cjs.WorkerErrorCodes.WORKER_UNKNOWN_PACKAGE,
258
- `No package named "${name}" is available in this worker runtime`,
259
- { name, available: [...byName.keys()] }
260
- );
261
- }
262
- resolved.push(pkg);
263
- }
264
- return resolved;
265
- }
266
- function startWorkerRuntime(transport, options = {}) {
267
- const available = options.packages ?? chunkHKTQCQ4Z_cjs.BUILTIN_PACKAGES;
268
- let engine = null;
269
- let formatting;
270
- const inFlight = /* @__PURE__ */ new Map();
271
- let retainedLines = /* @__PURE__ */ new Map();
272
- let documentController = null;
273
- let stopEventPump = null;
274
- const post = (message) => transport.postMessage(message);
275
- const fail = (id, error) => {
276
- post({ kind: "error", id, error: chunkPCZVMMWU_cjs.serializeEngineError(chunkMIGXCBXT_cjs.normalizeUnknownError(error)) });
277
- };
278
- const retainLines = (message) => {
279
- const map = /* @__PURE__ */ new Map();
280
- if (message.method === "parseDocument") {
281
- message.args[0].split("\n").forEach((text, index) => map.set(index + 1, text));
282
- } else if (message.method === "evaluateLines") {
283
- message.args[0].forEach((text, index) => map.set(index + 1, text));
284
- } else {
285
- map.set(-1, message.args[0]);
286
- }
287
- return map;
288
- };
289
- const handleAsyncEvent = (eng, event) => {
290
- if (event.type === "error") {
291
- post({
292
- kind: "async-error",
293
- queryKey: event.queryKey,
294
- packageId: event.packageId,
295
- error: chunkPCZVMMWU_cjs.serializeEngineError(chunkMIGXCBXT_cjs.normalizeUnknownError(event.error))
296
- });
297
- return;
298
- }
299
- const lines = [];
300
- for (const lineNumber of event.lineNumbers) {
301
- const text = retainedLines.get(lineNumber);
302
- if (text === void 0) continue;
303
- try {
304
- const value = eng.evaluateLine(lineNumber, text)[0];
305
- if (value) lines.push({ lineNumber, value: serializeValue(value, formatting) });
306
- } catch {
307
- }
308
- }
309
- if (lines.length > 0) post({ kind: "async-update", lines });
310
- };
311
- const startEventPump = (eng) => {
312
- stopEventPump?.();
313
- const reader = eng.getEventStream().getReader();
314
- stopEventPump = () => void reader.cancel();
315
- void (async () => {
316
- try {
317
- for (; ; ) {
318
- const { done, value } = await reader.read();
319
- if (done) return;
320
- handleAsyncEvent(eng, value);
321
- }
322
- } catch {
323
- }
324
- })();
325
- };
326
- const handleInit = (message) => {
327
- try {
328
- const packages = resolvePackages(available, message.packages);
329
- engine = new chunkBESTLPRK_cjs.ExpressionEngine(
330
- message.localeCode ?? "en",
331
- message.diagnosticMode ?? false,
332
- message.config,
333
- void 0,
334
- packages
335
- );
336
- formatting = message.formatting;
337
- startEventPump(engine);
338
- post({ kind: "ready", id: message.id });
339
- } catch (error) {
340
- fail(message.id, error);
341
- }
342
- };
343
- const runMethod = (eng, message) => {
344
- const { method, args } = message;
345
- switch (method) {
346
- case "parseDocument":
347
- return serializeParsingResult(eng.parseDocument(args[0], args[1]), formatting);
348
- case "evaluateLines":
349
- return eng.evaluateLines(args[0]).map((line) => serializeParsedLine(line, formatting));
350
- case "evaluateExpression":
351
- return eng.evaluateExpression(args[0]).map((value) => serializeValue(value, formatting));
352
- default:
353
- throw chunkMIGXCBXT_cjs.ErrorFactory.execution(
354
- chunkPCZVMMWU_cjs.WorkerErrorCodes.WORKER_UNKNOWN_METHOD,
355
- `The worker runtime has no method named "${String(method)}"`,
356
- { method }
357
- );
358
- }
359
- };
360
- const handleRequest = (message) => {
361
- const eng = engine;
362
- if (!eng) {
363
- fail(
364
- message.id,
365
- chunkMIGXCBXT_cjs.ErrorFactory.execution(
366
- chunkPCZVMMWU_cjs.WorkerErrorCodes.WORKER_NOT_INITIALISED,
367
- "The worker received a request before its engine finished initialising"
368
- )
369
- );
370
- return;
371
- }
372
- documentController?.abort();
373
- const controller = new AbortController();
374
- documentController = controller;
375
- retainedLines = retainLines(message);
376
- inFlight.set(message.id, controller);
377
- eng.setKeystrokeSignal(controller.signal);
378
- try {
379
- const value = runMethod(eng, message);
380
- post({ kind: "result", id: message.id, value });
381
- } catch (error) {
382
- fail(message.id, error);
383
- } finally {
384
- inFlight.delete(message.id);
385
- eng.setKeystrokeSignal(null);
386
- }
387
- };
388
- transport.onMessage((raw) => {
389
- const message = raw;
390
- switch (message.kind) {
391
- case "init":
392
- handleInit(message);
393
- break;
394
- case "request":
395
- handleRequest(message);
396
- break;
397
- case "cancel":
398
- inFlight.get(message.id)?.abort();
399
- break;
400
- }
401
- });
402
- return () => {
403
- stopEventPump?.();
404
- stopEventPump = null;
405
- documentController?.abort();
406
- documentController = null;
407
- retainedLines = /* @__PURE__ */ new Map();
408
- for (const controller of inFlight.values()) controller.abort();
409
- inFlight.clear();
410
- engine?.clear();
411
- engine = null;
412
- transport.terminate();
413
- };
414
- }
415
-
416
- // src/worker/transport.ts
417
- function cloneMessage(value) {
418
- return typeof globalThis.structuredClone === "function" ? globalThis.structuredClone(value) : JSON.parse(JSON.stringify(value));
419
- }
420
- function createLinkedTransports() {
421
- let clientHandler = null;
422
- let hostHandler = null;
423
- let alive = true;
424
- const deliver = (target, message) => {
425
- const cloned = cloneMessage(message);
426
- queueMicrotask(() => {
427
- if (!alive) return;
428
- target()?.(cloned);
429
- });
430
- };
431
- const client = {
432
- postMessage: (message) => deliver(() => hostHandler, message),
433
- onMessage: (handler) => {
434
- clientHandler = handler;
435
- },
436
- terminate: () => {
437
- alive = false;
438
- }
439
- };
440
- const host = {
441
- postMessage: (message) => deliver(() => clientHandler, message),
442
- onMessage: (handler) => {
443
- hostHandler = handler;
444
- },
445
- terminate: () => {
446
- alive = false;
447
- }
448
- };
449
- return { client, host };
450
- }
451
- function eventTargetTransport(target) {
452
- return {
453
- postMessage: (message) => target.postMessage(message),
454
- onMessage: (handler) => {
455
- const listener = (event) => handler(event.data);
456
- if (typeof target.addEventListener === "function") {
457
- target.addEventListener("message", listener);
458
- } else {
459
- target.onmessage = listener;
460
- }
461
- target.start?.();
462
- },
463
- // A main-side Worker terminates; a worker's own `self` closes. Calling
464
- // whichever exists keeps one adapter usable from both ends.
465
- terminate: () => {
466
- target.terminate?.();
467
- target.close?.();
468
- }
469
- };
470
- }
471
- function messagePortTransport(port) {
472
- return {
473
- postMessage: (message) => port.postMessage(message),
474
- onMessage: (handler) => {
475
- port.on("message", (message) => handler(message));
476
- },
477
- terminate: () => {
478
- port.terminate?.();
479
- port.close?.();
480
- }
481
- };
482
- }
483
-
484
- exports.createLinkedTransports = createLinkedTransports;
485
- exports.createWorkerEngine = createWorkerEngine;
486
- exports.eventTargetTransport = eventTargetTransport;
487
- exports.messagePortTransport = messagePortTransport;
488
- exports.serializeParsedLine = serializeParsedLine;
489
- exports.serializeParsingResult = serializeParsingResult;
490
- exports.serializeValue = serializeValue;
491
- exports.startWorkerRuntime = startWorkerRuntime;
492
- //# sourceMappingURL=worker.cjs.map
1
+ 'use strict';var chunkP6WPEUAJ_cjs=require('./chunk-P6WPEUAJ.cjs'),chunkGK2OHWRF_cjs=require('./chunk-GK2OHWRF.cjs');require('./chunk-FDE5HWDI.cjs'),require('./chunk-NGBBNL4K.cjs'),require('./chunk-ZCNBT44X.cjs'),require('./chunk-TTFO4YDP.cjs'),require('./chunk-SYYE3QAX.cjs'),require('./chunk-AXMQG5TS.cjs');var chunkHLBYHXQD_cjs=require('./chunk-HLBYHXQD.cjs');require('./chunk-R2SZFJTT.cjs');var chunkOVKDDTXO_cjs=require('./chunk-OVKDDTXO.cjs');require('./chunk-6INX773F.cjs'),require('./chunk-7BXPCWKM.cjs'),require('./chunk-4QVBSG6B.cjs'),require('./chunk-VAGS5JS7.cjs'),require('./chunk-UURM7P3P.cjs'),require('./chunk-ZLRJ7TDP.cjs'),require('./chunk-JAK3RAFA.cjs'),require('./chunk-4BZIYU7S.cjs'),require('./chunk-JFAJN3C2.cjs'),require('./chunk-TLG7VZRX.cjs');var chunkESUN2THE_cjs=require('./chunk-ESUN2THE.cjs'),chunkN7N7MPMK_cjs=require('./chunk-N7N7MPMK.cjs');require('./chunk-PS272DZJ.cjs'),require('./chunk-IANAMBJQ.cjs'),require('./chunk-EVI6OHQH.cjs'),require('./chunk-32GC2FHC.cjs'),require('./chunk-Y7O4D3BJ.cjs'),require('./chunk-2LFLR3VZ.cjs'),require('./chunk-5IJD5L3O.cjs'),require('./chunk-MSYX32PF.cjs'),require('./chunk-FWW3M36J.cjs'),require('./chunk-CIQOK7Q4.cjs');var chunkSOMGSIO4_cjs=require('./chunk-SOMGSIO4.cjs');var W=class{constructor(r){this.nextId=1;this.pending=new Map;this.resolvedListeners=new Set;this.asyncErrorListeners=new Set;this.terminated=false;this.transport=r,this.transport.onMessage(n=>this.onMessage(n));}init(r){let n=this.nextId++;return new Promise((t,o)=>{this.pending.set(n,{resolve:()=>t(),reject:o}),this.transport.postMessage({kind:"init",id:n,localeCode:r.localeCode,diagnostics:r.diagnostics,config:r.config,packages:r.packages,formatting:r.formatting});})}parseDocument(r,n){let{signal:t,...o}=n??{},a=Object.keys(o).length>0?o:void 0;return this.call("parseDocument",[r,a],t)}evaluateLines(r,n){return this.call("evaluateLines",[r],n?.signal)}evaluateExpression(r,n){return this.call("evaluateExpression",[r],n?.signal)}onResolved(r){return this.resolvedListeners.add(r),()=>this.resolvedListeners.delete(r)}onAsyncError(r){return this.asyncErrorListeners.add(r),()=>this.asyncErrorListeners.delete(r)}terminate(){if(this.terminated)return;this.terminated=true;let r=chunkP6WPEUAJ_cjs.e();for(let n of this.pending.values())this.unhook(n),n.reject(r);this.pending.clear(),this.resolvedListeners.clear(),this.asyncErrorListeners.clear(),this.transport.terminate();}call(r,n,t){if(this.terminated)return Promise.reject(chunkP6WPEUAJ_cjs.e());if(t?.aborted)return Promise.reject(chunkP6WPEUAJ_cjs.d(r));let o=this.nextId++;return new Promise((a,u)=>{let c={resolve:a,reject:u};if(t){let g=()=>{this.pending.has(o)&&(this.pending.delete(o),this.transport.postMessage({kind:"cancel",id:o}),u(chunkP6WPEUAJ_cjs.d(r)));};c.signal=t,c.onAbort=g,t.addEventListener("abort",g,{once:true});}this.pending.set(o,c),this.transport.postMessage({kind:"request",id:o,method:r,args:n});})}onMessage(r){let n=r;switch(n.kind){case "ready":case "result":{let t=n.kind==="result"?n.value:void 0;this.settle(n.id,o=>o.resolve(t));break}case "error":this.settle(n.id,t=>t.reject(chunkP6WPEUAJ_cjs.c(n.error)));break;case "async-update":for(let t of [...this.resolvedListeners])t(n.lines);break;case "async-error":for(let t of [...this.asyncErrorListeners])t({queryKey:n.queryKey,packageId:n.packageId,error:chunkP6WPEUAJ_cjs.c(n.error)});break}}settle(r,n){let t=this.pending.get(r);t&&(this.pending.delete(r),this.unhook(t),n(t));}unhook(r){r.signal&&r.onAbort&&r.signal.removeEventListener("abort",r.onAbort);}};async function K(e){let r=new W(e.transport);return await r.init(e),r}function O(e){return e>0?"Infinity":e<0?"-Infinity":"NaN"}function U(e){let r=e.data.map(n=>typeof n=="object"&&n!==null?chunkN7N7MPMK_cjs.R(n):typeof n=="number"&&!Number.isFinite(n)?O(n):n);return {rows:e.rows,cols:e.cols,cells:r,hasSymbolic:e.hasSymbolic}}function m(e,r){let n=e.toNumber(),t={type:e.type,text:chunkHLBYHXQD_cjs.c(e,r),number:Number.isFinite(n)?n:0};Number.isFinite(n)||(t.nonFinite=O(n)),e.unit!==void 0&&(t.unit=e.unit),e.timedOut!==void 0&&(t.timedOut=e.timedOut);let o=e.value;if(typeof o=="bigint")t.bigint=o.toString();else if(e.type===7)t.matrix=U(o);else if(e.type===8){let a=o;t.range={min:a.min,max:a.max};}else if(e.type===14){let a=o;t.colour={hex:chunkESUN2THE_cjs.f(a),r:a.r,g:a.g,b:a.b,a:a.a,format:a.format,css:chunkESUN2THE_cjs.g(a)};}return t}function N(e,r){return e?m(e,r):null}function _(e,r){return {start:e.start,end:e.end,expression:e.expression,lineNumber:e.lineNumber,columnNumber:e.columnNumber,result:N(e.result,r),error:e.error??null}}function y(e,r){return {lineNumber:e.lineNumber,text:e.text,startPosition:e.startPosition,endPosition:e.endPosition,isEmpty:e.isEmpty,hasInlineSolves:e.hasInlineSolves,inlineSolves:e.inlineSolves.map(n=>_(n,r)),expression:e.expression,result:N(e.result,r),error:e.error}}function x(e,r){let n={lines:e.lines.map(t=>y(t,r)),totalLines:e.totalLines,errors:[...e.errors]};return e.diagnostics!==void 0&&(n.diagnostics=e.diagnostics),n}function H(e,r){if(r===void 0)return e;let n=new Map(e.map(o=>[o.name,o])),t=[];for(let o of r){let a=n.get(o);if(!a)throw chunkSOMGSIO4_cjs.c.config(chunkP6WPEUAJ_cjs.a.WORKER_UNKNOWN_PACKAGE,`No package named "${o}" is available in this worker runtime`,{name:o,available:[...n.keys()]});t.push(a);}return t}function B(e,r={}){let n=r.packages??chunkOVKDDTXO_cjs.y,t=null,o,a=new Map,u=new Map,c=null,g=null,p=i=>e.postMessage(i),h=(i,s)=>{p({kind:"error",id:i,error:chunkP6WPEUAJ_cjs.b(chunkSOMGSIO4_cjs.d(s))});},C=i=>{let s=new Map;return i.method==="parseDocument"?i.args[0].split(`
2
+ `).forEach((d,l)=>s.set(l+1,d)):i.method==="evaluateLines"?i.args[0].forEach((d,l)=>s.set(l+1,d)):s.set(-1,i.args[0]),s},q=(i,s)=>{if(s.type==="error"){p({kind:"async-error",queryKey:s.queryKey,packageId:s.packageId,error:chunkP6WPEUAJ_cjs.b(chunkSOMGSIO4_cjs.d(s.error))});return}let d=[];for(let l of s.lineNumbers){let f=u.get(l);if(f!==void 0)try{let R=i.evaluateLine(l,f);R&&d.push({lineNumber:l,value:m(R,o)});}catch{}}d.length>0&&p({kind:"async-update",lines:d});},F=i=>{g?.();let s=i.getEventStream().getReader();g=()=>{s.cancel();},(async()=>{try{for(;;){let{done:d,value:l}=await s.read();if(d)return;q(i,l);}}catch{}})();},V=i=>{try{let s=H(n,i.packages);t=new chunkGK2OHWRF_cjs.n({locale:i.localeCode??"en",diagnostics:i.diagnostics??!1,config:i.config,packages:s}),o=i.formatting,F(t),p({kind:"ready",id:i.id});}catch(s){h(i.id,s);}},j=(i,s)=>{let{method:d,args:l}=s;switch(d){case "parseDocument":return x(i.parseDocument(l[0],l[1]),o);case "evaluateLines":return i.evaluateLines(l[0]).map(f=>y(f,o));case "evaluateExpression":return m(i.evaluateExpression(l[0]),o);default:throw chunkSOMGSIO4_cjs.c.execution(chunkP6WPEUAJ_cjs.a.WORKER_UNKNOWN_METHOD,`The worker runtime has no method named "${String(d)}"`,{method:d})}},D=i=>{let s=t;if(!s){h(i.id,chunkSOMGSIO4_cjs.c.execution(chunkP6WPEUAJ_cjs.a.WORKER_NOT_INITIALISED,"The worker received a request before its engine finished initialising"));return}c?.abort();let d=new AbortController;c=d,u=C(i),a.set(i.id,d),s.setKeystrokeSignal(d.signal);try{let l=j(s,i);p({kind:"result",id:i.id,value:l});}catch(l){h(i.id,l);}finally{a.delete(i.id),s.setKeystrokeSignal(null);}};return e.onMessage(i=>{let s=i;switch(s.kind){case "init":V(s);break;case "request":D(s);break;case "cancel":a.get(s.id)?.abort();break}}),()=>{g?.(),g=null,c?.abort(),c=null,u=new Map;for(let i of a.values())i.abort();a.clear(),t?.clear(),t=null,e.terminate();}}function G(e){return typeof globalThis.structuredClone=="function"?globalThis.structuredClone(e):JSON.parse(JSON.stringify(e))}function J(){let e=null,r=null,n=true,t=(u,c)=>{let g=G(c);queueMicrotask(()=>{n&&u()?.(g);});};return {client:{postMessage:u=>t(()=>r,u),onMessage:u=>{e=u;},terminate:()=>{n=false;}},host:{postMessage:u=>t(()=>e,u),onMessage:u=>{r=u;},terminate:()=>{n=false;}}}}function $(e){return {postMessage:r=>e.postMessage(r),onMessage:r=>{let n=t=>r(t.data);typeof e.addEventListener=="function"?e.addEventListener("message",n):e.onmessage=n,e.start?.();},terminate:()=>{e.terminate?.(),e.close?.();}}}function Q(e){return {postMessage:r=>e.postMessage(r),onMessage:r=>{e.on("message",n=>r(n));},terminate:()=>{e.terminate?.(),e.close?.();}}}exports.createLinkedTransports=J;exports.createWorkerEngine=K;exports.eventTargetTransport=$;exports.messagePortTransport=Q;exports.serializeParsedLine=y;exports.serializeParsingResult=x;exports.serializeValue=m;exports.startWorkerRuntime=B;//# sourceMappingURL=worker.cjs.map
493
3
  //# sourceMappingURL=worker.cjs.map