toiljs 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/.idea/prettier.xml +1 -0
  2. package/as-pect.config.js +1 -1
  3. package/build/backend/.tsbuildinfo +1 -1
  4. package/build/backend/index.js +1 -2
  5. package/build/cli/.tsbuildinfo +1 -1
  6. package/build/cli/configure.d.ts +15 -0
  7. package/build/cli/configure.js +201 -0
  8. package/build/cli/create.d.ts +4 -0
  9. package/build/cli/create.js +168 -57
  10. package/build/cli/features.d.ts +23 -0
  11. package/build/cli/features.js +85 -0
  12. package/build/cli/index.js +42 -2
  13. package/build/cli/proc.d.ts +1 -0
  14. package/build/cli/proc.js +11 -0
  15. package/build/cli/ui.js +1 -2
  16. package/build/cli/validate.d.ts +4 -0
  17. package/build/cli/validate.js +19 -0
  18. package/build/client/.tsbuildinfo +1 -1
  19. package/build/client/Link.d.ts +8 -0
  20. package/build/client/Link.js +44 -0
  21. package/build/client/NavLink.d.ts +14 -0
  22. package/build/client/NavLink.js +37 -0
  23. package/build/client/Router.d.ts +7 -0
  24. package/build/client/Router.js +55 -0
  25. package/build/client/error-boundary.d.ts +16 -0
  26. package/build/client/error-boundary.js +19 -0
  27. package/build/client/head.d.ts +26 -0
  28. package/build/client/head.js +87 -0
  29. package/build/client/hooks.d.ts +17 -0
  30. package/build/client/hooks.js +48 -0
  31. package/build/client/index.d.ts +14 -2
  32. package/build/client/index.js +8 -1
  33. package/build/client/lazy.d.ts +16 -0
  34. package/build/client/lazy.js +53 -0
  35. package/build/client/match.js +7 -0
  36. package/build/client/mount.d.ts +2 -0
  37. package/build/client/mount.js +13 -0
  38. package/build/client/navigation.d.ts +13 -0
  39. package/build/client/navigation.js +97 -0
  40. package/build/client/params-context.d.ts +2 -0
  41. package/build/client/params-context.js +2 -0
  42. package/build/client/prefetch.d.ts +11 -0
  43. package/build/client/prefetch.js +100 -0
  44. package/build/client/scroll.d.ts +8 -0
  45. package/build/client/scroll.js +36 -0
  46. package/build/client/types.d.ts +27 -0
  47. package/build/client/types.js +1 -0
  48. package/build/compiler/.tsbuildinfo +1 -1
  49. package/build/compiler/config.d.ts +2 -0
  50. package/build/compiler/config.js +4 -1
  51. package/build/compiler/docs.d.ts +10 -0
  52. package/build/compiler/docs.js +59 -0
  53. package/build/compiler/generate.js +134 -16
  54. package/build/compiler/index.d.ts +4 -2
  55. package/build/compiler/index.js +4 -3
  56. package/build/compiler/plugin.js +2 -1
  57. package/build/compiler/routes.js +5 -1
  58. package/build/compiler/vite.d.ts +1 -1
  59. package/build/compiler/vite.js +17 -1
  60. package/build/io/.tsbuildinfo +1 -1
  61. package/build/io/BinaryWriter.js +2 -2
  62. package/eslint.config.js +1 -1
  63. package/examples/basic/.toil/docs/cli.md +3 -0
  64. package/examples/basic/.toil/docs/client.md +3 -0
  65. package/examples/basic/.toil/docs/index.md +3 -0
  66. package/examples/basic/.toil/docs/routing.md +3 -0
  67. package/examples/basic/.toil/docs/server.md +3 -0
  68. package/examples/basic/.toil/docs/styling.md +3 -0
  69. package/examples/basic/.toil/entry.tsx +3 -8
  70. package/examples/basic/.toil/globals.ts +6 -0
  71. package/examples/basic/.toil/index.html +16 -12
  72. package/examples/basic/.toil/public/images/.gitkeep +1 -0
  73. package/examples/basic/.toil/public/images/logo.svg +37 -0
  74. package/examples/basic/.toil/public/robots.txt +2 -0
  75. package/examples/basic/.toil/routes.ts +9 -7
  76. package/examples/basic/build/client/assets/404-Bq0jNTUo.js +1 -0
  77. package/examples/basic/build/client/assets/_...slug_-CXKf6qnB.js +1 -0
  78. package/examples/basic/build/client/assets/_id_-BadAyQnb.js +1 -0
  79. package/examples/basic/build/client/assets/about-BOhoEcEO.js +1 -0
  80. package/examples/basic/build/client/assets/get-started-BIXpcjkT.js +9 -0
  81. package/examples/basic/build/client/assets/index-BmqcTaBB.js +1 -0
  82. package/examples/basic/build/client/assets/io-DEVjjaJj.js +1 -0
  83. package/examples/basic/build/client/assets/layout-DJegirdz.js +1 -0
  84. package/examples/basic/build/client/assets/react-DEQrz1q7.js +9 -0
  85. package/examples/basic/build/client/assets/rolldown-runtime-KL5VtC6j.js +1 -0
  86. package/examples/basic/build/client/assets/routes-BYWn6TxK.js +1 -0
  87. package/examples/basic/build/client/css/style.css +2 -0
  88. package/examples/basic/build/client/images/.gitkeep +1 -0
  89. package/examples/basic/build/client/images/logo.svg +37 -0
  90. package/examples/basic/build/client/index.html +17 -0
  91. package/examples/basic/build/client/robots.txt +2 -0
  92. package/examples/basic/client/404.tsx +2 -5
  93. package/examples/basic/client/components/.gitkeep +1 -0
  94. package/examples/basic/client/components/Footer.tsx +8 -0
  95. package/examples/basic/client/layout.tsx +39 -26
  96. package/examples/basic/client/public/images/.gitkeep +1 -0
  97. package/examples/basic/client/public/images/logo.svg +37 -0
  98. package/examples/basic/client/public/index.html +15 -0
  99. package/examples/basic/client/public/robots.txt +2 -0
  100. package/examples/basic/client/routes/about.tsx +1 -3
  101. package/examples/basic/client/routes/blog/[id].tsx +2 -4
  102. package/examples/basic/client/routes/docs/[...slug].tsx +3 -6
  103. package/examples/basic/client/routes/get-started.tsx +84 -0
  104. package/examples/basic/client/routes/index.tsx +74 -7
  105. package/examples/basic/client/routes/io.tsx +3 -7
  106. package/examples/basic/client/styles/main.css +461 -0
  107. package/examples/basic/client/toil.tsx +7 -0
  108. package/examples/basic/node_modules/.bin/toilinit +16 -0
  109. package/examples/basic/node_modules/.bin/toilinit.cmd +17 -0
  110. package/examples/basic/node_modules/.bin/toilinit.ps1 +28 -0
  111. package/examples/basic/node_modules/.bin/toilscript +16 -0
  112. package/examples/basic/node_modules/.bin/toilscript.cmd +17 -0
  113. package/examples/basic/node_modules/.bin/toilscript.ps1 +28 -0
  114. package/examples/basic/node_modules/.bin/wasm-as +16 -0
  115. package/examples/basic/node_modules/.bin/wasm-as.cmd +17 -0
  116. package/examples/basic/node_modules/.bin/wasm-as.ps1 +28 -0
  117. package/examples/basic/node_modules/.bin/wasm-ctor-eval +16 -0
  118. package/examples/basic/node_modules/.bin/wasm-ctor-eval.cmd +17 -0
  119. package/examples/basic/node_modules/.bin/wasm-ctor-eval.ps1 +28 -0
  120. package/examples/basic/node_modules/.bin/wasm-dis +16 -0
  121. package/examples/basic/node_modules/.bin/wasm-dis.cmd +17 -0
  122. package/examples/basic/node_modules/.bin/wasm-dis.ps1 +28 -0
  123. package/examples/basic/node_modules/.bin/wasm-merge +16 -0
  124. package/examples/basic/node_modules/.bin/wasm-merge.cmd +17 -0
  125. package/examples/basic/node_modules/.bin/wasm-merge.ps1 +28 -0
  126. package/examples/basic/node_modules/.bin/wasm-metadce +16 -0
  127. package/examples/basic/node_modules/.bin/wasm-metadce.cmd +17 -0
  128. package/examples/basic/node_modules/.bin/wasm-metadce.ps1 +28 -0
  129. package/examples/basic/node_modules/.bin/wasm-opt +16 -0
  130. package/examples/basic/node_modules/.bin/wasm-opt.cmd +17 -0
  131. package/examples/basic/node_modules/.bin/wasm-opt.ps1 +28 -0
  132. package/examples/basic/node_modules/.bin/wasm-reduce +16 -0
  133. package/examples/basic/node_modules/.bin/wasm-reduce.cmd +17 -0
  134. package/examples/basic/node_modules/.bin/wasm-reduce.ps1 +28 -0
  135. package/examples/basic/node_modules/.bin/wasm-shell +16 -0
  136. package/examples/basic/node_modules/.bin/wasm-shell.cmd +17 -0
  137. package/examples/basic/node_modules/.bin/wasm-shell.ps1 +28 -0
  138. package/examples/basic/node_modules/.bin/wasm2js +16 -0
  139. package/examples/basic/node_modules/.bin/wasm2js.cmd +17 -0
  140. package/examples/basic/node_modules/.bin/wasm2js.ps1 +28 -0
  141. package/examples/basic/node_modules/.package-lock.json +49 -1
  142. package/examples/basic/node_modules/.vite/deps/_metadata.json +9 -9
  143. package/examples/basic/node_modules/binaryen/LICENSE +201 -0
  144. package/examples/basic/node_modules/binaryen/README.md +1362 -0
  145. package/examples/basic/node_modules/binaryen/bin/package.json +3 -0
  146. package/examples/basic/node_modules/binaryen/bin/wasm-as +0 -0
  147. package/examples/basic/node_modules/binaryen/bin/wasm-ctor-eval +0 -0
  148. package/examples/basic/node_modules/binaryen/bin/wasm-dis +0 -0
  149. package/examples/basic/node_modules/binaryen/bin/wasm-merge +0 -0
  150. package/examples/basic/node_modules/binaryen/bin/wasm-metadce +0 -0
  151. package/examples/basic/node_modules/binaryen/bin/wasm-opt +0 -0
  152. package/examples/basic/node_modules/binaryen/bin/wasm-reduce +0 -0
  153. package/examples/basic/node_modules/binaryen/bin/wasm-shell +0 -0
  154. package/examples/basic/node_modules/binaryen/bin/wasm2js +0 -0
  155. package/examples/basic/node_modules/binaryen/index.d.ts +2371 -0
  156. package/examples/basic/node_modules/binaryen/index.js +30552 -0
  157. package/examples/basic/node_modules/binaryen/package.json +50 -0
  158. package/examples/basic/node_modules/long/LICENSE +202 -0
  159. package/examples/basic/node_modules/long/README.md +286 -0
  160. package/examples/basic/node_modules/long/index.d.ts +2 -0
  161. package/examples/basic/node_modules/long/index.js +1581 -0
  162. package/examples/basic/node_modules/long/package.json +58 -0
  163. package/examples/basic/node_modules/long/types.d.ts +474 -0
  164. package/examples/basic/node_modules/long/umd/index.d.ts +3 -0
  165. package/examples/basic/node_modules/long/umd/index.js +1622 -0
  166. package/examples/basic/node_modules/long/umd/package.json +3 -0
  167. package/examples/basic/node_modules/long/umd/types.d.ts +474 -0
  168. package/examples/basic/node_modules/toilscript/LICENSE +201 -0
  169. package/examples/basic/node_modules/toilscript/NOTICE +94 -0
  170. package/examples/basic/node_modules/toilscript/README.md +66 -0
  171. package/examples/basic/node_modules/toilscript/bin/toilinit.js +468 -0
  172. package/examples/basic/node_modules/toilscript/bin/toilscript.js +35 -0
  173. package/examples/basic/node_modules/toilscript/dist/cli.d.ts +4 -0
  174. package/examples/basic/node_modules/toilscript/dist/cli.generated.d.ts +10027 -0
  175. package/examples/basic/node_modules/toilscript/dist/cli.js +24474 -0
  176. package/examples/basic/node_modules/toilscript/dist/cli.js.map +7 -0
  177. package/examples/basic/node_modules/toilscript/dist/importmap.json +9 -0
  178. package/examples/basic/node_modules/toilscript/dist/toilscript.d.ts +4 -0
  179. package/examples/basic/node_modules/toilscript/dist/toilscript.generated.d.ts +11242 -0
  180. package/examples/basic/node_modules/toilscript/dist/toilscript.js +337 -0
  181. package/examples/basic/node_modules/toilscript/dist/toilscript.js.map +7 -0
  182. package/examples/basic/node_modules/toilscript/dist/transform.cjs +1 -0
  183. package/examples/basic/node_modules/toilscript/dist/transform.d.ts +1 -0
  184. package/examples/basic/node_modules/toilscript/dist/transform.js +1 -0
  185. package/examples/basic/node_modules/toilscript/dist/web.js +22 -0
  186. package/examples/basic/node_modules/toilscript/lib/binaryen.d.ts +2 -0
  187. package/examples/basic/node_modules/toilscript/lib/binaryen.js +2 -0
  188. package/examples/basic/node_modules/toilscript/package.json +115 -0
  189. package/examples/basic/node_modules/toilscript/std/README.md +6 -0
  190. package/examples/basic/node_modules/toilscript/std/assembly/array.ts +550 -0
  191. package/examples/basic/node_modules/toilscript/std/assembly/arraybuffer.ts +77 -0
  192. package/examples/basic/node_modules/toilscript/std/assembly/atomics.ts +127 -0
  193. package/examples/basic/node_modules/toilscript/std/assembly/bindings/asyncify.ts +16 -0
  194. package/examples/basic/node_modules/toilscript/std/assembly/bindings/dom.ts +291 -0
  195. package/examples/basic/node_modules/toilscript/std/assembly/bindings/node.ts +6 -0
  196. package/examples/basic/node_modules/toilscript/std/assembly/bitflags.ts +53 -0
  197. package/examples/basic/node_modules/toilscript/std/assembly/builtins.ts +2650 -0
  198. package/examples/basic/node_modules/toilscript/std/assembly/byteslice.ts +177 -0
  199. package/examples/basic/node_modules/toilscript/std/assembly/compat.ts +2 -0
  200. package/examples/basic/node_modules/toilscript/std/assembly/console.ts +42 -0
  201. package/examples/basic/node_modules/toilscript/std/assembly/crypto.ts +9 -0
  202. package/examples/basic/node_modules/toilscript/std/assembly/dataview.ts +181 -0
  203. package/examples/basic/node_modules/toilscript/std/assembly/date.ts +375 -0
  204. package/examples/basic/node_modules/toilscript/std/assembly/diagnostics.ts +11 -0
  205. package/examples/basic/node_modules/toilscript/std/assembly/encoding.ts +151 -0
  206. package/examples/basic/node_modules/toilscript/std/assembly/endian.ts +45 -0
  207. package/examples/basic/node_modules/toilscript/std/assembly/error.ts +44 -0
  208. package/examples/basic/node_modules/toilscript/std/assembly/fixedarray.ts +173 -0
  209. package/examples/basic/node_modules/toilscript/std/assembly/fixedmap.ts +326 -0
  210. package/examples/basic/node_modules/toilscript/std/assembly/fixedset.ts +275 -0
  211. package/examples/basic/node_modules/toilscript/std/assembly/function.ts +42 -0
  212. package/examples/basic/node_modules/toilscript/std/assembly/index.d.ts +2892 -0
  213. package/examples/basic/node_modules/toilscript/std/assembly/iterator.ts +35 -0
  214. package/examples/basic/node_modules/toilscript/std/assembly/map.ts +269 -0
  215. package/examples/basic/node_modules/toilscript/std/assembly/math.ts +3289 -0
  216. package/examples/basic/node_modules/toilscript/std/assembly/memory.ts +123 -0
  217. package/examples/basic/node_modules/toilscript/std/assembly/number.ts +388 -0
  218. package/examples/basic/node_modules/toilscript/std/assembly/object.ts +36 -0
  219. package/examples/basic/node_modules/toilscript/std/assembly/performance.ts +9 -0
  220. package/examples/basic/node_modules/toilscript/std/assembly/pointer.ts +80 -0
  221. package/examples/basic/node_modules/toilscript/std/assembly/polyfills.ts +27 -0
  222. package/examples/basic/node_modules/toilscript/std/assembly/process.ts +50 -0
  223. package/examples/basic/node_modules/toilscript/std/assembly/reference.ts +48 -0
  224. package/examples/basic/node_modules/toilscript/std/assembly/regexp.ts +12 -0
  225. package/examples/basic/node_modules/toilscript/std/assembly/rt/README.md +83 -0
  226. package/examples/basic/node_modules/toilscript/std/assembly/rt/common.ts +81 -0
  227. package/examples/basic/node_modules/toilscript/std/assembly/rt/index-incremental.ts +2 -0
  228. package/examples/basic/node_modules/toilscript/std/assembly/rt/index-memory.ts +1 -0
  229. package/examples/basic/node_modules/toilscript/std/assembly/rt/index-minimal.ts +2 -0
  230. package/examples/basic/node_modules/toilscript/std/assembly/rt/index-stub.ts +1 -0
  231. package/examples/basic/node_modules/toilscript/std/assembly/rt/index.d.ts +37 -0
  232. package/examples/basic/node_modules/toilscript/std/assembly/rt/itcms.ts +419 -0
  233. package/examples/basic/node_modules/toilscript/std/assembly/rt/memory-runtime.ts +94 -0
  234. package/examples/basic/node_modules/toilscript/std/assembly/rt/rtrace.ts +15 -0
  235. package/examples/basic/node_modules/toilscript/std/assembly/rt/stub.ts +133 -0
  236. package/examples/basic/node_modules/toilscript/std/assembly/rt/tcms.ts +254 -0
  237. package/examples/basic/node_modules/toilscript/std/assembly/rt/tlsf.ts +592 -0
  238. package/examples/basic/node_modules/toilscript/std/assembly/rt.ts +90 -0
  239. package/examples/basic/node_modules/toilscript/std/assembly/set.ts +225 -0
  240. package/examples/basic/node_modules/toilscript/std/assembly/shared/feature.ts +68 -0
  241. package/examples/basic/node_modules/toilscript/std/assembly/shared/runtime.ts +13 -0
  242. package/examples/basic/node_modules/toilscript/std/assembly/shared/target.ts +11 -0
  243. package/examples/basic/node_modules/toilscript/std/assembly/shared/tsconfig.json +11 -0
  244. package/examples/basic/node_modules/toilscript/std/assembly/shared/typeinfo.ts +72 -0
  245. package/examples/basic/node_modules/toilscript/std/assembly/staticarray.ts +423 -0
  246. package/examples/basic/node_modules/toilscript/std/assembly/string.ts +850 -0
  247. package/examples/basic/node_modules/toilscript/std/assembly/symbol.ts +114 -0
  248. package/examples/basic/node_modules/toilscript/std/assembly/table.ts +16 -0
  249. package/examples/basic/node_modules/toilscript/std/assembly/toilscript.ts +16 -0
  250. package/examples/basic/node_modules/toilscript/std/assembly/tsconfig.json +6 -0
  251. package/examples/basic/node_modules/toilscript/std/assembly/typedarray.ts +1954 -0
  252. package/examples/basic/node_modules/toilscript/std/assembly/uri.ts +17 -0
  253. package/examples/basic/node_modules/toilscript/std/assembly/util/bytes.ts +107 -0
  254. package/examples/basic/node_modules/toilscript/std/assembly/util/casemap.ts +497 -0
  255. package/examples/basic/node_modules/toilscript/std/assembly/util/error.ts +58 -0
  256. package/examples/basic/node_modules/toilscript/std/assembly/util/hash.ts +117 -0
  257. package/examples/basic/node_modules/toilscript/std/assembly/util/math.ts +1922 -0
  258. package/examples/basic/node_modules/toilscript/std/assembly/util/memory.ts +290 -0
  259. package/examples/basic/node_modules/toilscript/std/assembly/util/number.ts +873 -0
  260. package/examples/basic/node_modules/toilscript/std/assembly/util/sort.ts +313 -0
  261. package/examples/basic/node_modules/toilscript/std/assembly/util/string.ts +1202 -0
  262. package/examples/basic/node_modules/toilscript/std/assembly/util/uri.ts +275 -0
  263. package/examples/basic/node_modules/toilscript/std/assembly/vector.ts +4 -0
  264. package/examples/basic/node_modules/toilscript/std/assembly.json +16 -0
  265. package/examples/basic/node_modules/toilscript/std/portable/index.d.ts +461 -0
  266. package/examples/basic/node_modules/toilscript/std/portable/index.js +416 -0
  267. package/examples/basic/node_modules/toilscript/std/portable.json +11 -0
  268. package/examples/basic/node_modules/toilscript/std/types/assembly/index.d.ts +1 -0
  269. package/examples/basic/node_modules/toilscript/std/types/assembly/package.json +3 -0
  270. package/examples/basic/node_modules/toilscript/std/types/portable/index.d.ts +1 -0
  271. package/examples/basic/node_modules/toilscript/std/types/portable/package.json +3 -0
  272. package/examples/basic/node_modules/toilscript/tsconfig-base.json +13 -0
  273. package/examples/basic/node_modules/toilscript/util/README.md +23 -0
  274. package/examples/basic/node_modules/toilscript/util/browser/fs.js +1 -0
  275. package/examples/basic/node_modules/toilscript/util/browser/module.js +5 -0
  276. package/examples/basic/node_modules/toilscript/util/browser/path.js +520 -0
  277. package/examples/basic/node_modules/toilscript/util/browser/process.js +59 -0
  278. package/examples/basic/node_modules/toilscript/util/browser/url.js +23 -0
  279. package/examples/basic/node_modules/toilscript/util/cpu.d.ts +9 -0
  280. package/examples/basic/node_modules/toilscript/util/cpu.js +42 -0
  281. package/examples/basic/node_modules/toilscript/util/find.d.ts +6 -0
  282. package/examples/basic/node_modules/toilscript/util/find.js +20 -0
  283. package/examples/basic/node_modules/toilscript/util/node.d.ts +21 -0
  284. package/examples/basic/node_modules/toilscript/util/node.js +34 -0
  285. package/examples/basic/node_modules/toilscript/util/options.d.ts +70 -0
  286. package/examples/basic/node_modules/toilscript/util/options.js +262 -0
  287. package/examples/basic/node_modules/toilscript/util/terminal.d.ts +52 -0
  288. package/examples/basic/node_modules/toilscript/util/terminal.js +35 -0
  289. package/examples/basic/node_modules/toilscript/util/text.d.ts +26 -0
  290. package/examples/basic/node_modules/toilscript/util/text.js +114 -0
  291. package/examples/basic/node_modules/toilscript/util/tsconfig.json +9 -0
  292. package/examples/basic/node_modules/toilscript/util/web.d.ts +11 -0
  293. package/examples/basic/node_modules/toilscript/util/web.js +33 -0
  294. package/examples/basic/package-lock.json +50 -1
  295. package/examples/basic/package.json +5 -2
  296. package/examples/basic/server/index.ts +3 -0
  297. package/examples/basic/server/main.ts +6 -0
  298. package/examples/basic/server/tsconfig.json +7 -0
  299. package/examples/basic/toil-env.d.ts +20 -1
  300. package/examples/basic/toil.config.ts +2 -5
  301. package/examples/basic/toilconfig.json +30 -0
  302. package/package.json +1 -1
  303. package/presets/eslint.js +2 -7
  304. package/presets/no-uint8array-tostring.js +4 -5
  305. package/presets/prettier.json +8 -1
  306. package/src/backend/index.ts +11 -18
  307. package/src/cli/configure.ts +272 -0
  308. package/src/cli/create.ts +227 -69
  309. package/src/cli/features.ts +128 -0
  310. package/src/cli/index.ts +44 -3
  311. package/src/cli/proc.ts +20 -0
  312. package/src/cli/ui.ts +4 -6
  313. package/src/cli/validate.ts +31 -0
  314. package/src/client/Link.tsx +99 -0
  315. package/src/client/NavLink.tsx +86 -0
  316. package/src/client/Router.tsx +95 -0
  317. package/src/client/error-boundary.tsx +43 -0
  318. package/src/client/head.ts +140 -0
  319. package/src/client/hooks.ts +115 -0
  320. package/src/client/index.ts +35 -5
  321. package/src/client/lazy.ts +93 -0
  322. package/src/client/match.ts +11 -3
  323. package/src/client/mount.tsx +28 -0
  324. package/src/client/navigation.ts +142 -0
  325. package/src/client/params-context.ts +10 -0
  326. package/src/client/prefetch.ts +130 -0
  327. package/src/client/scroll.ts +53 -0
  328. package/src/client/types.ts +36 -0
  329. package/src/compiler/config.ts +15 -8
  330. package/src/compiler/docs.ts +87 -0
  331. package/src/compiler/generate.ts +164 -23
  332. package/src/compiler/index.ts +6 -4
  333. package/src/compiler/plugin.ts +3 -1
  334. package/src/compiler/routes.ts +13 -7
  335. package/src/compiler/vite.ts +28 -5
  336. package/src/io/BinaryReader.ts +1 -5
  337. package/src/io/BinaryWriter.ts +3 -3
  338. package/src/server/index.ts +3 -4
  339. package/src/server/tsconfig.json +4 -0
  340. package/test/configure.test.ts +90 -0
  341. package/test/features.test.ts +111 -0
  342. package/test/head.test.ts +35 -0
  343. package/test/io.test.ts +8 -0
  344. package/test/navlink.test.ts +28 -0
  345. package/test/routes.test.ts +15 -0
  346. package/test/validate.test.ts +42 -0
  347. package/vitest.config.ts +1 -1
  348. package/examples/basic/dist/assets/404-D1bS2aH_.js +0 -1
  349. package/examples/basic/dist/assets/_...slug_-wR3shlWn.js +0 -1
  350. package/examples/basic/dist/assets/_id_-EWYvHfi2.js +0 -1
  351. package/examples/basic/dist/assets/about-Ddvj1tjF.js +0 -1
  352. package/examples/basic/dist/assets/index-CdG0me90.js +0 -1
  353. package/examples/basic/dist/assets/io-CODNJU57.js +0 -1
  354. package/examples/basic/dist/assets/layout-C15ZTPYI.js +0 -1
  355. package/examples/basic/dist/assets/react-JbAfoxYe.js +0 -9
  356. package/examples/basic/dist/assets/rolldown-runtime-1VNLd2iN.js +0 -1
  357. package/examples/basic/dist/assets/routes-GoydenoY.js +0 -1
  358. package/examples/basic/dist/index.html +0 -12
  359. package/src/client/runtime.tsx +0 -190
@@ -0,0 +1,461 @@
1
+ /* Global styles */
2
+
3
+ :root {
4
+ color-scheme: dark;
5
+ --accent: #2563ff;
6
+ --accent2: #7c3aed;
7
+ --accent3: #22e3ab;
8
+ --bg: #080d11;
9
+ --surface: #0e1520;
10
+ --border: #1b2330;
11
+ --text: #f5f6fa;
12
+ --muted: #8b9ab4;
13
+ }
14
+
15
+ *, *::before, *::after { box-sizing: border-box; }
16
+
17
+ body {
18
+ margin: 0;
19
+ min-height: 100vh;
20
+ background: var(--bg);
21
+ color: var(--text);
22
+ font-family: system-ui, -apple-system, sans-serif;
23
+ line-height: 1.6;
24
+ }
25
+
26
+ a { color: var(--accent); text-decoration: none; }
27
+ a:hover { color: var(--accent3); }
28
+
29
+ /* ── App shell ── */
30
+ .app {
31
+ display: flex;
32
+ flex-direction: column;
33
+ min-height: 100vh;
34
+ }
35
+
36
+ .content {
37
+ flex: 1;
38
+ display: flex;
39
+ align-items: center;
40
+ justify-content: center;
41
+ }
42
+
43
+ /* ── Nav ── */
44
+ .nav {
45
+ display: flex;
46
+ align-items: center;
47
+ justify-content: space-between;
48
+ padding: 0 2rem;
49
+ height: 60px;
50
+ border-bottom: 1px solid var(--border);
51
+ background: rgba(8, 13, 17, 0.85);
52
+ backdrop-filter: blur(10px);
53
+ position: sticky;
54
+ top: 0;
55
+ z-index: 100;
56
+ }
57
+
58
+ .nav-logo {
59
+ display: flex;
60
+ align-items: center;
61
+ gap: 0.6rem;
62
+ font-weight: 800;
63
+ font-size: 1.05rem;
64
+ font-family: 'Montserrat', system-ui, sans-serif;
65
+ color: var(--text) !important;
66
+ line-height: 1;
67
+ }
68
+
69
+ .nav-logo span {
70
+ display: block;
71
+ line-height: 1;
72
+ padding-top: 0.1em;
73
+ }
74
+
75
+ .nav-logo img {
76
+ display: block;
77
+ border-radius: 6px;
78
+ flex-shrink: 0;
79
+ }
80
+
81
+ .nav-links {
82
+ display: flex;
83
+ gap: 1.5rem;
84
+ font-size: 0.95rem;
85
+ }
86
+
87
+ .nav-links a { color: var(--muted); }
88
+ .nav-links a:hover { color: var(--text); }
89
+
90
+ /* Center nav */
91
+ .nav-center {
92
+ position: absolute;
93
+ left: 50%;
94
+ transform: translateX(-50%);
95
+ display: flex;
96
+ gap: 0.25rem;
97
+ }
98
+
99
+ .nav-center-link {
100
+ padding: 0.3em 0.85em;
101
+ border-radius: 6px;
102
+ font-size: 0.9rem;
103
+ color: var(--muted) !important;
104
+ transition: color 150ms, background 150ms;
105
+ }
106
+
107
+ .nav-center-link:hover {
108
+ color: var(--text) !important;
109
+ background: rgba(255,255,255,0.05);
110
+ }
111
+
112
+ .nav-center-link.active {
113
+ color: var(--text) !important;
114
+ background: rgba(37,99,255,0.12);
115
+ }
116
+
117
+ .nav-github {
118
+ display: flex;
119
+ align-items: center;
120
+ gap: 0.4rem;
121
+ }
122
+
123
+ .nav-github svg { display: block; }
124
+
125
+ /* ── Hero ── */
126
+ .hero {
127
+ display: flex;
128
+ flex-direction: column;
129
+ align-items: center;
130
+ text-align: center;
131
+ padding: 5rem 1.5rem 4rem;
132
+ gap: 1.25rem;
133
+ max-width: 680px;
134
+ margin: 0 auto;
135
+ }
136
+
137
+ /* Logo with blurred glow clone */
138
+ .hero-logo {
139
+ position: relative;
140
+ width: 96px;
141
+ height: 96px;
142
+ }
143
+
144
+ .hero-logo-img {
145
+ position: relative;
146
+ z-index: 1;
147
+ display: block;
148
+ border-radius: 22px;
149
+ transition: transform 300ms;
150
+ }
151
+
152
+ .hero-logo-img:hover {
153
+ transform: scale(1.06);
154
+ }
155
+
156
+ .hero-logo-glow {
157
+ position: absolute;
158
+ inset: 0;
159
+ z-index: 0;
160
+ display: block;
161
+ border-radius: 22px;
162
+ transform: scale(1.1);
163
+ filter: blur(18px) saturate(1.4);
164
+ opacity: 0.65;
165
+ transition: opacity 300ms, filter 300ms, transform 300ms;
166
+ }
167
+
168
+ .hero-logo:hover .hero-logo-glow {
169
+ opacity: 0.9;
170
+ filter: blur(24px) saturate(1.8);
171
+ transform: scale(1.15);
172
+ }
173
+
174
+ /* Heading */
175
+ .hero-title {
176
+ margin: 0;
177
+ font-size: clamp(2.8rem, 7vw, 4.5rem);
178
+ font-weight: 900;
179
+ font-family: 'Montserrat', system-ui, sans-serif;
180
+ letter-spacing: -0.03em;
181
+ background: linear-gradient(100deg, var(--accent), var(--accent2) 50%, var(--accent3));
182
+ -webkit-background-clip: text;
183
+ background-clip: text;
184
+ color: transparent;
185
+ }
186
+
187
+ .hero-tagline {
188
+ margin: 0;
189
+ font-size: clamp(1.2rem, 3vw, 1.6rem);
190
+ font-weight: 600;
191
+ color: var(--text);
192
+ line-height: 1.4;
193
+ }
194
+
195
+ .hero-tagline span {
196
+ color: var(--muted);
197
+ font-weight: 400;
198
+ }
199
+
200
+ .hero-desc {
201
+ margin: 0;
202
+ font-size: 1rem;
203
+ color: var(--muted);
204
+ max-width: 480px;
205
+ }
206
+
207
+ /* ── Feature badges ── */
208
+ .features {
209
+ list-style: none;
210
+ margin: 0.25rem 0 0;
211
+ padding: 0;
212
+ display: flex;
213
+ flex-wrap: wrap;
214
+ gap: 0.6rem;
215
+ justify-content: center;
216
+ }
217
+
218
+ .feature-badge {
219
+ display: flex;
220
+ align-items: center;
221
+ gap: 0.45rem;
222
+ padding: 0.35em 0.9em;
223
+ background: var(--surface);
224
+ border: 1px solid var(--border);
225
+ border-radius: 999px;
226
+ font-size: 0.88rem;
227
+ color: var(--muted);
228
+ transition: border-color 200ms, color 200ms;
229
+ }
230
+
231
+ .feature-badge svg {
232
+ flex-shrink: 0;
233
+ display: block;
234
+ color: var(--accent);
235
+ transition: color 200ms;
236
+ }
237
+
238
+ .feature-badge:hover {
239
+ border-color: var(--accent);
240
+ color: var(--text);
241
+ }
242
+
243
+ .feature-badge:hover svg {
244
+ color: var(--accent3);
245
+ }
246
+
247
+ /* ── CTA buttons ── */
248
+ .hero-cta {
249
+ display: flex;
250
+ gap: 0.75rem;
251
+ flex-wrap: wrap;
252
+ justify-content: center;
253
+ margin-top: 0.5rem;
254
+ }
255
+
256
+ .btn {
257
+ display: inline-flex;
258
+ align-items: center;
259
+ justify-content: center;
260
+ gap: 0.45rem;
261
+ padding: 0.65em 1.6em;
262
+ border-radius: 8px;
263
+ font-size: 0.95rem;
264
+ font-weight: 600;
265
+ font-family: inherit;
266
+ cursor: pointer;
267
+ transition: filter 200ms, background 200ms, border-color 200ms;
268
+ text-decoration: none !important;
269
+ }
270
+
271
+ .btn svg { display: block; }
272
+
273
+ .btn-primary {
274
+ background: var(--accent);
275
+ color: #fff !important;
276
+ border: 1px solid var(--accent);
277
+ }
278
+
279
+ .btn-primary:hover {
280
+ filter: brightness(1.15);
281
+ }
282
+
283
+ .btn-secondary {
284
+ background: var(--surface);
285
+ color: var(--text) !important;
286
+ border: 1px solid var(--border);
287
+ }
288
+
289
+ .btn-secondary:hover {
290
+ border-color: var(--accent);
291
+ background: #131d2e;
292
+ }
293
+
294
+ /* ── Footer ── */
295
+ .footer {
296
+ text-align: center;
297
+ padding: 1.25rem;
298
+ font-size: 0.82rem;
299
+ color: var(--muted);
300
+ border-top: 1px solid var(--border);
301
+ }
302
+
303
+ /* ── Misc ── */
304
+ code {
305
+ background: #0d131c;
306
+ color: var(--accent3);
307
+ padding: 0.1rem 0.4rem;
308
+ border-radius: 4px;
309
+ font-size: 0.88em;
310
+ }
311
+
312
+ /* ── Get Started page ── */
313
+ .gs-page {
314
+ width: 100%;
315
+ max-width: 860px;
316
+ margin: 0 auto;
317
+ padding: 4rem 1.5rem 5rem;
318
+ display: flex;
319
+ flex-direction: column;
320
+ gap: 3rem;
321
+ }
322
+
323
+ .gs-hero {
324
+ text-align: center;
325
+ }
326
+
327
+ .gs-title {
328
+ margin: 0 0 0.5rem;
329
+ font-size: clamp(2.2rem, 5vw, 3.2rem);
330
+ font-weight: 900;
331
+ font-family: 'Montserrat', system-ui, sans-serif;
332
+ letter-spacing: -0.03em;
333
+ background: linear-gradient(100deg, var(--accent), var(--accent2) 50%, var(--accent3));
334
+ -webkit-background-clip: text;
335
+ background-clip: text;
336
+ color: transparent;
337
+ }
338
+
339
+ .gs-desc {
340
+ margin: 0;
341
+ font-size: 1.05rem;
342
+ color: var(--muted);
343
+ }
344
+
345
+ /* Section */
346
+ .gs-section {
347
+ display: flex;
348
+ flex-direction: column;
349
+ gap: 1rem;
350
+ }
351
+
352
+ .gs-section-title {
353
+ margin: 0;
354
+ font-size: 0.72rem;
355
+ font-weight: 700;
356
+ letter-spacing: 0.12em;
357
+ text-transform: uppercase;
358
+ color: var(--muted);
359
+ }
360
+
361
+
362
+ /* Info grid */
363
+ .gs-grid {
364
+ display: grid;
365
+ grid-template-columns: repeat(2, 1fr);
366
+ gap: 1rem;
367
+ }
368
+
369
+ @media (max-width: 560px) {
370
+ .gs-grid { grid-template-columns: 1fr; }
371
+ }
372
+
373
+ .gs-card {
374
+ background: var(--surface);
375
+ border: 1px solid var(--border);
376
+ border-radius: 14px;
377
+ padding: 1.5rem;
378
+ display: flex;
379
+ flex-direction: column;
380
+ gap: 0.6rem;
381
+ transition: border-color 200ms, transform 200ms, box-shadow 200ms;
382
+ }
383
+
384
+ .gs-card {
385
+ transform: translateY(-2px);
386
+ }
387
+
388
+ /* Accent top-border glow per card */
389
+ .gs-card--accent1 { border-top: 2px solid var(--accent); }
390
+ .gs-card--accent1:hover { box-shadow: 0 8px 32px rgba(37,99,255,0.15); }
391
+
392
+ .gs-card--accent2 { border-top: 2px solid var(--accent2); }
393
+ .gs-card--accent2:hover { box-shadow: 0 8px 32px rgba(124,58,237,0.15); }
394
+
395
+ .gs-card--accent3 { border-top: 2px solid var(--accent3); }
396
+ .gs-card--accent3:hover { box-shadow: 0 8px 32px rgba(34,227,171,0.12); }
397
+
398
+ .gs-card--accent4 { border-top: 2px solid #f59e0b; }
399
+ .gs-card--accent4:hover { box-shadow: 0 8px 32px rgba(245,158,11,0.12); }
400
+
401
+ .gs-card--flat {
402
+ border-top: 2px solid var(--accent);
403
+ }
404
+ .gs-card--flat:hover {
405
+ border-color: var(--accent);
406
+ box-shadow: 0 8px 32px rgba(37,99,255,0.12);
407
+ }
408
+
409
+ .gs-card-icon {
410
+ display: flex;
411
+ align-items: center;
412
+ justify-content: center;
413
+ width: 42px;
414
+ height: 42px;
415
+ border-radius: 10px;
416
+ background: rgba(37,99,255,0.1);
417
+ color: var(--accent);
418
+ margin-bottom: 0.25rem;
419
+ }
420
+
421
+ .gs-card--accent2 .gs-card-icon { background: rgba(124,58,237,0.1); color: var(--accent2); }
422
+ .gs-card--accent3 .gs-card-icon { background: rgba(34,227,171,0.1); color: var(--accent3); }
423
+ .gs-card--accent4 .gs-card-icon { background: rgba(245,158,11,0.1); color: #f59e0b; }
424
+
425
+ .gs-card h3 {
426
+ margin: 0;
427
+ font-size: 0.97rem;
428
+ font-weight: 700;
429
+ color: var(--text);
430
+ }
431
+
432
+ .gs-card p {
433
+ margin: 0;
434
+ font-size: 0.85rem;
435
+ color: var(--muted);
436
+ line-height: 1.6;
437
+ }
438
+
439
+ .gs-card pre {
440
+ margin: 0;
441
+ background: #0a0f18;
442
+ border: 1px solid var(--border);
443
+ border-radius: 6px;
444
+ padding: 0.6rem 0.85rem;
445
+ overflow-x: auto;
446
+ }
447
+
448
+ .gs-card pre code {
449
+ background: none;
450
+ padding: 0;
451
+ font-size: 0.8rem;
452
+ color: var(--accent3);
453
+ white-space: pre;
454
+ }
455
+
456
+ .gs-actions {
457
+ display: flex;
458
+ gap: 0.75rem;
459
+ flex-wrap: wrap;
460
+ }
461
+
@@ -0,0 +1,7 @@
1
+ import { routes, layout, notFound } from 'toiljs/routes';
2
+
3
+ import './styles/main.css';
4
+
5
+
6
+
7
+ Toil.mount(routes, layout, notFound);
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -x "$basedir/node" ]; then
13
+ exec "$basedir/node" "$basedir/../toilscript/bin/toilinit.js" "$@"
14
+ else
15
+ exec node "$basedir/../toilscript/bin/toilinit.js" "$@"
16
+ fi
@@ -0,0 +1,17 @@
1
+ @ECHO off
2
+ GOTO start
3
+ :find_dp0
4
+ SET dp0=%~dp0
5
+ EXIT /b
6
+ :start
7
+ SETLOCAL
8
+ CALL :find_dp0
9
+
10
+ IF EXIST "%dp0%\node.exe" (
11
+ SET "_prog=%dp0%\node.exe"
12
+ ) ELSE (
13
+ SET "_prog=node"
14
+ SET PATHEXT=%PATHEXT:;.JS;=;%
15
+ )
16
+
17
+ endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\toilscript\bin\toilinit.js" %*
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env pwsh
2
+ $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
+
4
+ $exe=""
5
+ if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
6
+ # Fix case when both the Windows and Linux builds of Node
7
+ # are installed in the same directory
8
+ $exe=".exe"
9
+ }
10
+ $ret=0
11
+ if (Test-Path "$basedir/node$exe") {
12
+ # Support pipeline input
13
+ if ($MyInvocation.ExpectingInput) {
14
+ $input | & "$basedir/node$exe" "$basedir/../toilscript/bin/toilinit.js" $args
15
+ } else {
16
+ & "$basedir/node$exe" "$basedir/../toilscript/bin/toilinit.js" $args
17
+ }
18
+ $ret=$LASTEXITCODE
19
+ } else {
20
+ # Support pipeline input
21
+ if ($MyInvocation.ExpectingInput) {
22
+ $input | & "node$exe" "$basedir/../toilscript/bin/toilinit.js" $args
23
+ } else {
24
+ & "node$exe" "$basedir/../toilscript/bin/toilinit.js" $args
25
+ }
26
+ $ret=$LASTEXITCODE
27
+ }
28
+ exit $ret
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -x "$basedir/node" ]; then
13
+ exec "$basedir/node" "$basedir/../toilscript/bin/toilscript.js" "$@"
14
+ else
15
+ exec node "$basedir/../toilscript/bin/toilscript.js" "$@"
16
+ fi
@@ -0,0 +1,17 @@
1
+ @ECHO off
2
+ GOTO start
3
+ :find_dp0
4
+ SET dp0=%~dp0
5
+ EXIT /b
6
+ :start
7
+ SETLOCAL
8
+ CALL :find_dp0
9
+
10
+ IF EXIST "%dp0%\node.exe" (
11
+ SET "_prog=%dp0%\node.exe"
12
+ ) ELSE (
13
+ SET "_prog=node"
14
+ SET PATHEXT=%PATHEXT:;.JS;=;%
15
+ )
16
+
17
+ endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\toilscript\bin\toilscript.js" %*
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env pwsh
2
+ $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
+
4
+ $exe=""
5
+ if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
6
+ # Fix case when both the Windows and Linux builds of Node
7
+ # are installed in the same directory
8
+ $exe=".exe"
9
+ }
10
+ $ret=0
11
+ if (Test-Path "$basedir/node$exe") {
12
+ # Support pipeline input
13
+ if ($MyInvocation.ExpectingInput) {
14
+ $input | & "$basedir/node$exe" "$basedir/../toilscript/bin/toilscript.js" $args
15
+ } else {
16
+ & "$basedir/node$exe" "$basedir/../toilscript/bin/toilscript.js" $args
17
+ }
18
+ $ret=$LASTEXITCODE
19
+ } else {
20
+ # Support pipeline input
21
+ if ($MyInvocation.ExpectingInput) {
22
+ $input | & "node$exe" "$basedir/../toilscript/bin/toilscript.js" $args
23
+ } else {
24
+ & "node$exe" "$basedir/../toilscript/bin/toilscript.js" $args
25
+ }
26
+ $ret=$LASTEXITCODE
27
+ }
28
+ exit $ret
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -x "$basedir/node" ]; then
13
+ exec "$basedir/node" "$basedir/../binaryen/bin/wasm-as" "$@"
14
+ else
15
+ exec node "$basedir/../binaryen/bin/wasm-as" "$@"
16
+ fi
@@ -0,0 +1,17 @@
1
+ @ECHO off
2
+ GOTO start
3
+ :find_dp0
4
+ SET dp0=%~dp0
5
+ EXIT /b
6
+ :start
7
+ SETLOCAL
8
+ CALL :find_dp0
9
+
10
+ IF EXIST "%dp0%\node.exe" (
11
+ SET "_prog=%dp0%\node.exe"
12
+ ) ELSE (
13
+ SET "_prog=node"
14
+ SET PATHEXT=%PATHEXT:;.JS;=;%
15
+ )
16
+
17
+ endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\binaryen\bin\wasm-as" %*
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env pwsh
2
+ $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
+
4
+ $exe=""
5
+ if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
6
+ # Fix case when both the Windows and Linux builds of Node
7
+ # are installed in the same directory
8
+ $exe=".exe"
9
+ }
10
+ $ret=0
11
+ if (Test-Path "$basedir/node$exe") {
12
+ # Support pipeline input
13
+ if ($MyInvocation.ExpectingInput) {
14
+ $input | & "$basedir/node$exe" "$basedir/../binaryen/bin/wasm-as" $args
15
+ } else {
16
+ & "$basedir/node$exe" "$basedir/../binaryen/bin/wasm-as" $args
17
+ }
18
+ $ret=$LASTEXITCODE
19
+ } else {
20
+ # Support pipeline input
21
+ if ($MyInvocation.ExpectingInput) {
22
+ $input | & "node$exe" "$basedir/../binaryen/bin/wasm-as" $args
23
+ } else {
24
+ & "node$exe" "$basedir/../binaryen/bin/wasm-as" $args
25
+ }
26
+ $ret=$LASTEXITCODE
27
+ }
28
+ exit $ret
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -x "$basedir/node" ]; then
13
+ exec "$basedir/node" "$basedir/../binaryen/bin/wasm-ctor-eval" "$@"
14
+ else
15
+ exec node "$basedir/../binaryen/bin/wasm-ctor-eval" "$@"
16
+ fi
@@ -0,0 +1,17 @@
1
+ @ECHO off
2
+ GOTO start
3
+ :find_dp0
4
+ SET dp0=%~dp0
5
+ EXIT /b
6
+ :start
7
+ SETLOCAL
8
+ CALL :find_dp0
9
+
10
+ IF EXIST "%dp0%\node.exe" (
11
+ SET "_prog=%dp0%\node.exe"
12
+ ) ELSE (
13
+ SET "_prog=node"
14
+ SET PATHEXT=%PATHEXT:;.JS;=;%
15
+ )
16
+
17
+ endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\binaryen\bin\wasm-ctor-eval" %*