Skip to content
Meeko
Type to search the guides and the API reference. Open it from any page with / or Ctrl K; move with the arrow keys and open a result with Enter.
Get started

Contents

On this page

Not translated yet

This page has not been translated into English yet, so it is shown in Spanish.

PrerenderIndex

interfaz

Índice manifest.json que se escribe junto al HTML prerenderizado y que leen los adaptadores al arrancar. headOffset se mide en unidades de código UTF-16 del HTML leído como texto, no en bytes.

ts
import type { PrerenderIndex } from "@meekojs/meeko/build";

Source code src/framework/prerender.ts:74

Declaración #

ts
interface PrerenderIndex {
	readonly version: 1
	readonly pages: Readonly<
		Record<
			string,
			{
				readonly file: string
				readonly headOffset: number
				readonly etag: string
				readonly payload?: string
				readonly scriptHashes?: readonly string[]
				readonly styleHashes?: readonly string[]
			}
		>
	>
}

Example #

ts
import { readFile } from "node:fs/promises";
import type { PrerenderIndex } from "@meekojs/meeko/build";

const index = JSON.parse(await readFile(".meeko/output/node/prerender/manifest.json", "utf8")) as PrerenderIndex;
const home = index.pages["/"];

Propiedades #

version #

propiedad sólo lectura

readonly version: 1

Versión del formato.

pages #

propiedad sólo lectura

readonly pages: Readonly<
	Record<
		string,
		{
			readonly file: string
			readonly headOffset: number
			readonly etag: string
			readonly payload?: string
			readonly scriptHashes?: readonly string[]
			readonly styleHashes?: readonly string[]
		}
	>
>

Páginas por ruta: archivo HTML, posición donde se inserta la meta CSRF, ETag, si existe, el payload de navegación index.meeko.json y, desde 1.3, scriptHashes: las fuentes CSP 'sha256-…' de los scripts en línea que ejecuta la página (véase inlineScriptHashes), para construir su Content-Security-Policy con contentSecurityPolicy. Un índice escrito por una versión anterior no tiene scriptHashes. Desde 1.4, styleHashes hace lo mismo con los <style> en línea (véase inlineStyleHashes), como el del tema de <MeekoThemeToggle>. Desde 1.7, sólo cuentan los que escribe Meeko alrededor de la página (la cabecera, el payload, la entrada y bodyEnd): un <script> o un <style> dentro de #app o de un teleport, que puede venir de contenido de usuario, no se autoriza.

See also #

Was this page helpful?

Add a comment

It is sent when you choose “Yes” or “No”. Only the page, your answer and the comment are stored: no cookies and no personal data.

0 of 2000 characters

Edit on GitHub: packages/meeko/src/framework/prerender.ts