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.
- package/README.md +261 -213
- package/dist-pkg/ai/artifact-lifecycle.d.ts +25 -0
- package/dist-pkg/ai/artifact-lifecycle.js +98 -0
- package/dist-pkg/ai/bridge.d.ts +26 -0
- package/dist-pkg/ai/bridge.js +82 -0
- package/dist-pkg/ai/bundle.d.ts +46 -0
- package/dist-pkg/ai/bundle.js +247 -0
- package/dist-pkg/ai/contracts.d.ts +1 -0
- package/dist-pkg/ai/contracts.js +1 -0
- package/dist-pkg/ai/ide.d.ts +37 -0
- package/dist-pkg/ai/ide.js +56 -0
- package/dist-pkg/ai/index.d.ts +85 -0
- package/dist-pkg/ai/index.js +267 -0
- package/dist-pkg/ai/json.d.ts +6 -0
- package/dist-pkg/ai/json.js +14 -0
- package/dist-pkg/ai/mcp.d.ts +28 -0
- package/dist-pkg/ai/mcp.js +152 -0
- package/dist-pkg/ai/session-pack.d.ts +28 -0
- package/dist-pkg/ai/session-pack.js +57 -0
- package/dist-pkg/ai/store.d.ts +67 -0
- package/dist-pkg/ai/store.js +174 -0
- package/dist-pkg/ai/summary.d.ts +57 -0
- package/dist-pkg/ai/summary.js +148 -0
- package/dist-pkg/ai/watch.d.ts +15 -0
- package/dist-pkg/ai/watch.js +66 -0
- package/dist-pkg/auth/action-tokens.d.ts +50 -0
- package/dist-pkg/auth/action-tokens.js +79 -0
- package/dist-pkg/auth/index.d.ts +70 -0
- package/dist-pkg/auth/index.js +199 -0
- package/dist-pkg/auth/redis-session-store.d.ts +7 -0
- package/dist-pkg/auth/redis-session-store.js +42 -0
- package/dist-pkg/auth/signing.d.ts +4 -0
- package/dist-pkg/auth/signing.js +33 -0
- package/dist-pkg/auth/sqlite-session-store.d.ts +12 -0
- package/dist-pkg/auth/sqlite-session-store.js +83 -0
- package/dist-pkg/auth/store-utils.d.ts +2 -0
- package/dist-pkg/auth/store-utils.js +20 -0
- package/dist-pkg/bin/gorsee.js +2 -0
- package/dist-pkg/build/backends/experimental-rolldown.d.ts +6 -0
- package/dist-pkg/build/backends/experimental-rolldown.js +9 -0
- package/dist-pkg/build/backends/register.d.ts +7 -0
- package/dist-pkg/build/backends/register.js +24 -0
- package/dist-pkg/build/backends/rolldown.d.ts +16 -0
- package/dist-pkg/build/backends/rolldown.js +176 -0
- package/dist-pkg/build/client-backend.d.ts +31 -0
- package/dist-pkg/build/client-backend.js +97 -0
- package/dist-pkg/build/client.d.ts +12 -0
- package/dist-pkg/build/client.js +93 -0
- package/dist-pkg/build/css-modules.d.ts +10 -0
- package/dist-pkg/build/css-modules.js +51 -0
- package/dist-pkg/build/devalue-parse.d.ts +1 -0
- package/dist-pkg/build/devalue-parse.js +1 -0
- package/dist-pkg/build/diagnostics.d.ts +20 -0
- package/dist-pkg/build/diagnostics.js +35 -0
- package/dist-pkg/build/fixtures.d.ts +7 -0
- package/dist-pkg/build/fixtures.js +60 -0
- package/dist-pkg/build/framework-imports.d.ts +4 -0
- package/dist-pkg/build/framework-imports.js +58 -0
- package/dist-pkg/build/init.d.ts +1 -0
- package/dist-pkg/build/init.js +6 -0
- package/dist-pkg/build/manifest.d.ts +3 -0
- package/dist-pkg/build/manifest.js +23 -0
- package/dist-pkg/build/parity.d.ts +32 -0
- package/dist-pkg/build/parity.js +71 -0
- package/dist-pkg/build/plugin.d.ts +11 -0
- package/dist-pkg/build/plugin.js +8 -0
- package/dist-pkg/build/readiness.d.ts +11 -0
- package/dist-pkg/build/readiness.js +18 -0
- package/dist-pkg/build/route-client-transform.d.ts +17 -0
- package/dist-pkg/build/route-client-transform.js +48 -0
- package/dist-pkg/build/route-metadata.d.ts +6 -0
- package/dist-pkg/build/route-metadata.js +8 -0
- package/dist-pkg/build/rpc-transform.d.ts +1 -0
- package/dist-pkg/build/rpc-transform.js +44 -0
- package/dist-pkg/build/server-bundle.d.ts +4 -0
- package/dist-pkg/build/server-bundle.js +261 -0
- package/dist-pkg/build/server-strip.d.ts +2 -0
- package/dist-pkg/build/server-strip.js +32 -0
- package/dist-pkg/build/ssg.d.ts +12 -0
- package/dist-pkg/build/ssg.js +36 -0
- package/dist-pkg/cli/bun-plugin.d.ts +2 -0
- package/dist-pkg/cli/bun-plugin.js +14 -0
- package/dist-pkg/cli/canonical-import-rewrite.d.ts +18 -0
- package/dist-pkg/cli/canonical-import-rewrite.js +94 -0
- package/dist-pkg/cli/canonical-imports.d.ts +8 -0
- package/dist-pkg/cli/canonical-imports.js +131 -0
- package/dist-pkg/cli/check-ast.d.ts +20 -0
- package/dist-pkg/cli/check-ast.js +126 -0
- package/dist-pkg/cli/cmd-ai.d.ts +4 -0
- package/dist-pkg/cli/cmd-ai.js +290 -0
- package/dist-pkg/cli/cmd-build.d.ts +12 -0
- package/dist-pkg/cli/cmd-build.js +198 -0
- package/dist-pkg/cli/cmd-check.d.ts +25 -0
- package/dist-pkg/cli/cmd-check.js +573 -0
- package/dist-pkg/cli/cmd-create.d.ts +6 -0
- package/dist-pkg/cli/cmd-create.js +600 -0
- package/dist-pkg/cli/cmd-deploy.d.ts +6 -0
- package/dist-pkg/cli/cmd-deploy.js +381 -0
- package/dist-pkg/cli/cmd-dev.d.ts +5 -0
- package/dist-pkg/cli/cmd-dev.js +5 -0
- package/dist-pkg/cli/cmd-docs.d.ts +50 -0
- package/dist-pkg/cli/cmd-docs.js +122 -0
- package/dist-pkg/cli/cmd-generate.d.ts +12 -0
- package/dist-pkg/cli/cmd-generate.js +320 -0
- package/dist-pkg/cli/cmd-migrate.d.ts +7 -0
- package/dist-pkg/cli/cmd-migrate.js +42 -0
- package/dist-pkg/cli/cmd-routes.d.ts +6 -0
- package/dist-pkg/cli/cmd-routes.js +24 -0
- package/dist-pkg/cli/cmd-start.d.ts +13 -0
- package/dist-pkg/cli/cmd-start.js +32 -0
- package/dist-pkg/cli/cmd-test.d.ts +20 -0
- package/dist-pkg/cli/cmd-test.js +103 -0
- package/dist-pkg/cli/cmd-typegen.d.ts +7 -0
- package/dist-pkg/cli/cmd-typegen.js +66 -0
- package/dist-pkg/cli/cmd-upgrade.d.ts +38 -0
- package/dist-pkg/cli/cmd-upgrade.js +232 -0
- package/dist-pkg/cli/context.d.ts +4 -0
- package/dist-pkg/cli/context.js +4 -0
- package/dist-pkg/cli/framework-md.d.ts +1 -0
- package/dist-pkg/cli/framework-md.js +391 -0
- package/dist-pkg/cli/index.d.ts +6 -0
- package/dist-pkg/cli/index.js +106 -0
- package/dist-pkg/cli/release-version.d.ts +2 -0
- package/dist-pkg/cli/release-version.js +33 -0
- package/dist-pkg/client.d.ts +16 -0
- package/dist-pkg/client.js +71 -0
- package/dist-pkg/compat.d.ts +1 -0
- package/dist-pkg/compat.js +1 -0
- package/dist-pkg/compiler/analysis-backend.d.ts +20 -0
- package/dist-pkg/compiler/analysis-backend.js +164 -0
- package/dist-pkg/compiler/backends/experimental-oxc.d.ts +6 -0
- package/dist-pkg/compiler/backends/experimental-oxc.js +9 -0
- package/dist-pkg/compiler/backends/oxc.d.ts +16 -0
- package/dist-pkg/compiler/backends/oxc.js +198 -0
- package/dist-pkg/compiler/backends/register.d.ts +7 -0
- package/dist-pkg/compiler/backends/register.js +22 -0
- package/dist-pkg/compiler/fixtures.d.ts +2 -0
- package/dist-pkg/compiler/fixtures.js +118 -0
- package/dist-pkg/compiler/init.d.ts +1 -0
- package/dist-pkg/compiler/init.js +6 -0
- package/dist-pkg/compiler/module-analysis.d.ts +13 -0
- package/dist-pkg/compiler/module-analysis.js +50 -0
- package/dist-pkg/compiler/parity.d.ts +35 -0
- package/dist-pkg/compiler/parity.js +89 -0
- package/dist-pkg/compiler/readiness.d.ts +11 -0
- package/dist-pkg/compiler/readiness.js +18 -0
- package/dist-pkg/compiler/route-facts.d.ts +34 -0
- package/dist-pkg/compiler/route-facts.js +75 -0
- package/dist-pkg/content/index.d.ts +27 -0
- package/dist-pkg/content/index.js +287 -0
- package/dist-pkg/db/index.d.ts +3 -0
- package/dist-pkg/db/index.js +6 -0
- package/dist-pkg/db/migrate.d.ts +7 -0
- package/dist-pkg/db/migrate.js +53 -0
- package/dist-pkg/db/postgres.d.ts +29 -0
- package/dist-pkg/db/postgres.js +59 -0
- package/dist-pkg/db/sqlite.d.ts +10 -0
- package/dist-pkg/db/sqlite.js +22 -0
- package/dist-pkg/deploy/cloudflare.d.ts +8 -0
- package/{src/deploy/cloudflare.ts → dist-pkg/deploy/cloudflare.js} +24 -26
- package/dist-pkg/deploy/conformance.d.ts +21 -0
- package/dist-pkg/deploy/conformance.js +98 -0
- package/dist-pkg/deploy/dockerfile.d.ts +3 -0
- package/{src/deploy/dockerfile.ts → dist-pkg/deploy/dockerfile.js} +8 -10
- package/dist-pkg/deploy/fly.d.ts +3 -0
- package/{src/deploy/fly.ts → dist-pkg/deploy/fly.js} +11 -12
- package/dist-pkg/deploy/index.d.ts +6 -0
- package/dist-pkg/deploy/index.js +26 -0
- package/dist-pkg/deploy/netlify.d.ts +2 -0
- package/{src/deploy/netlify.ts → dist-pkg/deploy/netlify.js} +17 -11
- package/dist-pkg/deploy/runtime.d.ts +2 -0
- package/dist-pkg/deploy/runtime.js +3 -0
- package/dist-pkg/deploy/vercel.d.ts +22 -0
- package/dist-pkg/deploy/vercel.js +53 -0
- package/dist-pkg/dev/error-overlay.d.ts +1 -0
- package/{src/dev/error-overlay.ts → dist-pkg/dev/error-overlay.js} +13 -23
- package/dist-pkg/dev/hmr.d.ts +30 -0
- package/dist-pkg/dev/hmr.js +86 -0
- package/dist-pkg/dev/partial-handler.d.ts +9 -0
- package/dist-pkg/dev/partial-handler.js +24 -0
- package/dist-pkg/dev/request-handler.d.ts +30 -0
- package/dist-pkg/dev/request-handler.js +67 -0
- package/dist-pkg/dev/watcher.d.ts +6 -0
- package/dist-pkg/dev/watcher.js +34 -0
- package/dist-pkg/dev.d.ts +11 -0
- package/dist-pkg/dev.js +268 -0
- package/dist-pkg/env/index.d.ts +3 -0
- package/dist-pkg/env/index.js +57 -0
- package/dist-pkg/errors/catalog.d.ts +9 -0
- package/{src/errors/catalog.ts → dist-pkg/errors/catalog.js} +8 -24
- package/dist-pkg/errors/formatter.d.ts +22 -0
- package/dist-pkg/errors/formatter.js +43 -0
- package/dist-pkg/errors/index.d.ts +2 -0
- package/dist-pkg/errors/index.js +2 -0
- package/dist-pkg/forms/action.d.ts +15 -0
- package/dist-pkg/forms/action.js +20 -0
- package/dist-pkg/forms/index.d.ts +4 -0
- package/dist-pkg/forms/index.js +12 -0
- package/dist-pkg/i18n/index.d.ts +61 -0
- package/dist-pkg/i18n/index.js +147 -0
- package/dist-pkg/index-client.d.ts +1 -0
- package/dist-pkg/index-client.js +1 -0
- package/dist-pkg/index.d.ts +32 -0
- package/dist-pkg/index.js +79 -0
- package/dist-pkg/jsx-runtime-client.d.ts +8 -0
- package/dist-pkg/jsx-runtime-client.js +1 -0
- package/dist-pkg/jsx-runtime.d.ts +13 -0
- package/dist-pkg/jsx-runtime.js +5 -0
- package/dist-pkg/jsx-types-html.d.ts +221 -0
- package/dist-pkg/jsx-types-html.js +0 -0
- package/dist-pkg/log/index.d.ts +8 -0
- package/dist-pkg/log/index.js +55 -0
- package/dist-pkg/plugins/drizzle.d.ts +16 -0
- package/dist-pkg/plugins/drizzle.js +50 -0
- package/dist-pkg/plugins/index.d.ts +62 -0
- package/dist-pkg/plugins/index.js +147 -0
- package/dist-pkg/plugins/lucia.d.ts +26 -0
- package/dist-pkg/plugins/lucia.js +63 -0
- package/dist-pkg/plugins/prisma.d.ts +14 -0
- package/dist-pkg/plugins/prisma.js +57 -0
- package/dist-pkg/plugins/resend.d.ts +21 -0
- package/dist-pkg/plugins/resend.js +45 -0
- package/dist-pkg/plugins/s3.d.ts +18 -0
- package/dist-pkg/plugins/s3.js +63 -0
- package/dist-pkg/plugins/stripe.d.ts +32 -0
- package/dist-pkg/plugins/stripe.js +69 -0
- package/dist-pkg/plugins/tailwind.d.ts +15 -0
- package/dist-pkg/plugins/tailwind.js +58 -0
- package/dist-pkg/prod.d.ts +21 -0
- package/dist-pkg/prod.js +347 -0
- package/dist-pkg/reactive/computed.d.ts +3 -0
- package/dist-pkg/reactive/computed.js +15 -0
- package/dist-pkg/reactive/data.d.ts +25 -0
- package/dist-pkg/reactive/data.js +56 -0
- package/dist-pkg/reactive/diagnostics.d.ts +100 -0
- package/dist-pkg/reactive/diagnostics.js +363 -0
- package/dist-pkg/reactive/effect.d.ts +3 -0
- package/dist-pkg/reactive/effect.js +6 -0
- package/dist-pkg/reactive/index.d.ts +9 -0
- package/dist-pkg/reactive/index.js +18 -0
- package/dist-pkg/reactive/live.d.ts +15 -0
- package/dist-pkg/reactive/live.js +58 -0
- package/dist-pkg/reactive/optimistic.d.ts +20 -0
- package/dist-pkg/reactive/optimistic.js +54 -0
- package/dist-pkg/reactive/resource.d.ts +25 -0
- package/dist-pkg/reactive/resource.js +97 -0
- package/dist-pkg/reactive/signal.d.ts +4 -0
- package/dist-pkg/reactive/signal.js +17 -0
- package/dist-pkg/reactive/store.d.ts +6 -0
- package/dist-pkg/reactive/store.js +19 -0
- package/dist-pkg/router/index.d.ts +2 -0
- package/dist-pkg/router/index.js +2 -0
- package/dist-pkg/router/matcher.d.ts +7 -0
- package/dist-pkg/router/matcher.js +40 -0
- package/dist-pkg/router/scanner.d.ts +14 -0
- package/dist-pkg/router/scanner.js +141 -0
- package/dist-pkg/routes/index.d.ts +1 -0
- package/dist-pkg/routes/index.js +10 -0
- package/dist-pkg/runtime/app-config.d.ts +26 -0
- package/dist-pkg/runtime/app-config.js +69 -0
- package/dist-pkg/runtime/client.d.ts +3 -0
- package/dist-pkg/runtime/client.js +31 -0
- package/dist-pkg/runtime/devtools.d.ts +64 -0
- package/dist-pkg/runtime/devtools.js +132 -0
- package/dist-pkg/runtime/error-boundary.d.ts +6 -0
- package/dist-pkg/runtime/error-boundary.js +17 -0
- package/dist-pkg/runtime/event-replay.d.ts +3 -0
- package/{src/runtime/event-replay.ts → dist-pkg/runtime/event-replay.js} +7 -22
- package/dist-pkg/runtime/event-source.d.ts +7 -0
- package/dist-pkg/runtime/event-source.js +24 -0
- package/dist-pkg/runtime/form.d.ts +24 -0
- package/dist-pkg/runtime/form.js +59 -0
- package/dist-pkg/runtime/head.d.ts +7 -0
- package/dist-pkg/runtime/head.js +90 -0
- package/dist-pkg/runtime/html-escape.d.ts +7 -0
- package/dist-pkg/runtime/html-escape.js +39 -0
- package/dist-pkg/runtime/hydration.d.ts +15 -0
- package/dist-pkg/runtime/hydration.js +103 -0
- package/dist-pkg/runtime/image.d.ts +49 -0
- package/dist-pkg/runtime/image.js +144 -0
- package/dist-pkg/runtime/index.d.ts +17 -0
- package/dist-pkg/runtime/index.js +59 -0
- package/dist-pkg/runtime/island-hydrator.d.ts +12 -0
- package/dist-pkg/runtime/island-hydrator.js +49 -0
- package/dist-pkg/runtime/island.d.ts +19 -0
- package/dist-pkg/runtime/island.js +36 -0
- package/dist-pkg/runtime/jsx-runtime.d.ts +12 -0
- package/dist-pkg/runtime/jsx-runtime.js +173 -0
- package/dist-pkg/runtime/link.d.ts +16 -0
- package/dist-pkg/runtime/link.js +47 -0
- package/dist-pkg/runtime/project.d.ts +37 -0
- package/dist-pkg/runtime/project.js +36 -0
- package/dist-pkg/runtime/renderable.d.ts +6 -0
- package/dist-pkg/runtime/renderable.js +0 -0
- package/dist-pkg/runtime/router.d.ts +47 -0
- package/dist-pkg/runtime/router.js +476 -0
- package/dist-pkg/runtime/server.d.ts +8 -0
- package/dist-pkg/runtime/server.js +71 -0
- package/dist-pkg/runtime/stream.d.ts +29 -0
- package/dist-pkg/runtime/stream.js +106 -0
- package/dist-pkg/runtime/suspense.d.ts +6 -0
- package/dist-pkg/runtime/suspense.js +16 -0
- package/dist-pkg/runtime/typed-routes.d.ts +24 -0
- package/dist-pkg/runtime/typed-routes.js +77 -0
- package/dist-pkg/runtime/validated-form.d.ts +40 -0
- package/dist-pkg/runtime/validated-form.js +120 -0
- package/dist-pkg/security/cors.d.ts +10 -0
- package/dist-pkg/security/cors.js +56 -0
- package/dist-pkg/security/csrf.d.ts +9 -0
- package/dist-pkg/security/csrf.js +53 -0
- package/dist-pkg/security/headers.d.ts +11 -0
- package/dist-pkg/security/headers.js +31 -0
- package/dist-pkg/security/index.d.ts +5 -0
- package/dist-pkg/security/index.js +5 -0
- package/dist-pkg/security/rate-limit.d.ts +10 -0
- package/dist-pkg/security/rate-limit.js +49 -0
- package/dist-pkg/security/redis-rate-limit.d.ts +14 -0
- package/dist-pkg/security/redis-rate-limit.js +23 -0
- package/dist-pkg/server/action.d.ts +21 -0
- package/dist-pkg/server/action.js +64 -0
- package/dist-pkg/server/cache-utils.d.ts +2 -0
- package/dist-pkg/server/cache-utils.js +26 -0
- package/dist-pkg/server/cache.d.ts +33 -0
- package/dist-pkg/server/cache.js +236 -0
- package/dist-pkg/server/compress.d.ts +2 -0
- package/dist-pkg/server/compress.js +49 -0
- package/dist-pkg/server/endpoint-execution.d.ts +28 -0
- package/dist-pkg/server/endpoint-execution.js +37 -0
- package/dist-pkg/server/etag.d.ts +3 -0
- package/dist-pkg/server/etag.js +18 -0
- package/dist-pkg/server/guard.d.ts +16 -0
- package/dist-pkg/server/guard.js +45 -0
- package/dist-pkg/server/html-shell.d.ts +12 -0
- package/dist-pkg/server/html-shell.js +52 -0
- package/dist-pkg/server/index.d.ts +36 -0
- package/dist-pkg/server/index.js +170 -0
- package/dist-pkg/server/jobs.d.ts +41 -0
- package/dist-pkg/server/jobs.js +81 -0
- package/dist-pkg/server/manifest.d.ts +19 -0
- package/dist-pkg/server/manifest.js +36 -0
- package/dist-pkg/server/middleware.d.ts +39 -0
- package/dist-pkg/server/middleware.js +122 -0
- package/dist-pkg/server/mime.d.ts +1 -0
- package/{src/server/mime.ts → dist-pkg/server/mime.js} +6 -17
- package/dist-pkg/server/not-found.d.ts +6 -0
- package/dist-pkg/server/not-found.js +24 -0
- package/dist-pkg/server/page-render.d.ts +29 -0
- package/dist-pkg/server/page-render.js +67 -0
- package/dist-pkg/server/partial-navigation.d.ts +4 -0
- package/dist-pkg/server/partial-navigation.js +16 -0
- package/dist-pkg/server/pipe.d.ts +9 -0
- package/dist-pkg/server/pipe.js +32 -0
- package/dist-pkg/server/redis-cache-store.d.ts +10 -0
- package/dist-pkg/server/redis-cache-store.js +73 -0
- package/dist-pkg/server/redis-client.d.ts +37 -0
- package/dist-pkg/server/redis-client.js +37 -0
- package/dist-pkg/server/request-policy.d.ts +55 -0
- package/dist-pkg/server/request-policy.js +216 -0
- package/dist-pkg/server/request-preflight.d.ts +23 -0
- package/dist-pkg/server/request-preflight.js +45 -0
- package/dist-pkg/server/request-security-policy.d.ts +17 -0
- package/dist-pkg/server/request-security-policy.js +34 -0
- package/dist-pkg/server/request-surface.d.ts +8 -0
- package/dist-pkg/server/request-surface.js +19 -0
- package/dist-pkg/server/route-request.d.ts +31 -0
- package/dist-pkg/server/route-request.js +112 -0
- package/dist-pkg/server/route-response.d.ts +22 -0
- package/dist-pkg/server/route-response.js +58 -0
- package/dist-pkg/server/rpc-hash.d.ts +2 -0
- package/dist-pkg/server/rpc-hash.js +7 -0
- package/dist-pkg/server/rpc-protocol.d.ts +22 -0
- package/dist-pkg/server/rpc-protocol.js +28 -0
- package/dist-pkg/server/rpc-utils.d.ts +2 -0
- package/dist-pkg/server/rpc-utils.js +26 -0
- package/dist-pkg/server/rpc.d.ts +20 -0
- package/dist-pkg/server/rpc.js +147 -0
- package/dist-pkg/server/runtime-dispatch.d.ts +19 -0
- package/dist-pkg/server/runtime-dispatch.js +67 -0
- package/dist-pkg/server/server-execution.d.ts +22 -0
- package/dist-pkg/server/server-execution.js +53 -0
- package/dist-pkg/server/sqlite-cache-store.d.ts +13 -0
- package/dist-pkg/server/sqlite-cache-store.js +88 -0
- package/dist-pkg/server/sse.d.ts +9 -0
- package/dist-pkg/server/sse.js +34 -0
- package/dist-pkg/server/static-file.d.ts +9 -0
- package/dist-pkg/server/static-file.js +43 -0
- package/dist-pkg/server/ws.d.ts +18 -0
- package/dist-pkg/server/ws.js +40 -0
- package/dist-pkg/server-entry.d.ts +19 -0
- package/dist-pkg/server-entry.js +93 -0
- package/dist-pkg/testing/index.d.ts +98 -0
- package/dist-pkg/testing/index.js +254 -0
- package/dist-pkg/types/index.d.ts +4 -0
- package/dist-pkg/types/index.js +4 -0
- package/dist-pkg/types/safe-html.d.ts +7 -0
- package/dist-pkg/types/safe-html.js +19 -0
- package/dist-pkg/types/safe-sql.d.ts +8 -0
- package/dist-pkg/types/safe-sql.js +14 -0
- package/dist-pkg/types/safe-url.d.ts +7 -0
- package/dist-pkg/types/safe-url.js +20 -0
- package/dist-pkg/types/user-input.d.ts +9 -0
- package/dist-pkg/types/user-input.js +3 -0
- package/dist-pkg/unsafe/index.d.ts +12 -0
- package/dist-pkg/unsafe/index.js +6 -0
- package/package.json +102 -44
- package/bin/gorsee.js +0 -14
- package/src/auth/index.ts +0 -178
- package/src/auth/redis-session-store.ts +0 -46
- package/src/auth/sqlite-session-store.ts +0 -98
- package/src/auth/store-utils.ts +0 -21
- package/src/build/client.ts +0 -139
- package/src/build/css-modules.ts +0 -69
- package/src/build/devalue-parse.ts +0 -2
- package/src/build/manifest.ts +0 -34
- package/src/build/route-metadata.ts +0 -12
- package/src/build/rpc-transform.ts +0 -62
- package/src/build/server-strip.ts +0 -87
- package/src/build/ssg.ts +0 -70
- package/src/cli/bun-plugin.ts +0 -58
- package/src/cli/cmd-build.ts +0 -153
- package/src/cli/cmd-check.ts +0 -239
- package/src/cli/cmd-create.ts +0 -328
- package/src/cli/cmd-deploy.ts +0 -149
- package/src/cli/cmd-dev.ts +0 -13
- package/src/cli/cmd-docs.ts +0 -152
- package/src/cli/cmd-generate.ts +0 -155
- package/src/cli/cmd-migrate.ts +0 -53
- package/src/cli/cmd-routes.ts +0 -36
- package/src/cli/cmd-start.ts +0 -30
- package/src/cli/cmd-test.ts +0 -129
- package/src/cli/cmd-typegen.ts +0 -93
- package/src/cli/cmd-upgrade.ts +0 -143
- package/src/cli/context.ts +0 -12
- package/src/cli/framework-md.ts +0 -223
- package/src/cli/index.ts +0 -107
- package/src/client.ts +0 -26
- package/src/db/index.ts +0 -2
- package/src/db/migrate.ts +0 -89
- package/src/db/sqlite.ts +0 -40
- package/src/deploy/index.ts +0 -31
- package/src/deploy/vercel.ts +0 -94
- package/src/dev/hmr.ts +0 -31
- package/src/dev/partial-handler.ts +0 -52
- package/src/dev/request-handler.ts +0 -127
- package/src/dev/watcher.ts +0 -48
- package/src/dev.ts +0 -208
- package/src/env/index.ts +0 -74
- package/src/errors/formatter.ts +0 -63
- package/src/errors/index.ts +0 -2
- package/src/i18n/index.ts +0 -72
- package/src/index-client.ts +0 -4
- package/src/index.ts +0 -43
- package/src/jsx-runtime-client.ts +0 -13
- package/src/jsx-runtime.ts +0 -20
- package/src/jsx-types-html.ts +0 -242
- package/src/log/index.ts +0 -44
- package/src/plugins/drizzle.ts +0 -84
- package/src/plugins/index.ts +0 -86
- package/src/plugins/lucia.ts +0 -111
- package/src/plugins/prisma.ts +0 -85
- package/src/plugins/resend.ts +0 -78
- package/src/plugins/s3.ts +0 -102
- package/src/plugins/stripe.ts +0 -133
- package/src/plugins/tailwind.ts +0 -92
- package/src/prod.ts +0 -252
- package/src/reactive/computed.ts +0 -7
- package/src/reactive/effect.ts +0 -7
- package/src/reactive/index.ts +0 -7
- package/src/reactive/live.ts +0 -97
- package/src/reactive/optimistic.ts +0 -83
- package/src/reactive/resource.ts +0 -138
- package/src/reactive/signal.ts +0 -20
- package/src/reactive/store.ts +0 -36
- package/src/router/index.ts +0 -2
- package/src/router/matcher.ts +0 -53
- package/src/router/scanner.ts +0 -206
- package/src/runtime/client.ts +0 -28
- package/src/runtime/error-boundary.ts +0 -35
- package/src/runtime/form.ts +0 -49
- package/src/runtime/head.ts +0 -113
- package/src/runtime/html-escape.ts +0 -30
- package/src/runtime/hydration.ts +0 -95
- package/src/runtime/image.ts +0 -48
- package/src/runtime/index.ts +0 -12
- package/src/runtime/island-hydrator.ts +0 -84
- package/src/runtime/island.ts +0 -88
- package/src/runtime/jsx-runtime.ts +0 -167
- package/src/runtime/link.ts +0 -45
- package/src/runtime/project.ts +0 -73
- package/src/runtime/router.ts +0 -224
- package/src/runtime/server.ts +0 -102
- package/src/runtime/stream.ts +0 -182
- package/src/runtime/suspense.ts +0 -37
- package/src/runtime/typed-routes.ts +0 -26
- package/src/runtime/validated-form.ts +0 -106
- package/src/security/cors.ts +0 -80
- package/src/security/csrf.ts +0 -85
- package/src/security/headers.ts +0 -50
- package/src/security/index.ts +0 -4
- package/src/security/rate-limit.ts +0 -80
- package/src/server/action.ts +0 -48
- package/src/server/cache-utils.ts +0 -23
- package/src/server/cache.ts +0 -125
- package/src/server/compress.ts +0 -60
- package/src/server/etag.ts +0 -23
- package/src/server/guard.ts +0 -69
- package/src/server/html-shell.ts +0 -69
- package/src/server/index.ts +0 -57
- package/src/server/manifest.ts +0 -36
- package/src/server/middleware.ts +0 -159
- package/src/server/not-found.ts +0 -35
- package/src/server/page-render.ts +0 -123
- package/src/server/pipe.ts +0 -46
- package/src/server/redis-cache-store.ts +0 -87
- package/src/server/redis-client.ts +0 -71
- package/src/server/request-preflight.ts +0 -45
- package/src/server/route-request.ts +0 -72
- package/src/server/rpc-hash.ts +0 -17
- package/src/server/rpc-utils.ts +0 -27
- package/src/server/rpc.ts +0 -177
- package/src/server/sqlite-cache-store.ts +0 -109
- package/src/server/sse.ts +0 -96
- package/src/server/static-file.ts +0 -63
- package/src/server/ws.ts +0 -56
- package/src/server-entry.ts +0 -36
- package/src/testing/index.ts +0 -74
- package/src/types/index.ts +0 -4
- package/src/types/safe-html.ts +0 -32
- package/src/types/safe-sql.ts +0 -28
- package/src/types/safe-url.ts +0 -40
- package/src/types/user-input.ts +0 -12
- package/src/unsafe/index.ts +0 -18
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type SignalGetter } from "../reactive/signal.js";
|
|
2
|
+
interface TranslationBranch {
|
|
3
|
+
[key: string]: TranslationLeaf;
|
|
4
|
+
}
|
|
5
|
+
type TranslationLeaf = string | TranslationBranch;
|
|
6
|
+
type LocaleDictionary = Record<string, TranslationLeaf>;
|
|
7
|
+
type DictionaryLoader = () => Promise<LocaleDictionary>;
|
|
8
|
+
export interface I18nConfig {
|
|
9
|
+
locales: Record<string, LocaleDictionary>;
|
|
10
|
+
defaultLocale?: string;
|
|
11
|
+
fallbackLocales?: Record<string, string[]>;
|
|
12
|
+
detectLocale?: boolean;
|
|
13
|
+
loaders?: Record<string, DictionaryLoader>;
|
|
14
|
+
routeStrategy?: "prefix-except-default" | "prefix-always" | "none";
|
|
15
|
+
}
|
|
16
|
+
export interface LocaleNegotiationInput {
|
|
17
|
+
pathname?: string;
|
|
18
|
+
acceptLanguage?: string | null;
|
|
19
|
+
cookieLocale?: string | null;
|
|
20
|
+
supportedLocales?: string[];
|
|
21
|
+
defaultLocale?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface LocaleNegotiationResult {
|
|
24
|
+
locale: string;
|
|
25
|
+
source: "path" | "cookie" | "accept-language" | "default";
|
|
26
|
+
}
|
|
27
|
+
export interface IntlFormatOptions {
|
|
28
|
+
locale?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare function setupI18n(config: I18nConfig): void;
|
|
31
|
+
export declare function loadLocale(locale: string): Promise<void>;
|
|
32
|
+
export declare function getLocale(): SignalGetter<string>;
|
|
33
|
+
export declare function getLocales(): string[];
|
|
34
|
+
export declare function getDefaultLocale(): string;
|
|
35
|
+
export declare function getFallbackLocales(locale: string): string[];
|
|
36
|
+
export declare function setLocale(locale: string): void;
|
|
37
|
+
export declare function resolveLocaleFromPath(pathname: string, supportedLocales?: string[]): string | null;
|
|
38
|
+
export declare function stripLocalePrefix(pathname: string, supportedLocales?: string[]): string;
|
|
39
|
+
export declare function withLocalePath(pathname: string, locale: string, options?: {
|
|
40
|
+
defaultLocale?: string;
|
|
41
|
+
strategy?: I18nConfig["routeStrategy"];
|
|
42
|
+
}): string;
|
|
43
|
+
export declare function negotiateLocale(input: LocaleNegotiationInput): LocaleNegotiationResult;
|
|
44
|
+
export declare function t(key: string, params?: Record<string, string | number>, options?: {
|
|
45
|
+
locale?: string;
|
|
46
|
+
}): string;
|
|
47
|
+
export declare function plural(key: string, count: number, params?: Record<string, string | number>, options?: {
|
|
48
|
+
locale?: string;
|
|
49
|
+
}): string;
|
|
50
|
+
export declare function formatNumber(value: number, options?: Intl.NumberFormatOptions, intl?: IntlFormatOptions): string;
|
|
51
|
+
export declare function formatDate(value: number | Date, options?: Intl.DateTimeFormatOptions, intl?: IntlFormatOptions): string;
|
|
52
|
+
export declare function formatRelativeTime(value: number, unit: Intl.RelativeTimeFormatUnit, options?: Intl.RelativeTimeFormatOptions, intl?: IntlFormatOptions): string;
|
|
53
|
+
export declare function buildHreflangLinks(pathname: string, locales?: string[], options?: {
|
|
54
|
+
defaultLocale?: string;
|
|
55
|
+
strategy?: I18nConfig["routeStrategy"];
|
|
56
|
+
origin?: string;
|
|
57
|
+
}): Array<{
|
|
58
|
+
locale: string;
|
|
59
|
+
href: string;
|
|
60
|
+
}>;
|
|
61
|
+
export {};
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { createSignal } from "../reactive/signal.js";
|
|
2
|
+
let dictionaries = {}, loaders = {}, defaultLocale = "en", fallbackLocales = {}, routeStrategy = "prefix-except-default";
|
|
3
|
+
const [currentLocale, setCurrentLocaleSignal] = createSignal(defaultLocale);
|
|
4
|
+
function uniqueLocales(locales) {
|
|
5
|
+
return [...new Set(locales.filter((locale) => typeof locale === "string" && locale.length > 0))];
|
|
6
|
+
}
|
|
7
|
+
function getNestedValue(dict, key) {
|
|
8
|
+
if (!dict)
|
|
9
|
+
return;
|
|
10
|
+
if (!key)
|
|
11
|
+
return "";
|
|
12
|
+
const parts = key.split(".");
|
|
13
|
+
let value = dict;
|
|
14
|
+
for (const part of parts) {
|
|
15
|
+
if (typeof value !== "object" || value === null)
|
|
16
|
+
return;
|
|
17
|
+
value = value[part];
|
|
18
|
+
}
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
function interpolate(value, params) {
|
|
22
|
+
if (!params)
|
|
23
|
+
return value;
|
|
24
|
+
return value.replace(/\{\{(\w+)\}\}/g, (_, name) => {
|
|
25
|
+
return params[name] !== void 0 ? String(params[name]) : `{{${name}}}`;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function resolveLocaleCandidates(locale) {
|
|
29
|
+
const explicitFallbacks = fallbackLocales[locale] ?? [];
|
|
30
|
+
return uniqueLocales([locale, ...explicitFallbacks, defaultLocale]);
|
|
31
|
+
}
|
|
32
|
+
function detectBrowserLocale() {
|
|
33
|
+
if (typeof navigator > "u" || !navigator.language)
|
|
34
|
+
return null;
|
|
35
|
+
return navigator.language.split("-")[0] ?? null;
|
|
36
|
+
}
|
|
37
|
+
function parseAcceptLanguage(header) {
|
|
38
|
+
if (!header)
|
|
39
|
+
return [];
|
|
40
|
+
return header.split(",").map((entry) => {
|
|
41
|
+
const [tag, qValue] = entry.trim().split(";q=");
|
|
42
|
+
return {
|
|
43
|
+
locale: tag?.trim().toLowerCase(),
|
|
44
|
+
weight: qValue ? Number(qValue) : 1
|
|
45
|
+
};
|
|
46
|
+
}).filter((entry) => typeof entry.locale === "string" && entry.locale.length > 0).sort((left, right) => right.weight - left.weight).flatMap((entry) => uniqueLocales([entry.locale, entry.locale.split("-")[0]]));
|
|
47
|
+
}
|
|
48
|
+
export function setupI18n(config) {
|
|
49
|
+
dictionaries = config.locales;
|
|
50
|
+
loaders = config.loaders ?? {};
|
|
51
|
+
defaultLocale = config.defaultLocale ?? "en";
|
|
52
|
+
fallbackLocales = config.fallbackLocales ?? {};
|
|
53
|
+
routeStrategy = config.routeStrategy ?? "prefix-except-default";
|
|
54
|
+
const initialLocale = config.detectLocale ? negotiateLocale({
|
|
55
|
+
acceptLanguage: detectBrowserLocale(),
|
|
56
|
+
supportedLocales: Object.keys(dictionaries),
|
|
57
|
+
defaultLocale
|
|
58
|
+
}).locale : defaultLocale;
|
|
59
|
+
setCurrentLocaleSignal(initialLocale);
|
|
60
|
+
}
|
|
61
|
+
export async function loadLocale(locale) {
|
|
62
|
+
if (dictionaries[locale] || !loaders[locale])
|
|
63
|
+
return;
|
|
64
|
+
dictionaries[locale] = await loaders[locale]();
|
|
65
|
+
}
|
|
66
|
+
export function getLocale() {
|
|
67
|
+
return currentLocale;
|
|
68
|
+
}
|
|
69
|
+
export function getLocales() {
|
|
70
|
+
return Object.keys(dictionaries);
|
|
71
|
+
}
|
|
72
|
+
export function getDefaultLocale() {
|
|
73
|
+
return defaultLocale;
|
|
74
|
+
}
|
|
75
|
+
export function getFallbackLocales(locale) {
|
|
76
|
+
return [...fallbackLocales[locale] ?? []];
|
|
77
|
+
}
|
|
78
|
+
export function setLocale(locale) {
|
|
79
|
+
if (!dictionaries[locale] && !loaders[locale]) {
|
|
80
|
+
console.warn(`[gorsee/i18n] Locale "${locale}" not found, available: ${Object.keys(dictionaries).join(", ")}`);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
setCurrentLocaleSignal(locale);
|
|
84
|
+
}
|
|
85
|
+
export function resolveLocaleFromPath(pathname, supportedLocales = Object.keys(dictionaries)) {
|
|
86
|
+
const [, firstSegment] = pathname.split("/");
|
|
87
|
+
if (!firstSegment)
|
|
88
|
+
return null;
|
|
89
|
+
return supportedLocales.includes(firstSegment) ? firstSegment : null;
|
|
90
|
+
}
|
|
91
|
+
export function stripLocalePrefix(pathname, supportedLocales = Object.keys(dictionaries)) {
|
|
92
|
+
const locale = resolveLocaleFromPath(pathname, supportedLocales);
|
|
93
|
+
if (!locale)
|
|
94
|
+
return pathname || "/";
|
|
95
|
+
return pathname.replace(new RegExp(`^/${locale}(?=/|$)`), "") || "/";
|
|
96
|
+
}
|
|
97
|
+
export function withLocalePath(pathname, locale, options = {}) {
|
|
98
|
+
const resolvedDefault = options.defaultLocale ?? defaultLocale, strategy = options.strategy ?? routeStrategy, normalized = pathname.startsWith("/") ? pathname : `/${pathname}`;
|
|
99
|
+
if (strategy === "none")
|
|
100
|
+
return normalized;
|
|
101
|
+
if (strategy === "prefix-except-default" && locale === resolvedDefault)
|
|
102
|
+
return normalized;
|
|
103
|
+
if (normalized === "/")
|
|
104
|
+
return `/${locale}`;
|
|
105
|
+
return `/${locale}${normalized}`;
|
|
106
|
+
}
|
|
107
|
+
export function negotiateLocale(input) {
|
|
108
|
+
const supportedLocales = input.supportedLocales ?? Object.keys(dictionaries), resolvedDefault = input.defaultLocale ?? defaultLocale, pathLocale = input.pathname ? resolveLocaleFromPath(input.pathname, supportedLocales) : null;
|
|
109
|
+
if (pathLocale)
|
|
110
|
+
return { locale: pathLocale, source: "path" };
|
|
111
|
+
if (input.cookieLocale && supportedLocales.includes(input.cookieLocale))
|
|
112
|
+
return { locale: input.cookieLocale, source: "cookie" };
|
|
113
|
+
for (const locale of parseAcceptLanguage(input.acceptLanguage))
|
|
114
|
+
if (supportedLocales.includes(locale))
|
|
115
|
+
return { locale, source: "accept-language" };
|
|
116
|
+
return { locale: resolvedDefault, source: "default" };
|
|
117
|
+
}
|
|
118
|
+
export function t(key, params, options = {}) {
|
|
119
|
+
const locale = options.locale ?? currentLocale();
|
|
120
|
+
for (const candidate of resolveLocaleCandidates(locale)) {
|
|
121
|
+
const value = getNestedValue(dictionaries[candidate], key);
|
|
122
|
+
if (typeof value === "string")
|
|
123
|
+
return interpolate(value, params);
|
|
124
|
+
}
|
|
125
|
+
return key;
|
|
126
|
+
}
|
|
127
|
+
export function plural(key, count, params, options = {}) {
|
|
128
|
+
const locale = options.locale ?? currentLocale(), category = new Intl.PluralRules(locale).select(count), resolved = t(`${key}.${category}`, { count, ...params }, { locale });
|
|
129
|
+
if (resolved !== `${key}.${category}`)
|
|
130
|
+
return resolved;
|
|
131
|
+
return t(`${key}.other`, { count, ...params }, { locale });
|
|
132
|
+
}
|
|
133
|
+
export function formatNumber(value, options = {}, intl = {}) {
|
|
134
|
+
return new Intl.NumberFormat(intl.locale ?? currentLocale(), options).format(value);
|
|
135
|
+
}
|
|
136
|
+
export function formatDate(value, options = {}, intl = {}) {
|
|
137
|
+
return new Intl.DateTimeFormat(intl.locale ?? currentLocale(), options).format(value);
|
|
138
|
+
}
|
|
139
|
+
export function formatRelativeTime(value, unit, options = {}, intl = {}) {
|
|
140
|
+
return new Intl.RelativeTimeFormat(intl.locale ?? currentLocale(), options).format(value, unit);
|
|
141
|
+
}
|
|
142
|
+
export function buildHreflangLinks(pathname, locales = Object.keys(dictionaries), options = {}) {
|
|
143
|
+
return locales.map((locale) => {
|
|
144
|
+
const localized = withLocalePath(stripLocalePrefix(pathname, locales), locale, options), href = options.origin ? `${options.origin.replace(/\/$/, "")}${localized}` : localized;
|
|
145
|
+
return { locale, href };
|
|
146
|
+
});
|
|
147
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./client.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./client.js";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
2
|
+
export { createSignal, createComputed, createEffect, createResource, createDataQuery, createDataMutation, createStore, createLive, invalidateResource, invalidateAll, createMutation, } from "./reactive/index.js";
|
|
3
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
4
|
+
export { Suspense } from "./runtime/suspense.js";
|
|
5
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
6
|
+
export { Link } from "./runtime/link.js";
|
|
7
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
8
|
+
export { Head } from "./runtime/head.js";
|
|
9
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
10
|
+
export { navigate, onNavigate, beforeNavigate, getCurrentPath } from "./runtime/router.js";
|
|
11
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
12
|
+
export { RUNTIME_DEVTOOLS_SCHEMA_VERSION, createRuntimeDevtoolsSnapshot, renderRuntimeDevtoolsHTML, renderRuntimeDevtoolsOverlay, type RuntimeDevtoolsOptions, type RuntimeDevtoolsRouteEntry, type RuntimeDevtoolsRouteSummary, type RuntimeDevtoolsSnapshot, type RuntimeDevtoolsSummary, type RuntimeDevtoolsTopNode, } from "./runtime/devtools.js";
|
|
13
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
14
|
+
export { useFormAction, type FormActionResult, type FormState, type FormSubmitOptions } from "./runtime/form.js";
|
|
15
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
16
|
+
export { Image, getImageProps, buildImageSrcSet, getImageCandidateWidths, isAllowedRemoteImage, defaultImageLoader, type ImageProps, type ImageLoader, type ImageLoaderParams, type ImageRuntimeConfig, type ImageRemotePattern, type ImageFormat, } from "./runtime/image.js";
|
|
17
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
18
|
+
export { ErrorBoundary } from "./runtime/error-boundary.js";
|
|
19
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
20
|
+
export { island } from "./runtime/island.js";
|
|
21
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
22
|
+
export { createEventSource } from "./runtime/event-source.js";
|
|
23
|
+
/** @deprecated Import from "gorsee/server" instead. */
|
|
24
|
+
export { createAuth } from "./auth/index.js";
|
|
25
|
+
export { setupI18n, loadLocale, getLocale, getLocales, getDefaultLocale, getFallbackLocales, setLocale, t, plural, negotiateLocale, resolveLocaleFromPath, stripLocalePrefix, withLocalePath, buildHreflangLinks, formatNumber, formatDate, formatRelativeTime, type I18nConfig, type LocaleNegotiationInput, type LocaleNegotiationResult, } from "./i18n/index.js";
|
|
26
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
27
|
+
export { typedLink, typedNavigate, typedPrefetch, buildSearchParams, buildTypedPath, createTypedRoute, extractRouteParamKeys, } from "./runtime/typed-routes.js";
|
|
28
|
+
/** @deprecated Import from "gorsee/client" instead. */
|
|
29
|
+
export { defineForm, validateForm, validateAction, toFieldErrors, fieldAttrs, type FormField, type FormSchema, type ValidationResult, type ActionValidationResult, type ValidationError, } from "./runtime/validated-form.js";
|
|
30
|
+
export { loadContentCollection, parseFrontmatter, extractExcerpt, queryContent, getContentEntryBySlug, type ContentCollectionOptions, type ContentEntry, type ContentQueryOptions, } from "./content/index.js";
|
|
31
|
+
/** @deprecated Import from "gorsee/server" instead. */
|
|
32
|
+
export { definePlugin, createPluginRunner, type GorseePlugin, type PluginContext } from "./plugins/index.js";
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
export {
|
|
2
|
+
createSignal,
|
|
3
|
+
createComputed,
|
|
4
|
+
createEffect,
|
|
5
|
+
createResource,
|
|
6
|
+
createDataQuery,
|
|
7
|
+
createDataMutation,
|
|
8
|
+
createStore,
|
|
9
|
+
createLive,
|
|
10
|
+
invalidateResource,
|
|
11
|
+
invalidateAll,
|
|
12
|
+
createMutation
|
|
13
|
+
} from "./reactive/index.js";
|
|
14
|
+
export { Suspense } from "./runtime/suspense.js";
|
|
15
|
+
export { Link } from "./runtime/link.js";
|
|
16
|
+
export { Head } from "./runtime/head.js";
|
|
17
|
+
export { navigate, onNavigate, beforeNavigate, getCurrentPath } from "./runtime/router.js";
|
|
18
|
+
export {
|
|
19
|
+
RUNTIME_DEVTOOLS_SCHEMA_VERSION,
|
|
20
|
+
createRuntimeDevtoolsSnapshot,
|
|
21
|
+
renderRuntimeDevtoolsHTML,
|
|
22
|
+
renderRuntimeDevtoolsOverlay
|
|
23
|
+
} from "./runtime/devtools.js";
|
|
24
|
+
export { useFormAction } from "./runtime/form.js";
|
|
25
|
+
export {
|
|
26
|
+
Image,
|
|
27
|
+
getImageProps,
|
|
28
|
+
buildImageSrcSet,
|
|
29
|
+
getImageCandidateWidths,
|
|
30
|
+
isAllowedRemoteImage,
|
|
31
|
+
defaultImageLoader
|
|
32
|
+
} from "./runtime/image.js";
|
|
33
|
+
export { ErrorBoundary } from "./runtime/error-boundary.js";
|
|
34
|
+
export { island } from "./runtime/island.js";
|
|
35
|
+
export { createEventSource } from "./runtime/event-source.js";
|
|
36
|
+
export { createAuth } from "./auth/index.js";
|
|
37
|
+
export {
|
|
38
|
+
setupI18n,
|
|
39
|
+
loadLocale,
|
|
40
|
+
getLocale,
|
|
41
|
+
getLocales,
|
|
42
|
+
getDefaultLocale,
|
|
43
|
+
getFallbackLocales,
|
|
44
|
+
setLocale,
|
|
45
|
+
t,
|
|
46
|
+
plural,
|
|
47
|
+
negotiateLocale,
|
|
48
|
+
resolveLocaleFromPath,
|
|
49
|
+
stripLocalePrefix,
|
|
50
|
+
withLocalePath,
|
|
51
|
+
buildHreflangLinks,
|
|
52
|
+
formatNumber,
|
|
53
|
+
formatDate,
|
|
54
|
+
formatRelativeTime
|
|
55
|
+
} from "./i18n/index.js";
|
|
56
|
+
export {
|
|
57
|
+
typedLink,
|
|
58
|
+
typedNavigate,
|
|
59
|
+
typedPrefetch,
|
|
60
|
+
buildSearchParams,
|
|
61
|
+
buildTypedPath,
|
|
62
|
+
createTypedRoute,
|
|
63
|
+
extractRouteParamKeys
|
|
64
|
+
} from "./runtime/typed-routes.js";
|
|
65
|
+
export {
|
|
66
|
+
defineForm,
|
|
67
|
+
validateForm,
|
|
68
|
+
validateAction,
|
|
69
|
+
toFieldErrors,
|
|
70
|
+
fieldAttrs
|
|
71
|
+
} from "./runtime/validated-form.js";
|
|
72
|
+
export {
|
|
73
|
+
loadContentCollection,
|
|
74
|
+
parseFrontmatter,
|
|
75
|
+
extractExcerpt,
|
|
76
|
+
queryContent,
|
|
77
|
+
getContentEntryBySlug
|
|
78
|
+
} from "./content/index.js";
|
|
79
|
+
export { definePlugin, createPluginRunner } from "./plugins/index.js";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { jsx, jsxs, jsxDEV, Fragment } from "./runtime/jsx-runtime.js";
|
|
2
|
+
export declare namespace JSX {
|
|
3
|
+
type Element = import("./runtime/renderable.js").GorseeRenderable;
|
|
4
|
+
type IntrinsicElements = import("./jsx-types-html.js").GorseeIntrinsicElements;
|
|
5
|
+
interface ElementChildrenAttribute {
|
|
6
|
+
children: unknown;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { jsx, jsxs, jsxDEV, Fragment } from "./runtime/jsx-runtime.js";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ssrJsx } from "./runtime/server.js";
|
|
2
|
+
import { Fragment } from "./runtime/jsx-runtime.js";
|
|
3
|
+
export { Fragment };
|
|
4
|
+
export declare const jsx: typeof ssrJsx;
|
|
5
|
+
export declare const jsxs: typeof ssrJsx;
|
|
6
|
+
export declare const jsxDEV: typeof ssrJsx;
|
|
7
|
+
export declare namespace JSX {
|
|
8
|
+
type Element = import("./runtime/renderable.js").GorseeRenderable;
|
|
9
|
+
type IntrinsicElements = import("./jsx-types-html.js").GorseeIntrinsicElements;
|
|
10
|
+
interface ElementChildrenAttribute {
|
|
11
|
+
children: unknown;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
type EventHandler = (event: Event) => void;
|
|
2
|
+
interface HTMLAttributes {
|
|
3
|
+
id?: string;
|
|
4
|
+
class?: string;
|
|
5
|
+
className?: string;
|
|
6
|
+
style?: string | Record<string, string | number | (() => string | number)>;
|
|
7
|
+
title?: string;
|
|
8
|
+
tabIndex?: number;
|
|
9
|
+
hidden?: boolean;
|
|
10
|
+
children?: unknown;
|
|
11
|
+
role?: string;
|
|
12
|
+
"on:click"?: EventHandler;
|
|
13
|
+
"on:dblclick"?: EventHandler;
|
|
14
|
+
"on:mousedown"?: EventHandler;
|
|
15
|
+
"on:mouseup"?: EventHandler;
|
|
16
|
+
"on:mouseover"?: EventHandler;
|
|
17
|
+
"on:mouseout"?: EventHandler;
|
|
18
|
+
"on:mousemove"?: EventHandler;
|
|
19
|
+
"on:keydown"?: (event: KeyboardEvent) => void;
|
|
20
|
+
"on:keyup"?: (event: KeyboardEvent) => void;
|
|
21
|
+
"on:keypress"?: (event: KeyboardEvent) => void;
|
|
22
|
+
"on:focus"?: (event: FocusEvent) => void;
|
|
23
|
+
"on:blur"?: (event: FocusEvent) => void;
|
|
24
|
+
"on:input"?: (event: InputEvent) => void;
|
|
25
|
+
"on:change"?: EventHandler;
|
|
26
|
+
"on:submit"?: (event: SubmitEvent) => void;
|
|
27
|
+
"on:scroll"?: EventHandler;
|
|
28
|
+
"on:touchstart"?: EventHandler;
|
|
29
|
+
"on:touchend"?: EventHandler;
|
|
30
|
+
"on:touchmove"?: EventHandler;
|
|
31
|
+
[key: `data-${string}`]: string | number | boolean | undefined;
|
|
32
|
+
[key: `aria-${string}`]: string | number | boolean | undefined;
|
|
33
|
+
}
|
|
34
|
+
interface AnchorAttributes extends HTMLAttributes {
|
|
35
|
+
href?: string;
|
|
36
|
+
target?: string;
|
|
37
|
+
rel?: string;
|
|
38
|
+
download?: string | boolean;
|
|
39
|
+
}
|
|
40
|
+
interface ImgAttributes extends HTMLAttributes {
|
|
41
|
+
src?: string;
|
|
42
|
+
alt?: string;
|
|
43
|
+
width?: number | string;
|
|
44
|
+
height?: number | string;
|
|
45
|
+
loading?: "lazy" | "eager";
|
|
46
|
+
decoding?: "async" | "auto" | "sync";
|
|
47
|
+
}
|
|
48
|
+
interface InputAttributes extends HTMLAttributes {
|
|
49
|
+
type?: string;
|
|
50
|
+
name?: string;
|
|
51
|
+
value?: string | number;
|
|
52
|
+
checked?: boolean;
|
|
53
|
+
disabled?: boolean;
|
|
54
|
+
placeholder?: string;
|
|
55
|
+
required?: boolean;
|
|
56
|
+
readonly?: boolean;
|
|
57
|
+
min?: number | string;
|
|
58
|
+
max?: number | string;
|
|
59
|
+
step?: number | string;
|
|
60
|
+
pattern?: string;
|
|
61
|
+
autocomplete?: string;
|
|
62
|
+
}
|
|
63
|
+
interface FormAttributes extends HTMLAttributes {
|
|
64
|
+
action?: string;
|
|
65
|
+
method?: string;
|
|
66
|
+
enctype?: string;
|
|
67
|
+
novalidate?: boolean;
|
|
68
|
+
}
|
|
69
|
+
interface ButtonAttributes extends HTMLAttributes {
|
|
70
|
+
type?: "button" | "submit" | "reset";
|
|
71
|
+
disabled?: boolean;
|
|
72
|
+
name?: string;
|
|
73
|
+
value?: string;
|
|
74
|
+
}
|
|
75
|
+
interface SelectAttributes extends HTMLAttributes {
|
|
76
|
+
name?: string;
|
|
77
|
+
value?: string;
|
|
78
|
+
disabled?: boolean;
|
|
79
|
+
multiple?: boolean;
|
|
80
|
+
required?: boolean;
|
|
81
|
+
}
|
|
82
|
+
interface TextareaAttributes extends HTMLAttributes {
|
|
83
|
+
name?: string;
|
|
84
|
+
value?: string;
|
|
85
|
+
placeholder?: string;
|
|
86
|
+
rows?: number;
|
|
87
|
+
cols?: number;
|
|
88
|
+
disabled?: boolean;
|
|
89
|
+
required?: boolean;
|
|
90
|
+
readonly?: boolean;
|
|
91
|
+
}
|
|
92
|
+
interface OptionAttributes extends HTMLAttributes {
|
|
93
|
+
value?: string;
|
|
94
|
+
selected?: boolean;
|
|
95
|
+
disabled?: boolean;
|
|
96
|
+
}
|
|
97
|
+
interface LabelAttributes extends HTMLAttributes {
|
|
98
|
+
for?: string;
|
|
99
|
+
htmlFor?: string;
|
|
100
|
+
}
|
|
101
|
+
interface MetaAttributes extends HTMLAttributes {
|
|
102
|
+
name?: string;
|
|
103
|
+
content?: string;
|
|
104
|
+
charset?: string;
|
|
105
|
+
"http-equiv"?: string;
|
|
106
|
+
}
|
|
107
|
+
interface LinkAttributes extends HTMLAttributes {
|
|
108
|
+
href?: string;
|
|
109
|
+
rel?: string;
|
|
110
|
+
type?: string;
|
|
111
|
+
media?: string;
|
|
112
|
+
}
|
|
113
|
+
interface ScriptAttributes extends HTMLAttributes {
|
|
114
|
+
src?: string;
|
|
115
|
+
type?: string;
|
|
116
|
+
async?: boolean;
|
|
117
|
+
defer?: boolean;
|
|
118
|
+
nonce?: string;
|
|
119
|
+
}
|
|
120
|
+
interface IframeAttributes extends HTMLAttributes {
|
|
121
|
+
src?: string;
|
|
122
|
+
srcdoc?: string;
|
|
123
|
+
width?: number | string;
|
|
124
|
+
height?: number | string;
|
|
125
|
+
sandbox?: string;
|
|
126
|
+
allow?: string;
|
|
127
|
+
}
|
|
128
|
+
interface TableCellAttributes extends HTMLAttributes {
|
|
129
|
+
colspan?: number;
|
|
130
|
+
rowspan?: number;
|
|
131
|
+
}
|
|
132
|
+
export interface GorseeIntrinsicElements {
|
|
133
|
+
div: HTMLAttributes;
|
|
134
|
+
span: HTMLAttributes;
|
|
135
|
+
p: HTMLAttributes;
|
|
136
|
+
main: HTMLAttributes;
|
|
137
|
+
section: HTMLAttributes;
|
|
138
|
+
article: HTMLAttributes;
|
|
139
|
+
aside: HTMLAttributes;
|
|
140
|
+
header: HTMLAttributes;
|
|
141
|
+
footer: HTMLAttributes;
|
|
142
|
+
nav: HTMLAttributes;
|
|
143
|
+
h1: HTMLAttributes;
|
|
144
|
+
h2: HTMLAttributes;
|
|
145
|
+
h3: HTMLAttributes;
|
|
146
|
+
h4: HTMLAttributes;
|
|
147
|
+
h5: HTMLAttributes;
|
|
148
|
+
h6: HTMLAttributes;
|
|
149
|
+
a: AnchorAttributes;
|
|
150
|
+
strong: HTMLAttributes;
|
|
151
|
+
em: HTMLAttributes;
|
|
152
|
+
b: HTMLAttributes;
|
|
153
|
+
i: HTMLAttributes;
|
|
154
|
+
small: HTMLAttributes;
|
|
155
|
+
code: HTMLAttributes;
|
|
156
|
+
pre: HTMLAttributes;
|
|
157
|
+
blockquote: HTMLAttributes;
|
|
158
|
+
br: HTMLAttributes;
|
|
159
|
+
hr: HTMLAttributes;
|
|
160
|
+
ul: HTMLAttributes;
|
|
161
|
+
ol: HTMLAttributes;
|
|
162
|
+
li: HTMLAttributes;
|
|
163
|
+
dl: HTMLAttributes;
|
|
164
|
+
dt: HTMLAttributes;
|
|
165
|
+
dd: HTMLAttributes;
|
|
166
|
+
form: FormAttributes;
|
|
167
|
+
input: InputAttributes;
|
|
168
|
+
button: ButtonAttributes;
|
|
169
|
+
select: SelectAttributes;
|
|
170
|
+
textarea: TextareaAttributes;
|
|
171
|
+
option: OptionAttributes;
|
|
172
|
+
label: LabelAttributes;
|
|
173
|
+
fieldset: HTMLAttributes;
|
|
174
|
+
legend: HTMLAttributes;
|
|
175
|
+
img: ImgAttributes;
|
|
176
|
+
video: HTMLAttributes & {
|
|
177
|
+
src?: string;
|
|
178
|
+
controls?: boolean;
|
|
179
|
+
autoplay?: boolean;
|
|
180
|
+
};
|
|
181
|
+
audio: HTMLAttributes & {
|
|
182
|
+
src?: string;
|
|
183
|
+
controls?: boolean;
|
|
184
|
+
};
|
|
185
|
+
source: HTMLAttributes & {
|
|
186
|
+
src?: string;
|
|
187
|
+
type?: string;
|
|
188
|
+
};
|
|
189
|
+
canvas: HTMLAttributes & {
|
|
190
|
+
width?: number;
|
|
191
|
+
height?: number;
|
|
192
|
+
};
|
|
193
|
+
svg: HTMLAttributes & {
|
|
194
|
+
viewBox?: string;
|
|
195
|
+
xmlns?: string;
|
|
196
|
+
width?: number | string;
|
|
197
|
+
height?: number | string;
|
|
198
|
+
};
|
|
199
|
+
table: HTMLAttributes;
|
|
200
|
+
thead: HTMLAttributes;
|
|
201
|
+
tbody: HTMLAttributes;
|
|
202
|
+
tfoot: HTMLAttributes;
|
|
203
|
+
tr: HTMLAttributes;
|
|
204
|
+
th: TableCellAttributes;
|
|
205
|
+
td: TableCellAttributes;
|
|
206
|
+
iframe: IframeAttributes;
|
|
207
|
+
details: HTMLAttributes;
|
|
208
|
+
summary: HTMLAttributes;
|
|
209
|
+
dialog: HTMLAttributes & {
|
|
210
|
+
open?: boolean;
|
|
211
|
+
};
|
|
212
|
+
template: HTMLAttributes;
|
|
213
|
+
slot: HTMLAttributes;
|
|
214
|
+
meta: MetaAttributes;
|
|
215
|
+
link: LinkAttributes;
|
|
216
|
+
script: ScriptAttributes;
|
|
217
|
+
style: HTMLAttributes;
|
|
218
|
+
title: HTMLAttributes;
|
|
219
|
+
[elemName: string]: HTMLAttributes;
|
|
220
|
+
}
|
|
221
|
+
export {};
|
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type LogLevel = "off" | "error" | "info" | "verbose" | "debug";
|
|
2
|
+
export declare function setLogLevel(level: LogLevel): void;
|
|
3
|
+
export declare const log: {
|
|
4
|
+
error(message: string, data?: Record<string, unknown>): void;
|
|
5
|
+
info(message: string, data?: Record<string, unknown>): void;
|
|
6
|
+
verbose(message: string, data?: Record<string, unknown>): void;
|
|
7
|
+
debug(message: string, data?: Record<string, unknown>): void;
|
|
8
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { emitAIEvent } from "../ai/index.js";
|
|
2
|
+
const LEVELS = {
|
|
3
|
+
off: 0,
|
|
4
|
+
error: 1,
|
|
5
|
+
info: 2,
|
|
6
|
+
verbose: 3,
|
|
7
|
+
debug: 4
|
|
8
|
+
};
|
|
9
|
+
let currentLevel = "info";
|
|
10
|
+
export function setLogLevel(level) {
|
|
11
|
+
currentLevel = level;
|
|
12
|
+
}
|
|
13
|
+
function shouldLog(level) {
|
|
14
|
+
return LEVELS[level] <= LEVELS[currentLevel];
|
|
15
|
+
}
|
|
16
|
+
function formatEntry(level, message, data) {
|
|
17
|
+
const entry = {
|
|
18
|
+
level,
|
|
19
|
+
message,
|
|
20
|
+
timestamp: new Date().toISOString(),
|
|
21
|
+
...data
|
|
22
|
+
};
|
|
23
|
+
return JSON.stringify(entry);
|
|
24
|
+
}
|
|
25
|
+
function mirrorToAI(level, message, data) {
|
|
26
|
+
emitAIEvent({
|
|
27
|
+
kind: "log.entry",
|
|
28
|
+
severity: level === "verbose" ? "info" : level,
|
|
29
|
+
source: "log",
|
|
30
|
+
message,
|
|
31
|
+
data
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
export const log = {
|
|
35
|
+
error(message, data) {
|
|
36
|
+
if (shouldLog("error"))
|
|
37
|
+
console.error(formatEntry("error", message, data));
|
|
38
|
+
mirrorToAI("error", message, data);
|
|
39
|
+
},
|
|
40
|
+
info(message, data) {
|
|
41
|
+
if (shouldLog("info"))
|
|
42
|
+
console.log(formatEntry("info", message, data));
|
|
43
|
+
mirrorToAI("info", message, data);
|
|
44
|
+
},
|
|
45
|
+
verbose(message, data) {
|
|
46
|
+
if (shouldLog("verbose"))
|
|
47
|
+
console.log(formatEntry("verbose", message, data));
|
|
48
|
+
mirrorToAI("verbose", message, data);
|
|
49
|
+
},
|
|
50
|
+
debug(message, data) {
|
|
51
|
+
if (shouldLog("debug"))
|
|
52
|
+
console.log(formatEntry("debug", message, data));
|
|
53
|
+
mirrorToAI("debug", message, data);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { MiddlewareFn } from "../server/middleware.js";
|
|
2
|
+
import type { GorseePlugin } from "./index.js";
|
|
3
|
+
export interface DrizzlePluginConfig {
|
|
4
|
+
schema: string;
|
|
5
|
+
out: string;
|
|
6
|
+
dialect: "sqlite" | "postgres" | "mysql";
|
|
7
|
+
connectionUrl?: string;
|
|
8
|
+
}
|
|
9
|
+
/** Returns the current drizzle instance (available after setup) */
|
|
10
|
+
export declare function getDrizzle<T = unknown>(): T;
|
|
11
|
+
/** Middleware that attaches drizzle instance to ctx.locals.db */
|
|
12
|
+
export declare function drizzleMiddleware(instance: unknown): MiddlewareFn;
|
|
13
|
+
/** Generates drizzle.config.ts content string */
|
|
14
|
+
export declare function generateDrizzleConfig(config: DrizzlePluginConfig): string;
|
|
15
|
+
/** Creates a Drizzle ORM integration plugin */
|
|
16
|
+
export declare function drizzlePlugin(config: DrizzlePluginConfig): GorseePlugin;
|