@nocobase/plugin-workflow-javascript 2.1.0-beta.9 → 2.2.0-alpha.1

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 (191) hide show
  1. package/build.config.ts +52 -0
  2. package/dist/client/615.a016da4e5f572288.js +10 -0
  3. package/dist/client/944.18159d8a1521708e.js +10 -0
  4. package/dist/client/CodeEditor.d.ts +8 -0
  5. package/dist/client/index.js +1 -1
  6. package/dist/externalVersion.js +4 -4
  7. package/dist/node_modules/@jitl/quickjs-ffi-types/LICENSE +21 -0
  8. package/dist/node_modules/@jitl/quickjs-ffi-types/README.md +5 -0
  9. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.d.mts +549 -0
  10. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.d.ts +549 -0
  11. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.js +2 -0
  12. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.js.map +1 -0
  13. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.mjs +2 -0
  14. package/dist/node_modules/@jitl/quickjs-ffi-types/dist/index.mjs.map +1 -0
  15. package/dist/node_modules/@jitl/quickjs-ffi-types/package.json +36 -0
  16. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/LICENSE +47 -0
  17. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/README.md +93 -0
  18. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.browser.d.ts +15 -0
  19. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.browser.mjs +2 -0
  20. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.cjs +2 -0
  21. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.cloudflare.cjs +2 -0
  22. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.cloudflare.d.ts +15 -0
  23. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.d.ts +15 -0
  24. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.mjs +2 -0
  25. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.wasm +0 -0
  26. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/emscripten-module.wasm.map +1 -0
  27. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.d.mts +94 -0
  28. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.d.ts +94 -0
  29. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.js +2 -0
  30. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.js.map +1 -0
  31. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.mjs +2 -0
  32. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/ffi.mjs.map +1 -0
  33. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.d.mts +20 -0
  34. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.d.ts +20 -0
  35. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.js +2 -0
  36. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.js.map +1 -0
  37. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.mjs +2 -0
  38. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/dist/index.mjs.map +1 -0
  39. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-asyncify/package.json +61 -0
  40. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/LICENSE +47 -0
  41. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/README.md +88 -0
  42. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.browser.d.ts +11 -0
  43. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.browser.mjs +5430 -0
  44. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.cjs +5485 -0
  45. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.cloudflare.cjs +5424 -0
  46. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.cloudflare.d.ts +11 -0
  47. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.d.ts +11 -0
  48. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.mjs +5541 -0
  49. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.wasm +0 -0
  50. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/emscripten-module.wasm.map +1 -0
  51. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.d.mts +85 -0
  52. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.d.ts +85 -0
  53. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.js +2 -0
  54. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.js.map +1 -0
  55. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.mjs +2 -0
  56. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/ffi.mjs.map +1 -0
  57. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.d.mts +20 -0
  58. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.d.ts +20 -0
  59. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.js +2 -0
  60. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.js.map +1 -0
  61. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.mjs +2 -0
  62. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/dist/index.mjs.map +1 -0
  63. package/dist/node_modules/@jitl/quickjs-wasmfile-debug-sync/package.json +61 -0
  64. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/LICENSE +47 -0
  65. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/README.md +89 -0
  66. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.browser.d.ts +15 -0
  67. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.browser.mjs +26 -0
  68. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.cjs +25 -0
  69. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.cloudflare.cjs +25 -0
  70. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.cloudflare.d.ts +15 -0
  71. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.d.ts +15 -0
  72. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.mjs +30 -0
  73. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/emscripten-module.wasm +0 -0
  74. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.d.mts +94 -0
  75. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.d.ts +94 -0
  76. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.js +2 -0
  77. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.js.map +1 -0
  78. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.mjs +2 -0
  79. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/ffi.mjs.map +1 -0
  80. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.d.mts +20 -0
  81. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.d.ts +20 -0
  82. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.js +2 -0
  83. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.js.map +1 -0
  84. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.mjs +2 -0
  85. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/dist/index.mjs.map +1 -0
  86. package/dist/node_modules/@jitl/quickjs-wasmfile-release-asyncify/package.json +61 -0
  87. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/LICENSE +47 -0
  88. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/README.md +82 -0
  89. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.browser.d.ts +11 -0
  90. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.browser.mjs +22 -0
  91. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.cjs +21 -0
  92. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.cloudflare.cjs +21 -0
  93. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.cloudflare.d.ts +11 -0
  94. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.d.ts +11 -0
  95. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.mjs +25 -0
  96. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/emscripten-module.wasm +0 -0
  97. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.d.mts +85 -0
  98. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.d.ts +85 -0
  99. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.js +2 -0
  100. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.js.map +1 -0
  101. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.mjs +2 -0
  102. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/ffi.mjs.map +1 -0
  103. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.d.mts +20 -0
  104. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.d.ts +20 -0
  105. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.js +2 -0
  106. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.js.map +1 -0
  107. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.mjs +2 -0
  108. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/dist/index.mjs.map +1 -0
  109. package/dist/node_modules/@jitl/quickjs-wasmfile-release-sync/package.json +61 -0
  110. package/dist/node_modules/joi/dist/joi-browser.min.js +1 -0
  111. package/dist/node_modules/joi/lib/annotate.js +175 -0
  112. package/dist/node_modules/joi/lib/base.js +1069 -0
  113. package/dist/node_modules/joi/lib/cache.js +143 -0
  114. package/dist/node_modules/joi/lib/common.js +216 -0
  115. package/dist/node_modules/joi/lib/compile.js +283 -0
  116. package/dist/node_modules/joi/lib/errors.js +271 -0
  117. package/dist/node_modules/joi/lib/extend.js +312 -0
  118. package/dist/node_modules/joi/lib/index.d.ts +2365 -0
  119. package/dist/node_modules/joi/lib/index.js +1 -0
  120. package/dist/node_modules/joi/lib/manifest.js +476 -0
  121. package/dist/node_modules/joi/lib/messages.js +178 -0
  122. package/dist/node_modules/joi/lib/modify.js +267 -0
  123. package/dist/node_modules/joi/lib/ref.js +414 -0
  124. package/dist/node_modules/joi/lib/schemas.js +302 -0
  125. package/dist/node_modules/joi/lib/state.js +166 -0
  126. package/dist/node_modules/joi/lib/template.js +463 -0
  127. package/dist/node_modules/joi/lib/trace.js +346 -0
  128. package/dist/node_modules/joi/lib/types/alternatives.js +364 -0
  129. package/dist/node_modules/joi/lib/types/any.js +174 -0
  130. package/dist/node_modules/joi/lib/types/array.js +809 -0
  131. package/dist/node_modules/joi/lib/types/binary.js +100 -0
  132. package/dist/node_modules/joi/lib/types/boolean.js +150 -0
  133. package/dist/node_modules/joi/lib/types/date.js +233 -0
  134. package/dist/node_modules/joi/lib/types/function.js +93 -0
  135. package/dist/node_modules/joi/lib/types/keys.js +1067 -0
  136. package/dist/node_modules/joi/lib/types/link.js +168 -0
  137. package/dist/node_modules/joi/lib/types/number.js +363 -0
  138. package/dist/node_modules/joi/lib/types/object.js +22 -0
  139. package/dist/node_modules/joi/lib/types/string.js +850 -0
  140. package/dist/node_modules/joi/lib/types/symbol.js +102 -0
  141. package/dist/node_modules/joi/lib/validator.js +750 -0
  142. package/dist/node_modules/joi/lib/values.js +263 -0
  143. package/dist/node_modules/joi/node_modules/@hapi/topo/lib/index.d.ts +60 -0
  144. package/dist/node_modules/joi/node_modules/@hapi/topo/lib/index.js +225 -0
  145. package/dist/node_modules/joi/node_modules/@hapi/topo/package.json +30 -0
  146. package/dist/node_modules/joi/package.json +1 -0
  147. package/dist/node_modules/quickjs-emscripten/LICENSE +21 -0
  148. package/dist/node_modules/quickjs-emscripten/README.md +928 -0
  149. package/dist/node_modules/quickjs-emscripten/dist/chunk-OHAYRCBA.mjs +2 -0
  150. package/dist/node_modules/quickjs-emscripten/dist/chunk-OHAYRCBA.mjs.map +1 -0
  151. package/dist/node_modules/quickjs-emscripten/dist/index.d.mts +57 -0
  152. package/dist/node_modules/quickjs-emscripten/dist/index.d.ts +57 -0
  153. package/dist/node_modules/quickjs-emscripten/dist/index.global.js +7309 -0
  154. package/dist/node_modules/quickjs-emscripten/dist/index.js +2 -0
  155. package/dist/node_modules/quickjs-emscripten/dist/index.js.map +1 -0
  156. package/dist/node_modules/quickjs-emscripten/dist/index.mjs +2 -0
  157. package/dist/node_modules/quickjs-emscripten/dist/index.mjs.map +1 -0
  158. package/dist/node_modules/quickjs-emscripten/dist/variants.d.mts +39 -0
  159. package/dist/node_modules/quickjs-emscripten/dist/variants.d.ts +39 -0
  160. package/dist/node_modules/quickjs-emscripten/dist/variants.js +2 -0
  161. package/dist/node_modules/quickjs-emscripten/dist/variants.js.map +1 -0
  162. package/dist/node_modules/quickjs-emscripten/dist/variants.mjs +2 -0
  163. package/dist/node_modules/quickjs-emscripten/dist/variants.mjs.map +1 -0
  164. package/dist/node_modules/quickjs-emscripten/package.json +69 -0
  165. package/dist/node_modules/quickjs-emscripten-core/LICENSE +21 -0
  166. package/dist/node_modules/quickjs-emscripten-core/README.md +341 -0
  167. package/dist/node_modules/quickjs-emscripten-core/README.template.md +70 -0
  168. package/dist/node_modules/quickjs-emscripten-core/dist/chunk-TAV5CUKK.mjs +2 -0
  169. package/dist/node_modules/quickjs-emscripten-core/dist/chunk-TAV5CUKK.mjs.map +1 -0
  170. package/dist/node_modules/quickjs-emscripten-core/dist/chunk-V2S4ZYJR.mjs +7 -0
  171. package/dist/node_modules/quickjs-emscripten-core/dist/chunk-V2S4ZYJR.mjs.map +1 -0
  172. package/dist/node_modules/quickjs-emscripten-core/dist/index.d.mts +2033 -0
  173. package/dist/node_modules/quickjs-emscripten-core/dist/index.d.ts +2033 -0
  174. package/dist/node_modules/quickjs-emscripten-core/dist/index.js +7 -0
  175. package/dist/node_modules/quickjs-emscripten-core/dist/index.js.map +1 -0
  176. package/dist/node_modules/quickjs-emscripten-core/dist/index.mjs +2 -0
  177. package/dist/node_modules/quickjs-emscripten-core/dist/index.mjs.map +1 -0
  178. package/dist/node_modules/quickjs-emscripten-core/dist/module-ES6BEMUI.mjs +2 -0
  179. package/dist/node_modules/quickjs-emscripten-core/dist/module-ES6BEMUI.mjs.map +1 -0
  180. package/dist/node_modules/quickjs-emscripten-core/dist/module-asyncify-2EFITU5U.mjs +2 -0
  181. package/dist/node_modules/quickjs-emscripten-core/dist/module-asyncify-2EFITU5U.mjs.map +1 -0
  182. package/dist/node_modules/quickjs-emscripten-core/package.json +49 -0
  183. package/dist/node_modules/winston-transport/index.js +2 -2
  184. package/dist/node_modules/winston-transport/package.json +1 -1
  185. package/dist/server/QuickJs.js +145 -0
  186. package/dist/server/ScriptInstruction.d.ts +24 -10
  187. package/dist/server/ScriptInstruction.js +51 -11
  188. package/dist/server/Vm.js +42 -27
  189. package/package.json +4 -7
  190. package/dist/client/907399554f340b0a.js +0 -10
  191. package/dist/client/d608e8e5c2f2b5cf.js +0 -10
@@ -0,0 +1,89 @@
1
+ # @jitl/quickjs-wasmfile-release-asyncify
2
+
3
+ Variant with separate .WASM file. Supports browser ESM, NodeJS ESM, and NodeJS CommonJS.
4
+
5
+ This generated package is part of [quickjs-emscripten](https://github.com/justjake/quickjs-emscripten).
6
+ It contains a variant of the quickjs WASM library, and can be used with quickjs-emscripten-core.
7
+
8
+ ```typescript
9
+ import variant from "@jitl/quickjs-wasmfile-release-asyncify"
10
+ import { newQuickJSAsyncWASMModuleFromVariant } from "quickjs-emscripten-core"
11
+ const QuickJS = await newQuickJSAsyncWASMModuleFromVariant(variant)
12
+ ```
13
+
14
+ This variant was built with the following settings:
15
+
16
+ ## Library: quickjs
17
+
18
+ The original [bellard/quickjs](https://github.com/bellard/quickjs) library.
19
+
20
+ Version [2025-09-13+f1139494](https://github.com/bellard/quickjs/commit/f1139494d18a2053630c5ed3384a42bb70db3c53) vendored to quickjs-emscripten on 2026-02-15.
21
+
22
+ ## Release mode: release
23
+
24
+ Optimized for performance; use when building/deploying your application.
25
+
26
+ ## Exports: require import browser workerd
27
+
28
+ Exports the following in package.json for the package entrypoint:
29
+
30
+ - Exports a NodeJS-compatible CommonJS module, which is faster to load and run compared to an ESModule.
31
+ - Exports a NodeJS-compatible ESModule. Cannot be imported synchronously from a NodeJS CommonJS module.
32
+ - Exports a browser-compatible ESModule, designed to work in browsers and browser-like environments.
33
+ - Targets Cloudflare Workers.
34
+
35
+ ## Extra async magic? Yes
36
+
37
+ Build run through the ASYNCIFY WebAssembly transform. This imposes substantial size (2x the size of sync) and speed penalties (40% the speed of sync). In return, allows synchronous calls from the QuickJS WASM runtime to async functions on the host. The extra magic makes this variant slower than sync variants. Note that both variants support regular async functions. Only adopt ASYNCIFY if you need to! The [QuickJSAsyncRuntime](https://github.com/justjake/quickjs-emscripten/blob/main/doc/quickjs-emscripten/classes/QuickJSAsyncRuntime.md) and [QuickJSAsyncContext](https://github.com/justjake/quickjs-emscripten/blob/main/doc/quickjs-emscripten/classes/QuickJSAsyncContext.md) classes expose the ASYNCIFY-specific APIs.
38
+
39
+ ## Single-file, or separate .wasm file? wasm
40
+
41
+ Has a separate .wasm file. May offer better caching in your browser, and reduces the size of your JS bundle. If you have issues, try a 'singlefile' variant.
42
+
43
+ ## More details
44
+
45
+ Full variant JSON description:
46
+
47
+ ```json
48
+ {
49
+ "library": "quickjs",
50
+ "releaseMode": "release",
51
+ "syncMode": "asyncify",
52
+ "description": "Variant with separate .WASM file. Supports browser ESM, NodeJS ESM, and NodeJS CommonJS.",
53
+ "emscriptenInclusion": "wasm",
54
+ "exports": {
55
+ "require": {
56
+ "emscriptenEnvironment": ["node"]
57
+ },
58
+ "import": {
59
+ "emscriptenEnvironment": ["node"]
60
+ },
61
+ "browser": {
62
+ "emscriptenEnvironment": ["web", "worker"]
63
+ },
64
+ "workerd": {
65
+ "emscriptenEnvironment": ["web"]
66
+ }
67
+ }
68
+ }
69
+ ```
70
+
71
+ Variant-specific Emscripten build flags:
72
+
73
+ ```json
74
+ [
75
+ "-s ASYNCIFY=1",
76
+ "-DQTS_ASYNCIFY=1",
77
+ "-DQTS_ASYNCIFY_DEFAULT_STACK_SIZE=81920",
78
+ "-s ASYNCIFY_STACK_SIZE=81920",
79
+ "-s ASYNCIFY_REMOVE=@$(BUILD_WRAPPER)/asyncify-remove.json",
80
+ "-s ASYNCIFY_IMPORTS=@$(BUILD_WRAPPER)/asyncify-imports.json",
81
+ "-lasync.js",
82
+ "-Oz",
83
+ "-flto",
84
+ "--closure 1",
85
+ "-s FILESYSTEM=0",
86
+ "--pre-js $(TEMPLATES)/pre-extension.js",
87
+ "--pre-js $(TEMPLATES)/pre-wasmMemory.js"
88
+ ]
89
+ ```
@@ -0,0 +1,15 @@
1
+ // Generated from ../../templates/emscripten-module.ASYNCIFY.d.ts
2
+ import type { EmscriptenModuleLoader, QuickJSAsyncEmscriptenModule } from "@jitl/quickjs-ffi-types"
3
+ /**
4
+ * Emscripten module built from [`quickjs/quickjs.h`](../quickjs/quickjs.h) and
5
+ * our FFI support functions [c/interface.c](../c/interface.c), compiled with -s
6
+ * ASYNCIFY=1.
7
+ *
8
+ * Because this version is built with ASYNCIFY, the C code can call asynchronous
9
+ * Javascript functions as though they were synchronous.
10
+ *
11
+ * Note that emscripten modules returned by a `MODULARIZE=1` emscripten build
12
+ * (like this one) load asynchronously.
13
+ */
14
+ declare const ModuleLoader: EmscriptenModuleLoader<QuickJSAsyncEmscriptenModule>
15
+ export default ModuleLoader
@@ -0,0 +1,26 @@
1
+ async function QuickJSRaw(moduleArg={}){var moduleRtn;var d=moduleArg,aa=!!globalThis.window,f=!!globalThis.WorkerGlobalScope;function m(a){a={log:a||function(){}};for(const c of m.eb)c(a);return d.quickJSEmscriptenExtensions=a}m.eb=[];d.quickjsEmscriptenInit=m;m.eb.push(a=>{a.getWasmMemory=function(){return r}});var t="./this.program",ba=import.meta.url,w="",x,y;
2
+ if(aa||f){try{w=(new URL(".",ba)).href}catch{}f&&(y=a=>{var c=new XMLHttpRequest;c.open("GET",a,!1);c.responseType="arraybuffer";c.send(null);return new Uint8Array(c.response)});x=async a=>{a=await fetch(a,{credentials:"same-origin"});if(a.ok)return a.arrayBuffer();throw Error(a.status+" : "+a.url);}}var z=console.log.bind(console),A=console.error.bind(console),B,C=!1,D,E,F,G,H,I,J,K=!1;
3
+ function ca(){var a=r.buffer;d.HEAP8=G=new Int8Array(a);new Int16Array(a);d.HEAPU8=H=new Uint8Array(a);new Uint16Array(a);I=new Int32Array(a);J=new Uint32Array(a);new Float32Array(a);new Float64Array(a);new BigInt64Array(a);new BigUint64Array(a)}function L(a){d.onAbort?.(a);a="Aborted("+a+")";A(a);C=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");F?.(a);throw a;}var M;
4
+ async function da(a){if(!B)try{var c=await x(a);return new Uint8Array(c)}catch{}if(a==M&&B)a=new Uint8Array(B);else if(y)a=y(a);else throw"both async and sync fetching of the wasm failed";return a}async function ea(a,c){try{var b=await da(a);return await WebAssembly.instantiate(b,c)}catch(e){A(`failed to asynchronously prepare wasm: ${e}`),L(e)}}
5
+ async function fa(a){var c=M;if(!B)try{var b=fetch(c,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(b,a)}catch(e){A(`wasm streaming compile failed: ${e}`),A("falling back to ArrayBuffer instantiation")}return ea(c,a)}class ha{name="ExitStatus";constructor(a){this.message=`Program terminated with exit(${a})`;this.status=a}}
6
+ var ia=a=>{for(;0<a.length;)a.shift()(d)},ja=[],ka=[],la=()=>{var a=d.preRun.shift();ka.push(a)},N=!0,r,ma=new TextDecoder,na=(a,c,b,e)=>{b=c+b;if(e)return b;for(;a[c]&&!(c>=b);)++c;return c},O=(a,c,b)=>a?ma.decode(H.subarray(a,na(H,a,c,b))):"",P=0,oa=[0,31,60,91,121,152,182,213,244,274,305,335],pa=[0,31,59,90,120,151,181,212,243,273,304,334],Q={},qa=a=>{if(!(a instanceof ha||"unwind"==a))throw a;},ra=a=>{D=a;N||0<P||(d.onExit?.(a),C=!0);throw new ha(a);},R=a=>{if(!C)try{return a()}catch(c){qa(c)}finally{if(!(N||
7
+ 0<P))try{D=a=D,ra(a)}catch(c){qa(c)}}},S=(a,c,b)=>{var e=H;if(!(0<b))return 0;var g=c;b=c+b-1;for(var h=0;h<a.length;++h){var k=a.codePointAt(h);if(127>=k){if(c>=b)break;e[c++]=k}else if(2047>=k){if(c+1>=b)break;e[c++]=192|k>>6;e[c++]=128|k&63}else if(65535>=k){if(c+2>=b)break;e[c++]=224|k>>12;e[c++]=128|k>>6&63;e[c++]=128|k&63}else{if(c+3>=b)break;e[c++]=240|k>>18;e[c++]=128|k>>12&63;e[c++]=128|k>>6&63;e[c++]=128|k&63;h++}}e[c]=0;return c-g},T={},ta=()=>{if(!U){var a={USER:"web_user",LOGNAME:"web_user",
8
+ PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:t||"./this.program"},c;for(c in T)void 0===T[c]?delete a[c]:a[c]=T[c];var b=[];for(c in a)b.push(`${c}=${a[c]}`);U=b}return U},U,V=a=>{for(var c=0,b=0;b<a.length;++b){var e=a.charCodeAt(b);127>=e?c++:2047>=e?c+=2:55296<=e&&57343>=e?(c+=4,++b):c+=3}return c},ua=[null,[],[]],W=a=>{try{a()}catch(c){L(c)}};
9
+ function va(a){var c=(...b)=>{X.Sa.push(a);try{return a(...b)}finally{C||(X.Sa.pop(),X.Qa&&X.state===X.Ra.Za&&0===X.Sa.length&&(X.state=X.Ra.Ua,W(wa),"undefined"!=typeof Fibers&&Fibers.nb()))}};X.ab.set(a,c);return c}function xa(){return new Promise((a,c)=>{X.Wa={resolve:a,reject:c}})}function ya(){var a=za(12+X.Va),c=a+12,b=X.Va;J[a>>2]=c;J[a+4>>2]=c+b;c=X.Sa[0];X.Xa.has(c)||(b=X.fb++,X.Xa.set(c,b),X.$a.set(b,c));c=X.Xa.get(c);I[a+8>>2]=c;return a}
10
+ function Aa(){var a=X.$a.get(I[X.Qa+8>>2]);a=X.ab.get(a);return R(a)}
11
+ var X={kb(a){var c=/^(qts_host_call_function|qts_host_load_module_source|qts_host_normalize_module|invoke_.*|__asyncjs__.*)$/;for(let [b,e]of Object.entries(a))"function"==typeof e&&(e.lb||c.test(b))},Ra:{Ua:0,Za:1,Ya:2,ib:3},state:0,Va:81920,Qa:null,cb:0,Sa:[],Xa:new Map,$a:new Map,ab:new Map,fb:0,Wa:null,hb:[],Ta(a){if(!C){if(X.state===X.Ra.Ua){var c=!1,b=!1;a((e=0)=>{if(!C&&(X.cb=e,c=!0,b)){X.state=X.Ra.Ya;W(()=>Ba(X.Qa));"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.resume();e=!1;try{var g=
12
+ Aa()}catch(p){g=p,e=!0}var h=!1;if(!X.Qa){var k=X.Wa;k&&(X.Wa=null,(e?k.reject:k.resolve)(g),h=!0)}if(e&&!h)throw g;}});b=!0;c||(X.state=X.Ra.Za,X.Qa=ya(),"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.pause(),W(()=>Ca(X.Qa)))}else X.state===X.Ra.Ya?(X.state=X.Ra.Ua,W(Da),Ea(X.Qa),X.Qa=null,X.hb.forEach(R)):L(`invalid state: ${X.state}`);return X.cb}},jb:a=>X.Ta(async c=>{c(await a())})},Ha=(a,c,b,e,g)=>{function h(l){--P;0!==u&&Fa(u);return"string"===c?O(l):"boolean"===c?!!l:l}var k={string:l=>
13
+ {var v=0;if(null!==l&&void 0!==l&&0!==l){v=V(l)+1;var sa=Y(v);S(l,sa,v);v=sa}return v},array:l=>{var v=Y(l.length);G.set(l,v);return v}};a=d["_"+a];var p=[],u=0;if(e)for(var n=0;n<e.length;n++){var q=k[b[n]];q?(0===u&&(u=Ga()),p[n]=q(e[n])):p[n]=e[n]}b=X.Qa;e=a(...p);g=g?.async;P+=1;if(X.Qa!=b)return xa().then(h);e=h(e);return g?Promise.resolve(e):e};d.wasmMemory?r=d.wasmMemory:r=new WebAssembly.Memory({initial:(d.INITIAL_MEMORY||16777216)/65536,maximum:32768});ca();d.noExitRuntime&&(N=d.noExitRuntime);
14
+ d.print&&(z=d.print);d.printErr&&(A=d.printErr);d.wasmBinary&&(B=d.wasmBinary);d.thisProgram&&(t=d.thisProgram);if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.shift()();d.cwrap=(a,c,b,e)=>{var g=!b||b.every(h=>"number"===h||"boolean"===h);return"string"!==c&&g&&!e?d["_"+a]:(...h)=>Ha(a,c,b,h,e)};d.UTF8ToString=O;d.stringToUTF8=(a,c,b)=>S(a,c,b);d.lengthBytesUTF8=V;d.Asyncify=X;
15
+ var za,Ea,Ia,Fa,Y,Ga,dynCall_iii,dynCall_vii,dynCall_vi,Ca,wa,Ba,Da,Ja={b:(a,c,b,e)=>L(`Assertion failed: ${O(a)}, at: `+[c?O(c):"unknown filename",b,e?O(e):"unknown function"]),q:()=>L(""),l:()=>{N=!1;P=0},m:function(a,c){a=-9007199254740992>a||9007199254740992<a?NaN:Number(a);a=new Date(1E3*a);I[c>>2]=a.getSeconds();I[c+4>>2]=a.getMinutes();I[c+8>>2]=a.getHours();I[c+12>>2]=a.getDate();I[c+16>>2]=a.getMonth();I[c+20>>2]=a.getFullYear()-1900;I[c+24>>2]=a.getDay();var b=a.getFullYear();I[c+28>>2]=
16
+ (0!==b%4||0===b%100&&0!==b%400?pa:oa)[a.getMonth()]+a.getDate()-1|0;I[c+36>>2]=-(60*a.getTimezoneOffset());b=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var e=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();I[c+32>>2]=(b!=e&&a.getTimezoneOffset()==Math.min(e,b))|0},j:(a,c)=>{Q[a]&&(clearTimeout(Q[a].id),delete Q[a]);if(!c)return 0;var b=setTimeout(()=>{delete Q[a];R(()=>Ia(a,performance.now()))},c);Q[a]={id:b,mb:c};return 0},n:(a,c,b,e)=>{var g=(new Date).getFullYear(),h=(new Date(g,0,
17
+ 1)).getTimezoneOffset();g=(new Date(g,6,1)).getTimezoneOffset();J[a>>2]=60*Math.max(h,g);I[c>>2]=Number(h!=g);c=k=>{var p=Math.abs(k);return`UTC${0<=k?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=c(h);c=c(g);g<h?(S(a,b,17),S(c,e,17)):(S(a,e,17),S(c,b,17))},p:()=>Date.now(),k:a=>{var c=H.length;a>>>=0;if(2147483648<a)return!1;for(var b=1;4>=b;b*=2){var e=c*(1+.2/b);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-r.buffer.byteLength+
18
+ 65535)/65536|0;try{r.grow(e);ca();var g=1;break a}catch(h){}g=void 0}if(g)return!0}return!1},d:(a,c)=>{var b=0,e=0,g;for(g of ta()){var h=c+b;J[a+e>>2]=h;b+=S(g,h,Infinity)+1;e+=4}return 0},e:(a,c)=>{var b=ta();J[a>>2]=b.length;a=0;for(var e of b)a+=V(e)+1;J[c>>2]=a;return 0},c:()=>52,o:function(){return 70},s:(a,c,b,e)=>{for(var g=0,h=0;h<b;h++){var k=J[c>>2],p=J[c+4>>2];c+=8;for(var u=0;u<p;u++){var n=a,q=H[k+u],l=ua[n];0===q||10===q?(n=1===n?z:A,q=na(l,0),q=ma.decode(l.buffer?l.subarray(0,q):new Uint8Array(l.slice(0,
19
+ q))),n(q),l.length=0):l.push(q)}g+=p}J[e>>2]=g;return 0},a:r,r:ra,i:function(a,c,b,e,g){return d.callbacks.callFunction({handleSleep:X.Ta},a,c,b,e,g)},h:function(a){return d.callbacks.shouldInterrupt(void 0,a)},g:function(a,c,b){const e={handleSleep:X.Ta};b=O(b);return d.callbacks.loadModuleSource(e,a,c,b)},f:function(a,c,b,e){const g={handleSleep:X.Ta};b=O(b);e=O(e);return d.callbacks.normalizeModule(g,a,c,b,e)},t:function(a,c){d.callbacks.freeHostRef(void 0,a,c)},u:function(a,c){X.Va=a||c}},Z;
20
+ Z=await (async function(){function a(b){var e=Z=b.exports;b={};for(let [g,h]of Object.entries(e))"function"==typeof h?(e=va(h),b[g]=e):b[g]=h;b=Z=b;za=d._malloc=b.w;d._QTS_Throw=b.x;d._QTS_NewError=b.y;d._QTS_RuntimeSetMemoryLimit=b.z;d._QTS_RuntimeComputeMemoryUsage=b.A;d._QTS_RuntimeDumpMemoryUsage=b.B;d._QTS_RecoverableLeakCheck=b.C;d._QTS_BuildIsSanitizeLeak=b.D;d._QTS_RuntimeSetMaxStackSize=b.E;d._QTS_GetUndefined=b.F;d._QTS_GetNull=b.G;d._QTS_GetFalse=b.H;d._QTS_GetTrue=b.I;d._QTS_NewHostRef=
21
+ b.J;d._QTS_GetHostRefId=b.K;d._QTS_NewRuntime=b.L;d._QTS_FreeRuntime=b.M;Ea=d._free=b.N;d._QTS_NewContext=b.O;d._QTS_FreeContext=b.P;d._QTS_FreeValuePointer=b.Q;d._QTS_FreeValuePointerRuntime=b.R;d._QTS_FreeVoidPointer=b.S;d._QTS_FreeCString=b.T;d._QTS_DupValuePointer=b.U;d._QTS_NewObject=b.V;d._QTS_NewObjectProto=b.W;d._QTS_NewArray=b.X;d._QTS_NewArrayBuffer=b.Y;d._QTS_NewFloat64=b.Z;d._QTS_GetFloat64=b._;d._QTS_NewString=b.$;d._QTS_GetString=b.aa;d._QTS_GetArrayBuffer=b.ba;d._QTS_GetArrayBufferLength=
22
+ b.ca;d._QTS_NewSymbol=b.da;d._QTS_GetSymbolDescriptionOrKey=b.ea;d._QTS_IsGlobalSymbol=b.fa;d._QTS_IsJobPending=b.ga;d._QTS_ExecutePendingJob=b.ha;d._QTS_GetProp=b.ia;d._QTS_GetPropNumber=b.ja;d._QTS_SetProp=b.ka;d._QTS_DefineProp=b.la;d._QTS_GetOwnPropertyNames=b.ma;d._QTS_Call=b.na;d._QTS_ResolveException=b.oa;d._QTS_Dump=b.pa;d._QTS_Eval=b.qa;d._QTS_GetModuleNamespace=b.ra;d._QTS_Typeof=b.sa;d._QTS_GetLength=b.ta;d._QTS_IsEqual=b.ua;d._QTS_GetGlobalObject=b.va;d._QTS_NewPromiseCapability=b.wa;
23
+ d._QTS_PromiseState=b.xa;d._QTS_PromiseResult=b.ya;d._QTS_TestStringArg=b.za;d._QTS_GetDebugLogEnabled=b.Aa;d._QTS_SetDebugLogEnabled=b.Ba;d._QTS_BuildIsDebug=b.Ca;d._QTS_BuildIsAsyncify=b.Da;d._QTS_NewFunction=b.Ea;d._QTS_ArgvGetJSValueConstPointer=b.Fa;d._QTS_RuntimeEnableInterruptHandler=b.Ga;d._QTS_RuntimeDisableInterruptHandler=b.Ha;d._QTS_RuntimeEnableModuleLoader=b.Ia;d._QTS_RuntimeDisableModuleLoader=b.Ja;d._QTS_bjson_encode=b.Ka;d._QTS_bjson_decode=b.La;Ia=b.Ma;Fa=b.Na;Y=b.Oa;Ga=b.Pa;dynCall_iii=
24
+ b._a;dynCall_vii=b.bb;dynCall_vi=b.sb;Ca=b.tb;wa=b.ub;Ba=b.vb;Da=b.wb;return Z}var c={a:Ja};if(d.instantiateWasm)return new Promise(b=>{d.instantiateWasm(c,(e,g)=>{b(a(e,g))})});M??=d.locateFile?d.locateFile?d.locateFile("emscripten-module.wasm",w):w+"emscripten-module.wasm":(new URL("emscripten-module.wasm",import.meta.url)).href;return a((await fa(c)).instance)}());
25
+ (function(){function a(){d.calledRun=!0;if(!C){K=!0;Z.v();E?.(d);d.onRuntimeInitialized?.();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var c=d.postRun.shift();ja.push(c)}ia(ja)}}if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)la();ia(ka);d.setStatus?(d.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>d.setStatus(""),1);a()},1)):a()})();K?moduleRtn=d:moduleRtn=new Promise((a,c)=>{E=a;F=c});
26
+ ;return moduleRtn}export default QuickJSRaw;
@@ -0,0 +1,25 @@
1
+ async function QuickJSRaw(moduleArg={}){var moduleRtn;var d=moduleArg;function f(a){a={log:a||function(){}};for(const c of f.eb)c(a);return d.quickJSEmscriptenExtensions=a}f.eb=[];d.quickjsEmscriptenInit=f;f.eb.push(a=>{a.getWasmMemory=function(){return m}});var r="./this.program",t=(a,c)=>{throw c;},w="",x,y,fs=require("node:fs");w=__dirname+"/";y=a=>{a=z(a)?new URL(a):a;return fs.readFileSync(a)};x=async a=>{a=z(a)?new URL(a):a;return fs.readFileSync(a,void 0)};1<process.argv.length&&(r=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);
2
+ t=(a,c)=>{process.exitCode=a;throw c;};var A=console.log.bind(console),B=console.error.bind(console),C,D=!1,E,z=a=>a.startsWith("file://"),F,G,aa,H,I,J,ba=!1;function ca(){var a=m.buffer;d.HEAP8=aa=new Int8Array(a);new Int16Array(a);d.HEAPU8=H=new Uint8Array(a);new Uint16Array(a);I=new Int32Array(a);J=new Uint32Array(a);new Float32Array(a);new Float64Array(a);new BigInt64Array(a);new BigUint64Array(a)}
3
+ function K(a){d.onAbort?.(a);a="Aborted("+a+")";B(a);D=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");G?.(a);throw a;}var L;async function da(a){if(!C)try{var c=await x(a);return new Uint8Array(c)}catch{}if(a==L&&C)a=new Uint8Array(C);else if(y)a=y(a);else throw"both async and sync fetching of the wasm failed";return a}
4
+ async function ea(a){var c=L;try{var b=await da(c);return await WebAssembly.instantiate(b,a)}catch(e){B(`failed to asynchronously prepare wasm: ${e}`),K(e)}}async function fa(a){return ea(a)}class M{name="ExitStatus";constructor(a){this.message=`Program terminated with exit(${a})`;this.status=a}}
5
+ var ha=a=>{for(;0<a.length;)a.shift()(d)},ia=[],ja=[],ka=()=>{var a=d.preRun.shift();ja.push(a)},N=!0,m,la=new TextDecoder,ma=(a,c,b,e)=>{b=c+b;if(e)return b;for(;a[c]&&!(c>=b);)++c;return c},O=(a,c,b)=>a?la.decode(H.subarray(a,ma(H,a,c,b))):"",P=0,na=[0,31,60,91,121,152,182,213,244,274,305,335],oa=[0,31,59,90,120,151,181,212,243,273,304,334],Q={},pa=a=>{E=a;N||0<P||(d.onExit?.(a),D=!0);t(a,new M(a))},R=a=>{if(!D)try{return a()}catch(c){c instanceof M||"unwind"==c||t(1,c)}finally{if(!(N||0<P))try{E=
6
+ a=E,pa(a)}catch(c){c instanceof M||"unwind"==c||t(1,c)}}},S=(a,c,b)=>{var e=H;if(!(0<b))return 0;var g=c;b=c+b-1;for(var h=0;h<a.length;++h){var k=a.codePointAt(h);if(127>=k){if(c>=b)break;e[c++]=k}else if(2047>=k){if(c+1>=b)break;e[c++]=192|k>>6;e[c++]=128|k&63}else if(65535>=k){if(c+2>=b)break;e[c++]=224|k>>12;e[c++]=128|k>>6&63;e[c++]=128|k&63}else{if(c+3>=b)break;e[c++]=240|k>>18;e[c++]=128|k>>12&63;e[c++]=128|k>>6&63;e[c++]=128|k&63;h++}}e[c]=0;return c-g},T={},qa=()=>{if(!U){var a={USER:"web_user",
7
+ LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:r||"./this.program"},c;for(c in T)void 0===T[c]?delete a[c]:a[c]=T[c];var b=[];for(c in a)b.push(`${c}=${a[c]}`);U=b}return U},U,V=a=>{for(var c=0,b=0;b<a.length;++b){var e=a.charCodeAt(b);127>=e?c++:2047>=e?c+=2:55296<=e&&57343>=e?(c+=4,++b):c+=3}return c},ra=[null,[],[]],W=a=>{try{a()}catch(c){K(c)}};
8
+ function ta(a){var c=(...b)=>{X.Sa.push(a);try{return a(...b)}finally{D||(X.Sa.pop(),X.Qa&&X.state===X.Ra.Za&&0===X.Sa.length&&(X.state=X.Ra.Ua,W(ua),"undefined"!=typeof Fibers&&Fibers.nb()))}};X.ab.set(a,c);return c}function va(){return new Promise((a,c)=>{X.Wa={resolve:a,reject:c}})}function wa(){var a=xa(12+X.Va),c=a+12,b=X.Va;J[a>>2]=c;J[a+4>>2]=c+b;c=X.Sa[0];X.Xa.has(c)||(b=X.fb++,X.Xa.set(c,b),X.$a.set(b,c));c=X.Xa.get(c);I[a+8>>2]=c;return a}
9
+ function ya(){var a=X.$a.get(I[X.Qa+8>>2]);a=X.ab.get(a);return R(a)}
10
+ var X={kb(a){var c=/^(qts_host_call_function|qts_host_load_module_source|qts_host_normalize_module|invoke_.*|__asyncjs__.*)$/;for(let [b,e]of Object.entries(a))"function"==typeof e&&(e.lb||c.test(b))},Ra:{Ua:0,Za:1,Ya:2,ib:3},state:0,Va:81920,Qa:null,cb:0,Sa:[],Xa:new Map,$a:new Map,ab:new Map,fb:0,Wa:null,hb:[],Ta(a){if(!D){if(X.state===X.Ra.Ua){var c=!1,b=!1;a((e=0)=>{if(!D&&(X.cb=e,c=!0,b)){X.state=X.Ra.Ya;W(()=>za(X.Qa));"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.resume();e=!1;try{var g=
11
+ ya()}catch(p){g=p,e=!0}var h=!1;if(!X.Qa){var k=X.Wa;k&&(X.Wa=null,(e?k.reject:k.resolve)(g),h=!0)}if(e&&!h)throw g;}});b=!0;c||(X.state=X.Ra.Za,X.Qa=wa(),"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.pause(),W(()=>Aa(X.Qa)))}else X.state===X.Ra.Ya?(X.state=X.Ra.Ua,W(Ba),Ca(X.Qa),X.Qa=null,X.hb.forEach(R)):K(`invalid state: ${X.state}`);return X.cb}},jb:a=>X.Ta(async c=>{c(await a())})},Fa=(a,c,b,e,g)=>{function h(l){--P;0!==u&&Da(u);return"string"===c?O(l):"boolean"===c?!!l:l}var k={string:l=>
12
+ {var v=0;if(null!==l&&void 0!==l&&0!==l){v=V(l)+1;var sa=Y(v);S(l,sa,v);v=sa}return v},array:l=>{var v=Y(l.length);aa.set(l,v);return v}};a=d["_"+a];var p=[],u=0;if(e)for(var n=0;n<e.length;n++){var q=k[b[n]];q?(0===u&&(u=Ea()),p[n]=q(e[n])):p[n]=e[n]}b=X.Qa;e=a(...p);g=g?.async;P+=1;if(X.Qa!=b)return va().then(h);e=h(e);return g?Promise.resolve(e):e};d.wasmMemory?m=d.wasmMemory:m=new WebAssembly.Memory({initial:(d.INITIAL_MEMORY||16777216)/65536,maximum:32768});ca();d.noExitRuntime&&(N=d.noExitRuntime);
13
+ d.print&&(A=d.print);d.printErr&&(B=d.printErr);d.wasmBinary&&(C=d.wasmBinary);d.thisProgram&&(r=d.thisProgram);if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.shift()();d.cwrap=(a,c,b,e)=>{var g=!b||b.every(h=>"number"===h||"boolean"===h);return"string"!==c&&g&&!e?d["_"+a]:(...h)=>Fa(a,c,b,h,e)};d.UTF8ToString=O;d.stringToUTF8=(a,c,b)=>S(a,c,b);d.lengthBytesUTF8=V;d.Asyncify=X;
14
+ var xa,Ca,Ga,Da,Y,Ea,dynCall_iii,dynCall_vii,dynCall_vi,Aa,ua,za,Ba,Ha={b:(a,c,b,e)=>K(`Assertion failed: ${O(a)}, at: `+[c?O(c):"unknown filename",b,e?O(e):"unknown function"]),q:()=>K(""),l:()=>{N=!1;P=0},m:function(a,c){a=-9007199254740992>a||9007199254740992<a?NaN:Number(a);a=new Date(1E3*a);I[c>>2]=a.getSeconds();I[c+4>>2]=a.getMinutes();I[c+8>>2]=a.getHours();I[c+12>>2]=a.getDate();I[c+16>>2]=a.getMonth();I[c+20>>2]=a.getFullYear()-1900;I[c+24>>2]=a.getDay();var b=a.getFullYear();I[c+28>>2]=
15
+ (0!==b%4||0===b%100&&0!==b%400?oa:na)[a.getMonth()]+a.getDate()-1|0;I[c+36>>2]=-(60*a.getTimezoneOffset());b=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var e=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();I[c+32>>2]=(b!=e&&a.getTimezoneOffset()==Math.min(e,b))|0},j:(a,c)=>{Q[a]&&(clearTimeout(Q[a].id),delete Q[a]);if(!c)return 0;var b=setTimeout(()=>{delete Q[a];R(()=>Ga(a,performance.now()))},c);Q[a]={id:b,mb:c};return 0},n:(a,c,b,e)=>{var g=(new Date).getFullYear(),h=(new Date(g,0,
16
+ 1)).getTimezoneOffset();g=(new Date(g,6,1)).getTimezoneOffset();J[a>>2]=60*Math.max(h,g);I[c>>2]=Number(h!=g);c=k=>{var p=Math.abs(k);return`UTC${0<=k?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=c(h);c=c(g);g<h?(S(a,b,17),S(c,e,17)):(S(a,e,17),S(c,b,17))},p:()=>Date.now(),k:a=>{var c=H.length;a>>>=0;if(2147483648<a)return!1;for(var b=1;4>=b;b*=2){var e=c*(1+.2/b);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-m.buffer.byteLength+
17
+ 65535)/65536|0;try{m.grow(e);ca();var g=1;break a}catch(h){}g=void 0}if(g)return!0}return!1},d:(a,c)=>{var b=0,e=0,g;for(g of qa()){var h=c+b;J[a+e>>2]=h;b+=S(g,h,Infinity)+1;e+=4}return 0},e:(a,c)=>{var b=qa();J[a>>2]=b.length;a=0;for(var e of b)a+=V(e)+1;J[c>>2]=a;return 0},c:()=>52,o:function(){return 70},s:(a,c,b,e)=>{for(var g=0,h=0;h<b;h++){var k=J[c>>2],p=J[c+4>>2];c+=8;for(var u=0;u<p;u++){var n=a,q=H[k+u],l=ra[n];0===q||10===q?(n=1===n?A:B,q=ma(l,0),q=la.decode(l.buffer?l.subarray(0,q):new Uint8Array(l.slice(0,
18
+ q))),n(q),l.length=0):l.push(q)}g+=p}J[e>>2]=g;return 0},a:m,r:pa,i:function(a,c,b,e,g){return d.callbacks.callFunction({handleSleep:X.Ta},a,c,b,e,g)},h:function(a){return d.callbacks.shouldInterrupt(void 0,a)},g:function(a,c,b){const e={handleSleep:X.Ta};b=O(b);return d.callbacks.loadModuleSource(e,a,c,b)},f:function(a,c,b,e){const g={handleSleep:X.Ta};b=O(b);e=O(e);return d.callbacks.normalizeModule(g,a,c,b,e)},t:function(a,c){d.callbacks.freeHostRef(void 0,a,c)},u:function(a,c){X.Va=a||c}},Z;
19
+ Z=await (async function(){function a(b){var e=Z=b.exports;b={};for(let [g,h]of Object.entries(e))"function"==typeof h?(e=ta(h),b[g]=e):b[g]=h;b=Z=b;xa=d._malloc=b.w;d._QTS_Throw=b.x;d._QTS_NewError=b.y;d._QTS_RuntimeSetMemoryLimit=b.z;d._QTS_RuntimeComputeMemoryUsage=b.A;d._QTS_RuntimeDumpMemoryUsage=b.B;d._QTS_RecoverableLeakCheck=b.C;d._QTS_BuildIsSanitizeLeak=b.D;d._QTS_RuntimeSetMaxStackSize=b.E;d._QTS_GetUndefined=b.F;d._QTS_GetNull=b.G;d._QTS_GetFalse=b.H;d._QTS_GetTrue=b.I;d._QTS_NewHostRef=
20
+ b.J;d._QTS_GetHostRefId=b.K;d._QTS_NewRuntime=b.L;d._QTS_FreeRuntime=b.M;Ca=d._free=b.N;d._QTS_NewContext=b.O;d._QTS_FreeContext=b.P;d._QTS_FreeValuePointer=b.Q;d._QTS_FreeValuePointerRuntime=b.R;d._QTS_FreeVoidPointer=b.S;d._QTS_FreeCString=b.T;d._QTS_DupValuePointer=b.U;d._QTS_NewObject=b.V;d._QTS_NewObjectProto=b.W;d._QTS_NewArray=b.X;d._QTS_NewArrayBuffer=b.Y;d._QTS_NewFloat64=b.Z;d._QTS_GetFloat64=b._;d._QTS_NewString=b.$;d._QTS_GetString=b.aa;d._QTS_GetArrayBuffer=b.ba;d._QTS_GetArrayBufferLength=
21
+ b.ca;d._QTS_NewSymbol=b.da;d._QTS_GetSymbolDescriptionOrKey=b.ea;d._QTS_IsGlobalSymbol=b.fa;d._QTS_IsJobPending=b.ga;d._QTS_ExecutePendingJob=b.ha;d._QTS_GetProp=b.ia;d._QTS_GetPropNumber=b.ja;d._QTS_SetProp=b.ka;d._QTS_DefineProp=b.la;d._QTS_GetOwnPropertyNames=b.ma;d._QTS_Call=b.na;d._QTS_ResolveException=b.oa;d._QTS_Dump=b.pa;d._QTS_Eval=b.qa;d._QTS_GetModuleNamespace=b.ra;d._QTS_Typeof=b.sa;d._QTS_GetLength=b.ta;d._QTS_IsEqual=b.ua;d._QTS_GetGlobalObject=b.va;d._QTS_NewPromiseCapability=b.wa;
22
+ d._QTS_PromiseState=b.xa;d._QTS_PromiseResult=b.ya;d._QTS_TestStringArg=b.za;d._QTS_GetDebugLogEnabled=b.Aa;d._QTS_SetDebugLogEnabled=b.Ba;d._QTS_BuildIsDebug=b.Ca;d._QTS_BuildIsAsyncify=b.Da;d._QTS_NewFunction=b.Ea;d._QTS_ArgvGetJSValueConstPointer=b.Fa;d._QTS_RuntimeEnableInterruptHandler=b.Ga;d._QTS_RuntimeDisableInterruptHandler=b.Ha;d._QTS_RuntimeEnableModuleLoader=b.Ia;d._QTS_RuntimeDisableModuleLoader=b.Ja;d._QTS_bjson_encode=b.Ka;d._QTS_bjson_decode=b.La;Ga=b.Ma;Da=b.Na;Y=b.Oa;Ea=b.Pa;dynCall_iii=
23
+ b._a;dynCall_vii=b.bb;dynCall_vi=b.sb;Aa=b.tb;ua=b.ub;za=b.vb;Ba=b.wb;return Z}var c={a:Ha};if(d.instantiateWasm)return new Promise(b=>{d.instantiateWasm(c,(e,g)=>{b(a(e,g))})});L??=d.locateFile?d.locateFile("emscripten-module.wasm",w):w+"emscripten-module.wasm";return a((await fa(c)).instance)}());
24
+ (function(){function a(){d.calledRun=!0;if(!D){ba=!0;Z.v();F?.(d);d.onRuntimeInitialized?.();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var c=d.postRun.shift();ia.push(c)}ha(ia)}}if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)ka();ha(ja);d.setStatus?(d.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>d.setStatus(""),1);a()},1)):a()})();ba?moduleRtn=d:moduleRtn=new Promise((a,c)=>{F=a;G=c});
25
+ ;return moduleRtn}if(typeof exports==="object"&&typeof module==="object"){module.exports=QuickJSRaw;module.exports.default=QuickJSRaw}else if(typeof define==="function"&&define["amd"])define([],()=>QuickJSRaw);
@@ -0,0 +1,25 @@
1
+ var QuickJSRaw=(()=>{var _scriptName=globalThis.document?.currentScript?.src;return async function(moduleArg={}){var moduleRtn;var d=moduleArg;function f(a){a={log:a||function(){}};for(const c of f.eb)c(a);return d.quickJSEmscriptenExtensions=a}f.eb=[];d.quickjsEmscriptenInit=f;f.eb.push(a=>{a.getWasmMemory=function(){return m}});var r="./this.program",t="",w;try{t=(new URL(".",_scriptName)).href}catch{}w=async a=>{a=await fetch(a,{credentials:"same-origin"});if(a.ok)return a.arrayBuffer();throw Error(a.status+" : "+a.url);};var x=console.log.bind(console),y=console.error.bind(console),z,A=!1,B,C,D,E,F,G,H,I=!1;
2
+ function J(){var a=m.buffer;d.HEAP8=E=new Int8Array(a);new Int16Array(a);d.HEAPU8=F=new Uint8Array(a);new Uint16Array(a);G=new Int32Array(a);H=new Uint32Array(a);new Float32Array(a);new Float64Array(a);new BigInt64Array(a);new BigUint64Array(a)}function K(a){d.onAbort?.(a);a="Aborted("+a+")";y(a);A=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");D?.(a);throw a;}var L;
3
+ async function aa(a){if(!z)try{var c=await w(a);return new Uint8Array(c)}catch{}if(a==L&&z)a=new Uint8Array(z);else throw"both async and sync fetching of the wasm failed";return a}async function ba(a,c){try{var b=await aa(a);return await WebAssembly.instantiate(b,c)}catch(e){y(`failed to asynchronously prepare wasm: ${e}`),K(e)}}
4
+ async function ca(a){var c=L;if(!z)try{var b=fetch(c,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(b,a)}catch(e){y(`wasm streaming compile failed: ${e}`),y("falling back to ArrayBuffer instantiation")}return ba(c,a)}class M{name="ExitStatus";constructor(a){this.message=`Program terminated with exit(${a})`;this.status=a}}
5
+ var da=a=>{for(;0<a.length;)a.shift()(d)},ea=[],fa=[],ha=()=>{var a=d.preRun.shift();fa.push(a)},N=!0,m,ia=new TextDecoder,ja=(a,c,b,e)=>{b=c+b;if(e)return b;for(;a[c]&&!(c>=b);)++c;return c},O=(a,c,b)=>a?ia.decode(F.subarray(a,ja(F,a,c,b))):"",P=0,ka=[0,31,60,91,121,152,182,213,244,274,305,335],la=[0,31,59,90,120,151,181,212,243,273,304,334],Q={},ma=a=>{if(!(a instanceof M||"unwind"==a))throw a;},na=a=>{B=a;N||0<P||(d.onExit?.(a),A=!0);throw new M(a);},R=a=>{if(!A)try{return a()}catch(c){ma(c)}finally{if(!(N||
6
+ 0<P))try{B=a=B,na(a)}catch(c){ma(c)}}},S=(a,c,b)=>{var e=F;if(!(0<b))return 0;var g=c;b=c+b-1;for(var h=0;h<a.length;++h){var k=a.codePointAt(h);if(127>=k){if(c>=b)break;e[c++]=k}else if(2047>=k){if(c+1>=b)break;e[c++]=192|k>>6;e[c++]=128|k&63}else if(65535>=k){if(c+2>=b)break;e[c++]=224|k>>12;e[c++]=128|k>>6&63;e[c++]=128|k&63}else{if(c+3>=b)break;e[c++]=240|k>>18;e[c++]=128|k>>12&63;e[c++]=128|k>>6&63;e[c++]=128|k&63;h++}}e[c]=0;return c-g},T={},oa=()=>{if(!U){var a={USER:"web_user",LOGNAME:"web_user",
7
+ PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:r||"./this.program"},c;for(c in T)void 0===T[c]?delete a[c]:a[c]=T[c];var b=[];for(c in a)b.push(`${c}=${a[c]}`);U=b}return U},U,V=a=>{for(var c=0,b=0;b<a.length;++b){var e=a.charCodeAt(b);127>=e?c++:2047>=e?c+=2:55296<=e&&57343>=e?(c+=4,++b):c+=3}return c},pa=[null,[],[]],W=a=>{try{a()}catch(c){K(c)}};
8
+ function ra(a){var c=(...b)=>{X.Sa.push(a);try{return a(...b)}finally{A||(X.Sa.pop(),X.Qa&&X.state===X.Ra.Za&&0===X.Sa.length&&(X.state=X.Ra.Ua,W(sa),"undefined"!=typeof Fibers&&Fibers.nb()))}};X.ab.set(a,c);return c}function ta(){return new Promise((a,c)=>{X.Wa={resolve:a,reject:c}})}function ua(){var a=va(12+X.Va),c=a+12,b=X.Va;H[a>>2]=c;H[a+4>>2]=c+b;c=X.Sa[0];X.Xa.has(c)||(b=X.fb++,X.Xa.set(c,b),X.$a.set(b,c));c=X.Xa.get(c);G[a+8>>2]=c;return a}
9
+ function wa(){var a=X.$a.get(G[X.Qa+8>>2]);a=X.ab.get(a);return R(a)}
10
+ var X={kb(a){var c=/^(qts_host_call_function|qts_host_load_module_source|qts_host_normalize_module|invoke_.*|__asyncjs__.*)$/;for(let [b,e]of Object.entries(a))"function"==typeof e&&(e.lb||c.test(b))},Ra:{Ua:0,Za:1,Ya:2,ib:3},state:0,Va:81920,Qa:null,cb:0,Sa:[],Xa:new Map,$a:new Map,ab:new Map,fb:0,Wa:null,hb:[],Ta(a){if(!A){if(X.state===X.Ra.Ua){var c=!1,b=!1;a((e=0)=>{if(!A&&(X.cb=e,c=!0,b)){X.state=X.Ra.Ya;W(()=>xa(X.Qa));"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.resume();e=!1;try{var g=
11
+ wa()}catch(p){g=p,e=!0}var h=!1;if(!X.Qa){var k=X.Wa;k&&(X.Wa=null,(e?k.reject:k.resolve)(g),h=!0)}if(e&&!h)throw g;}});b=!0;c||(X.state=X.Ra.Za,X.Qa=ua(),"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.pause(),W(()=>ya(X.Qa)))}else X.state===X.Ra.Ya?(X.state=X.Ra.Ua,W(za),Aa(X.Qa),X.Qa=null,X.hb.forEach(R)):K(`invalid state: ${X.state}`);return X.cb}},jb:a=>X.Ta(async c=>{c(await a())})},Da=(a,c,b,e,g)=>{function h(l){--P;0!==u&&Ba(u);return"string"===c?O(l):"boolean"===c?!!l:l}var k={string:l=>
12
+ {var v=0;if(null!==l&&void 0!==l&&0!==l){v=V(l)+1;var qa=Y(v);S(l,qa,v);v=qa}return v},array:l=>{var v=Y(l.length);E.set(l,v);return v}};a=d["_"+a];var p=[],u=0;if(e)for(var n=0;n<e.length;n++){var q=k[b[n]];q?(0===u&&(u=Ca()),p[n]=q(e[n])):p[n]=e[n]}b=X.Qa;e=a(...p);g=g?.async;P+=1;if(X.Qa!=b)return ta().then(h);e=h(e);return g?Promise.resolve(e):e};d.wasmMemory?m=d.wasmMemory:m=new WebAssembly.Memory({initial:(d.INITIAL_MEMORY||16777216)/65536,maximum:32768});J();d.noExitRuntime&&(N=d.noExitRuntime);
13
+ d.print&&(x=d.print);d.printErr&&(y=d.printErr);d.wasmBinary&&(z=d.wasmBinary);d.thisProgram&&(r=d.thisProgram);if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.shift()();d.cwrap=(a,c,b,e)=>{var g=!b||b.every(h=>"number"===h||"boolean"===h);return"string"!==c&&g&&!e?d["_"+a]:(...h)=>Da(a,c,b,h,e)};d.UTF8ToString=O;d.stringToUTF8=(a,c,b)=>S(a,c,b);d.lengthBytesUTF8=V;d.Asyncify=X;
14
+ var va,Aa,Ea,Ba,Y,Ca,dynCall_iii,dynCall_vii,dynCall_vi,ya,sa,xa,za,Fa={b:(a,c,b,e)=>K(`Assertion failed: ${O(a)}, at: `+[c?O(c):"unknown filename",b,e?O(e):"unknown function"]),q:()=>K(""),l:()=>{N=!1;P=0},m:function(a,c){a=-9007199254740992>a||9007199254740992<a?NaN:Number(a);a=new Date(1E3*a);G[c>>2]=a.getSeconds();G[c+4>>2]=a.getMinutes();G[c+8>>2]=a.getHours();G[c+12>>2]=a.getDate();G[c+16>>2]=a.getMonth();G[c+20>>2]=a.getFullYear()-1900;G[c+24>>2]=a.getDay();var b=a.getFullYear();G[c+28>>2]=
15
+ (0!==b%4||0===b%100&&0!==b%400?la:ka)[a.getMonth()]+a.getDate()-1|0;G[c+36>>2]=-(60*a.getTimezoneOffset());b=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var e=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();G[c+32>>2]=(b!=e&&a.getTimezoneOffset()==Math.min(e,b))|0},j:(a,c)=>{Q[a]&&(clearTimeout(Q[a].id),delete Q[a]);if(!c)return 0;var b=setTimeout(()=>{delete Q[a];R(()=>Ea(a,performance.now()))},c);Q[a]={id:b,mb:c};return 0},n:(a,c,b,e)=>{var g=(new Date).getFullYear(),h=(new Date(g,0,
16
+ 1)).getTimezoneOffset();g=(new Date(g,6,1)).getTimezoneOffset();H[a>>2]=60*Math.max(h,g);G[c>>2]=Number(h!=g);c=k=>{var p=Math.abs(k);return`UTC${0<=k?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=c(h);c=c(g);g<h?(S(a,b,17),S(c,e,17)):(S(a,e,17),S(c,b,17))},p:()=>Date.now(),k:a=>{var c=F.length;a>>>=0;if(2147483648<a)return!1;for(var b=1;4>=b;b*=2){var e=c*(1+.2/b);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-m.buffer.byteLength+
17
+ 65535)/65536|0;try{m.grow(e);J();var g=1;break a}catch(h){}g=void 0}if(g)return!0}return!1},d:(a,c)=>{var b=0,e=0,g;for(g of oa()){var h=c+b;H[a+e>>2]=h;b+=S(g,h,Infinity)+1;e+=4}return 0},e:(a,c)=>{var b=oa();H[a>>2]=b.length;a=0;for(var e of b)a+=V(e)+1;H[c>>2]=a;return 0},c:()=>52,o:function(){return 70},s:(a,c,b,e)=>{for(var g=0,h=0;h<b;h++){var k=H[c>>2],p=H[c+4>>2];c+=8;for(var u=0;u<p;u++){var n=a,q=F[k+u],l=pa[n];0===q||10===q?(n=1===n?x:y,q=ja(l,0),q=ia.decode(l.buffer?l.subarray(0,q):new Uint8Array(l.slice(0,
18
+ q))),n(q),l.length=0):l.push(q)}g+=p}H[e>>2]=g;return 0},a:m,r:na,i:function(a,c,b,e,g){return d.callbacks.callFunction({handleSleep:X.Ta},a,c,b,e,g)},h:function(a){return d.callbacks.shouldInterrupt(void 0,a)},g:function(a,c,b){const e={handleSleep:X.Ta};b=O(b);return d.callbacks.loadModuleSource(e,a,c,b)},f:function(a,c,b,e){const g={handleSleep:X.Ta};b=O(b);e=O(e);return d.callbacks.normalizeModule(g,a,c,b,e)},t:function(a,c){d.callbacks.freeHostRef(void 0,a,c)},u:function(a,c){X.Va=a||c}},Z;
19
+ Z=await (async function(){function a(b){var e=Z=b.exports;b={};for(let [g,h]of Object.entries(e))"function"==typeof h?(e=ra(h),b[g]=e):b[g]=h;b=Z=b;va=d._malloc=b.w;d._QTS_Throw=b.x;d._QTS_NewError=b.y;d._QTS_RuntimeSetMemoryLimit=b.z;d._QTS_RuntimeComputeMemoryUsage=b.A;d._QTS_RuntimeDumpMemoryUsage=b.B;d._QTS_RecoverableLeakCheck=b.C;d._QTS_BuildIsSanitizeLeak=b.D;d._QTS_RuntimeSetMaxStackSize=b.E;d._QTS_GetUndefined=b.F;d._QTS_GetNull=b.G;d._QTS_GetFalse=b.H;d._QTS_GetTrue=b.I;d._QTS_NewHostRef=
20
+ b.J;d._QTS_GetHostRefId=b.K;d._QTS_NewRuntime=b.L;d._QTS_FreeRuntime=b.M;Aa=d._free=b.N;d._QTS_NewContext=b.O;d._QTS_FreeContext=b.P;d._QTS_FreeValuePointer=b.Q;d._QTS_FreeValuePointerRuntime=b.R;d._QTS_FreeVoidPointer=b.S;d._QTS_FreeCString=b.T;d._QTS_DupValuePointer=b.U;d._QTS_NewObject=b.V;d._QTS_NewObjectProto=b.W;d._QTS_NewArray=b.X;d._QTS_NewArrayBuffer=b.Y;d._QTS_NewFloat64=b.Z;d._QTS_GetFloat64=b._;d._QTS_NewString=b.$;d._QTS_GetString=b.aa;d._QTS_GetArrayBuffer=b.ba;d._QTS_GetArrayBufferLength=
21
+ b.ca;d._QTS_NewSymbol=b.da;d._QTS_GetSymbolDescriptionOrKey=b.ea;d._QTS_IsGlobalSymbol=b.fa;d._QTS_IsJobPending=b.ga;d._QTS_ExecutePendingJob=b.ha;d._QTS_GetProp=b.ia;d._QTS_GetPropNumber=b.ja;d._QTS_SetProp=b.ka;d._QTS_DefineProp=b.la;d._QTS_GetOwnPropertyNames=b.ma;d._QTS_Call=b.na;d._QTS_ResolveException=b.oa;d._QTS_Dump=b.pa;d._QTS_Eval=b.qa;d._QTS_GetModuleNamespace=b.ra;d._QTS_Typeof=b.sa;d._QTS_GetLength=b.ta;d._QTS_IsEqual=b.ua;d._QTS_GetGlobalObject=b.va;d._QTS_NewPromiseCapability=b.wa;
22
+ d._QTS_PromiseState=b.xa;d._QTS_PromiseResult=b.ya;d._QTS_TestStringArg=b.za;d._QTS_GetDebugLogEnabled=b.Aa;d._QTS_SetDebugLogEnabled=b.Ba;d._QTS_BuildIsDebug=b.Ca;d._QTS_BuildIsAsyncify=b.Da;d._QTS_NewFunction=b.Ea;d._QTS_ArgvGetJSValueConstPointer=b.Fa;d._QTS_RuntimeEnableInterruptHandler=b.Ga;d._QTS_RuntimeDisableInterruptHandler=b.Ha;d._QTS_RuntimeEnableModuleLoader=b.Ia;d._QTS_RuntimeDisableModuleLoader=b.Ja;d._QTS_bjson_encode=b.Ka;d._QTS_bjson_decode=b.La;Ea=b.Ma;Ba=b.Na;Y=b.Oa;Ca=b.Pa;dynCall_iii=
23
+ b._a;dynCall_vii=b.bb;dynCall_vi=b.sb;ya=b.tb;sa=b.ub;xa=b.vb;za=b.wb;return Z}var c={a:Fa};if(d.instantiateWasm)return new Promise(b=>{d.instantiateWasm(c,(e,g)=>{b(a(e,g))})});L??=d.locateFile?d.locateFile("emscripten-module.wasm",t):t+"emscripten-module.wasm";return a((await ca(c)).instance)}());
24
+ (function(){function a(){d.calledRun=!0;if(!A){I=!0;Z.v();C?.(d);d.onRuntimeInitialized?.();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var c=d.postRun.shift();ea.push(c)}da(ea)}}if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)ha();da(fa);d.setStatus?(d.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>d.setStatus(""),1);a()},1)):a()})();I?moduleRtn=d:moduleRtn=new Promise((a,c)=>{C=a;D=c});
25
+ ;return moduleRtn}})();if(typeof exports==="object"&&typeof module==="object"){module.exports=QuickJSRaw;module.exports.default=QuickJSRaw}else if(typeof define==="function"&&define["amd"])define([],()=>QuickJSRaw);
@@ -0,0 +1,15 @@
1
+ // Generated from ../../templates/emscripten-module.ASYNCIFY.d.ts
2
+ import type { EmscriptenModuleLoader, QuickJSAsyncEmscriptenModule } from "@jitl/quickjs-ffi-types"
3
+ /**
4
+ * Emscripten module built from [`quickjs/quickjs.h`](../quickjs/quickjs.h) and
5
+ * our FFI support functions [c/interface.c](../c/interface.c), compiled with -s
6
+ * ASYNCIFY=1.
7
+ *
8
+ * Because this version is built with ASYNCIFY, the C code can call asynchronous
9
+ * Javascript functions as though they were synchronous.
10
+ *
11
+ * Note that emscripten modules returned by a `MODULARIZE=1` emscripten build
12
+ * (like this one) load asynchronously.
13
+ */
14
+ declare const ModuleLoader: EmscriptenModuleLoader<QuickJSAsyncEmscriptenModule>
15
+ export default ModuleLoader
@@ -0,0 +1,15 @@
1
+ // Generated from ../../templates/emscripten-module.ASYNCIFY.d.ts
2
+ import type { EmscriptenModuleLoader, QuickJSAsyncEmscriptenModule } from "@jitl/quickjs-ffi-types"
3
+ /**
4
+ * Emscripten module built from [`quickjs/quickjs.h`](../quickjs/quickjs.h) and
5
+ * our FFI support functions [c/interface.c](../c/interface.c), compiled with -s
6
+ * ASYNCIFY=1.
7
+ *
8
+ * Because this version is built with ASYNCIFY, the C code can call asynchronous
9
+ * Javascript functions as though they were synchronous.
10
+ *
11
+ * Note that emscripten modules returned by a `MODULARIZE=1` emscripten build
12
+ * (like this one) load asynchronously.
13
+ */
14
+ declare const ModuleLoader: EmscriptenModuleLoader<QuickJSAsyncEmscriptenModule>
15
+ export default ModuleLoader
@@ -0,0 +1,30 @@
1
+ async function QuickJSRaw(moduleArg={}){var moduleRtn;var d=moduleArg,aa=!!globalThis.window,f=!!globalThis.WorkerGlobalScope,m=globalThis.process?.versions?.node&&"renderer"!=globalThis.process?.type;if(m){const {createRequire:a}=await import("node:module");var require=a(import.meta.url)}function r(a){a={log:a||function(){}};for(const c of r.eb)c(a);return d.quickJSEmscriptenExtensions=a}r.eb=[];d.quickjsEmscriptenInit=r;r.eb.push(a=>{a.getWasmMemory=function(){return t}});
2
+ var w="./this.program",x=(a,c)=>{throw c;},y=import.meta.url,z="",A,B;
3
+ if(m){var fs=require("node:fs");y.startsWith("file:")&&(z=require("node:path").dirname(require("node:url").fileURLToPath(y))+"/");B=a=>{a=C(a)?new URL(a):a;return fs.readFileSync(a)};A=async a=>{a=C(a)?new URL(a):a;return fs.readFileSync(a,void 0)};1<process.argv.length&&(w=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);x=(a,c)=>{process.exitCode=a;throw c;}}else if(aa||f){try{z=(new URL(".",y)).href}catch{}f&&(B=a=>{var c=new XMLHttpRequest;c.open("GET",a,!1);c.responseType="arraybuffer";
4
+ c.send(null);return new Uint8Array(c.response)});A=async a=>{if(C(a))return new Promise((b,e)=>{var g=new XMLHttpRequest;g.open("GET",a,!0);g.responseType="arraybuffer";g.onload=()=>{200==g.status||0==g.status&&g.response?b(g.response):e(g.status)};g.onerror=e;g.send(null)});var c=await fetch(a,{credentials:"same-origin"});if(c.ok)return c.arrayBuffer();throw Error(c.status+" : "+c.url);}}
5
+ var ba=console.log.bind(console),D=console.error.bind(console),E,F=!1,G,C=a=>a.startsWith("file://"),ca,da,ea,H,I,J,fa=!1;function ha(){var a=t.buffer;d.HEAP8=ea=new Int8Array(a);new Int16Array(a);d.HEAPU8=H=new Uint8Array(a);new Uint16Array(a);I=new Int32Array(a);J=new Uint32Array(a);new Float32Array(a);new Float64Array(a);new BigInt64Array(a);new BigUint64Array(a)}
6
+ function K(a){d.onAbort?.(a);a="Aborted("+a+")";D(a);F=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");da?.(a);throw a;}var L;async function ia(a){if(!E)try{var c=await A(a);return new Uint8Array(c)}catch{}if(a==L&&E)a=new Uint8Array(E);else if(B)a=B(a);else throw"both async and sync fetching of the wasm failed";return a}
7
+ async function ja(a,c){try{var b=await ia(a);return await WebAssembly.instantiate(b,c)}catch(e){D(`failed to asynchronously prepare wasm: ${e}`),K(e)}}async function ka(a){var c=L;if(!E&&!C(c)&&!m)try{var b=fetch(c,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(b,a)}catch(e){D(`wasm streaming compile failed: ${e}`),D("falling back to ArrayBuffer instantiation")}return ja(c,a)}
8
+ class M{name="ExitStatus";constructor(a){this.message=`Program terminated with exit(${a})`;this.status=a}}
9
+ var la=a=>{for(;0<a.length;)a.shift()(d)},ma=[],na=[],oa=()=>{var a=d.preRun.shift();na.push(a)},N=!0,t,pa=new TextDecoder,qa=(a,c,b,e)=>{b=c+b;if(e)return b;for(;a[c]&&!(c>=b);)++c;return c},O=(a,c,b)=>a?pa.decode(H.subarray(a,qa(H,a,c,b))):"",P=0,ra=[0,31,60,91,121,152,182,213,244,274,305,335],sa=[0,31,59,90,120,151,181,212,243,273,304,334],Q={},ta=a=>{G=a;N||0<P||(d.onExit?.(a),F=!0);x(a,new M(a))},R=a=>{if(!F)try{return a()}catch(c){c instanceof M||"unwind"==c||x(1,c)}finally{if(!(N||0<P))try{G=
10
+ a=G,ta(a)}catch(c){c instanceof M||"unwind"==c||x(1,c)}}},S=(a,c,b)=>{var e=H;if(!(0<b))return 0;var g=c;b=c+b-1;for(var h=0;h<a.length;++h){var k=a.codePointAt(h);if(127>=k){if(c>=b)break;e[c++]=k}else if(2047>=k){if(c+1>=b)break;e[c++]=192|k>>6;e[c++]=128|k&63}else if(65535>=k){if(c+2>=b)break;e[c++]=224|k>>12;e[c++]=128|k>>6&63;e[c++]=128|k&63}else{if(c+3>=b)break;e[c++]=240|k>>18;e[c++]=128|k>>12&63;e[c++]=128|k>>6&63;e[c++]=128|k&63;h++}}e[c]=0;return c-g},T={},ua=()=>{if(!U){var a={USER:"web_user",
11
+ LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:w||"./this.program"},c;for(c in T)void 0===T[c]?delete a[c]:a[c]=T[c];var b=[];for(c in a)b.push(`${c}=${a[c]}`);U=b}return U},U,V=a=>{for(var c=0,b=0;b<a.length;++b){var e=a.charCodeAt(b);127>=e?c++:2047>=e?c+=2:55296<=e&&57343>=e?(c+=4,++b):c+=3}return c},wa=[null,[],[]],W=a=>{try{a()}catch(c){K(c)}};
12
+ function xa(a){var c=(...b)=>{X.Sa.push(a);try{return a(...b)}finally{F||(X.Sa.pop(),X.Qa&&X.state===X.Ra.Za&&0===X.Sa.length&&(X.state=X.Ra.Ua,W(ya),"undefined"!=typeof Fibers&&Fibers.nb()))}};X.ab.set(a,c);return c}function za(){return new Promise((a,c)=>{X.Wa={resolve:a,reject:c}})}function Aa(){var a=Ba(12+X.Va),c=a+12,b=X.Va;J[a>>2]=c;J[a+4>>2]=c+b;c=X.Sa[0];X.Xa.has(c)||(b=X.fb++,X.Xa.set(c,b),X.$a.set(b,c));c=X.Xa.get(c);I[a+8>>2]=c;return a}
13
+ function Ca(){var a=X.$a.get(I[X.Qa+8>>2]);a=X.ab.get(a);return R(a)}
14
+ var X={kb(a){var c=/^(qts_host_call_function|qts_host_load_module_source|qts_host_normalize_module|invoke_.*|__asyncjs__.*)$/;for(let [b,e]of Object.entries(a))"function"==typeof e&&(e.lb||c.test(b))},Ra:{Ua:0,Za:1,Ya:2,ib:3},state:0,Va:81920,Qa:null,cb:0,Sa:[],Xa:new Map,$a:new Map,ab:new Map,fb:0,Wa:null,hb:[],Ta(a){if(!F){if(X.state===X.Ra.Ua){var c=!1,b=!1;a((e=0)=>{if(!F&&(X.cb=e,c=!0,b)){X.state=X.Ra.Ya;W(()=>Da(X.Qa));"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.resume();e=!1;try{var g=
15
+ Ca()}catch(p){g=p,e=!0}var h=!1;if(!X.Qa){var k=X.Wa;k&&(X.Wa=null,(e?k.reject:k.resolve)(g),h=!0)}if(e&&!h)throw g;}});b=!0;c||(X.state=X.Ra.Za,X.Qa=Aa(),"undefined"!=typeof MainLoop&&MainLoop.gb&&MainLoop.pause(),W(()=>Ea(X.Qa)))}else X.state===X.Ra.Ya?(X.state=X.Ra.Ua,W(Fa),Ga(X.Qa),X.Qa=null,X.hb.forEach(R)):K(`invalid state: ${X.state}`);return X.cb}},jb:a=>X.Ta(async c=>{c(await a())})},Ja=(a,c,b,e,g)=>{function h(l){--P;0!==u&&Ha(u);return"string"===c?O(l):"boolean"===c?!!l:l}var k={string:l=>
16
+ {var v=0;if(null!==l&&void 0!==l&&0!==l){v=V(l)+1;var va=Y(v);S(l,va,v);v=va}return v},array:l=>{var v=Y(l.length);ea.set(l,v);return v}};a=d["_"+a];var p=[],u=0;if(e)for(var n=0;n<e.length;n++){var q=k[b[n]];q?(0===u&&(u=Ia()),p[n]=q(e[n])):p[n]=e[n]}b=X.Qa;e=a(...p);g=g?.async;P+=1;if(X.Qa!=b)return za().then(h);e=h(e);return g?Promise.resolve(e):e};d.wasmMemory?t=d.wasmMemory:t=new WebAssembly.Memory({initial:(d.INITIAL_MEMORY||16777216)/65536,maximum:32768});ha();d.noExitRuntime&&(N=d.noExitRuntime);
17
+ d.print&&(ba=d.print);d.printErr&&(D=d.printErr);d.wasmBinary&&(E=d.wasmBinary);d.thisProgram&&(w=d.thisProgram);if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.shift()();d.cwrap=(a,c,b,e)=>{var g=!b||b.every(h=>"number"===h||"boolean"===h);return"string"!==c&&g&&!e?d["_"+a]:(...h)=>Ja(a,c,b,h,e)};d.UTF8ToString=O;d.stringToUTF8=(a,c,b)=>S(a,c,b);d.lengthBytesUTF8=V;d.Asyncify=X;
18
+ var Ba,Ga,Ka,Ha,Y,Ia,dynCall_iii,dynCall_vii,dynCall_vi,Ea,ya,Da,Fa,La={b:(a,c,b,e)=>K(`Assertion failed: ${O(a)}, at: `+[c?O(c):"unknown filename",b,e?O(e):"unknown function"]),q:()=>K(""),l:()=>{N=!1;P=0},m:function(a,c){a=-9007199254740992>a||9007199254740992<a?NaN:Number(a);a=new Date(1E3*a);I[c>>2]=a.getSeconds();I[c+4>>2]=a.getMinutes();I[c+8>>2]=a.getHours();I[c+12>>2]=a.getDate();I[c+16>>2]=a.getMonth();I[c+20>>2]=a.getFullYear()-1900;I[c+24>>2]=a.getDay();var b=a.getFullYear();I[c+28>>2]=
19
+ (0!==b%4||0===b%100&&0!==b%400?sa:ra)[a.getMonth()]+a.getDate()-1|0;I[c+36>>2]=-(60*a.getTimezoneOffset());b=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var e=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();I[c+32>>2]=(b!=e&&a.getTimezoneOffset()==Math.min(e,b))|0},j:(a,c)=>{Q[a]&&(clearTimeout(Q[a].id),delete Q[a]);if(!c)return 0;var b=setTimeout(()=>{delete Q[a];R(()=>Ka(a,performance.now()))},c);Q[a]={id:b,mb:c};return 0},n:(a,c,b,e)=>{var g=(new Date).getFullYear(),h=(new Date(g,0,
20
+ 1)).getTimezoneOffset();g=(new Date(g,6,1)).getTimezoneOffset();J[a>>2]=60*Math.max(h,g);I[c>>2]=Number(h!=g);c=k=>{var p=Math.abs(k);return`UTC${0<=k?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=c(h);c=c(g);g<h?(S(a,b,17),S(c,e,17)):(S(a,e,17),S(c,b,17))},p:()=>Date.now(),k:a=>{var c=H.length;a>>>=0;if(2147483648<a)return!1;for(var b=1;4>=b;b*=2){var e=c*(1+.2/b);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-t.buffer.byteLength+
21
+ 65535)/65536|0;try{t.grow(e);ha();var g=1;break a}catch(h){}g=void 0}if(g)return!0}return!1},d:(a,c)=>{var b=0,e=0,g;for(g of ua()){var h=c+b;J[a+e>>2]=h;b+=S(g,h,Infinity)+1;e+=4}return 0},e:(a,c)=>{var b=ua();J[a>>2]=b.length;a=0;for(var e of b)a+=V(e)+1;J[c>>2]=a;return 0},c:()=>52,o:function(){return 70},s:(a,c,b,e)=>{for(var g=0,h=0;h<b;h++){var k=J[c>>2],p=J[c+4>>2];c+=8;for(var u=0;u<p;u++){var n=a,q=H[k+u],l=wa[n];0===q||10===q?(n=1===n?ba:D,q=qa(l,0),q=pa.decode(l.buffer?l.subarray(0,q):
22
+ new Uint8Array(l.slice(0,q))),n(q),l.length=0):l.push(q)}g+=p}J[e>>2]=g;return 0},a:t,r:ta,i:function(a,c,b,e,g){return d.callbacks.callFunction({handleSleep:X.Ta},a,c,b,e,g)},h:function(a){return d.callbacks.shouldInterrupt(void 0,a)},g:function(a,c,b){const e={handleSleep:X.Ta};b=O(b);return d.callbacks.loadModuleSource(e,a,c,b)},f:function(a,c,b,e){const g={handleSleep:X.Ta};b=O(b);e=O(e);return d.callbacks.normalizeModule(g,a,c,b,e)},t:function(a,c){d.callbacks.freeHostRef(void 0,a,c)},u:function(a,
23
+ c){X.Va=a||c}},Z;
24
+ Z=await (async function(){function a(b){var e=Z=b.exports;b={};for(let [g,h]of Object.entries(e))"function"==typeof h?(e=xa(h),b[g]=e):b[g]=h;b=Z=b;Ba=d._malloc=b.w;d._QTS_Throw=b.x;d._QTS_NewError=b.y;d._QTS_RuntimeSetMemoryLimit=b.z;d._QTS_RuntimeComputeMemoryUsage=b.A;d._QTS_RuntimeDumpMemoryUsage=b.B;d._QTS_RecoverableLeakCheck=b.C;d._QTS_BuildIsSanitizeLeak=b.D;d._QTS_RuntimeSetMaxStackSize=b.E;d._QTS_GetUndefined=b.F;d._QTS_GetNull=b.G;d._QTS_GetFalse=b.H;d._QTS_GetTrue=b.I;d._QTS_NewHostRef=
25
+ b.J;d._QTS_GetHostRefId=b.K;d._QTS_NewRuntime=b.L;d._QTS_FreeRuntime=b.M;Ga=d._free=b.N;d._QTS_NewContext=b.O;d._QTS_FreeContext=b.P;d._QTS_FreeValuePointer=b.Q;d._QTS_FreeValuePointerRuntime=b.R;d._QTS_FreeVoidPointer=b.S;d._QTS_FreeCString=b.T;d._QTS_DupValuePointer=b.U;d._QTS_NewObject=b.V;d._QTS_NewObjectProto=b.W;d._QTS_NewArray=b.X;d._QTS_NewArrayBuffer=b.Y;d._QTS_NewFloat64=b.Z;d._QTS_GetFloat64=b._;d._QTS_NewString=b.$;d._QTS_GetString=b.aa;d._QTS_GetArrayBuffer=b.ba;d._QTS_GetArrayBufferLength=
26
+ b.ca;d._QTS_NewSymbol=b.da;d._QTS_GetSymbolDescriptionOrKey=b.ea;d._QTS_IsGlobalSymbol=b.fa;d._QTS_IsJobPending=b.ga;d._QTS_ExecutePendingJob=b.ha;d._QTS_GetProp=b.ia;d._QTS_GetPropNumber=b.ja;d._QTS_SetProp=b.ka;d._QTS_DefineProp=b.la;d._QTS_GetOwnPropertyNames=b.ma;d._QTS_Call=b.na;d._QTS_ResolveException=b.oa;d._QTS_Dump=b.pa;d._QTS_Eval=b.qa;d._QTS_GetModuleNamespace=b.ra;d._QTS_Typeof=b.sa;d._QTS_GetLength=b.ta;d._QTS_IsEqual=b.ua;d._QTS_GetGlobalObject=b.va;d._QTS_NewPromiseCapability=b.wa;
27
+ d._QTS_PromiseState=b.xa;d._QTS_PromiseResult=b.ya;d._QTS_TestStringArg=b.za;d._QTS_GetDebugLogEnabled=b.Aa;d._QTS_SetDebugLogEnabled=b.Ba;d._QTS_BuildIsDebug=b.Ca;d._QTS_BuildIsAsyncify=b.Da;d._QTS_NewFunction=b.Ea;d._QTS_ArgvGetJSValueConstPointer=b.Fa;d._QTS_RuntimeEnableInterruptHandler=b.Ga;d._QTS_RuntimeDisableInterruptHandler=b.Ha;d._QTS_RuntimeEnableModuleLoader=b.Ia;d._QTS_RuntimeDisableModuleLoader=b.Ja;d._QTS_bjson_encode=b.Ka;d._QTS_bjson_decode=b.La;Ka=b.Ma;Ha=b.Na;Y=b.Oa;Ia=b.Pa;dynCall_iii=
28
+ b._a;dynCall_vii=b.bb;dynCall_vi=b.sb;Ea=b.tb;ya=b.ub;Da=b.vb;Fa=b.wb;return Z}var c={a:La};if(d.instantiateWasm)return new Promise(b=>{d.instantiateWasm(c,(e,g)=>{b(a(e,g))})});L??=d.locateFile?d.locateFile?d.locateFile("emscripten-module.wasm",z):z+"emscripten-module.wasm":(new URL("emscripten-module.wasm",import.meta.url)).href;return a((await ka(c)).instance)}());
29
+ (function(){function a(){d.calledRun=!0;if(!F){fa=!0;Z.v();ca?.(d);d.onRuntimeInitialized?.();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var c=d.postRun.shift();ma.push(c)}la(ma)}}if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)oa();la(na);d.setStatus?(d.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>d.setStatus(""),1);a()},1)):a()})();fa?moduleRtn=d:moduleRtn=new Promise((a,c)=>{ca=a;da=c});
30
+ ;return moduleRtn}export default QuickJSRaw;
@@ -0,0 +1,94 @@
1
+ import { QuickJSAsyncEmscriptenModule, JSContextPointer, JSValuePointer, JSValueConstPointer, JSRuntimePointer, OwnedHeapCharPointer, HostRefId, IntrinsicsFlags, JSVoidPointer, JSBorrowedCharPointer, BorrowedHeapCharPointer, JSContextPointerPointer, JSValuePointerPointerPointer, UInt32Pointer, JSValueConstPointerPointer, EvalDetectModule, EvalFlags, IsEqualOp, JSValuePointerPointer, JSPromiseStateEnum } from '@jitl/quickjs-ffi-types';
2
+
3
+ /**
4
+ * Low-level FFI bindings to QuickJS's Emscripten module.
5
+ * See instead {@link QuickJSContext}, the public Javascript interface exposed by this
6
+ * library.
7
+ *
8
+ * @unstable The FFI interface is considered private and may change.
9
+ */
10
+ declare class QuickJSAsyncFFI {
11
+ private module;
12
+ constructor(module: QuickJSAsyncEmscriptenModule);
13
+ /** Set at compile time. */
14
+ readonly DEBUG = false;
15
+ QTS_Throw: (ctx: JSContextPointer, error: JSValuePointer | JSValueConstPointer) => JSValuePointer;
16
+ QTS_NewError: (ctx: JSContextPointer) => JSValuePointer;
17
+ QTS_RuntimeSetMemoryLimit: (rt: JSRuntimePointer, limit: number) => void;
18
+ QTS_RuntimeComputeMemoryUsage: (rt: JSRuntimePointer, ctx: JSContextPointer) => JSValuePointer;
19
+ QTS_RuntimeDumpMemoryUsage: (rt: JSRuntimePointer) => OwnedHeapCharPointer;
20
+ QTS_RecoverableLeakCheck: () => number;
21
+ QTS_BuildIsSanitizeLeak: () => number;
22
+ QTS_RuntimeSetMaxStackSize: (rt: JSRuntimePointer, stack_size: number) => void;
23
+ QTS_GetUndefined: () => JSValueConstPointer;
24
+ QTS_GetNull: () => JSValueConstPointer;
25
+ QTS_GetFalse: () => JSValueConstPointer;
26
+ QTS_GetTrue: () => JSValueConstPointer;
27
+ QTS_NewHostRef: (ctx: JSContextPointer, id: HostRefId) => JSValuePointer;
28
+ QTS_GetHostRefId: (value: JSValuePointer | JSValueConstPointer) => HostRefId;
29
+ QTS_NewRuntime: () => JSRuntimePointer;
30
+ QTS_FreeRuntime: (rt: JSRuntimePointer) => void;
31
+ QTS_NewContext: (rt: JSRuntimePointer, intrinsics: IntrinsicsFlags) => JSContextPointer;
32
+ QTS_FreeContext: (ctx: JSContextPointer) => void;
33
+ QTS_FreeValuePointer: (ctx: JSContextPointer, value: JSValuePointer) => void;
34
+ QTS_FreeValuePointerRuntime: (rt: JSRuntimePointer, value: JSValuePointer) => void;
35
+ QTS_FreeVoidPointer: (ctx: JSContextPointer, ptr: JSVoidPointer) => void;
36
+ QTS_FreeCString: (ctx: JSContextPointer, str: JSBorrowedCharPointer) => void;
37
+ QTS_DupValuePointer: (ctx: JSContextPointer, val: JSValuePointer | JSValueConstPointer) => JSValuePointer;
38
+ QTS_NewObject: (ctx: JSContextPointer) => JSValuePointer;
39
+ QTS_NewObjectProto: (ctx: JSContextPointer, proto: JSValuePointer | JSValueConstPointer) => JSValuePointer;
40
+ QTS_NewArray: (ctx: JSContextPointer) => JSValuePointer;
41
+ QTS_NewArrayBuffer: (ctx: JSContextPointer, buffer: JSVoidPointer, length: number) => JSValuePointer;
42
+ QTS_NewFloat64: (ctx: JSContextPointer, num: number) => JSValuePointer;
43
+ QTS_GetFloat64: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number;
44
+ QTS_NewString: (ctx: JSContextPointer, string: BorrowedHeapCharPointer) => JSValuePointer;
45
+ QTS_GetString: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
46
+ QTS_GetArrayBuffer: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => JSVoidPointer;
47
+ QTS_GetArrayBufferLength: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => number;
48
+ QTS_NewSymbol: (ctx: JSContextPointer, description: BorrowedHeapCharPointer, isGlobal: number) => JSValuePointer;
49
+ QTS_GetSymbolDescriptionOrKey: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
50
+ QTS_GetSymbolDescriptionOrKey_MaybeAsync: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer>;
51
+ QTS_IsGlobalSymbol: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number;
52
+ QTS_IsJobPending: (rt: JSRuntimePointer) => number;
53
+ QTS_ExecutePendingJob: (rt: JSRuntimePointer, maxJobsToExecute: number, lastJobContext: JSContextPointerPointer) => JSValuePointer;
54
+ QTS_ExecutePendingJob_MaybeAsync: (rt: JSRuntimePointer, maxJobsToExecute: number, lastJobContext: JSContextPointerPointer) => JSValuePointer | Promise<JSValuePointer>;
55
+ QTS_GetProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer) => JSValuePointer;
56
+ QTS_GetProp_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer) => JSValuePointer | Promise<JSValuePointer>;
57
+ QTS_GetPropNumber: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: number) => JSValuePointer;
58
+ QTS_GetPropNumber_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: number) => JSValuePointer | Promise<JSValuePointer>;
59
+ QTS_SetProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer) => void;
60
+ QTS_SetProp_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer) => void | Promise<void>;
61
+ QTS_DefineProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer, get: JSValuePointer | JSValueConstPointer, set: JSValuePointer | JSValueConstPointer, configurable: boolean, enumerable: boolean, has_value: boolean) => void;
62
+ QTS_GetOwnPropertyNames: (ctx: JSContextPointer, out_ptrs: JSValuePointerPointerPointer, out_len: UInt32Pointer, obj: JSValuePointer | JSValueConstPointer, flags: number) => JSValuePointer;
63
+ QTS_GetOwnPropertyNames_MaybeAsync: (ctx: JSContextPointer, out_ptrs: JSValuePointerPointerPointer, out_len: UInt32Pointer, obj: JSValuePointer | JSValueConstPointer, flags: number) => JSValuePointer | Promise<JSValuePointer>;
64
+ QTS_Call: (ctx: JSContextPointer, func_obj: JSValuePointer | JSValueConstPointer, this_obj: JSValuePointer | JSValueConstPointer, argc: number, argv_ptrs: JSValueConstPointerPointer) => JSValuePointer;
65
+ QTS_Call_MaybeAsync: (ctx: JSContextPointer, func_obj: JSValuePointer | JSValueConstPointer, this_obj: JSValuePointer | JSValueConstPointer, argc: number, argv_ptrs: JSValueConstPointerPointer) => JSValuePointer | Promise<JSValuePointer>;
66
+ QTS_ResolveException: (ctx: JSContextPointer, maybe_exception: JSValuePointer) => JSValuePointer;
67
+ QTS_Dump: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
68
+ QTS_Dump_MaybeAsync: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer>;
69
+ QTS_Eval: (ctx: JSContextPointer, js_code: BorrowedHeapCharPointer, js_code_length: number, filename: string, detectModule: EvalDetectModule, evalFlags: EvalFlags) => JSValuePointer;
70
+ QTS_Eval_MaybeAsync: (ctx: JSContextPointer, js_code: BorrowedHeapCharPointer, js_code_length: number, filename: string, detectModule: EvalDetectModule, evalFlags: EvalFlags) => JSValuePointer | Promise<JSValuePointer>;
71
+ QTS_GetModuleNamespace: (ctx: JSContextPointer, module_func_obj: JSValuePointer | JSValueConstPointer) => JSValuePointer;
72
+ QTS_Typeof: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => OwnedHeapCharPointer;
73
+ QTS_GetLength: (ctx: JSContextPointer, out_len: UInt32Pointer, value: JSValuePointer | JSValueConstPointer) => number;
74
+ QTS_IsEqual: (ctx: JSContextPointer, a: JSValuePointer | JSValueConstPointer, b: JSValuePointer | JSValueConstPointer, op: IsEqualOp) => number;
75
+ QTS_GetGlobalObject: (ctx: JSContextPointer) => JSValuePointer;
76
+ QTS_NewPromiseCapability: (ctx: JSContextPointer, resolve_funcs_out: JSValuePointerPointer) => JSValuePointer;
77
+ QTS_PromiseState: (ctx: JSContextPointer, promise: JSValuePointer | JSValueConstPointer) => JSPromiseStateEnum;
78
+ QTS_PromiseResult: (ctx: JSContextPointer, promise: JSValuePointer | JSValueConstPointer) => JSValuePointer;
79
+ QTS_TestStringArg: (string: string) => void;
80
+ QTS_GetDebugLogEnabled: (rt: JSRuntimePointer) => number;
81
+ QTS_SetDebugLogEnabled: (rt: JSRuntimePointer, is_enabled: number) => void;
82
+ QTS_BuildIsDebug: () => number;
83
+ QTS_BuildIsAsyncify: () => number;
84
+ QTS_NewFunction: (ctx: JSContextPointer, name: string, arg_length: number, is_constructor: boolean, host_ref_id: HostRefId) => JSValuePointer;
85
+ QTS_ArgvGetJSValueConstPointer: (argv: JSValuePointer | JSValueConstPointer, index: number) => JSValueConstPointer;
86
+ QTS_RuntimeEnableInterruptHandler: (rt: JSRuntimePointer) => void;
87
+ QTS_RuntimeDisableInterruptHandler: (rt: JSRuntimePointer) => void;
88
+ QTS_RuntimeEnableModuleLoader: (rt: JSRuntimePointer, use_custom_normalize: number) => void;
89
+ QTS_RuntimeDisableModuleLoader: (rt: JSRuntimePointer) => void;
90
+ QTS_bjson_encode: (ctx: JSContextPointer, val: JSValuePointer | JSValueConstPointer) => JSValuePointer;
91
+ QTS_bjson_decode: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => JSValuePointer;
92
+ }
93
+
94
+ export { QuickJSAsyncFFI };
@@ -0,0 +1,94 @@
1
+ import { QuickJSAsyncEmscriptenModule, JSContextPointer, JSValuePointer, JSValueConstPointer, JSRuntimePointer, OwnedHeapCharPointer, HostRefId, IntrinsicsFlags, JSVoidPointer, JSBorrowedCharPointer, BorrowedHeapCharPointer, JSContextPointerPointer, JSValuePointerPointerPointer, UInt32Pointer, JSValueConstPointerPointer, EvalDetectModule, EvalFlags, IsEqualOp, JSValuePointerPointer, JSPromiseStateEnum } from '@jitl/quickjs-ffi-types';
2
+
3
+ /**
4
+ * Low-level FFI bindings to QuickJS's Emscripten module.
5
+ * See instead {@link QuickJSContext}, the public Javascript interface exposed by this
6
+ * library.
7
+ *
8
+ * @unstable The FFI interface is considered private and may change.
9
+ */
10
+ declare class QuickJSAsyncFFI {
11
+ private module;
12
+ constructor(module: QuickJSAsyncEmscriptenModule);
13
+ /** Set at compile time. */
14
+ readonly DEBUG = false;
15
+ QTS_Throw: (ctx: JSContextPointer, error: JSValuePointer | JSValueConstPointer) => JSValuePointer;
16
+ QTS_NewError: (ctx: JSContextPointer) => JSValuePointer;
17
+ QTS_RuntimeSetMemoryLimit: (rt: JSRuntimePointer, limit: number) => void;
18
+ QTS_RuntimeComputeMemoryUsage: (rt: JSRuntimePointer, ctx: JSContextPointer) => JSValuePointer;
19
+ QTS_RuntimeDumpMemoryUsage: (rt: JSRuntimePointer) => OwnedHeapCharPointer;
20
+ QTS_RecoverableLeakCheck: () => number;
21
+ QTS_BuildIsSanitizeLeak: () => number;
22
+ QTS_RuntimeSetMaxStackSize: (rt: JSRuntimePointer, stack_size: number) => void;
23
+ QTS_GetUndefined: () => JSValueConstPointer;
24
+ QTS_GetNull: () => JSValueConstPointer;
25
+ QTS_GetFalse: () => JSValueConstPointer;
26
+ QTS_GetTrue: () => JSValueConstPointer;
27
+ QTS_NewHostRef: (ctx: JSContextPointer, id: HostRefId) => JSValuePointer;
28
+ QTS_GetHostRefId: (value: JSValuePointer | JSValueConstPointer) => HostRefId;
29
+ QTS_NewRuntime: () => JSRuntimePointer;
30
+ QTS_FreeRuntime: (rt: JSRuntimePointer) => void;
31
+ QTS_NewContext: (rt: JSRuntimePointer, intrinsics: IntrinsicsFlags) => JSContextPointer;
32
+ QTS_FreeContext: (ctx: JSContextPointer) => void;
33
+ QTS_FreeValuePointer: (ctx: JSContextPointer, value: JSValuePointer) => void;
34
+ QTS_FreeValuePointerRuntime: (rt: JSRuntimePointer, value: JSValuePointer) => void;
35
+ QTS_FreeVoidPointer: (ctx: JSContextPointer, ptr: JSVoidPointer) => void;
36
+ QTS_FreeCString: (ctx: JSContextPointer, str: JSBorrowedCharPointer) => void;
37
+ QTS_DupValuePointer: (ctx: JSContextPointer, val: JSValuePointer | JSValueConstPointer) => JSValuePointer;
38
+ QTS_NewObject: (ctx: JSContextPointer) => JSValuePointer;
39
+ QTS_NewObjectProto: (ctx: JSContextPointer, proto: JSValuePointer | JSValueConstPointer) => JSValuePointer;
40
+ QTS_NewArray: (ctx: JSContextPointer) => JSValuePointer;
41
+ QTS_NewArrayBuffer: (ctx: JSContextPointer, buffer: JSVoidPointer, length: number) => JSValuePointer;
42
+ QTS_NewFloat64: (ctx: JSContextPointer, num: number) => JSValuePointer;
43
+ QTS_GetFloat64: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number;
44
+ QTS_NewString: (ctx: JSContextPointer, string: BorrowedHeapCharPointer) => JSValuePointer;
45
+ QTS_GetString: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
46
+ QTS_GetArrayBuffer: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => JSVoidPointer;
47
+ QTS_GetArrayBufferLength: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => number;
48
+ QTS_NewSymbol: (ctx: JSContextPointer, description: BorrowedHeapCharPointer, isGlobal: number) => JSValuePointer;
49
+ QTS_GetSymbolDescriptionOrKey: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
50
+ QTS_GetSymbolDescriptionOrKey_MaybeAsync: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer>;
51
+ QTS_IsGlobalSymbol: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number;
52
+ QTS_IsJobPending: (rt: JSRuntimePointer) => number;
53
+ QTS_ExecutePendingJob: (rt: JSRuntimePointer, maxJobsToExecute: number, lastJobContext: JSContextPointerPointer) => JSValuePointer;
54
+ QTS_ExecutePendingJob_MaybeAsync: (rt: JSRuntimePointer, maxJobsToExecute: number, lastJobContext: JSContextPointerPointer) => JSValuePointer | Promise<JSValuePointer>;
55
+ QTS_GetProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer) => JSValuePointer;
56
+ QTS_GetProp_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer) => JSValuePointer | Promise<JSValuePointer>;
57
+ QTS_GetPropNumber: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: number) => JSValuePointer;
58
+ QTS_GetPropNumber_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: number) => JSValuePointer | Promise<JSValuePointer>;
59
+ QTS_SetProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer) => void;
60
+ QTS_SetProp_MaybeAsync: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer) => void | Promise<void>;
61
+ QTS_DefineProp: (ctx: JSContextPointer, this_val: JSValuePointer | JSValueConstPointer, prop_name: JSValuePointer | JSValueConstPointer, prop_value: JSValuePointer | JSValueConstPointer, get: JSValuePointer | JSValueConstPointer, set: JSValuePointer | JSValueConstPointer, configurable: boolean, enumerable: boolean, has_value: boolean) => void;
62
+ QTS_GetOwnPropertyNames: (ctx: JSContextPointer, out_ptrs: JSValuePointerPointerPointer, out_len: UInt32Pointer, obj: JSValuePointer | JSValueConstPointer, flags: number) => JSValuePointer;
63
+ QTS_GetOwnPropertyNames_MaybeAsync: (ctx: JSContextPointer, out_ptrs: JSValuePointerPointerPointer, out_len: UInt32Pointer, obj: JSValuePointer | JSValueConstPointer, flags: number) => JSValuePointer | Promise<JSValuePointer>;
64
+ QTS_Call: (ctx: JSContextPointer, func_obj: JSValuePointer | JSValueConstPointer, this_obj: JSValuePointer | JSValueConstPointer, argc: number, argv_ptrs: JSValueConstPointerPointer) => JSValuePointer;
65
+ QTS_Call_MaybeAsync: (ctx: JSContextPointer, func_obj: JSValuePointer | JSValueConstPointer, this_obj: JSValuePointer | JSValueConstPointer, argc: number, argv_ptrs: JSValueConstPointerPointer) => JSValuePointer | Promise<JSValuePointer>;
66
+ QTS_ResolveException: (ctx: JSContextPointer, maybe_exception: JSValuePointer) => JSValuePointer;
67
+ QTS_Dump: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer;
68
+ QTS_Dump_MaybeAsync: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer>;
69
+ QTS_Eval: (ctx: JSContextPointer, js_code: BorrowedHeapCharPointer, js_code_length: number, filename: string, detectModule: EvalDetectModule, evalFlags: EvalFlags) => JSValuePointer;
70
+ QTS_Eval_MaybeAsync: (ctx: JSContextPointer, js_code: BorrowedHeapCharPointer, js_code_length: number, filename: string, detectModule: EvalDetectModule, evalFlags: EvalFlags) => JSValuePointer | Promise<JSValuePointer>;
71
+ QTS_GetModuleNamespace: (ctx: JSContextPointer, module_func_obj: JSValuePointer | JSValueConstPointer) => JSValuePointer;
72
+ QTS_Typeof: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => OwnedHeapCharPointer;
73
+ QTS_GetLength: (ctx: JSContextPointer, out_len: UInt32Pointer, value: JSValuePointer | JSValueConstPointer) => number;
74
+ QTS_IsEqual: (ctx: JSContextPointer, a: JSValuePointer | JSValueConstPointer, b: JSValuePointer | JSValueConstPointer, op: IsEqualOp) => number;
75
+ QTS_GetGlobalObject: (ctx: JSContextPointer) => JSValuePointer;
76
+ QTS_NewPromiseCapability: (ctx: JSContextPointer, resolve_funcs_out: JSValuePointerPointer) => JSValuePointer;
77
+ QTS_PromiseState: (ctx: JSContextPointer, promise: JSValuePointer | JSValueConstPointer) => JSPromiseStateEnum;
78
+ QTS_PromiseResult: (ctx: JSContextPointer, promise: JSValuePointer | JSValueConstPointer) => JSValuePointer;
79
+ QTS_TestStringArg: (string: string) => void;
80
+ QTS_GetDebugLogEnabled: (rt: JSRuntimePointer) => number;
81
+ QTS_SetDebugLogEnabled: (rt: JSRuntimePointer, is_enabled: number) => void;
82
+ QTS_BuildIsDebug: () => number;
83
+ QTS_BuildIsAsyncify: () => number;
84
+ QTS_NewFunction: (ctx: JSContextPointer, name: string, arg_length: number, is_constructor: boolean, host_ref_id: HostRefId) => JSValuePointer;
85
+ QTS_ArgvGetJSValueConstPointer: (argv: JSValuePointer | JSValueConstPointer, index: number) => JSValueConstPointer;
86
+ QTS_RuntimeEnableInterruptHandler: (rt: JSRuntimePointer) => void;
87
+ QTS_RuntimeDisableInterruptHandler: (rt: JSRuntimePointer) => void;
88
+ QTS_RuntimeEnableModuleLoader: (rt: JSRuntimePointer, use_custom_normalize: number) => void;
89
+ QTS_RuntimeDisableModuleLoader: (rt: JSRuntimePointer) => void;
90
+ QTS_bjson_encode: (ctx: JSContextPointer, val: JSValuePointer | JSValueConstPointer) => JSValuePointer;
91
+ QTS_bjson_decode: (ctx: JSContextPointer, data: JSValuePointer | JSValueConstPointer) => JSValuePointer;
92
+ }
93
+
94
+ export { QuickJSAsyncFFI };
@@ -0,0 +1,2 @@
1
+ "use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var ffi_exports={};__export(ffi_exports,{QuickJSAsyncFFI:()=>QuickJSAsyncFFI});module.exports=__toCommonJS(ffi_exports);var import_quickjs_ffi_types=require("@jitl/quickjs-ffi-types"),QuickJSAsyncFFI=class{constructor(module2){this.module=module2;this.DEBUG=!1;this.QTS_Throw=this.module.cwrap("QTS_Throw","number",["number","number"]);this.QTS_NewError=this.module.cwrap("QTS_NewError","number",["number"]);this.QTS_RuntimeSetMemoryLimit=this.module.cwrap("QTS_RuntimeSetMemoryLimit",null,["number","number"]);this.QTS_RuntimeComputeMemoryUsage=this.module.cwrap("QTS_RuntimeComputeMemoryUsage","number",["number","number"]);this.QTS_RuntimeDumpMemoryUsage=this.module.cwrap("QTS_RuntimeDumpMemoryUsage","number",["number"]);this.QTS_RecoverableLeakCheck=this.module.cwrap("QTS_RecoverableLeakCheck","number",[]);this.QTS_BuildIsSanitizeLeak=this.module.cwrap("QTS_BuildIsSanitizeLeak","number",[]);this.QTS_RuntimeSetMaxStackSize=this.module.cwrap("QTS_RuntimeSetMaxStackSize",null,["number","number"]);this.QTS_GetUndefined=this.module.cwrap("QTS_GetUndefined","number",[]);this.QTS_GetNull=this.module.cwrap("QTS_GetNull","number",[]);this.QTS_GetFalse=this.module.cwrap("QTS_GetFalse","number",[]);this.QTS_GetTrue=this.module.cwrap("QTS_GetTrue","number",[]);this.QTS_NewHostRef=this.module.cwrap("QTS_NewHostRef","number",["number","number"]);this.QTS_GetHostRefId=this.module.cwrap("QTS_GetHostRefId","number",["number"]);this.QTS_NewRuntime=this.module.cwrap("QTS_NewRuntime","number",[]);this.QTS_FreeRuntime=this.module.cwrap("QTS_FreeRuntime",null,["number"]);this.QTS_NewContext=this.module.cwrap("QTS_NewContext","number",["number","number"]);this.QTS_FreeContext=this.module.cwrap("QTS_FreeContext",null,["number"]);this.QTS_FreeValuePointer=this.module.cwrap("QTS_FreeValuePointer",null,["number","number"]);this.QTS_FreeValuePointerRuntime=this.module.cwrap("QTS_FreeValuePointerRuntime",null,["number","number"]);this.QTS_FreeVoidPointer=this.module.cwrap("QTS_FreeVoidPointer",null,["number","number"]);this.QTS_FreeCString=this.module.cwrap("QTS_FreeCString",null,["number","number"]);this.QTS_DupValuePointer=this.module.cwrap("QTS_DupValuePointer","number",["number","number"]);this.QTS_NewObject=this.module.cwrap("QTS_NewObject","number",["number"]);this.QTS_NewObjectProto=this.module.cwrap("QTS_NewObjectProto","number",["number","number"]);this.QTS_NewArray=this.module.cwrap("QTS_NewArray","number",["number"]);this.QTS_NewArrayBuffer=this.module.cwrap("QTS_NewArrayBuffer","number",["number","number","number"]);this.QTS_NewFloat64=this.module.cwrap("QTS_NewFloat64","number",["number","number"]);this.QTS_GetFloat64=this.module.cwrap("QTS_GetFloat64","number",["number","number"]);this.QTS_NewString=this.module.cwrap("QTS_NewString","number",["number","number"]);this.QTS_GetString=this.module.cwrap("QTS_GetString","number",["number","number"]);this.QTS_GetArrayBuffer=this.module.cwrap("QTS_GetArrayBuffer","number",["number","number"]);this.QTS_GetArrayBufferLength=this.module.cwrap("QTS_GetArrayBufferLength","number",["number","number"]);this.QTS_NewSymbol=this.module.cwrap("QTS_NewSymbol","number",["number","number","number"]);this.QTS_GetSymbolDescriptionOrKey=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_GetSymbolDescriptionOrKey","number",["number","number"]));this.QTS_GetSymbolDescriptionOrKey_MaybeAsync=this.module.cwrap("QTS_GetSymbolDescriptionOrKey","number",["number","number"]);this.QTS_IsGlobalSymbol=this.module.cwrap("QTS_IsGlobalSymbol","number",["number","number"]);this.QTS_IsJobPending=this.module.cwrap("QTS_IsJobPending","number",["number"]);this.QTS_ExecutePendingJob=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_ExecutePendingJob","number",["number","number","number"]));this.QTS_ExecutePendingJob_MaybeAsync=this.module.cwrap("QTS_ExecutePendingJob","number",["number","number","number"]);this.QTS_GetProp=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_GetProp","number",["number","number","number"]));this.QTS_GetProp_MaybeAsync=this.module.cwrap("QTS_GetProp","number",["number","number","number"]);this.QTS_GetPropNumber=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_GetPropNumber","number",["number","number","number"]));this.QTS_GetPropNumber_MaybeAsync=this.module.cwrap("QTS_GetPropNumber","number",["number","number","number"]);this.QTS_SetProp=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_SetProp",null,["number","number","number","number"]));this.QTS_SetProp_MaybeAsync=this.module.cwrap("QTS_SetProp",null,["number","number","number","number"]);this.QTS_DefineProp=this.module.cwrap("QTS_DefineProp",null,["number","number","number","number","number","number","boolean","boolean","boolean"]);this.QTS_GetOwnPropertyNames=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_GetOwnPropertyNames","number",["number","number","number","number","number"]));this.QTS_GetOwnPropertyNames_MaybeAsync=this.module.cwrap("QTS_GetOwnPropertyNames","number",["number","number","number","number","number"]);this.QTS_Call=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_Call","number",["number","number","number","number","number"]));this.QTS_Call_MaybeAsync=this.module.cwrap("QTS_Call","number",["number","number","number","number","number"]);this.QTS_ResolveException=this.module.cwrap("QTS_ResolveException","number",["number","number"]);this.QTS_Dump=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_Dump","number",["number","number"]));this.QTS_Dump_MaybeAsync=this.module.cwrap("QTS_Dump","number",["number","number"]);this.QTS_Eval=(0,import_quickjs_ffi_types.assertSync)(this.module.cwrap("QTS_Eval","number",["number","number","number","string","number","number"]));this.QTS_Eval_MaybeAsync=this.module.cwrap("QTS_Eval","number",["number","number","number","string","number","number"]);this.QTS_GetModuleNamespace=this.module.cwrap("QTS_GetModuleNamespace","number",["number","number"]);this.QTS_Typeof=this.module.cwrap("QTS_Typeof","number",["number","number"]);this.QTS_GetLength=this.module.cwrap("QTS_GetLength","number",["number","number","number"]);this.QTS_IsEqual=this.module.cwrap("QTS_IsEqual","number",["number","number","number","number"]);this.QTS_GetGlobalObject=this.module.cwrap("QTS_GetGlobalObject","number",["number"]);this.QTS_NewPromiseCapability=this.module.cwrap("QTS_NewPromiseCapability","number",["number","number"]);this.QTS_PromiseState=this.module.cwrap("QTS_PromiseState","number",["number","number"]);this.QTS_PromiseResult=this.module.cwrap("QTS_PromiseResult","number",["number","number"]);this.QTS_TestStringArg=this.module.cwrap("QTS_TestStringArg",null,["string"]);this.QTS_GetDebugLogEnabled=this.module.cwrap("QTS_GetDebugLogEnabled","number",["number"]);this.QTS_SetDebugLogEnabled=this.module.cwrap("QTS_SetDebugLogEnabled",null,["number","number"]);this.QTS_BuildIsDebug=this.module.cwrap("QTS_BuildIsDebug","number",[]);this.QTS_BuildIsAsyncify=this.module.cwrap("QTS_BuildIsAsyncify","number",[]);this.QTS_NewFunction=this.module.cwrap("QTS_NewFunction","number",["number","string","number","boolean","number"]);this.QTS_ArgvGetJSValueConstPointer=this.module.cwrap("QTS_ArgvGetJSValueConstPointer","number",["number","number"]);this.QTS_RuntimeEnableInterruptHandler=this.module.cwrap("QTS_RuntimeEnableInterruptHandler",null,["number"]);this.QTS_RuntimeDisableInterruptHandler=this.module.cwrap("QTS_RuntimeDisableInterruptHandler",null,["number"]);this.QTS_RuntimeEnableModuleLoader=this.module.cwrap("QTS_RuntimeEnableModuleLoader",null,["number","number"]);this.QTS_RuntimeDisableModuleLoader=this.module.cwrap("QTS_RuntimeDisableModuleLoader",null,["number"]);this.QTS_bjson_encode=this.module.cwrap("QTS_bjson_encode","number",["number","number"]);this.QTS_bjson_decode=this.module.cwrap("QTS_bjson_decode","number",["number","number"])}};0&&(module.exports={QuickJSAsyncFFI});
2
+ //# sourceMappingURL=ffi.js.map