@nextwebwg/htmlkit 1.0.0-alpha.39 → 1.0.0-alpha.41

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 (50) hide show
  1. package/README.md +21 -12
  2. package/components/breadcrumbs.html +9 -0
  3. package/components/{navigation.html → nav.html} +2 -2
  4. package/components/pager.html +13 -0
  5. package/dist/application.d.ts +10 -2
  6. package/dist/application.d.ts.map +1 -1
  7. package/dist/application.js +148 -45
  8. package/dist/application.js.map +1 -1
  9. package/dist/browser.d.ts +3 -2
  10. package/dist/browser.d.ts.map +1 -1
  11. package/dist/browser.js +23 -22
  12. package/dist/browser.js.map +1 -1
  13. package/dist/build.d.ts +1 -1
  14. package/dist/build.d.ts.map +1 -1
  15. package/dist/build.js +25 -10
  16. package/dist/build.js.map +1 -1
  17. package/dist/bundle-worker.js +2 -1
  18. package/dist/bundle-worker.js.map +1 -1
  19. package/dist/client.d.ts +32 -0
  20. package/dist/client.d.ts.map +1 -0
  21. package/dist/client.js +322 -0
  22. package/dist/client.js.map +1 -0
  23. package/dist/config.d.ts +10 -0
  24. package/dist/config.d.ts.map +1 -1
  25. package/dist/config.js +34 -1
  26. package/dist/config.js.map +1 -1
  27. package/dist/document.d.ts +30 -2
  28. package/dist/document.d.ts.map +1 -1
  29. package/dist/document.js +41 -6
  30. package/dist/document.js.map +1 -1
  31. package/dist/head.d.ts.map +1 -1
  32. package/dist/head.js +7 -5
  33. package/dist/head.js.map +1 -1
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/resource.d.ts +11 -5
  37. package/dist/resource.d.ts.map +1 -1
  38. package/dist/resource.js +32 -12
  39. package/dist/resource.js.map +1 -1
  40. package/dist/routes.d.ts +12 -1
  41. package/dist/routes.d.ts.map +1 -1
  42. package/dist/routes.js +135 -41
  43. package/dist/routes.js.map +1 -1
  44. package/dist/serve.d.ts +2 -2
  45. package/dist/serve.d.ts.map +1 -1
  46. package/dist/serve.js +48 -30
  47. package/dist/serve.js.map +1 -1
  48. package/dist/types.d.ts +82 -5
  49. package/dist/types.d.ts.map +1 -1
  50. package/package.json +3 -3
package/README.md CHANGED
@@ -5,27 +5,36 @@ layouts, server loaders, browser delivery, and development tools. The first prod
5
5
  generates static pages; [the server-rendering design](./docs/server-rendering.md) preserves a path
6
6
  to request-time rendering.
7
7
 
8
- Use Node `>=22.22.2 <23 || >=24.15 <25` and Corepack pnpm. Install `@nextwebwg/htmlkit`, then run:
9
-
10
- ```sh
11
- corepack pnpm exec htmlkit dev
12
- corepack pnpm exec htmlkit build
13
- corepack pnpm exec htmlkit preview
8
+ Use Node `>=22.22.2 <23 || >=24.15 <25`. Install `@nextwebwg/htmlkit` and add its commands to your
9
+ `package.json` scripts:
10
+
11
+ ```json
12
+ {
13
+ "scripts": {
14
+ "dev": "htmlkit dev",
15
+ "build": "htmlkit build",
16
+ "preview": "htmlkit preview"
17
+ }
18
+ }
14
19
  ```
15
20
 
16
- **Guide:** [nextwebwg.org/htmlkit](https://nextwebwg.org/htmlkit/) covers routes and layouts,
17
- loaders and browser delivery, ordered routes and navigation, and configuration. Its source is
21
+ Then run `pnpm dev`, `pnpm build`, or `pnpm preview` (`npm run dev` and the others work too).
22
+
23
+ **Guide:** [nextwebwg.org/htmlkit](https://nextwebwg.org/htmlkit/) covers pages and routing,
24
+ loading data, navigation, moving between pages, and configuration. Its source is
18
25
  [`docs/guide`](./docs/guide/) in this package.
26
+ [The client-navigation design](./docs/client-navigation.md) records how pages swap in place.
19
27
 
20
28
  ## Proof applications
21
29
 
22
30
  From this monorepo, after building packages:
23
31
 
24
32
  ```sh
25
- corepack pnpm --filter @nextwebwg/htmlkit exec node dist/cli.js build examples/basic
26
- corepack pnpm --filter @nextwebwg/htmlkit exec node dist/cli.js preview examples/basic
27
- corepack pnpm --filter @nextwebwg/htmlkit build:docs-proof
28
- corepack pnpm --filter @nextwebwg/htmlkit exec node dist/cli.js preview ../../.context/htmlkit-docs-proof
33
+ cd packages/htmlkit
34
+ node dist/cli.js build examples/basic
35
+ node dist/cli.js preview examples/basic
36
+ pnpm build:docs-proof
37
+ node dist/cli.js preview ../../.context/htmlkit-docs-proof
29
38
  ```
30
39
 
31
40
  The basic application exercises routes, loaders, state, and controllers without documentation
@@ -0,0 +1,9 @@
1
+ <template component="hk-breadcrumbs">
2
+ <defs>
3
+ <prop name="items" type="list(object({ href: string, label: string, current: string, depth: number, pageName: string }))" required>Pages from the top of the trail to the current page.</prop>
4
+ <prop name="label" type="string" default="Breadcrumb">Accessible navigation name.</prop>
5
+ </defs>
6
+ <nav from:aria-label="$label">
7
+ <ol><li $each="item of $items"><a from:href="$item.href" from:aria-current="$item.current">{$item.label}</a></li></ol>
8
+ </nav>
9
+ </template>
@@ -1,9 +1,9 @@
1
- <template component="htmlkit-navigation">
1
+ <template component="hk-nav">
2
2
  <defs>
3
3
  <prop name="items" type="list(object({ href: string, label: string, current: string, depth: number, pageName: string }))" required>Ordered concrete route links.</prop>
4
4
  <prop name="label" type="string" default="Navigation">Accessible navigation name.</prop>
5
5
  </defs>
6
6
  <nav from:aria-label="$label">
7
- <ul><li $each="item of $items" from:data-depth="$item.depth"><a from:href="$item.href" from:aria-current="$item.current" $value="$item.label"></a></li></ul>
7
+ <ul><li $each="item of $items" from:data-depth="$item.depth"><a from:href="$item.href" from:aria-current="$item.current">{$item.label}</a></li></ul>
8
8
  </nav>
9
9
  </template>
@@ -0,0 +1,13 @@
1
+ <template component="hk-pager">
2
+ <defs>
3
+ <prop name="previous" type="object({ href: string, label: string, current: string, depth: number, pageName: string })" nullable>The page before this one.</prop>
4
+ <prop name="next" type="object({ href: string, label: string, current: string, depth: number, pageName: string })" nullable>The page after this one.</prop>
5
+ <prop name="label" type="string" default="Pages">Accessible navigation name.</prop>
6
+ <prop name="previousText" type="string" default="Previous">Text before the previous page's label.</prop>
7
+ <prop name="nextText" type="string" default="Next">Text before the next page's label.</prop>
8
+ </defs>
9
+ <nav from:aria-label="$label">
10
+ <a $if="$previous" rel="prev" from:href="$previous.href"><small>{$previousText}</small> {$previous.label}</a>
11
+ <a $if="$next" rel="next" from:href="$next.href"><small>{$nextText}</small> {$next.label}</a>
12
+ </nav>
13
+ </template>
@@ -1,4 +1,12 @@
1
1
  import { type ViteDevServer } from "vite";
2
- import type { Application, ApplicationOptions } from "./types.js";
3
- export declare function createApplication(options?: ApplicationOptions, moduleServer?: ViteDevServer): Promise<Application>;
2
+ import { type PageAssets } from "./document.js";
3
+ import type { Application, ApplicationOptions, RenderedHead, RenderedPage } from "./types.js";
4
+ export declare function headScripts(options: ApplicationOptions, root: string): Promise<readonly string[]>;
5
+ export declare function notFoundPage(scripts: readonly string[]): {
6
+ head: RenderedHead;
7
+ body: string;
8
+ html: string;
9
+ };
10
+ /** assets supplies a serving adapter's browser modules and stylesheets for fetch(). */
11
+ export declare function createApplication(input?: ApplicationOptions, moduleServer?: ViteDevServer, assets?: (page: RenderedPage) => PageAssets): Promise<Application>;
4
12
  //# sourceMappingURL=application.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAQA,OAAO,EAA0C,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAOlF,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAA4G,MAAM,YAAY,CAAC;AA2B5K,wBAAsB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,EAAE,YAAY,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAqL5H"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAQA,OAAO,EAA0C,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAGlF,OAAO,EAAsD,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAIpG,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAkG,YAAY,EAAiB,YAAY,EAA4B,MAAM,YAAY,CAAC;AA2CvO,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAYvG;AAGD,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE;;;;EAItD;AAED,uFAAuF;AACvF,wBAAsB,iBAAiB,CAAC,KAAK,GAAE,kBAAuB,EAAE,YAAY,CAAC,EAAE,aAAa,EAClG,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAkPnE"}
@@ -6,30 +6,41 @@ import { compileComponentStylesForBuild, parseComponentResource, serializePropTa
6
6
  import { loadNodeComponents } from "@nextwebwg/html-next/node-loader";
7
7
  import { renderComponents } from "@nextwebwg/html-next/server";
8
8
  import { createServer, isRunnableDevEnvironment } from "vite";
9
- import { configure, HtmlKitError } from "./config.js";
10
- import { documentHTML, escapeHTML } from "./document.js";
11
- import { discoverRoutes, matchRoute, parameter, validSegment } from "./routes.js";
9
+ import { configure, HtmlKitError, rootAlias, withPlugins } from "./config.js";
10
+ import { documentHTML, escapeHTML, pagePayload, payloadPath } from "./document.js";
11
+ import { discover, matchRoute, parameter, validSegment } from "./routes.js";
12
12
  import { applicationResource, pageDefinition } from "./resource.js";
13
13
  import { renderHead } from "./head.js";
14
- function invocation(definition, result, id, child, nested) {
14
+ /** A loader's props as invocation attributes, in their HTML form, defaults included. */
15
+ function invocationAttributes(definition, result) {
15
16
  const props = result.props ?? {};
16
17
  for (const name of Object.keys(props)) {
17
18
  if (!Object.hasOwn(definition.contract.props, name))
18
19
  throw new HtmlKitError(`Undeclared prop ${name}.`, definition.source.file);
19
20
  }
20
- let attributes = ` id="${id}"${nested ? ' slot="page"' : ""}`;
21
+ const attributes = {};
21
22
  for (const [name, contract] of Object.entries(definition.contract.props)) {
22
23
  serializePropTarget(contract, props[name]);
23
24
  // The contract target describes lowering onto native DOM. Invocation attributes carry
24
25
  // the public prop name; writing the target name here silently loses remapped props.
25
26
  const provided = props[name] === undefined ? contract.default : props[name];
26
27
  const value = provided == null ? null : serializeTypedValue(provided, contract.type);
27
- const attribute = name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
28
28
  if (value !== null)
29
- attributes += ` ${attribute}="${escapeHTML(value)}"`;
29
+ attributes[name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase()] = value;
30
30
  }
31
- const tag = definition.contract.tag;
32
- return `<${tag}${attributes}>${child}</${tag}>`;
31
+ return attributes;
32
+ }
33
+ /** The browser builds the same invocation from a page payload (client.ts). */
34
+ function invocation(tag, attributes, id, child, nested) {
35
+ return `<${tag} id="${id}"${nested ? ' slot="page"' : ""}${Object.entries(attributes).map(([name, value]) => ` ${name}="${escapeHTML(value)}"`).join("")}>${child}</${tag}>`;
36
+ }
37
+ // Built-in components need no link: a resource that uses one gets it added after its content, so
38
+ // diagnostics keep their line numbers. The import map below resolves it from this package.
39
+ const builtins = [["hk-nav", "@nextwebwg/htmlkit/components/nav.html"], ["hk-breadcrumbs", "@nextwebwg/htmlkit/components/breadcrumbs.html"],
40
+ ["hk-pager", "@nextwebwg/htmlkit/components/pager.html"]];
41
+ /** HTMLKit's import map: @/ is the project root, as in Nuxt, and built-ins resolve from this package. */
42
+ function importMap(root) {
43
+ return { imports: { "@/": pathToFileURL(root).href + "/", "@nextwebwg/htmlkit/components/": new URL("../components/", import.meta.url).href } };
33
44
  }
34
45
  function packageResource(path) {
35
46
  let directory = dirname(path);
@@ -37,11 +48,37 @@ function packageResource(path) {
37
48
  directory = dirname(directory);
38
49
  return { url: pathToFileURL(path).href, trustRoot: pathToFileURL(directory + "/").href };
39
50
  }
40
- export async function createApplication(options = {}, moduleServer) {
51
+ // Classic scripts inlined into each document head run before first paint, e.g. to apply a saved theme:
52
+ // a plugin's headScript, then app/head.js, each in its own element so neither can break the other.
53
+ export async function headScripts(options, root) {
54
+ const path = join(root, "app/head.js");
55
+ const file = existsSync(path) ? await readFile(path, "utf8") : undefined;
56
+ const scripts = [];
57
+ for (const [script, name, source] of [[options.headScript, "headScript", undefined], [file, "app/head.js", path]]) {
58
+ if (script === undefined)
59
+ continue;
60
+ if (/<!--|<\/?script/i.test(script)) {
61
+ throw new HtmlKitError(`${name} cannot contain <!--, <script, or </script, which would end or nest its inline script.`, source);
62
+ }
63
+ scripts.push(script);
64
+ }
65
+ return scripts;
66
+ }
67
+ // Every page gets the head scripts, the not-found page included, so it cannot flash either.
68
+ export function notFoundPage(scripts) {
69
+ const head = { title: "Page not found", scripts };
70
+ const body = "<main><h1>Page not found</h1></main>";
71
+ return { head, body, html: documentHTML(body, head) };
72
+ }
73
+ /** assets supplies a serving adapter's browser modules and stylesheets for fetch(). */
74
+ export async function createApplication(input = {}, moduleServer, assets) {
75
+ const options = await withPlugins(input);
41
76
  const config = configure(options);
42
- const routes = await discoverRoutes(config.root, options);
77
+ const { routes, sources, files } = await discover(config.root, { ...options, base: config.base });
78
+ const scripts = await headScripts(options, config.root);
43
79
  const ownsServer = moduleServer === undefined;
44
- const server = moduleServer ?? await createServer({ root: config.root, configFile: false, appType: "custom",
80
+ const map = importMap(config.root);
81
+ const server = moduleServer ?? await createServer({ root: config.root, configFile: false, appType: "custom", resolve: { alias: rootAlias(config.root) },
45
82
  mode: "development", publicDir: false, server: { middlewareMode: true, watch: null, hmr: false },
46
83
  optimizeDeps: { noDiscovery: true, include: [] }, logLevel: "silent" });
47
84
  const environment = server.environments.ssr;
@@ -51,7 +88,9 @@ export async function createApplication(options = {}, moduleServer) {
51
88
  throw new HtmlKitError("Vite requires a runnable Node loader environment.");
52
89
  }
53
90
  const module = async (layer) => layer.server === undefined ? {} :
54
- await environment.runner.import(layer.server);
91
+ typeof layer.server === "string" ? await environment.runner.import(layer.server) : layer.server;
92
+ // Diagnostics name a loader's file, or its component when a plugin supplies the loader module.
93
+ const origin = (layer) => typeof layer.server === "string" ? layer.server : layer.component;
55
94
  // Materialize entries once per application so loaders and navigation see the same catalog.
56
95
  const unenumerated = [];
57
96
  let catalog;
@@ -65,10 +104,10 @@ export async function createApplication(options = {}, moduleServer) {
65
104
  }
66
105
  const entries = loaded.entries === undefined ? [{}] : await loaded.entries();
67
106
  if (!Array.isArray(entries) || entries.length === 0)
68
- throw new HtmlKitError("entries() must return a nonempty array.", route.server);
107
+ throw new HtmlKitError("entries() must return a nonempty array.", origin(route));
69
108
  for (const entry of entries) {
70
109
  if (entry === null || typeof entry !== "object" || Object.keys(entry).sort().join(",") !== [...route.params].sort().join(",")) {
71
- throw new HtmlKitError(`Each entry must provide exactly these parameters: ${route.params.join(", ")}.`, route.server);
110
+ throw new HtmlKitError(`Each entry must provide exactly these parameters: ${route.params.join(", ")}.`, origin(route));
72
111
  }
73
112
  const segments = route.segments.map(segment => {
74
113
  const name = parameter(segment);
@@ -76,7 +115,7 @@ export async function createApplication(options = {}, moduleServer) {
76
115
  return segment;
77
116
  const value = entry[name];
78
117
  if (!validSegment(value))
79
- throw new HtmlKitError(`Parameter ${name} must be a safe nonempty URL segment.`, route.server);
118
+ throw new HtmlKitError(`Parameter ${name} must be a safe nonempty URL segment.`, origin(route));
80
119
  return encodeURIComponent(value);
81
120
  });
82
121
  const path = config.base + (segments.length === 0 ? "" : segments.join("/") + "/");
@@ -90,14 +129,22 @@ export async function createApplication(options = {}, moduleServer) {
90
129
  }
91
130
  return paths;
92
131
  })();
93
- const navigation = async (query = {}) => {
94
- const from = query.from ?? "/";
132
+ const checkedFrom = (from = "/") => {
95
133
  if (!/^\/(?:[^/]+\/)*$/.test(from) || from.includes("[") || from.includes("?") || from.includes("#")) {
96
134
  throw new HtmlKitError("Navigation from requires a concrete application-relative directory prefix.", from);
97
135
  }
136
+ return from;
137
+ };
138
+ const item = (href, route, depth, current) => Object.freeze({
139
+ href, label: route.label ?? decodeURIComponent(href.slice(config.base.length).split("/").filter(Boolean).at(-1) ?? "Home"),
140
+ current: href === current ? "page" : "false", depth, pageName: route.pageName
141
+ });
142
+ const navigation = async (query = {}) => {
143
+ const from = checkedFrom(query.from);
98
144
  const prefix = config.base + from.slice(1);
99
145
  const depth = from.split("/").filter(Boolean).length;
100
- const items = [...await concreteRoutes()].filter(([path]) => path.startsWith(prefix));
146
+ // Hidden pages and alias routes stay routable but out of navigation.
147
+ const items = [...await concreteRoutes()].filter(([path, route]) => path.startsWith(prefix) && !route.hidden && route.canonical === undefined);
101
148
  items.sort(([a, left], [b, right]) => {
102
149
  const aParts = a.slice(config.base.length).split("/").filter(Boolean);
103
150
  const bParts = b.slice(config.base.length).split("/").filter(Boolean);
@@ -119,32 +166,56 @@ export async function createApplication(options = {}, moduleServer) {
119
166
  }
120
167
  return aParts.length - bParts.length || a.localeCompare(b);
121
168
  });
122
- return Object.freeze(items.map(([href, route]) => {
123
- const parts = href.slice(config.base.length).split("/").filter(Boolean);
124
- return Object.freeze({ href, label: decodeURIComponent(parts.at(-1) ?? "Home"),
125
- current: href === query.current ? "page" : "false",
126
- depth: parts.length - depth, pageName: route.pageName });
127
- }));
169
+ return Object.freeze(items.map(([href, route]) => item(href, route, href.slice(config.base.length).split("/").filter(Boolean).length - depth, query.current)));
170
+ };
171
+ // Each existing page from `from` down to the current one, by URL; the current page is included even when hidden.
172
+ const breadcrumbs = async (query = {}) => {
173
+ const from = checkedFrom(query.from);
174
+ const current = query.current;
175
+ if (current === undefined || !current.startsWith(config.base + from.slice(1)))
176
+ return Object.freeze([]);
177
+ const paths = await concreteRoutes();
178
+ const parts = current.slice(config.base.length).split("/").filter(Boolean);
179
+ const start = from.split("/").filter(Boolean).length;
180
+ const trail = [];
181
+ for (let i = start; i <= parts.length; i++) {
182
+ const href = config.base + parts.slice(0, i).map(part => part + "/").join("");
183
+ // The page being rendered exists even when no entries() lists it, as for a dynamic page at request time.
184
+ const route = paths.get(href) ?? (i === parts.length ? matchRoute(routes, href, config.base)?.route : undefined);
185
+ if (route !== undefined && route.canonical === undefined)
186
+ trail.push(item(href, route, i - start, current));
187
+ }
188
+ return Object.freeze(trail);
128
189
  };
129
- return {
130
- ...config, routes, navigation,
190
+ // The neighbours of the current page in navigation order.
191
+ const pager = async (query = {}) => {
192
+ const items = await navigation(query);
193
+ const index = items.findIndex(entry => entry.current === "page");
194
+ if (index < 0)
195
+ return Object.freeze({});
196
+ return Object.freeze({ ...(index > 0 ? { previous: items[index - 1] } : {}), ...(index < items.length - 1 ? { next: items[index + 1] } : {}) });
197
+ };
198
+ const application = {
199
+ ...config, routes, navigation, files,
131
200
  async entries() {
132
201
  const paths = await concreteRoutes();
133
202
  const missing = unenumerated[0];
134
203
  if (missing !== undefined)
135
- throw new HtmlKitError(`Static entries() must enumerate parameters: ${missing.params.join(", ")}.`, missing.server ?? missing.component);
204
+ throw new HtmlKitError(`Static entries() must enumerate parameters: ${missing.params.join(", ")}.`, origin(missing));
136
205
  return [...paths.keys()].sort();
137
206
  },
138
207
  async render(pathname, signal = new AbortController().signal) {
139
208
  signal.throwIfAborted();
209
+ const notFound = () => ({ status: 404, pathname, ...notFoundPage(scripts), css: "", components: [], layers: [] });
210
+ // A path starting with // would name another origin; no page lives there, for documents or payloads.
211
+ if (pathname.startsWith("//"))
212
+ return notFound();
140
213
  const url = new URL(pathname, config.origin);
141
214
  if (url.origin !== config.origin || url.search || url.hash)
142
215
  throw new HtmlKitError("Static rendering requires an application pathname without a query or fragment.");
143
216
  const matched = matchRoute(routes, url.pathname, config.base);
144
217
  if (matched === undefined) {
145
- const head = { title: "Page not found" };
146
- const body = '<main><h1>Page not found</h1></main>';
147
- return { status: 404, pathname, html: documentHTML(body, head), css: "", head, body, components: [] };
218
+ return notFound();
148
219
  }
149
220
  const { route, params } = matched;
150
221
  const layers = [...route.layouts, route];
@@ -164,14 +235,18 @@ export async function createApplication(options = {}, moduleServer) {
164
235
  stylesheetAssetURL: url => url.startsWith("file:") ? `/@fs/${fileURLToPath(url)}${new URL(url).search}${new URL(url).hash}` : url,
165
236
  // The graph resolver is synchronous. Prepare its bare imports while asynchronously
166
237
  // reading each carrier, using Vite's ESM resolution from the consuming application.
238
+ importMap: map,
167
239
  readComponent: async (url) => {
168
- const source = await readFile(fileURLToPath(url), "utf8");
240
+ let source = sources.get(fileURLToPath(url)) ?? await readFile(fileURLToPath(url), "utf8");
241
+ for (const [tag, href] of builtins)
242
+ if (new RegExp(`<${tag}[\\s/>]`).test(source))
243
+ source += `\n<link rel="component" href="${href}">`;
169
244
  const parsed = layerURLs.has(url) ? applicationResource(source, url) : parseComponentResource(source, url);
170
245
  if ("configuration" in parsed)
171
246
  resources.set(url, parsed);
172
247
  const imports = [...parsed.dependencies, ...parsed.definitions.flatMap(definition => definition.controller === undefined ? [] : [definition.controller])];
173
248
  for (const specifier of imports) {
174
- if (/^(?:[A-Za-z][A-Za-z\d+.-]*:|\/|\.\.?\/)/.test(specifier))
249
+ if (/^(?:[A-Za-z][A-Za-z\d+.-]*:|\/|\.\.?\/)/.test(specifier) || Object.keys(map.imports).some(key => specifier.startsWith(key)))
175
250
  continue;
176
251
  const resolved = await server.environments.client.pluginContainer.resolveId(specifier, fileURLToPath(url));
177
252
  if (resolved === null || resolved.external)
@@ -205,39 +280,67 @@ export async function createApplication(options = {}, moduleServer) {
205
280
  const results = [];
206
281
  let parent = Object.freeze({});
207
282
  let head = {};
283
+ // An alias marks its page's own entry current.
284
+ const current = route.canonical === undefined ? url.pathname : config.base + route.canonical.slice(1);
208
285
  for (const layer of layers) {
209
286
  signal.throwIfAborted();
210
287
  const loaded = await module(layer);
211
288
  const context = { phase: "prerender", url: new URL(url), base: config.base, params, parent,
212
- fetch: globalThis.fetch, signal, navigation: (query) => navigation({ current: url.pathname, ...query }),
213
- get request() { throw new HtmlKitError("request is unavailable during static generation.", layer.server); } };
289
+ fetch: globalThis.fetch, signal,
290
+ navigation: (query) => navigation({ current, ...query }),
291
+ breadcrumbs: (query) => breadcrumbs({ current, ...query }),
292
+ pager: (query) => pager({ current, ...query }),
293
+ get request() { throw new HtmlKitError("request is unavailable during static generation.", origin(layer)); } };
214
294
  const result = loaded.load === undefined ? {} : await loaded.load(context);
215
295
  if (result === null || typeof result !== "object" || Array.isArray(result))
216
- throw new HtmlKitError("load() must return a LoaderResult object.", layer.server);
296
+ throw new HtmlKitError("load() must return a LoaderResult object.", origin(layer));
217
297
  results.push(result);
218
298
  parent = Object.freeze({ ...parent, ...result.data });
219
299
  const index = results.length - 1;
220
- head = await renderHead(resources.get(pathToFileURL(layer.component).href), layerDefinitions[index], result, head, url.href, (definition, values) => invocation(definition, values, "htmlkit-head", "", false));
300
+ head = await renderHead(resources.get(pathToFileURL(layer.component).href), layerDefinitions[index], result, head, url.href, (definition, values) => invocation(definition.contract.tag, invocationAttributes(definition, values), "hk-head", "", false));
221
301
  }
302
+ if (scripts.length > 0)
303
+ head = { ...head, scripts };
222
304
  const state = {};
305
+ const rendered = layers.map((_layer, i) => ({ component: layerDefinitions[i].contract.tag,
306
+ attributes: invocationAttributes(layerDefinitions[i], results[i]), ...(results[i].state === undefined ? {} : { state: results[i].state }) }));
223
307
  let body = "";
224
308
  for (let i = layers.length - 1; i >= 0; i--) {
225
- const id = `htmlkit-layer-${i}`;
226
- const result = results[i];
227
- if (result.state !== undefined)
228
- state[`#${id}`] = result.state;
229
- body = invocation(layerDefinitions[i], result, id, body, i > 0);
309
+ const id = `hk-layer-${i}`;
310
+ const layer = rendered[i];
311
+ if (layer.state !== undefined)
312
+ state[`#${id}`] = layer.state;
313
+ body = invocation(layer.component, layer.attributes, id, body, i > 0);
230
314
  }
231
315
  const components = [...graph.nodes.values()].map(node => ({ definition: node.definition,
232
316
  styles: compileComponentStylesForBuild(node.definition.css, node.definition),
233
317
  ...(node.controller === undefined ? {} : { controller: fileURLToPath(node.controller.url) }) }));
234
- const rendered = await renderComponents(body, { definitions: components.map(value => value.definition), url: url.href, state });
318
+ const output = await renderComponents(body, { definitions: components.map(value => value.definition), url: url.href, state });
235
319
  signal.throwIfAborted();
236
- return { status: 200, pathname: url.pathname, body: rendered.html, css: rendered.css, head,
237
- html: documentHTML(rendered.html, head), components };
320
+ return { status: 200, pathname: url.pathname, body: output.html, css: output.css, head,
321
+ html: documentHTML(output.html, head), components, layers: rendered };
322
+ },
323
+ // Not a method of `this`: runtimes are handed the function itself, as in Deno.serve(application.fetch).
324
+ async fetch(request) {
325
+ if (request.method !== "GET" && request.method !== "HEAD")
326
+ return new Response(null, { status: 405, headers: { allow: "GET, HEAD" } });
327
+ const { pathname } = new URL(request.url);
328
+ // A page's payload, through the same render as its document.
329
+ const pages = config.base + "_htmlkit/pages/";
330
+ const payload = pathname.startsWith(pages) ? /^(.*\/)?payload\.json$/.exec(pathname.slice(pages.length)) : null;
331
+ if (payload !== null) {
332
+ const page = await application.render(config.base + (payload[1] ?? ""), request.signal);
333
+ const data = payloadPath(config.base, page.pathname) === pathname ? pagePayload(page, assets?.(page) ?? { styles: [], modules: [] }) : undefined;
334
+ return new Response(data === undefined || request.method === "HEAD" ? null : JSON.stringify(data), { status: data === undefined ? 404 : 200, headers: { "content-type": "application/json" } });
335
+ }
336
+ const page = await application.render(pathname, request.signal);
337
+ if (page.status === 200 && !pathname.endsWith("/"))
338
+ return new Response(null, { status: 308, headers: { location: pathname + "/" } });
339
+ return new Response(request.method === "HEAD" ? null : documentHTML(page.body, page.head, assets?.(page)), { status: page.status, headers: { "content-type": "text/html; charset=utf-8" } });
238
340
  },
239
341
  async close() { if (ownsServer)
240
342
  await server.close(); },
241
343
  };
344
+ return application;
242
345
  }
243
346
  //# sourceMappingURL=application.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
package/dist/browser.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { type Plugin } from "vite";
2
+ import type { ClientOptions } from "./client.js";
2
3
  import type { BrowserDefinition } from "./types.js";
3
4
  export declare function stylesheetSources(components: readonly BrowserDefinition[]): ReadonlyMap<string, string>;
4
- /** HTML Next owns adoption, observation, reads, controllers, and teardown. */
5
- export declare function browserSource(components: readonly BrowserDefinition[], base: string): string;
5
+ /** HTML Next owns adoption, observation, reads, controllers, and teardown; client.ts shares them across pages. */
6
+ export declare function browserSource(components: readonly BrowserDefinition[], options: ClientOptions, css?: readonly string[]): string;
6
7
  export declare function browserPlugin(sources: ReadonlyMap<string, string>, inputs?: Set<string>): Plugin;
7
8
  //# sourceMappingURL=browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAQpD,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAcvG;AAED,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA0C5F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,CAShG"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AASpD,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBvG;AAED,kHAAkH;AAClH,wBAAgB,aAAa,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CAmCnI;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,CAWhG"}