@nifrajs/web 3.1.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/dist/build-plan.d.ts +228 -0
  2. package/dist/build-plan.d.ts.map +1 -0
  3. package/dist/build-plan.js +514 -0
  4. package/dist/build-plan.js.map +1 -0
  5. package/dist/build-vite.d.ts +2 -1
  6. package/dist/build-vite.d.ts.map +1 -1
  7. package/dist/build-vite.js.map +1 -1
  8. package/dist/build.d.ts +2 -197
  9. package/dist/build.d.ts.map +1 -1
  10. package/dist/build.js +61 -502
  11. package/dist/build.js.map +1 -1
  12. package/dist/chunk-names.d.ts.map +1 -1
  13. package/dist/chunk-names.js +3 -2
  14. package/dist/chunk-names.js.map +1 -1
  15. package/dist/dev-ssr-graph.d.ts.map +1 -1
  16. package/dist/dev-ssr-graph.js +63 -28
  17. package/dist/dev-ssr-graph.js.map +1 -1
  18. package/dist/diagnostic.d.ts.map +1 -1
  19. package/dist/diagnostic.js +9 -2
  20. package/dist/diagnostic.js.map +1 -1
  21. package/dist/fonts-google.d.ts.map +1 -1
  22. package/dist/fonts-google.js +3 -1
  23. package/dist/fonts-google.js.map +1 -1
  24. package/dist/fs.d.ts.map +1 -1
  25. package/dist/fs.js +2 -1
  26. package/dist/fs.js.map +1 -1
  27. package/dist/index.d.ts +15 -609
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +22 -1935
  30. package/dist/index.js.map +1 -1
  31. package/dist/internal/codegen.d.ts +68 -0
  32. package/dist/internal/codegen.d.ts.map +1 -0
  33. package/dist/internal/codegen.js +317 -0
  34. package/dist/internal/codegen.js.map +1 -0
  35. package/dist/internal/head-merge.d.ts +2 -0
  36. package/dist/internal/head-merge.d.ts.map +1 -1
  37. package/dist/internal/head-merge.js +17 -1
  38. package/dist/internal/head-merge.js.map +1 -1
  39. package/dist/internal/parity.d.ts +7 -0
  40. package/dist/internal/parity.d.ts.map +1 -1
  41. package/dist/internal/parity.js +212 -30
  42. package/dist/internal/parity.js.map +1 -1
  43. package/dist/internal/render-document.d.ts +372 -0
  44. package/dist/internal/render-document.d.ts.map +1 -0
  45. package/dist/internal/render-document.js +744 -0
  46. package/dist/internal/render-document.js.map +1 -0
  47. package/dist/internal/runtime-contract.d.ts +48 -0
  48. package/dist/internal/runtime-contract.d.ts.map +1 -0
  49. package/dist/internal/runtime-contract.js +27 -0
  50. package/dist/internal/runtime-contract.js.map +1 -0
  51. package/dist/internal/web-app.d.ts +171 -0
  52. package/dist/internal/web-app.d.ts.map +1 -0
  53. package/dist/internal/web-app.js +844 -0
  54. package/dist/internal/web-app.js.map +1 -0
  55. package/dist/islands.d.ts +48 -0
  56. package/dist/islands.d.ts.map +1 -1
  57. package/dist/islands.js +79 -0
  58. package/dist/islands.js.map +1 -1
  59. package/dist/module-graph.d.ts.map +1 -1
  60. package/dist/module-graph.js +22 -9
  61. package/dist/module-graph.js.map +1 -1
  62. package/dist/nano.d.ts +125 -0
  63. package/dist/nano.d.ts.map +1 -0
  64. package/dist/nano.js +190 -0
  65. package/dist/nano.js.map +1 -0
  66. package/dist/plugins/css-modules.js +2 -2
  67. package/dist/plugins/css-modules.js.map +1 -1
  68. package/dist/plugins/kit.d.ts +12 -0
  69. package/dist/plugins/kit.d.ts.map +1 -1
  70. package/dist/plugins/kit.js +62 -12
  71. package/dist/plugins/kit.js.map +1 -1
  72. package/dist/plugins/postcss.js +2 -2
  73. package/dist/plugins/postcss.js.map +1 -1
  74. package/dist/plugins/scss.js +2 -2
  75. package/dist/plugins/scss.js.map +1 -1
  76. package/dist/plugins/stylex.d.ts +70 -0
  77. package/dist/plugins/stylex.d.ts.map +1 -0
  78. package/dist/plugins/stylex.js +166 -0
  79. package/dist/plugins/stylex.js.map +1 -0
  80. package/dist/plugins/svg.js +2 -2
  81. package/dist/plugins/svg.js.map +1 -1
  82. package/dist/router.d.ts +1 -1
  83. package/dist/router.js +23 -23
  84. package/dist/router.js.map +1 -1
  85. package/dist/vite.d.ts.map +1 -1
  86. package/dist/vite.js +26 -10
  87. package/dist/vite.js.map +1 -1
  88. package/package.json +39 -3
  89. package/src/build-plan.ts +741 -0
  90. package/src/build-vite.ts +1 -4
  91. package/src/build.ts +84 -716
  92. package/src/chunk-names.ts +3 -2
  93. package/src/dev-ssr-graph.ts +63 -28
  94. package/src/diagnostic.ts +14 -2
  95. package/src/fonts-google.ts +3 -1
  96. package/src/fs.ts +2 -1
  97. package/src/index.ts +73 -2705
  98. package/src/internal/codegen.ts +400 -0
  99. package/src/internal/head-merge.ts +19 -1
  100. package/src/internal/parity.ts +215 -35
  101. package/src/internal/render-document.ts +1116 -0
  102. package/src/internal/runtime-contract.ts +54 -0
  103. package/src/internal/web-app.ts +1114 -0
  104. package/src/islands.ts +85 -0
  105. package/src/module-graph.ts +23 -9
  106. package/src/nano.ts +246 -0
  107. package/src/plugins/css-modules.ts +2 -2
  108. package/src/plugins/kit.ts +65 -12
  109. package/src/plugins/postcss.ts +2 -2
  110. package/src/plugins/scss.ts +2 -2
  111. package/src/plugins/stylex.ts +298 -0
  112. package/src/plugins/svg.ts +2 -2
  113. package/src/router.ts +24 -24
  114. package/src/vite.ts +33 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-document.js","sourceRoot":"","sources":["../../src/internal/render-document.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /** Phantom brand key for {@link ServerOnly}. */
2
+ declare const SERVER_ONLY_BRAND: unique symbol;
3
+ /**
4
+ * Type-level intent marker for a value that must only exist on the server - a secret, a DB handle, a
5
+ * server-only client. `ServerOnly<T>` is structurally `T` (the brand is an optional phantom field, so
6
+ * existing code keeps type-checking), but it advertises to readers + the compiler that the value is
7
+ * not meant to cross to the browser. It is **purely type-level** and erases at build - it does NOT,
8
+ * by itself, keep the value out of the client bundle.
9
+ *
10
+ * The enforcement is two runtime conventions:
11
+ * - add the side-effect import `import "@nifrajs/web/server-only"` at the top of the module - the
12
+ * client build ({@link buildClient}) fails loud, with the import chain, if it reaches a browser
13
+ * chunk (the poison-import marker);
14
+ * - or name the file `*.server.ts` - the `.server` convention empties it in the client build.
15
+ *
16
+ * Use this brand to express the intent in the types; pair it with one of those runtime markers so a
17
+ * leak is caught at build time rather than shipping a secret to the client.
18
+ *
19
+ * @example
20
+ * import "@nifrajs/web/server-only"
21
+ * import type { ServerOnly } from "@nifrajs/web"
22
+ * export const apiKey: ServerOnly<string> = process.env.SECRET_API_KEY!
23
+ */
24
+ export type ServerOnly<T> = T & {
25
+ readonly [SERVER_ONLY_BRAND]?: never;
26
+ };
27
+ /**
28
+ * Pre-hydration form guard - a tiny inline script flushed in `<head>` (it runs in the window between
29
+ * first paint and the island bundle taking over). It neutralizes the one real hydration footgun: a
30
+ * JS-only form (a hand-wired `onSubmit` with no native fallback) submitting *natively* before its
31
+ * handler is attached, which navigates the browser to a broken `?field=…` GET of the current page.
32
+ *
33
+ * It blocks ONLY that shape - an effective-GET form whose action targets the current document - and
34
+ * only until hydration commits (`data-nifra-hydrated`, set by the client entry). Method-`post` forms
35
+ * (progressive enhancement: the native POST hits the route `action`) and GET forms with a real action
36
+ * (a search box → `/search`) pass through untouched. Opt out per-form with `data-native`. Static text
37
+ * (no interpolation), so it can't carry injected markup. See the Hydration guide.
38
+ */
39
+ export declare const PRE_HYDRATION_GUARD: string;
40
+ /**
41
+ * The single default port for the dev server (`@nifrajs/web/dev`, `@nifrajs/web/vite`) **and**
42
+ * `nifra start`. Deliberately uncommon: `3000`/`5173`/`8080` collide with whatever else is running
43
+ * (Next, Vite, a stray Node API). `4321` rarely is - and being the *same* constant across `nifra dev`
44
+ * and `nifra start` means a project's URL doesn't change between commands. Override per-run with
45
+ * `--port <n>` or the `PORT` env var. */
46
+ export declare const DEFAULT_DEV_PORT = 4321;
47
+ export {};
48
+ //# sourceMappingURL=runtime-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-contract.d.ts","sourceRoot":"","sources":["../../src/internal/runtime-contract.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,CAAC,MAAM,iBAAiB,EAAE,OAAO,MAAM,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAA;CAAE,CAAA;AAExE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,QAOjB,CAAA;AAEf;;;;;yCAKyC;AACzC,eAAO,MAAM,gBAAgB,OAAO,CAAA"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Pre-hydration form guard - a tiny inline script flushed in `<head>` (it runs in the window between
3
+ * first paint and the island bundle taking over). It neutralizes the one real hydration footgun: a
4
+ * JS-only form (a hand-wired `onSubmit` with no native fallback) submitting *natively* before its
5
+ * handler is attached, which navigates the browser to a broken `?field=…` GET of the current page.
6
+ *
7
+ * It blocks ONLY that shape - an effective-GET form whose action targets the current document - and
8
+ * only until hydration commits (`data-nifra-hydrated`, set by the client entry). Method-`post` forms
9
+ * (progressive enhancement: the native POST hits the route `action`) and GET forms with a real action
10
+ * (a search box → `/search`) pass through untouched. Opt out per-form with `data-native`. Static text
11
+ * (no interpolation), so it can't carry injected markup. See the Hydration guide.
12
+ */
13
+ export const PRE_HYDRATION_GUARD = "(function(){addEventListener('submit',function(e){var f=e.target;" +
14
+ "if(!f||f.tagName!=='FORM'||f.hasAttribute('data-native'))return;" +
15
+ "if(document.documentElement.hasAttribute('data-nifra-hydrated'))return;" +
16
+ "var m=(f.getAttribute('method')||'get').toLowerCase();if(m==='post')return;" +
17
+ "var a=f.getAttribute('action');" +
18
+ "if(!a||a===''||a==='#'||a===location.pathname||a===location.href)e.preventDefault()" +
19
+ "},true)})()";
20
+ /**
21
+ * The single default port for the dev server (`@nifrajs/web/dev`, `@nifrajs/web/vite`) **and**
22
+ * `nifra start`. Deliberately uncommon: `3000`/`5173`/`8080` collide with whatever else is running
23
+ * (Next, Vite, a stray Node API). `4321` rarely is - and being the *same* constant across `nifra dev`
24
+ * and `nifra start` means a project's URL doesn't change between commands. Override per-run with
25
+ * `--port <n>` or the `PORT` env var. */
26
+ export const DEFAULT_DEV_PORT = 4321;
27
+ //# sourceMappingURL=runtime-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-contract.js","sourceRoot":"","sources":["../../src/internal/runtime-contract.ts"],"names":[],"mappings":"AA0BA;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,mEAAmE;IACnE,kEAAkE;IAClE,yEAAyE;IACzE,6EAA6E;IAC7E,iCAAiC;IACjC,qFAAqF;IACrF,aAAa,CAAA;AAEf;;;;;yCAKyC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAA"}
@@ -0,0 +1,171 @@
1
+ import { type ServerOptions, server } from "@nifrajs/core/server";
2
+ import type { Manifest } from "../manifest.js";
3
+ import type { RenderAdapter } from "../render-seam.js";
4
+ export interface CreateWebAppOptions<Env = unknown> {
5
+ readonly adapter: RenderAdapter;
6
+ readonly manifest: Manifest;
7
+ /** URL of the built client entry (module script) injected into every page. */
8
+ readonly clientEntry: string;
9
+ /** Default document title for all pages. */
10
+ readonly title?: string;
11
+ /**
12
+ * Options for the underlying `server()` - `requestTimeoutMs`, `admission`, `gracefulSignals`, and
13
+ * the rest of {@link ServerOptions}.
14
+ *
15
+ * Needed because the `Server` is constructed in here, so a caller has no other way to reach its
16
+ * constructor: a page app could set no request timeout and no capacity gate, which are exactly the
17
+ * two knobs a production readiness check looks for. An SSR app wants them MORE than a backend does -
18
+ * a render is slow and allocation-heavy, so a burst that a JSON API would absorb is the one that
19
+ * exhausts the pod.
20
+ *
21
+ * Applies to the whole app, {@link mounts} and the {@link api} auto-mount included: the capacity gate
22
+ * sits at the fetch entry, ahead of the request hooks those are dispatched from.
23
+ */
24
+ readonly server?: ServerOptions;
25
+ /**
26
+ * Runs against the app BEFORE any page route is registered - the seam for `securityHeaders()`,
27
+ * `requestId()`, `logger()`, a rate limit, or anything else applied with `use`.
28
+ *
29
+ * ```ts
30
+ * createWebApp({
31
+ * …,
32
+ * use: (app) => {
33
+ * app.use(securityHeaders())
34
+ * app.use(requestId())
35
+ * },
36
+ * })
37
+ * ```
38
+ *
39
+ * A callback rather than an array because `use` is overloaded - `Middleware`, `IdentityPlugin`,
40
+ * `ContextPlugin` - and only the real call site instantiates the right overload. The return value
41
+ * is ignored: this is for cross-cutting concerns, not for declaring routes (declare those on the
42
+ * returned app, where they get their types).
43
+ *
44
+ * **Why the timing matters.** `beforeHandle`, `afterHandle`, `around`, `derive`/`decorate`, and
45
+ * `onError` are snapshotted into each route AS IT IS DECLARED, and `createWebApp` declares every
46
+ * page (plus the `/*` catch-all) before it returns - so a caller's `app.use(…)` afterwards binds
47
+ * them to nothing, silently. `requestId()` is exactly that case: it is a `derive`, so applied late
48
+ * it leaves every page without `c.requestId`. Route assurance evidence is order-scoped the same
49
+ * way, so a late `securityHeaders()` leaves the pages unable to PROVE the header to `nifra assure`
50
+ * even though it does still set it.
51
+ *
52
+ * `onRequest`/`onResponse` (and the response header/body hooks) are app-global arrays read at
53
+ * request time, so those alone DO work when added late. Using this seam for everything avoids
54
+ * having to remember which is which.
55
+ *
56
+ * Runs ahead of the {@link mounts} / {@link api} request hooks, so an `onRequest` middleware guards
57
+ * a mounted auth handler too.
58
+ *
59
+ * A `ContextPlugin` applied here takes runtime effect but cannot widen the declared return type of
60
+ * this function, so `c.requestId` is not typed on routes you declare afterwards. Named plugins are
61
+ * idempotent, so `app.use(requestId())` on the returned app recovers the TYPE without applying the
62
+ * plugin a second time.
63
+ */
64
+ readonly use?: (app: ReturnType<typeof server<Env>>) => void;
65
+ /** Injected into each loader's `ctx.api` - typically an `inProcessClient(app)` (typed
66
+ * per-route via `@nifrajs/client`'s `createRoutes`). Opaque to the core.
67
+ *
68
+ * **Auto-mount.** Every `inProcessClient(backend)` exposes the symbol-keyed platform-aware backend
69
+ * mount interface from `@nifrajs/core/mount`; `createWebApp` also serves that backend over HTTP at
70
+ * {@link apiPrefix} (default `/api`): a request whose pathname starts with the prefix is dispatched
71
+ * before page routing with the same `env`/`waitUntil` platform context, and the backend's `Response`
72
+ * is returned untouched. The mount runs in `nifra dev` too. Pass `apiPrefix: ""` to disable it. */
73
+ readonly api?: unknown;
74
+ /** HTTP path prefix the {@link api} backend is auto-mounted at (default `"/api"`). A request whose
75
+ * pathname is exactly the prefix or starts with `prefix + "/"` is dispatched to the backend before
76
+ * page routing; the backend therefore defines its routes at the **full** path (`server().post("/api/
77
+ * sync", …)`), matching the in-process `inProcessClient` call sites. Set to `""` to disable the
78
+ * auto-mount entirely (the app serves pages only and `api` stays a loader-only `ctx.api`). Mounting
79
+ * is also a no-op when `api` does not expose the symbol mount. */
80
+ readonly apiPrefix?: string;
81
+ /**
82
+ * Strip {@link apiPrefix} from the pathname before dispatching to `api` (default `false`).
83
+ *
84
+ * The default suits a backend that declares FULL paths (`server().post("/api/sync", …)`), which is
85
+ * right when it is only ever mounted here. Set this when the backend declares its routes WITHOUT the
86
+ * prefix because it also runs standalone behind its own shell, so its paths cannot carry a prefix that
87
+ * only exists when it is mounted. Without it every request 404s inside the backend, and the workaround
88
+ * is a `Proxy` that rewrites each URL.
89
+ */
90
+ readonly apiStrip?: boolean;
91
+ /**
92
+ * Sub-apps mounted ahead of page routing - an auth handler, a webhook receiver, a stack's routes.
93
+ *
94
+ * Structural on purpose: anything with `{ path, app: { fetch } }` fits, so a library that exposes its
95
+ * routes as such a list mounts as `mounts: theirRoutes` without `@nifrajs/web` taking a dependency on
96
+ * it. `better-auth` is the motivating case - it is not a `backend` route, so `/api/auth/*` used to 404
97
+ * silently.
98
+ *
99
+ * Tried longest-path-first and BEFORE the `api` mount, so a mount at `/api/auth` wins over a backend
100
+ * at `/api` no matter which was declared first. `stripPrefix` is the per-mount form of {@link apiStrip}:
101
+ * leave it off to pass the full path through.
102
+ */
103
+ readonly mounts?: ReadonlyArray<{
104
+ readonly path: string;
105
+ readonly app: {
106
+ fetch(request: Request): Response | Promise<Response>;
107
+ };
108
+ readonly stripPrefix?: boolean;
109
+ }>;
110
+ /** Secret for **draft / preview mode** (see `enableDraft`). When set, a request carrying a valid
111
+ * signed `__nifra_draft` cookie gets `ctx.draft === true` in loaders/actions (else always `false`).
112
+ * Pair with `withISR({ draftSecret })` so editors bypass the cache. Omit to disable draft mode. */
113
+ readonly draftSecret?: string;
114
+ /** Per-route chunk URLs (`buildClient`'s `BuildManifest.routes`) - `routeId → [layout chunks…, own
115
+ * chunk]`. When present, each page `modulepreload`s its matched route's chunks alongside the entry,
116
+ * so the route code downloads in parallel (no entry→route-chunk waterfall). Omit ⇒ entry-only. */
117
+ readonly routePreload?: Readonly<Record<string, readonly string[]>>;
118
+ /** The app's bundled stylesheet URLs (`buildClient`'s `BuildManifest.css`) - the aggregate, injected
119
+ * as `<link rel="stylesheet">` in a page's `<head>`. Used as the fallback for any route absent from
120
+ * {@link routeStyles}. Omit ⇒ no links (dev, where Vite injects CSS, or a CSS-free app). */
121
+ readonly styles?: readonly string[];
122
+ /** Per-route stylesheet URLs (`buildClient`'s `BuildManifest.routeStyles`) - `routeId → [chain CSS]`.
123
+ * When a matched route has an entry here, only those (its layout chain + own CSS) are linked instead
124
+ * of the aggregate `styles`, so a page ships only the CSS it uses. An empty array ⇒ no `<link>` (the
125
+ * page imports no CSS). Routes absent here fall back to `styles`. Omit ⇒ always use `styles`. */
126
+ readonly routeStyles?: Readonly<Record<string, readonly string[]>>;
127
+ /** SSG: the prerendered-path set (e.g. `enumerateStaticRoutes(routes).paths` or the build's
128
+ * `prerendered.json`). Injected as `window.__NIFRA_PRERENDERED__` on every page so a client soft-nav
129
+ * into a prerendered route fetches its static `_data.json` instead of hitting the worker. */
130
+ readonly prerenderedPaths?: readonly string[];
131
+ /** Publish the project's `AGENTS.md` inside `/llms.txt` and `/llms-full.txt`. **Off by default**:
132
+ * those endpoints are public and unauthenticated, while `AGENTS.md` is a repo file written for the
133
+ * team - unreleased feature names, internal hostnames, and "don't touch X yet" notes live there
134
+ * routinely. Turn it on only for a repo whose guidelines you would publish as a page. */
135
+ readonly publishLocalGuidelines?: boolean;
136
+ /** SSG: per dynamic route pattern, its `getStaticPaths` `fallback` (from `enumerateStaticRoutes` or
137
+ * the build's `prerendered.json`). A route mapped to `"404"` rejects any path NOT in
138
+ * `prerenderedPaths` with the 404 page - the unlisted path simply doesn't exist. `"ssr"` (the
139
+ * default for unmapped routes) renders unlisted paths on-demand. */
140
+ readonly staticFallbacks?: Readonly<Record<string, "ssr" | "404">>;
141
+ /** In-memory reference cache for explicitly `static` boundary values. It never persists payloads
142
+ * across processes; operated/durable cache implementations stay outside the public framework. */
143
+ readonly staticBoundaryCache?: import("../boundary.js").StaticBoundaryCache;
144
+ /** Observe every loader/action failure - for error-reporting plugins (Sentry-style). Called for
145
+ * real throws (not control-flow `Response`s like `redirect`), **before** the nearest `_error`
146
+ * boundary renders / a soft-nav 500 / a rethrow - so it sees errors that the boundary would
147
+ * otherwise hide. Observation only; its own throws are swallowed so a faulty reporter can't break
148
+ * rendering. (`beforeLoader` is intentionally omitted - the core HTTP hooks already cover
149
+ * pre-request work.) */
150
+ readonly onLoaderError?: (error: unknown, ctx: {
151
+ readonly request: Request;
152
+ readonly params: Readonly<Record<string, string>>;
153
+ readonly route: string;
154
+ }) => void;
155
+ }
156
+ /**
157
+ * Build a nifra app from a route manifest: every route SSRs its layout chain via `renderPage`,
158
+ * and a wildcard catch-all renders `_404` (or a plain 404). Reuses @nifrajs/core's router +
159
+ * lifecycle, so matching, params, and precedence are battle-tested. fs-free - feed it a
160
+ * manifest from `discoverRoutes` (`@nifrajs/web/fs`) at startup, so the served app stays portable.
161
+ *
162
+ * **Typed platform bindings.** Pass `Env` - `createWebApp<Env>({ … })` - to declare the app's Workers
163
+ * bindings ONCE. It seeds the returned `Server`'s context with `{ env: Env }` (exactly as the backend's
164
+ * `server<Env>()` does), so `app.fetch(req, { env })` / `toFetchHandler(app)` type-check the `env`
165
+ * argument against the declared shape - no per-binding cast at the edge entry. Per-route loaders/actions
166
+ * stay typed independently of this call: annotate them with `@nifrajs/client`'s `LoaderArgs<Api, Env>`
167
+ * (same `Env`) so `ctx.env.MY_KV` is typed there too. Omit the parameter and `Env` is `unknown` - the
168
+ * secure default; validate at the trust boundary before use.
169
+ */
170
+ export declare function createWebApp<Env = unknown>(options: CreateWebAppOptions<Env>): ReturnType<typeof server<Env>>;
171
+ //# sourceMappingURL=web-app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-app.d.ts","sourceRoot":"","sources":["../../src/internal/web-app.ts"],"names":[],"mappings":"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"}