gorsee 0.2.3 → 0.2.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 (532) hide show
  1. package/README.md +261 -213
  2. package/dist-pkg/ai/artifact-lifecycle.d.ts +25 -0
  3. package/dist-pkg/ai/artifact-lifecycle.js +98 -0
  4. package/dist-pkg/ai/bridge.d.ts +26 -0
  5. package/dist-pkg/ai/bridge.js +82 -0
  6. package/dist-pkg/ai/bundle.d.ts +46 -0
  7. package/dist-pkg/ai/bundle.js +247 -0
  8. package/dist-pkg/ai/contracts.d.ts +1 -0
  9. package/dist-pkg/ai/contracts.js +1 -0
  10. package/dist-pkg/ai/ide.d.ts +37 -0
  11. package/dist-pkg/ai/ide.js +56 -0
  12. package/dist-pkg/ai/index.d.ts +85 -0
  13. package/dist-pkg/ai/index.js +267 -0
  14. package/dist-pkg/ai/json.d.ts +6 -0
  15. package/dist-pkg/ai/json.js +14 -0
  16. package/dist-pkg/ai/mcp.d.ts +28 -0
  17. package/dist-pkg/ai/mcp.js +152 -0
  18. package/dist-pkg/ai/session-pack.d.ts +28 -0
  19. package/dist-pkg/ai/session-pack.js +57 -0
  20. package/dist-pkg/ai/store.d.ts +67 -0
  21. package/dist-pkg/ai/store.js +174 -0
  22. package/dist-pkg/ai/summary.d.ts +57 -0
  23. package/dist-pkg/ai/summary.js +148 -0
  24. package/dist-pkg/ai/watch.d.ts +15 -0
  25. package/dist-pkg/ai/watch.js +66 -0
  26. package/dist-pkg/auth/action-tokens.d.ts +50 -0
  27. package/dist-pkg/auth/action-tokens.js +79 -0
  28. package/dist-pkg/auth/index.d.ts +70 -0
  29. package/dist-pkg/auth/index.js +199 -0
  30. package/dist-pkg/auth/redis-session-store.d.ts +7 -0
  31. package/dist-pkg/auth/redis-session-store.js +42 -0
  32. package/dist-pkg/auth/signing.d.ts +4 -0
  33. package/dist-pkg/auth/signing.js +33 -0
  34. package/dist-pkg/auth/sqlite-session-store.d.ts +12 -0
  35. package/dist-pkg/auth/sqlite-session-store.js +83 -0
  36. package/dist-pkg/auth/store-utils.d.ts +2 -0
  37. package/dist-pkg/auth/store-utils.js +20 -0
  38. package/dist-pkg/bin/gorsee.js +2 -0
  39. package/dist-pkg/build/backends/experimental-rolldown.d.ts +6 -0
  40. package/dist-pkg/build/backends/experimental-rolldown.js +9 -0
  41. package/dist-pkg/build/backends/register.d.ts +7 -0
  42. package/dist-pkg/build/backends/register.js +24 -0
  43. package/dist-pkg/build/backends/rolldown.d.ts +16 -0
  44. package/dist-pkg/build/backends/rolldown.js +176 -0
  45. package/dist-pkg/build/client-backend.d.ts +31 -0
  46. package/dist-pkg/build/client-backend.js +97 -0
  47. package/dist-pkg/build/client.d.ts +12 -0
  48. package/dist-pkg/build/client.js +93 -0
  49. package/dist-pkg/build/css-modules.d.ts +10 -0
  50. package/dist-pkg/build/css-modules.js +51 -0
  51. package/dist-pkg/build/devalue-parse.d.ts +1 -0
  52. package/dist-pkg/build/devalue-parse.js +1 -0
  53. package/dist-pkg/build/diagnostics.d.ts +20 -0
  54. package/dist-pkg/build/diagnostics.js +35 -0
  55. package/dist-pkg/build/fixtures.d.ts +7 -0
  56. package/dist-pkg/build/fixtures.js +60 -0
  57. package/dist-pkg/build/framework-imports.d.ts +4 -0
  58. package/dist-pkg/build/framework-imports.js +58 -0
  59. package/dist-pkg/build/init.d.ts +1 -0
  60. package/dist-pkg/build/init.js +6 -0
  61. package/dist-pkg/build/manifest.d.ts +3 -0
  62. package/dist-pkg/build/manifest.js +23 -0
  63. package/dist-pkg/build/parity.d.ts +32 -0
  64. package/dist-pkg/build/parity.js +71 -0
  65. package/dist-pkg/build/plugin.d.ts +11 -0
  66. package/dist-pkg/build/plugin.js +8 -0
  67. package/dist-pkg/build/readiness.d.ts +11 -0
  68. package/dist-pkg/build/readiness.js +18 -0
  69. package/dist-pkg/build/route-client-transform.d.ts +17 -0
  70. package/dist-pkg/build/route-client-transform.js +48 -0
  71. package/dist-pkg/build/route-metadata.d.ts +6 -0
  72. package/dist-pkg/build/route-metadata.js +8 -0
  73. package/dist-pkg/build/rpc-transform.d.ts +1 -0
  74. package/dist-pkg/build/rpc-transform.js +44 -0
  75. package/dist-pkg/build/server-bundle.d.ts +4 -0
  76. package/dist-pkg/build/server-bundle.js +261 -0
  77. package/dist-pkg/build/server-strip.d.ts +2 -0
  78. package/dist-pkg/build/server-strip.js +32 -0
  79. package/dist-pkg/build/ssg.d.ts +12 -0
  80. package/dist-pkg/build/ssg.js +36 -0
  81. package/dist-pkg/cli/bun-plugin.d.ts +2 -0
  82. package/dist-pkg/cli/bun-plugin.js +14 -0
  83. package/dist-pkg/cli/canonical-import-rewrite.d.ts +18 -0
  84. package/dist-pkg/cli/canonical-import-rewrite.js +94 -0
  85. package/dist-pkg/cli/canonical-imports.d.ts +8 -0
  86. package/dist-pkg/cli/canonical-imports.js +131 -0
  87. package/dist-pkg/cli/check-ast.d.ts +20 -0
  88. package/dist-pkg/cli/check-ast.js +126 -0
  89. package/dist-pkg/cli/cmd-ai.d.ts +4 -0
  90. package/dist-pkg/cli/cmd-ai.js +290 -0
  91. package/dist-pkg/cli/cmd-build.d.ts +12 -0
  92. package/dist-pkg/cli/cmd-build.js +198 -0
  93. package/dist-pkg/cli/cmd-check.d.ts +25 -0
  94. package/dist-pkg/cli/cmd-check.js +573 -0
  95. package/dist-pkg/cli/cmd-create.d.ts +6 -0
  96. package/dist-pkg/cli/cmd-create.js +600 -0
  97. package/dist-pkg/cli/cmd-deploy.d.ts +6 -0
  98. package/dist-pkg/cli/cmd-deploy.js +381 -0
  99. package/dist-pkg/cli/cmd-dev.d.ts +5 -0
  100. package/dist-pkg/cli/cmd-dev.js +5 -0
  101. package/dist-pkg/cli/cmd-docs.d.ts +50 -0
  102. package/dist-pkg/cli/cmd-docs.js +122 -0
  103. package/dist-pkg/cli/cmd-generate.d.ts +12 -0
  104. package/dist-pkg/cli/cmd-generate.js +320 -0
  105. package/dist-pkg/cli/cmd-migrate.d.ts +7 -0
  106. package/dist-pkg/cli/cmd-migrate.js +42 -0
  107. package/dist-pkg/cli/cmd-routes.d.ts +6 -0
  108. package/dist-pkg/cli/cmd-routes.js +24 -0
  109. package/dist-pkg/cli/cmd-start.d.ts +13 -0
  110. package/dist-pkg/cli/cmd-start.js +32 -0
  111. package/dist-pkg/cli/cmd-test.d.ts +20 -0
  112. package/dist-pkg/cli/cmd-test.js +103 -0
  113. package/dist-pkg/cli/cmd-typegen.d.ts +7 -0
  114. package/dist-pkg/cli/cmd-typegen.js +66 -0
  115. package/dist-pkg/cli/cmd-upgrade.d.ts +38 -0
  116. package/dist-pkg/cli/cmd-upgrade.js +232 -0
  117. package/dist-pkg/cli/context.d.ts +4 -0
  118. package/dist-pkg/cli/context.js +4 -0
  119. package/dist-pkg/cli/framework-md.d.ts +1 -0
  120. package/dist-pkg/cli/framework-md.js +391 -0
  121. package/dist-pkg/cli/index.d.ts +6 -0
  122. package/dist-pkg/cli/index.js +106 -0
  123. package/dist-pkg/cli/release-version.d.ts +2 -0
  124. package/dist-pkg/cli/release-version.js +33 -0
  125. package/dist-pkg/client.d.ts +16 -0
  126. package/dist-pkg/client.js +71 -0
  127. package/dist-pkg/compat.d.ts +1 -0
  128. package/dist-pkg/compat.js +1 -0
  129. package/dist-pkg/compiler/analysis-backend.d.ts +20 -0
  130. package/dist-pkg/compiler/analysis-backend.js +164 -0
  131. package/dist-pkg/compiler/backends/experimental-oxc.d.ts +6 -0
  132. package/dist-pkg/compiler/backends/experimental-oxc.js +9 -0
  133. package/dist-pkg/compiler/backends/oxc.d.ts +16 -0
  134. package/dist-pkg/compiler/backends/oxc.js +198 -0
  135. package/dist-pkg/compiler/backends/register.d.ts +7 -0
  136. package/dist-pkg/compiler/backends/register.js +22 -0
  137. package/dist-pkg/compiler/fixtures.d.ts +2 -0
  138. package/dist-pkg/compiler/fixtures.js +118 -0
  139. package/dist-pkg/compiler/init.d.ts +1 -0
  140. package/dist-pkg/compiler/init.js +6 -0
  141. package/dist-pkg/compiler/module-analysis.d.ts +13 -0
  142. package/dist-pkg/compiler/module-analysis.js +50 -0
  143. package/dist-pkg/compiler/parity.d.ts +35 -0
  144. package/dist-pkg/compiler/parity.js +89 -0
  145. package/dist-pkg/compiler/readiness.d.ts +11 -0
  146. package/dist-pkg/compiler/readiness.js +18 -0
  147. package/dist-pkg/compiler/route-facts.d.ts +34 -0
  148. package/dist-pkg/compiler/route-facts.js +75 -0
  149. package/dist-pkg/content/index.d.ts +27 -0
  150. package/dist-pkg/content/index.js +287 -0
  151. package/dist-pkg/db/index.d.ts +3 -0
  152. package/dist-pkg/db/index.js +6 -0
  153. package/dist-pkg/db/migrate.d.ts +7 -0
  154. package/dist-pkg/db/migrate.js +53 -0
  155. package/dist-pkg/db/postgres.d.ts +29 -0
  156. package/dist-pkg/db/postgres.js +59 -0
  157. package/dist-pkg/db/sqlite.d.ts +10 -0
  158. package/dist-pkg/db/sqlite.js +22 -0
  159. package/dist-pkg/deploy/cloudflare.d.ts +8 -0
  160. package/{src/deploy/cloudflare.ts → dist-pkg/deploy/cloudflare.js} +24 -26
  161. package/dist-pkg/deploy/conformance.d.ts +21 -0
  162. package/dist-pkg/deploy/conformance.js +98 -0
  163. package/dist-pkg/deploy/dockerfile.d.ts +3 -0
  164. package/{src/deploy/dockerfile.ts → dist-pkg/deploy/dockerfile.js} +8 -10
  165. package/dist-pkg/deploy/fly.d.ts +3 -0
  166. package/{src/deploy/fly.ts → dist-pkg/deploy/fly.js} +11 -12
  167. package/dist-pkg/deploy/index.d.ts +6 -0
  168. package/dist-pkg/deploy/index.js +26 -0
  169. package/dist-pkg/deploy/netlify.d.ts +2 -0
  170. package/{src/deploy/netlify.ts → dist-pkg/deploy/netlify.js} +17 -11
  171. package/dist-pkg/deploy/runtime.d.ts +2 -0
  172. package/dist-pkg/deploy/runtime.js +3 -0
  173. package/dist-pkg/deploy/vercel.d.ts +22 -0
  174. package/dist-pkg/deploy/vercel.js +53 -0
  175. package/dist-pkg/dev/error-overlay.d.ts +1 -0
  176. package/{src/dev/error-overlay.ts → dist-pkg/dev/error-overlay.js} +13 -23
  177. package/dist-pkg/dev/hmr.d.ts +30 -0
  178. package/dist-pkg/dev/hmr.js +86 -0
  179. package/dist-pkg/dev/partial-handler.d.ts +9 -0
  180. package/dist-pkg/dev/partial-handler.js +24 -0
  181. package/dist-pkg/dev/request-handler.d.ts +30 -0
  182. package/dist-pkg/dev/request-handler.js +67 -0
  183. package/dist-pkg/dev/watcher.d.ts +6 -0
  184. package/dist-pkg/dev/watcher.js +34 -0
  185. package/dist-pkg/dev.d.ts +11 -0
  186. package/dist-pkg/dev.js +268 -0
  187. package/dist-pkg/env/index.d.ts +3 -0
  188. package/dist-pkg/env/index.js +57 -0
  189. package/dist-pkg/errors/catalog.d.ts +9 -0
  190. package/{src/errors/catalog.ts → dist-pkg/errors/catalog.js} +8 -24
  191. package/dist-pkg/errors/formatter.d.ts +22 -0
  192. package/dist-pkg/errors/formatter.js +43 -0
  193. package/dist-pkg/errors/index.d.ts +2 -0
  194. package/dist-pkg/errors/index.js +2 -0
  195. package/dist-pkg/forms/action.d.ts +15 -0
  196. package/dist-pkg/forms/action.js +20 -0
  197. package/dist-pkg/forms/index.d.ts +4 -0
  198. package/dist-pkg/forms/index.js +12 -0
  199. package/dist-pkg/i18n/index.d.ts +61 -0
  200. package/dist-pkg/i18n/index.js +147 -0
  201. package/dist-pkg/index-client.d.ts +1 -0
  202. package/dist-pkg/index-client.js +1 -0
  203. package/dist-pkg/index.d.ts +32 -0
  204. package/dist-pkg/index.js +79 -0
  205. package/dist-pkg/jsx-runtime-client.d.ts +8 -0
  206. package/dist-pkg/jsx-runtime-client.js +1 -0
  207. package/dist-pkg/jsx-runtime.d.ts +13 -0
  208. package/dist-pkg/jsx-runtime.js +5 -0
  209. package/dist-pkg/jsx-types-html.d.ts +221 -0
  210. package/dist-pkg/jsx-types-html.js +0 -0
  211. package/dist-pkg/log/index.d.ts +8 -0
  212. package/dist-pkg/log/index.js +55 -0
  213. package/dist-pkg/plugins/drizzle.d.ts +16 -0
  214. package/dist-pkg/plugins/drizzle.js +50 -0
  215. package/dist-pkg/plugins/index.d.ts +62 -0
  216. package/dist-pkg/plugins/index.js +147 -0
  217. package/dist-pkg/plugins/lucia.d.ts +26 -0
  218. package/dist-pkg/plugins/lucia.js +63 -0
  219. package/dist-pkg/plugins/prisma.d.ts +14 -0
  220. package/dist-pkg/plugins/prisma.js +57 -0
  221. package/dist-pkg/plugins/resend.d.ts +21 -0
  222. package/dist-pkg/plugins/resend.js +45 -0
  223. package/dist-pkg/plugins/s3.d.ts +18 -0
  224. package/dist-pkg/plugins/s3.js +63 -0
  225. package/dist-pkg/plugins/stripe.d.ts +32 -0
  226. package/dist-pkg/plugins/stripe.js +69 -0
  227. package/dist-pkg/plugins/tailwind.d.ts +15 -0
  228. package/dist-pkg/plugins/tailwind.js +58 -0
  229. package/dist-pkg/prod.d.ts +21 -0
  230. package/dist-pkg/prod.js +347 -0
  231. package/dist-pkg/reactive/computed.d.ts +3 -0
  232. package/dist-pkg/reactive/computed.js +15 -0
  233. package/dist-pkg/reactive/data.d.ts +25 -0
  234. package/dist-pkg/reactive/data.js +56 -0
  235. package/dist-pkg/reactive/diagnostics.d.ts +100 -0
  236. package/dist-pkg/reactive/diagnostics.js +363 -0
  237. package/dist-pkg/reactive/effect.d.ts +3 -0
  238. package/dist-pkg/reactive/effect.js +6 -0
  239. package/dist-pkg/reactive/index.d.ts +9 -0
  240. package/dist-pkg/reactive/index.js +18 -0
  241. package/dist-pkg/reactive/live.d.ts +15 -0
  242. package/dist-pkg/reactive/live.js +58 -0
  243. package/dist-pkg/reactive/optimistic.d.ts +20 -0
  244. package/dist-pkg/reactive/optimistic.js +54 -0
  245. package/dist-pkg/reactive/resource.d.ts +25 -0
  246. package/dist-pkg/reactive/resource.js +97 -0
  247. package/dist-pkg/reactive/signal.d.ts +4 -0
  248. package/dist-pkg/reactive/signal.js +17 -0
  249. package/dist-pkg/reactive/store.d.ts +6 -0
  250. package/dist-pkg/reactive/store.js +19 -0
  251. package/dist-pkg/router/index.d.ts +2 -0
  252. package/dist-pkg/router/index.js +2 -0
  253. package/dist-pkg/router/matcher.d.ts +7 -0
  254. package/dist-pkg/router/matcher.js +40 -0
  255. package/dist-pkg/router/scanner.d.ts +14 -0
  256. package/dist-pkg/router/scanner.js +141 -0
  257. package/dist-pkg/routes/index.d.ts +1 -0
  258. package/dist-pkg/routes/index.js +10 -0
  259. package/dist-pkg/runtime/app-config.d.ts +26 -0
  260. package/dist-pkg/runtime/app-config.js +69 -0
  261. package/dist-pkg/runtime/client.d.ts +3 -0
  262. package/dist-pkg/runtime/client.js +31 -0
  263. package/dist-pkg/runtime/devtools.d.ts +64 -0
  264. package/dist-pkg/runtime/devtools.js +132 -0
  265. package/dist-pkg/runtime/error-boundary.d.ts +6 -0
  266. package/dist-pkg/runtime/error-boundary.js +17 -0
  267. package/dist-pkg/runtime/event-replay.d.ts +3 -0
  268. package/{src/runtime/event-replay.ts → dist-pkg/runtime/event-replay.js} +7 -22
  269. package/dist-pkg/runtime/event-source.d.ts +7 -0
  270. package/dist-pkg/runtime/event-source.js +24 -0
  271. package/dist-pkg/runtime/form.d.ts +24 -0
  272. package/dist-pkg/runtime/form.js +59 -0
  273. package/dist-pkg/runtime/head.d.ts +7 -0
  274. package/dist-pkg/runtime/head.js +90 -0
  275. package/dist-pkg/runtime/html-escape.d.ts +7 -0
  276. package/dist-pkg/runtime/html-escape.js +39 -0
  277. package/dist-pkg/runtime/hydration.d.ts +15 -0
  278. package/dist-pkg/runtime/hydration.js +103 -0
  279. package/dist-pkg/runtime/image.d.ts +49 -0
  280. package/dist-pkg/runtime/image.js +144 -0
  281. package/dist-pkg/runtime/index.d.ts +17 -0
  282. package/dist-pkg/runtime/index.js +59 -0
  283. package/dist-pkg/runtime/island-hydrator.d.ts +12 -0
  284. package/dist-pkg/runtime/island-hydrator.js +49 -0
  285. package/dist-pkg/runtime/island.d.ts +19 -0
  286. package/dist-pkg/runtime/island.js +36 -0
  287. package/dist-pkg/runtime/jsx-runtime.d.ts +12 -0
  288. package/dist-pkg/runtime/jsx-runtime.js +173 -0
  289. package/dist-pkg/runtime/link.d.ts +16 -0
  290. package/dist-pkg/runtime/link.js +47 -0
  291. package/dist-pkg/runtime/project.d.ts +37 -0
  292. package/dist-pkg/runtime/project.js +36 -0
  293. package/dist-pkg/runtime/renderable.d.ts +6 -0
  294. package/dist-pkg/runtime/renderable.js +0 -0
  295. package/dist-pkg/runtime/router.d.ts +47 -0
  296. package/dist-pkg/runtime/router.js +476 -0
  297. package/dist-pkg/runtime/server.d.ts +8 -0
  298. package/dist-pkg/runtime/server.js +71 -0
  299. package/dist-pkg/runtime/stream.d.ts +29 -0
  300. package/dist-pkg/runtime/stream.js +106 -0
  301. package/dist-pkg/runtime/suspense.d.ts +6 -0
  302. package/dist-pkg/runtime/suspense.js +16 -0
  303. package/dist-pkg/runtime/typed-routes.d.ts +24 -0
  304. package/dist-pkg/runtime/typed-routes.js +77 -0
  305. package/dist-pkg/runtime/validated-form.d.ts +40 -0
  306. package/dist-pkg/runtime/validated-form.js +120 -0
  307. package/dist-pkg/security/cors.d.ts +10 -0
  308. package/dist-pkg/security/cors.js +56 -0
  309. package/dist-pkg/security/csrf.d.ts +9 -0
  310. package/dist-pkg/security/csrf.js +53 -0
  311. package/dist-pkg/security/headers.d.ts +11 -0
  312. package/dist-pkg/security/headers.js +31 -0
  313. package/dist-pkg/security/index.d.ts +5 -0
  314. package/dist-pkg/security/index.js +5 -0
  315. package/dist-pkg/security/rate-limit.d.ts +10 -0
  316. package/dist-pkg/security/rate-limit.js +49 -0
  317. package/dist-pkg/security/redis-rate-limit.d.ts +14 -0
  318. package/dist-pkg/security/redis-rate-limit.js +23 -0
  319. package/dist-pkg/server/action.d.ts +21 -0
  320. package/dist-pkg/server/action.js +64 -0
  321. package/dist-pkg/server/cache-utils.d.ts +2 -0
  322. package/dist-pkg/server/cache-utils.js +26 -0
  323. package/dist-pkg/server/cache.d.ts +33 -0
  324. package/dist-pkg/server/cache.js +236 -0
  325. package/dist-pkg/server/compress.d.ts +2 -0
  326. package/dist-pkg/server/compress.js +49 -0
  327. package/dist-pkg/server/endpoint-execution.d.ts +28 -0
  328. package/dist-pkg/server/endpoint-execution.js +37 -0
  329. package/dist-pkg/server/etag.d.ts +3 -0
  330. package/dist-pkg/server/etag.js +18 -0
  331. package/dist-pkg/server/guard.d.ts +16 -0
  332. package/dist-pkg/server/guard.js +45 -0
  333. package/dist-pkg/server/html-shell.d.ts +12 -0
  334. package/dist-pkg/server/html-shell.js +52 -0
  335. package/dist-pkg/server/index.d.ts +36 -0
  336. package/dist-pkg/server/index.js +170 -0
  337. package/dist-pkg/server/jobs.d.ts +41 -0
  338. package/dist-pkg/server/jobs.js +81 -0
  339. package/dist-pkg/server/manifest.d.ts +19 -0
  340. package/dist-pkg/server/manifest.js +36 -0
  341. package/dist-pkg/server/middleware.d.ts +39 -0
  342. package/dist-pkg/server/middleware.js +122 -0
  343. package/dist-pkg/server/mime.d.ts +1 -0
  344. package/{src/server/mime.ts → dist-pkg/server/mime.js} +6 -17
  345. package/dist-pkg/server/not-found.d.ts +6 -0
  346. package/dist-pkg/server/not-found.js +24 -0
  347. package/dist-pkg/server/page-render.d.ts +29 -0
  348. package/dist-pkg/server/page-render.js +67 -0
  349. package/dist-pkg/server/partial-navigation.d.ts +4 -0
  350. package/dist-pkg/server/partial-navigation.js +16 -0
  351. package/dist-pkg/server/pipe.d.ts +9 -0
  352. package/dist-pkg/server/pipe.js +32 -0
  353. package/dist-pkg/server/redis-cache-store.d.ts +10 -0
  354. package/dist-pkg/server/redis-cache-store.js +73 -0
  355. package/dist-pkg/server/redis-client.d.ts +37 -0
  356. package/dist-pkg/server/redis-client.js +37 -0
  357. package/dist-pkg/server/request-policy.d.ts +55 -0
  358. package/dist-pkg/server/request-policy.js +216 -0
  359. package/dist-pkg/server/request-preflight.d.ts +23 -0
  360. package/dist-pkg/server/request-preflight.js +45 -0
  361. package/dist-pkg/server/request-security-policy.d.ts +17 -0
  362. package/dist-pkg/server/request-security-policy.js +34 -0
  363. package/dist-pkg/server/request-surface.d.ts +8 -0
  364. package/dist-pkg/server/request-surface.js +19 -0
  365. package/dist-pkg/server/route-request.d.ts +31 -0
  366. package/dist-pkg/server/route-request.js +112 -0
  367. package/dist-pkg/server/route-response.d.ts +22 -0
  368. package/dist-pkg/server/route-response.js +58 -0
  369. package/dist-pkg/server/rpc-hash.d.ts +2 -0
  370. package/dist-pkg/server/rpc-hash.js +7 -0
  371. package/dist-pkg/server/rpc-protocol.d.ts +22 -0
  372. package/dist-pkg/server/rpc-protocol.js +28 -0
  373. package/dist-pkg/server/rpc-utils.d.ts +2 -0
  374. package/dist-pkg/server/rpc-utils.js +26 -0
  375. package/dist-pkg/server/rpc.d.ts +20 -0
  376. package/dist-pkg/server/rpc.js +147 -0
  377. package/dist-pkg/server/runtime-dispatch.d.ts +19 -0
  378. package/dist-pkg/server/runtime-dispatch.js +67 -0
  379. package/dist-pkg/server/server-execution.d.ts +22 -0
  380. package/dist-pkg/server/server-execution.js +53 -0
  381. package/dist-pkg/server/sqlite-cache-store.d.ts +13 -0
  382. package/dist-pkg/server/sqlite-cache-store.js +88 -0
  383. package/dist-pkg/server/sse.d.ts +9 -0
  384. package/dist-pkg/server/sse.js +34 -0
  385. package/dist-pkg/server/static-file.d.ts +9 -0
  386. package/dist-pkg/server/static-file.js +43 -0
  387. package/dist-pkg/server/ws.d.ts +18 -0
  388. package/dist-pkg/server/ws.js +40 -0
  389. package/dist-pkg/server-entry.d.ts +19 -0
  390. package/dist-pkg/server-entry.js +93 -0
  391. package/dist-pkg/testing/index.d.ts +98 -0
  392. package/dist-pkg/testing/index.js +254 -0
  393. package/dist-pkg/types/index.d.ts +4 -0
  394. package/dist-pkg/types/index.js +4 -0
  395. package/dist-pkg/types/safe-html.d.ts +7 -0
  396. package/dist-pkg/types/safe-html.js +19 -0
  397. package/dist-pkg/types/safe-sql.d.ts +8 -0
  398. package/dist-pkg/types/safe-sql.js +14 -0
  399. package/dist-pkg/types/safe-url.d.ts +7 -0
  400. package/dist-pkg/types/safe-url.js +20 -0
  401. package/dist-pkg/types/user-input.d.ts +9 -0
  402. package/dist-pkg/types/user-input.js +3 -0
  403. package/dist-pkg/unsafe/index.d.ts +12 -0
  404. package/dist-pkg/unsafe/index.js +6 -0
  405. package/package.json +102 -44
  406. package/bin/gorsee.js +0 -14
  407. package/src/auth/index.ts +0 -178
  408. package/src/auth/redis-session-store.ts +0 -46
  409. package/src/auth/sqlite-session-store.ts +0 -98
  410. package/src/auth/store-utils.ts +0 -21
  411. package/src/build/client.ts +0 -139
  412. package/src/build/css-modules.ts +0 -69
  413. package/src/build/devalue-parse.ts +0 -2
  414. package/src/build/manifest.ts +0 -34
  415. package/src/build/route-metadata.ts +0 -12
  416. package/src/build/rpc-transform.ts +0 -62
  417. package/src/build/server-strip.ts +0 -87
  418. package/src/build/ssg.ts +0 -70
  419. package/src/cli/bun-plugin.ts +0 -58
  420. package/src/cli/cmd-build.ts +0 -153
  421. package/src/cli/cmd-check.ts +0 -239
  422. package/src/cli/cmd-create.ts +0 -328
  423. package/src/cli/cmd-deploy.ts +0 -149
  424. package/src/cli/cmd-dev.ts +0 -13
  425. package/src/cli/cmd-docs.ts +0 -152
  426. package/src/cli/cmd-generate.ts +0 -155
  427. package/src/cli/cmd-migrate.ts +0 -53
  428. package/src/cli/cmd-routes.ts +0 -36
  429. package/src/cli/cmd-start.ts +0 -30
  430. package/src/cli/cmd-test.ts +0 -129
  431. package/src/cli/cmd-typegen.ts +0 -93
  432. package/src/cli/cmd-upgrade.ts +0 -143
  433. package/src/cli/context.ts +0 -12
  434. package/src/cli/framework-md.ts +0 -223
  435. package/src/cli/index.ts +0 -107
  436. package/src/client.ts +0 -26
  437. package/src/db/index.ts +0 -2
  438. package/src/db/migrate.ts +0 -89
  439. package/src/db/sqlite.ts +0 -40
  440. package/src/deploy/index.ts +0 -31
  441. package/src/deploy/vercel.ts +0 -94
  442. package/src/dev/hmr.ts +0 -31
  443. package/src/dev/partial-handler.ts +0 -52
  444. package/src/dev/request-handler.ts +0 -127
  445. package/src/dev/watcher.ts +0 -48
  446. package/src/dev.ts +0 -208
  447. package/src/env/index.ts +0 -74
  448. package/src/errors/formatter.ts +0 -63
  449. package/src/errors/index.ts +0 -2
  450. package/src/i18n/index.ts +0 -72
  451. package/src/index-client.ts +0 -4
  452. package/src/index.ts +0 -43
  453. package/src/jsx-runtime-client.ts +0 -13
  454. package/src/jsx-runtime.ts +0 -20
  455. package/src/jsx-types-html.ts +0 -242
  456. package/src/log/index.ts +0 -44
  457. package/src/plugins/drizzle.ts +0 -84
  458. package/src/plugins/index.ts +0 -86
  459. package/src/plugins/lucia.ts +0 -111
  460. package/src/plugins/prisma.ts +0 -85
  461. package/src/plugins/resend.ts +0 -78
  462. package/src/plugins/s3.ts +0 -102
  463. package/src/plugins/stripe.ts +0 -133
  464. package/src/plugins/tailwind.ts +0 -92
  465. package/src/prod.ts +0 -252
  466. package/src/reactive/computed.ts +0 -7
  467. package/src/reactive/effect.ts +0 -7
  468. package/src/reactive/index.ts +0 -7
  469. package/src/reactive/live.ts +0 -97
  470. package/src/reactive/optimistic.ts +0 -83
  471. package/src/reactive/resource.ts +0 -138
  472. package/src/reactive/signal.ts +0 -20
  473. package/src/reactive/store.ts +0 -36
  474. package/src/router/index.ts +0 -2
  475. package/src/router/matcher.ts +0 -53
  476. package/src/router/scanner.ts +0 -206
  477. package/src/runtime/client.ts +0 -28
  478. package/src/runtime/error-boundary.ts +0 -35
  479. package/src/runtime/form.ts +0 -49
  480. package/src/runtime/head.ts +0 -113
  481. package/src/runtime/html-escape.ts +0 -30
  482. package/src/runtime/hydration.ts +0 -95
  483. package/src/runtime/image.ts +0 -48
  484. package/src/runtime/index.ts +0 -12
  485. package/src/runtime/island-hydrator.ts +0 -84
  486. package/src/runtime/island.ts +0 -88
  487. package/src/runtime/jsx-runtime.ts +0 -167
  488. package/src/runtime/link.ts +0 -45
  489. package/src/runtime/project.ts +0 -73
  490. package/src/runtime/router.ts +0 -224
  491. package/src/runtime/server.ts +0 -102
  492. package/src/runtime/stream.ts +0 -182
  493. package/src/runtime/suspense.ts +0 -37
  494. package/src/runtime/typed-routes.ts +0 -26
  495. package/src/runtime/validated-form.ts +0 -106
  496. package/src/security/cors.ts +0 -80
  497. package/src/security/csrf.ts +0 -85
  498. package/src/security/headers.ts +0 -50
  499. package/src/security/index.ts +0 -4
  500. package/src/security/rate-limit.ts +0 -80
  501. package/src/server/action.ts +0 -48
  502. package/src/server/cache-utils.ts +0 -23
  503. package/src/server/cache.ts +0 -125
  504. package/src/server/compress.ts +0 -60
  505. package/src/server/etag.ts +0 -23
  506. package/src/server/guard.ts +0 -69
  507. package/src/server/html-shell.ts +0 -69
  508. package/src/server/index.ts +0 -57
  509. package/src/server/manifest.ts +0 -36
  510. package/src/server/middleware.ts +0 -159
  511. package/src/server/not-found.ts +0 -35
  512. package/src/server/page-render.ts +0 -123
  513. package/src/server/pipe.ts +0 -46
  514. package/src/server/redis-cache-store.ts +0 -87
  515. package/src/server/redis-client.ts +0 -71
  516. package/src/server/request-preflight.ts +0 -45
  517. package/src/server/route-request.ts +0 -72
  518. package/src/server/rpc-hash.ts +0 -17
  519. package/src/server/rpc-utils.ts +0 -27
  520. package/src/server/rpc.ts +0 -177
  521. package/src/server/sqlite-cache-store.ts +0 -109
  522. package/src/server/sse.ts +0 -96
  523. package/src/server/static-file.ts +0 -63
  524. package/src/server/ws.ts +0 -56
  525. package/src/server-entry.ts +0 -36
  526. package/src/testing/index.ts +0 -74
  527. package/src/types/index.ts +0 -4
  528. package/src/types/safe-html.ts +0 -32
  529. package/src/types/safe-sql.ts +0 -28
  530. package/src/types/safe-url.ts +0 -40
  531. package/src/types/user-input.ts +0 -12
  532. package/src/unsafe/index.ts +0 -18
@@ -0,0 +1,254 @@
1
+ import { mkdir, mkdtemp, readFile, readdir, rm, writeFile } from "node:fs/promises";
2
+ import { tmpdir } from "node:os";
3
+ import { join } from "node:path";
4
+ import { handleAction } from "../server/action.js";
5
+ import {
6
+ assertDeployArtifactConformance,
7
+ validateDeployArtifactConformance
8
+ } from "../deploy/conformance.js";
9
+ import { createContext, runMiddlewareChain } from "../server/middleware.js";
10
+ import { createPluginRunner } from "../plugins/index.js";
11
+ import { renderToString, ssrJsx } from "../runtime/server.js";
12
+ import { navigate } from "../runtime/router.js";
13
+ export function createTestRequest(path, options = {}) {
14
+ const { method = "GET", headers = {}, body } = options, url = `http://localhost${path}`, init = { method, headers };
15
+ if (body)
16
+ if (typeof body === "object") {
17
+ init.body = JSON.stringify(body);
18
+ init.headers["Content-Type"] = "application/json";
19
+ } else
20
+ init.body = body;
21
+ return new Request(url, init);
22
+ }
23
+ export function createTestContext(path, options = {}) {
24
+ const { params = {}, ...reqOpts } = options, request = createTestRequest(path, reqOpts);
25
+ return createContext(request, params);
26
+ }
27
+ export async function runTestMiddleware(middleware, ctx, handler) {
28
+ return runMiddlewareChain([middleware], ctx, handler ?? (async () => new Response("OK")));
29
+ }
30
+ export function renderComponent(component, props = {}) {
31
+ const vnode = ssrJsx(component, props);
32
+ return renderToString(vnode);
33
+ }
34
+ export async function testLoader(loader, path, options = {}) {
35
+ const ctx = createTestContext(path, options);
36
+ return loader(ctx);
37
+ }
38
+ export async function testAction(action, path, options = {}) {
39
+ const ctx = createTestContext(path, {
40
+ method: options.method ?? "POST",
41
+ headers: options.headers,
42
+ params: options.params,
43
+ body: options.body
44
+ });
45
+ return handleAction(action, ctx);
46
+ }
47
+ export async function testRouteHandler(handler, path, options = {}) {
48
+ const ctx = createTestContext(path, options);
49
+ return handler(ctx);
50
+ }
51
+ export function testDeployArtifactConformance(input) {
52
+ return validateDeployArtifactConformance(input);
53
+ }
54
+ export function assertTestDeployArtifactConformance(input) {
55
+ assertDeployArtifactConformance(input);
56
+ }
57
+ export async function createFixtureAppHarness(files, rootDir) {
58
+ const fixtureRoot = rootDir ?? await mkdtemp(join(tmpdir(), "gorsee-fixture-app-"));
59
+ return {
60
+ rootDir: fixtureRoot,
61
+ async write() {
62
+ for (const file of files) {
63
+ const absolutePath = join(fixtureRoot, file.path);
64
+ await mkdir(join(absolutePath, ".."), { recursive: !0 });
65
+ await writeFile(absolutePath, file.content, "utf-8");
66
+ }
67
+ },
68
+ read(path) {
69
+ return readFile(join(fixtureRoot, path), "utf-8");
70
+ },
71
+ async listFiles() {
72
+ return listRelativeFiles(fixtureRoot);
73
+ },
74
+ cleanup() {
75
+ return rm(fixtureRoot, { recursive: !0, force: !0 });
76
+ }
77
+ };
78
+ }
79
+ export async function createWorkspaceFixtureHarness(packages, rootFiles = [], rootDir) {
80
+ const fixtureRoot = rootDir ?? await mkdtemp(join(tmpdir(), "gorsee-fixture-workspace-")), workspaceFiles = [
81
+ ...rootFiles,
82
+ ...packages.flatMap((pkg) => pkg.files.map((file) => ({
83
+ path: join(pkg.path, file.path),
84
+ content: file.content
85
+ })))
86
+ ];
87
+ return createFixtureAppHarness(workspaceFiles, fixtureRoot);
88
+ }
89
+ export function createPluginConformanceHarness(config = {}) {
90
+ const runner = createPluginRunner(config);
91
+ return {
92
+ register(plugin) {
93
+ runner.register(plugin);
94
+ },
95
+ setupAll() {
96
+ return runner.setupAll();
97
+ },
98
+ runPhase(phase) {
99
+ return runner.runPhase(phase);
100
+ },
101
+ teardownAll() {
102
+ return runner.teardownAll();
103
+ },
104
+ getResult() {
105
+ const descriptors = runner.getPluginDescriptors();
106
+ return {
107
+ middlewareCount: runner.getMiddlewares().length,
108
+ routePaths: [...runner.getRoutes().keys()].sort(),
109
+ buildPluginNames: runner.getBuildPlugins().map((plugin) => plugin.name).sort(),
110
+ capabilities: runner.getCapabilities(),
111
+ pluginOrder: descriptors.map((descriptor) => descriptor.name),
112
+ descriptors
113
+ };
114
+ },
115
+ async testRoute(path, requestPath = path) {
116
+ const route = runner.getRoutes().get(path);
117
+ if (!route)
118
+ throw Error(`plugin conformance route not found: ${path}`);
119
+ return route(createTestContext(requestPath));
120
+ }
121
+ };
122
+ }
123
+ export async function validatePluginConformance(plugin, expectation = {}, config = {}) {
124
+ const harness = createPluginConformanceHarness(config);
125
+ harness.register(plugin);
126
+ await harness.setupAll();
127
+ try {
128
+ const result = harness.getResult();
129
+ if (expectation.middlewareCount !== void 0 && result.middlewareCount !== expectation.middlewareCount)
130
+ throw Error(`plugin conformance middleware mismatch: expected ${expectation.middlewareCount}, received ${result.middlewareCount}`);
131
+ if (expectation.routePaths) {
132
+ const expected = [...expectation.routePaths].sort();
133
+ if (JSON.stringify(result.routePaths) !== JSON.stringify(expected))
134
+ throw Error(`plugin conformance routes mismatch: expected ${expected.join(", ")}, received ${result.routePaths.join(", ")}`);
135
+ }
136
+ if (expectation.buildPluginNames) {
137
+ const expected = [...expectation.buildPluginNames].sort();
138
+ if (JSON.stringify(result.buildPluginNames) !== JSON.stringify(expected))
139
+ throw Error(`plugin conformance build plugins mismatch: expected ${expected.join(", ")}, received ${result.buildPluginNames.join(", ")}`);
140
+ }
141
+ if (expectation.capabilities) {
142
+ const expected = [...expectation.capabilities].sort();
143
+ if (JSON.stringify(result.capabilities) !== JSON.stringify(expected))
144
+ throw Error(`plugin conformance capabilities mismatch: expected ${expected.join(", ")}, received ${result.capabilities.join(", ")}`);
145
+ }
146
+ if (expectation.pluginOrder) {
147
+ const expected = [...expectation.pluginOrder];
148
+ if (JSON.stringify(result.pluginOrder) !== JSON.stringify(expected))
149
+ throw Error(`plugin conformance order mismatch: expected ${expected.join(", ")}, received ${result.pluginOrder.join(", ")}`);
150
+ }
151
+ return result;
152
+ } finally {
153
+ await harness.teardownAll();
154
+ }
155
+ }
156
+ export function createRuntimeFixture() {
157
+ const { document: originalDocument, window: originalWindow, history: originalHistory, location: originalLocation, fetch: originalFetch } = globalThis, htmlWrites = [], historyWrites = [];
158
+ let removedCss = 0;
159
+ const dataScript = {
160
+ textContent: "",
161
+ remove() {
162
+ this.textContent = "";
163
+ }
164
+ }, container = {
165
+ replaceChildren(...nodes) {
166
+ htmlWrites.push(nodes.map((node) => node.html ?? "").join(""));
167
+ },
168
+ contains() {
169
+ return !1;
170
+ },
171
+ querySelector() {
172
+ return null;
173
+ },
174
+ querySelectorAll() {
175
+ return [];
176
+ }
177
+ };
178
+ globalThis.document = {
179
+ title: "",
180
+ activeElement: null,
181
+ head: { appendChild() {} },
182
+ body: { appendChild() {} },
183
+ createElement(tag) {
184
+ if (tag === "template")
185
+ return {
186
+ content: { childNodes: [] },
187
+ set innerHTML(html) {
188
+ this.content.childNodes = [{ html }];
189
+ }
190
+ };
191
+ return {
192
+ dataset: {},
193
+ setAttribute() {}
194
+ };
195
+ },
196
+ getElementById(id) {
197
+ if (id === "app")
198
+ return container;
199
+ if (id === "__GORSEE_DATA__")
200
+ return dataScript;
201
+ return null;
202
+ },
203
+ querySelectorAll() {
204
+ return [{
205
+ remove() {
206
+ removedCss++;
207
+ }
208
+ }];
209
+ }
210
+ };
211
+ globalThis.window = {
212
+ scrollTo() {}
213
+ };
214
+ globalThis.history = {
215
+ pushState(_state, _title, url) {
216
+ historyWrites.push(url);
217
+ }
218
+ };
219
+ globalThis.location = {
220
+ pathname: "/",
221
+ search: "",
222
+ origin: "http://localhost"
223
+ };
224
+ return {
225
+ htmlWrites,
226
+ historyWrites,
227
+ removedCssCount: () => removedCss,
228
+ setFetch(handler) {
229
+ globalThis.fetch = handler;
230
+ },
231
+ navigate(url, pushState = !0) {
232
+ return navigate(url, pushState);
233
+ },
234
+ cleanup() {
235
+ globalThis.document = originalDocument;
236
+ globalThis.window = originalWindow;
237
+ globalThis.history = originalHistory;
238
+ globalThis.location = originalLocation;
239
+ globalThis.fetch = originalFetch;
240
+ }
241
+ };
242
+ }
243
+ async function listRelativeFiles(rootDir, baseDir = rootDir) {
244
+ const entries = await readdir(rootDir, { withFileTypes: !0 }), files = [];
245
+ for (const entry of entries) {
246
+ const absolutePath = join(rootDir, entry.name);
247
+ if (entry.isDirectory()) {
248
+ files.push(...await listRelativeFiles(absolutePath, baseDir));
249
+ continue;
250
+ }
251
+ files.push(absolutePath.slice(baseDir.length + 1));
252
+ }
253
+ return files.sort();
254
+ }
@@ -0,0 +1,4 @@
1
+ export { SafeSQL, type SafeSQLValue } from "./safe-sql.js";
2
+ export { SafeHTML, sanitize } from "./safe-html.js";
3
+ export { SafeURL, validateURL } from "./safe-url.js";
4
+ export { type UserInput, validate } from "./user-input.js";
@@ -0,0 +1,4 @@
1
+ export { SafeSQL } from "./safe-sql.js";
2
+ export { SafeHTML, sanitize } from "./safe-html.js";
3
+ export { SafeURL, validateURL } from "./safe-url.js";
4
+ export { validate } from "./user-input.js";
@@ -0,0 +1,7 @@
1
+ declare const __safeHTMLBrand: unique symbol;
2
+ export type SafeHTMLValue = string & {
3
+ readonly [__safeHTMLBrand]: true;
4
+ };
5
+ export declare function sanitize(raw: string): SafeHTMLValue;
6
+ export declare function SafeHTML(strings: TemplateStringsArray, ...values: unknown[]): SafeHTMLValue;
7
+ export {};
@@ -0,0 +1,19 @@
1
+ const ESCAPE_MAP = {
2
+ "&": "&",
3
+ "<": "&lt;",
4
+ ">": "&gt;",
5
+ '"': "&quot;",
6
+ "'": "&#x27;"
7
+ }, ESCAPE_RE = /[&<>"']/g;
8
+ export function sanitize(raw) {
9
+ return raw.replace(ESCAPE_RE, (ch) => ESCAPE_MAP[ch] ?? ch);
10
+ }
11
+ export function SafeHTML(strings, ...values) {
12
+ const parts = [];
13
+ for (let i = 0;i < strings.length; i++) {
14
+ parts.push(strings[i]);
15
+ if (i < values.length)
16
+ parts.push(sanitize(String(values[i])));
17
+ }
18
+ return parts.join("");
19
+ }
@@ -0,0 +1,8 @@
1
+ declare const __safeSQLBrand: unique symbol;
2
+ export interface SafeSQLValue {
3
+ readonly text: string;
4
+ readonly params: readonly unknown[];
5
+ readonly [__safeSQLBrand]: true;
6
+ }
7
+ export declare function SafeSQL(strings: TemplateStringsArray, ...values: unknown[]): SafeSQLValue;
8
+ export {};
@@ -0,0 +1,14 @@
1
+ export function SafeSQL(strings, ...values) {
2
+ const parts = [], params = [];
3
+ for (let i = 0;i < strings.length; i++) {
4
+ parts.push(strings[i]);
5
+ if (i < values.length) {
6
+ params.push(values[i]);
7
+ parts.push("?");
8
+ }
9
+ }
10
+ return {
11
+ text: parts.join(""),
12
+ params
13
+ };
14
+ }
@@ -0,0 +1,7 @@
1
+ declare const __safeURLBrand: unique symbol;
2
+ export type SafeURLValue = string & {
3
+ readonly [__safeURLBrand]: true;
4
+ };
5
+ export declare function validateURL(raw: string): SafeURLValue;
6
+ export declare function SafeURL(strings: TemplateStringsArray, ...values: unknown[]): SafeURLValue;
7
+ export {};
@@ -0,0 +1,20 @@
1
+ const ALLOWED_PROTOCOLS = ["http:", "https:", "mailto:"], DANGEROUS_PROTOCOLS = ["javascript:", "data:", "vbscript:", "blob:"];
2
+ export function validateURL(raw) {
3
+ const lower = raw.trim().toLowerCase();
4
+ for (const proto of DANGEROUS_PROTOCOLS)
5
+ if (lower.startsWith(proto))
6
+ throw Error(`[GORSEE E005] Dangerous URL protocol: "${proto}" is not allowed`);
7
+ let url;
8
+ try {
9
+ url = new URL(raw);
10
+ } catch {
11
+ return raw;
12
+ }
13
+ if (!ALLOWED_PROTOCOLS.includes(url.protocol))
14
+ throw Error(`[GORSEE E005] Disallowed URL protocol: "${url.protocol}". Allowed: ${ALLOWED_PROTOCOLS.join(", ")}`);
15
+ return raw;
16
+ }
17
+ export function SafeURL(strings, ...values) {
18
+ const raw = String.raw(strings, ...values.map(String));
19
+ return validateURL(raw);
20
+ }
@@ -0,0 +1,9 @@
1
+ declare const __userInputBrand: unique symbol;
2
+ export type UserInput<T> = T & {
3
+ readonly [__userInputBrand]: true;
4
+ };
5
+ export interface ValidationSchema<T> {
6
+ parse(raw: unknown): T;
7
+ }
8
+ export declare function validate<T>(schema: ValidationSchema<T>, raw: unknown): UserInput<T>;
9
+ export {};
@@ -0,0 +1,3 @@
1
+ export function validate(schema, raw) {
2
+ return schema.parse(raw);
3
+ }
@@ -0,0 +1,12 @@
1
+ import type { SafeSQLValue } from "../types/safe-sql.js";
2
+ import type { SafeHTMLValue } from "../types/safe-html.js";
3
+ /**
4
+ * DANGER: Bypasses SQL safety. Only use when you know the string is safe.
5
+ * This function exists as an explicit escape hatch -- its name signals danger.
6
+ */
7
+ export declare function unsafeSQL(raw: string): SafeSQLValue;
8
+ /**
9
+ * DANGER: Bypasses HTML sanitization. Only use for trusted content.
10
+ * This function exists as an explicit escape hatch -- its name signals danger.
11
+ */
12
+ export declare function unsafeHTML(raw: string): SafeHTMLValue;
@@ -0,0 +1,6 @@
1
+ export function unsafeSQL(raw) {
2
+ return { text: raw, params: [] };
3
+ }
4
+ export function unsafeHTML(raw) {
5
+ return raw;
6
+ }
package/package.json CHANGED
@@ -1,82 +1,140 @@
1
1
  {
2
2
  "name": "gorsee",
3
- "version": "0.2.3",
4
- "description": "Full-stack TypeScript framework islands, reactive WebSocket, optimistic mutations, built-in auth, type-safe routes",
3
+ "version": "0.2.5",
4
+ "description": "AI-first reactive full-stack TypeScript framework for deterministic human and agent collaboration",
5
5
  "type": "module",
6
+ "packageManager": "bun@1.3.9",
6
7
  "license": "MIT",
7
8
  "author": "Oleg Gorsky",
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/AYKGorsee/gorsee-js.git"
11
- },
12
- "homepage": "https://github.com/AYKGorsee/gorsee-js#readme",
13
9
  "keywords": [
10
+ "ai-first",
11
+ "agentic",
14
12
  "framework",
15
13
  "typescript",
16
14
  "fullstack",
17
15
  "ssr",
18
16
  "islands",
19
17
  "reactive",
18
+ "signals",
20
19
  "bun",
21
20
  "jsx",
22
21
  "web-framework"
23
22
  ],
24
23
  "bin": {
25
- "gorsee": "bin/gorsee.js"
24
+ "gorsee": "dist-pkg/bin/gorsee.js"
26
25
  },
27
26
  "exports": {
28
- ".": "./src/index.ts",
29
- "./compat": "./src/index.ts",
30
- "./client": "./src/client.ts",
31
- "./reactive": "./src/reactive/index.ts",
32
- "./server": "./src/server-entry.ts",
33
- "./types": "./src/types/index.ts",
34
- "./db": "./src/db/index.ts",
35
- "./router": "./src/router/index.ts",
36
- "./log": "./src/log/index.ts",
37
- "./unsafe": "./src/unsafe/index.ts",
38
- "./runtime": "./src/runtime/index.ts",
39
- "./security": "./src/security/index.ts",
40
- "./jsx-runtime": "./src/jsx-runtime.ts",
41
- "./jsx-dev-runtime": "./src/jsx-runtime.ts",
42
- "./testing": "./src/testing/index.ts",
43
- "./i18n": "./src/i18n/index.ts",
44
- "./env": "./src/env/index.ts",
45
- "./auth": "./src/auth/index.ts",
46
- "./routes": "./src/runtime/typed-routes.ts",
47
- "./cli/cmd-create": "./src/cli/cmd-create.ts",
48
- "./plugins": "./src/plugins/index.ts",
49
- "./plugins/drizzle": "./src/plugins/drizzle.ts",
50
- "./plugins/prisma": "./src/plugins/prisma.ts",
51
- "./plugins/tailwind": "./src/plugins/tailwind.ts",
52
- "./plugins/lucia": "./src/plugins/lucia.ts",
53
- "./plugins/s3": "./src/plugins/s3.ts",
54
- "./plugins/resend": "./src/plugins/resend.ts",
55
- "./plugins/stripe": "./src/plugins/stripe.ts",
56
- "./deploy": "./src/deploy/index.ts"
27
+ ".": "./dist-pkg/index.js",
28
+ "./compat": "./dist-pkg/compat.js",
29
+ "./client": "./dist-pkg/client.js",
30
+ "./reactive": "./dist-pkg/reactive/index.js",
31
+ "./server": "./dist-pkg/server-entry.js",
32
+ "./types": "./dist-pkg/types/index.js",
33
+ "./db": "./dist-pkg/db/index.js",
34
+ "./router": "./dist-pkg/router/index.js",
35
+ "./log": "./dist-pkg/log/index.js",
36
+ "./unsafe": "./dist-pkg/unsafe/index.js",
37
+ "./runtime": "./dist-pkg/runtime/index.js",
38
+ "./security": "./dist-pkg/security/index.js",
39
+ "./ai": "./dist-pkg/ai/index.js",
40
+ "./jsx-runtime": "./dist-pkg/jsx-runtime.js",
41
+ "./jsx-dev-runtime": "./dist-pkg/jsx-runtime.js",
42
+ "./testing": "./dist-pkg/testing/index.js",
43
+ "./i18n": "./dist-pkg/i18n/index.js",
44
+ "./content": "./dist-pkg/content/index.js",
45
+ "./env": "./dist-pkg/env/index.js",
46
+ "./auth": "./dist-pkg/auth/index.js",
47
+ "./forms": "./dist-pkg/forms/index.js",
48
+ "./routes": "./dist-pkg/routes/index.js",
49
+ "./cli/cmd-create": "./dist-pkg/cli/cmd-create.js",
50
+ "./plugins": "./dist-pkg/plugins/index.js",
51
+ "./plugins/drizzle": "./dist-pkg/plugins/drizzle.js",
52
+ "./plugins/prisma": "./dist-pkg/plugins/prisma.js",
53
+ "./plugins/tailwind": "./dist-pkg/plugins/tailwind.js",
54
+ "./plugins/lucia": "./dist-pkg/plugins/lucia.js",
55
+ "./plugins/s3": "./dist-pkg/plugins/s3.js",
56
+ "./plugins/resend": "./dist-pkg/plugins/resend.js",
57
+ "./plugins/stripe": "./dist-pkg/plugins/stripe.js",
58
+ "./deploy": "./dist-pkg/deploy/index.js"
57
59
  },
58
60
  "files": [
59
- "src/",
60
- "bin/",
61
+ "dist-pkg/",
61
62
  "README.md",
62
63
  "LICENSE"
63
64
  ],
64
65
  "scripts": {
65
66
  "test": "bun test",
67
+ "test:security": "bun test tests/security tests/server/request-policy.test.ts tests/server/request-security-policy.test.ts tests/server/request-preflight.test.ts tests/server/route-request-security.test.ts tests/server/runtime-dispatch.test.ts tests/dev/hmr-security.test.ts tests/integration/dev-prod-parity.test.ts tests/integration/production-runtime.test.ts",
68
+ "test:confidence": "bun test tests/build/entrypoints-boundary.test.ts tests/integration/dev-prod-auth-cache-parity.test.ts tests/integration/dev-prod-cache-rpc-parity.test.ts tests/integration/production-large-app-runtime.test.ts tests/integration/canonical-recipes-runtime.test.ts",
69
+ "test:provider-smoke": "bun test tests/deploy/provider-smoke.test.ts",
70
+ "test:browser-smoke": "node scripts/browser-smoke.mjs",
71
+ "product:policy": "node scripts/product-policy-check.mjs",
72
+ "ai:policy": "node scripts/ai-policy-check.mjs",
73
+ "dx:policy": "node scripts/dx-policy-check.mjs",
74
+ "maturity:policy": "node scripts/maturity-policy-check.mjs",
75
+ "runtime:policy": "node scripts/runtime-diagnostics-policy-check.mjs",
76
+ "compiler:audit": "node scripts/compiler-platform-audit.mjs",
77
+ "compiler:parity": "node scripts/compiler-backend-parity.mjs",
78
+ "compiler:canary": "node scripts/compiler-backend-parity.mjs && bun test tests/cli/programmatic-runtime.test.ts tests/compiler/init.test.ts",
79
+ "compiler:promotion:check": "node scripts/compiler-promotion-check.mjs",
80
+ "compiler:dossier:check": "node scripts/compiler-dossier-check.mjs",
81
+ "compiler:default:rehearsal": "node scripts/compiler-backend-parity.mjs && bun test tests/cli/programmatic-runtime.test.ts tests/compiler/init.test.ts && node scripts/compiler-dossier-check.mjs && node scripts/backend-default-switch-review-check.mjs",
82
+ "compiler:default:rehearsal:check": "node scripts/compiler-default-switch-rehearsal-check.mjs",
83
+ "build:parity": "bun scripts/build-backend-parity.mjs",
84
+ "build:canary": "bun scripts/build-backend-parity.mjs && bun test tests/cli/programmatic-runtime.test.ts tests/build/init.test.ts tests/integration/production-backend-parity.test.ts",
85
+ "build:promotion:check": "node scripts/build-promotion-check.mjs",
86
+ "build:dossier:check": "node scripts/build-dossier-check.mjs",
87
+ "build:default:rehearsal": "bun scripts/build-backend-parity.mjs && bun test tests/cli/programmatic-runtime.test.ts tests/build/init.test.ts tests/integration/production-backend-parity.test.ts && node scripts/build-dossier-check.mjs && node scripts/backend-default-switch-review-check.mjs",
88
+ "build:default:rehearsal:check": "node scripts/build-default-switch-rehearsal-check.mjs",
89
+ "backend:switch:evidence:check": "node scripts/backend-switch-evidence-check.mjs",
90
+ "backend:default-switch:review:check": "node scripts/backend-default-switch-review-check.mjs",
91
+ "backend:candidate:verify": "bun run backend:candidate:evidence:verify && node scripts/release-train-check.mjs && node scripts/release-checklist-check.mjs && node scripts/ci-policy-check.mjs",
92
+ "benchmarks:policy": "node scripts/benchmark-policy-check.mjs",
93
+ "benchmarks:realworld:check": "node scripts/realworld-benchmark-check.mjs",
94
+ "examples:policy": "node scripts/examples-policy-check.mjs",
95
+ "proof:policy": "node scripts/proof-surface-check.mjs",
96
+ "repo:policy": "node scripts/repo-policy-check.mjs",
97
+ "ci:policy": "node scripts/ci-policy-check.mjs",
98
+ "verify:security": "bun run check && bun run product:policy && bun run ai:policy && bun run dx:policy && bun run maturity:policy && bun run runtime:policy && bun run benchmarks:policy && bun run benchmarks:realworld:check && bun run examples:policy && bun run proof:policy && bun run repo:policy && bun run ci:policy && bun run compiler:promotion:check && bun run build:promotion:check && bun run backend:switch:evidence:check && bun run backend:default-switch:review:check && bun run backend:candidate:rollout:check && bun run compiler:default:rehearsal:check && bun run build:default:rehearsal:check && bun run test:security && bun run test:confidence",
66
99
  "check": "tsc --noEmit",
100
+ "install:matrix": "node scripts/install-matrix-check.mjs",
67
101
  "dev": "bun run src/dev.ts",
102
+ "ai:package:vscode": "node scripts/package-vscode-ai-extension.mjs",
103
+ "ai:build:vsix": "node scripts/package-vscode-ai-extension.mjs",
104
+ "release:extension": "node scripts/release-vscode-extension.mjs",
105
+ "release:stable:check": "node scripts/release-channel-check.mjs stable",
106
+ "release:canary:check": "node scripts/release-channel-check.mjs canary",
107
+ "release:rc:check": "node scripts/release-channel-check.mjs rc",
108
+ "release:version:stable": "node scripts/release-version-plan.mjs stable",
109
+ "release:version:canary": "node scripts/release-version-plan.mjs canary",
110
+ "release:version:rc": "node scripts/release-version-plan.mjs rc",
111
+ "release:checklist:check": "node scripts/release-checklist-check.mjs",
112
+ "release:train:check": "node scripts/release-train-check.mjs",
68
113
  "release:check": "node scripts/release-check.mjs",
69
- "prepublishOnly": "bun run check"
114
+ "release:smoke": "node scripts/release-smoke.mjs",
115
+ "package:build": "bun run scripts/build-publish-artifacts.ts",
116
+ "prepack": "node scripts/prepack-package.mjs",
117
+ "postpack": "node scripts/postpack-package.mjs",
118
+ "release:verify": "npm run verify:security && bun test && npm run release:train:check && npm run release:checklist:check && npm run backend:candidate:verify && npm run install:matrix && npm run release:extension && npm run release:check && npm run release:smoke",
119
+ "prepublishOnly": "npm run verify:security && bun test && npm run release:train:check && npm run release:checklist:check && npm run backend:candidate:verify && npm run install:matrix && npm run release:extension && npm run release:check && npm run release:smoke",
120
+ "backend:candidate:rollout:check": "node scripts/backend-candidate-rollout-check.mjs",
121
+ "compiler:evidence:verify": "bun run compiler:parity && bun test tests/cli/cmd-docs.test.ts tests/cli/cmd-check.test.ts tests/cli/programmatic-runtime.test.ts tests/compiler/init.test.ts tests/compiler/module-analysis-parity.test.ts tests/compiler/oxc.test.ts tests/compiler/route-facts-contract.test.ts && node scripts/compiler-dossier-check.mjs && node scripts/compiler-promotion-check.mjs && node scripts/compiler-evidence-check.mjs",
122
+ "build:evidence:verify": "bun run build:parity && bun test tests/build/artifact-parity.test.ts tests/build/rolldown-runtime-contract.test.ts tests/build/build-diagnostics.test.ts tests/cli/programmatic-runtime.test.ts tests/build/init.test.ts tests/integration/production-backend-parity.test.ts && bun run test:browser-smoke && node scripts/build-dossier-check.mjs && node scripts/build-promotion-check.mjs && node scripts/build-evidence-check.mjs",
123
+ "backend:candidate:evidence:verify": "bun run compiler:evidence:verify && bun run build:evidence:verify && node scripts/backend-candidate-evidence-check.mjs && node scripts/backend-default-switch-review-check.mjs && node scripts/backend-switch-evidence-check.mjs"
70
124
  },
71
125
  "engines": {
72
126
  "bun": ">=1.0.0"
73
127
  },
74
128
  "dependencies": {
75
- "alien-signals": "^3.1.0",
76
- "devalue": "^5.1.1"
129
+ "alien-signals": "3.1.2",
130
+ "devalue": "5.6.3",
131
+ "oxc-parser": "0.116.0",
132
+ "rolldown": "1.0.0-rc.7",
133
+ "typescript": "5.9.3"
77
134
  },
78
135
  "devDependencies": {
79
136
  "@types/bun": "latest",
80
- "typescript": "^5.7.0"
81
- }
137
+ "playwright": "1.58.2"
138
+ },
139
+ "types": "./dist-pkg/index.d.ts"
82
140
  }
package/bin/gorsee.js DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env node
2
- import { execSync } from "child_process";
3
- import { join, dirname } from "path";
4
- import { fileURLToPath } from "url";
5
-
6
- const __dirname = dirname(fileURLToPath(import.meta.url));
7
- const cli = join(__dirname, "..", "src", "cli", "index.ts");
8
- const args = process.argv.slice(2).join(" ");
9
-
10
- try {
11
- execSync(`bun ${cli} ${args}`, { stdio: "inherit" });
12
- } catch (e) {
13
- process.exit(e.status || 1);
14
- }