@tyndall/build 0.0.1 → 0.0.2

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.
@@ -1,4 +1,4 @@
1
- import type { Manifest, RouteGraph } from "@tyndall/core";
1
+ import type { Manifest, RouteGraph, SpecialEntries } from "@tyndall/core";
2
2
  import type { BundleResult } from "./bundler.js";
3
3
  export interface ManifestOptions {
4
4
  version: string;
@@ -7,6 +7,9 @@ export interface ManifestOptions {
7
7
  clientBundle: BundleResult;
8
8
  serverBundle?: BundleResult;
9
9
  assets?: Record<string, string>;
10
+ routeStyles?: Record<string, string[]>;
11
+ specialStyles?: Partial<Record<"notFound" | "error", string[]>>;
12
+ special?: SpecialEntries;
10
13
  }
11
14
  export declare const generateManifest: (options: ManifestOptions) => Manifest;
12
15
  //# sourceMappingURL=manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAc,UAAU,EAAe,MAAM,eAAe,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAuBD,eAAO,MAAM,gBAAgB,GAAI,SAAS,eAAe,KAAG,QA+C3D,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EAER,UAAU,EAEV,cAAc,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAuBD,eAAO,MAAM,gBAAgB,GAAI,SAAS,eAAe,KAAG,QA6D3D,CAAC"}
package/dist/manifest.js CHANGED
@@ -30,6 +30,10 @@ export const generateManifest = (options) => {
30
30
  type,
31
31
  clientEntry,
32
32
  };
33
+ const routeStyles = options.routeStyles?.[route.id];
34
+ if (routeStyles && routeStyles.length > 0) {
35
+ entry.styles = routeStyles;
36
+ }
33
37
  if (type === "static") {
34
38
  entry.html = htmlPathForRoute(route.id);
35
39
  }
@@ -54,5 +58,15 @@ export const generateManifest = (options) => {
54
58
  if (options.assets) {
55
59
  manifest.assets = options.assets;
56
60
  }
61
+ if (options.special) {
62
+ const special = { ...options.special };
63
+ if (options.specialStyles?.notFound && special.notFound) {
64
+ special.notFound = { ...special.notFound, styles: options.specialStyles.notFound };
65
+ }
66
+ if (options.specialStyles?.error && special.error) {
67
+ special.error = { ...special.error, styles: options.specialStyles.error };
68
+ }
69
+ manifest.special = special;
70
+ }
57
71
  return manifest;
58
72
  };
@@ -3,6 +3,7 @@ export interface RenderContext {
3
3
  routeId: string;
4
4
  params?: RouteParams;
5
5
  props: Record<string, unknown>;
6
+ routeData?: Record<string, unknown>;
6
7
  }
7
8
  export interface RenderResult {
8
9
  html: string;
@@ -26,6 +27,7 @@ export interface TemplateContext {
26
27
  html: string;
27
28
  head: HeadDescriptor;
28
29
  propsPayload: string;
30
+ routeDataPayload: string;
29
31
  routeId: string;
30
32
  hydration: "full" | "islands";
31
33
  scripts: string[];
@@ -41,6 +43,7 @@ export interface RenderHtmlOutput {
41
43
  html: string;
42
44
  head: HeadDescriptor;
43
45
  propsPayload: string;
46
+ routeDataPayload: string;
44
47
  finalHtml: string;
45
48
  templateHash: string;
46
49
  status?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;IAC3E,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC5D;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,CAAC;AAoB5D,eAAO,MAAM,mBAAmB,GAC9B,UAAU,YAAY,EACtB,SAAQ,cAAmB,KAC1B,MAMA,CAAC;AAkDJ,eAAO,MAAM,mBAAmB,EAAE,YAyCjC,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,UAAU,GACrB,SAAS,aAAa,EACtB,KAAK,aAAa,EAClB,WAAU,YAAkC,EAC5C,SAAQ,cAAmB,KAC1B,OAAO,CAAC,gBAAgB,CA4B1B,CAAC"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAGjE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;IAC3E,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC5D;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,CAAC;AAoB5D,eAAO,MAAM,mBAAmB,GAC9B,UAAU,YAAY,EACtB,SAAQ,cAAmB,KAC1B,MAMA,CAAC;AAkDJ,eAAO,MAAM,mBAAmB,EAAE,YA2CjC,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,UAAU,GACrB,SAAS,aAAa,EACtB,KAAK,aAAa,EAClB,WAAU,YAAkC,EAC5C,SAAQ,cAAmB,KAC1B,OAAO,CAAC,gBAAgB,CA+B1B,CAAC"}
package/dist/renderer.js CHANGED
@@ -48,7 +48,7 @@ const escapeHtml = (value) => value
48
48
  .replace(/</g, "&lt;")
49
49
  .replace(/>/g, "&gt;")
50
50
  .replace(/\"/g, "&quot;");
51
- export const defaultHtmlTemplate = ({ html, head, propsPayload, routeId, hydration, scripts, legacyScripts = [], styles, scriptType, buildVersion, }) => {
51
+ export const defaultHtmlTemplate = ({ html, head, propsPayload, routeDataPayload, routeId, hydration, scripts, legacyScripts = [], styles, scriptType, buildVersion, }) => {
52
52
  const headHtml = renderHeadDescriptor(head);
53
53
  const stylesHtml = renderStyleLinks(styles);
54
54
  const scriptsHtml = renderScriptTags(scripts, scriptType);
@@ -72,6 +72,7 @@ export const defaultHtmlTemplate = ({ html, head, propsPayload, routeId, hydrati
72
72
  "<body>",
73
73
  `<div id=\"app\" data-hyper-route=\"${routeId}\" data-hyper-hydration=\"${hydration}\"${islandAttr}>${html}</div>`,
74
74
  `<script id=\"__HYPER_PROPS__\" type=\"application/json\">${propsPayload}</script>`,
75
+ `<script id=\"__HYPER_ROUTE_DATA__\" type=\"application/json\">${routeDataPayload}</script>`,
75
76
  `<script>window.__HYPER_ROUTE_ID__ = ${JSON.stringify(routeId)};</script>`,
76
77
  scriptsHtml,
77
78
  legacyScriptsHtml,
@@ -83,12 +84,14 @@ export const renderHtml = async (adapter, ctx, template = defaultHtmlTemplate, a
83
84
  const result = await adapter.renderToHtml(ctx);
84
85
  const head = result.head ?? {};
85
86
  const propsPayload = adapter.serializeProps(ctx.props);
87
+ const routeDataPayload = adapter.serializeProps(ctx.routeData ?? {});
86
88
  const normalizedAssets = normalizeAssets(assets);
87
89
  const templateHash = computeTemplateHash(template, normalizedAssets);
88
90
  const finalHtml = template({
89
91
  html: result.html,
90
92
  head,
91
93
  propsPayload,
94
+ routeDataPayload,
92
95
  routeId: ctx.routeId,
93
96
  hydration: normalizedAssets.hydration,
94
97
  scripts: normalizedAssets.scripts,
@@ -101,6 +104,7 @@ export const renderHtml = async (adapter, ctx, template = defaultHtmlTemplate, a
101
104
  html: result.html,
102
105
  head,
103
106
  propsPayload,
107
+ routeDataPayload,
104
108
  finalHtml,
105
109
  templateHash,
106
110
  status: result.status,
@@ -23,6 +23,7 @@ export type RenderCacheInput = {
23
23
  templateHash: string;
24
24
  depsHash: string;
25
25
  propsHash: string;
26
+ routeDataHash: string;
26
27
  };
27
28
  export type RenderCacheEntry = {
28
29
  routeId: string;
@@ -30,10 +31,12 @@ export type RenderCacheEntry = {
30
31
  renderKey: string;
31
32
  templateHash: string;
32
33
  propsHash: string;
34
+ routeDataHash: string;
33
35
  depsHash: string;
34
36
  generatedAt: number;
35
37
  head: HeadDescriptor;
36
38
  propsPayload: string;
39
+ routeDataPayload: string;
37
40
  status?: number;
38
41
  headers?: Record<string, string>;
39
42
  finalHtml: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ssg-cache.d.ts","sourceRoot":"","sources":["../src/ssg-cache.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA0BpD,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAoFF,eAAO,MAAM,eAAe,GAAI,OAAO,eAAe,KAAG,MAUxD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MACpC,CAAC;AAE/B,eAAO,MAAM,gBAAgB,GAAI,OAAO,gBAAgB,KAAG,MASxD,CAAC;AAEJ,eAAO,MAAM,cAAc,GACzB,WAAW,MAAM,EACjB,OAAO,eAAe,EACtB,YAAY,MAAM,GAAG,KAAK,KACzB,OAAO,CAAC,eAAe,GAAG,IAAI,CAchC,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,MAAM,EACjB,OAAO,eAAe,KACrB,OAAO,CAAC,IAAI,CAGd,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,MAAM,EACjB,OAAO,gBAAgB,KACtB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAgBjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,WAAW,MAAM,EACjB,OAAO,gBAAgB,KACtB,OAAO,CAAC,IAAI,CAoBd,CAAC"}
1
+ {"version":3,"file":"ssg-cache.d.ts","sourceRoot":"","sources":["../src/ssg-cache.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA0BpD,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAwFF,eAAO,MAAM,eAAe,GAAI,OAAO,eAAe,KAAG,MAUxD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MACpC,CAAC;AAE/B,eAAO,MAAM,gBAAgB,GAAI,OAAO,gBAAgB,KAAG,MAUxD,CAAC;AAEJ,eAAO,MAAM,cAAc,GACzB,WAAW,MAAM,EACjB,OAAO,eAAe,EACtB,YAAY,MAAM,GAAG,KAAK,KACzB,OAAO,CAAC,eAAe,GAAG,IAAI,CAchC,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,MAAM,EACjB,OAAO,eAAe,KACrB,OAAO,CAAC,IAAI,CAGd,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,WAAW,MAAM,EACjB,OAAO,gBAAgB,KACtB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAgBjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,WAAW,MAAM,EACjB,OAAO,gBAAgB,KACtB,OAAO,CAAC,IAAI,CAsBd,CAAC"}
package/dist/ssg-cache.js CHANGED
@@ -58,9 +58,11 @@ const parseRenderCacheMeta = (raw) => {
58
58
  typeof parsed.renderKey !== "string" ||
59
59
  typeof parsed.templateHash !== "string" ||
60
60
  typeof parsed.propsHash !== "string" ||
61
+ typeof parsed.routeDataHash !== "string" ||
61
62
  typeof parsed.depsHash !== "string" ||
62
63
  typeof parsed.generatedAt !== "number" ||
63
- typeof parsed.propsPayload !== "string") {
64
+ typeof parsed.propsPayload !== "string" ||
65
+ typeof parsed.routeDataPayload !== "string") {
64
66
  return null;
65
67
  }
66
68
  return {
@@ -69,10 +71,12 @@ const parseRenderCacheMeta = (raw) => {
69
71
  renderKey: parsed.renderKey,
70
72
  templateHash: parsed.templateHash,
71
73
  propsHash: parsed.propsHash,
74
+ routeDataHash: parsed.routeDataHash,
72
75
  depsHash: parsed.depsHash,
73
76
  generatedAt: parsed.generatedAt,
74
77
  head: (parsed.head ?? {}),
75
78
  propsPayload: parsed.propsPayload,
79
+ routeDataPayload: parsed.routeDataPayload,
76
80
  status: typeof parsed.status === "number" ? parsed.status : undefined,
77
81
  headers: parsed.headers && typeof parsed.headers === "object"
78
82
  ? parsed.headers
@@ -99,6 +103,7 @@ export const computeRenderKey = (input) => hash(stableStringify({
99
103
  templateHash: input.templateHash,
100
104
  depsHash: input.depsHash,
101
105
  propsHash: input.propsHash,
106
+ routeDataHash: input.routeDataHash,
102
107
  }));
103
108
  export const readPropsCache = async (cacheRoot, input, ttlSeconds) => {
104
109
  const propsKey = computePropsKey(input);
@@ -145,10 +150,12 @@ export const writeRenderCache = async (cacheRoot, entry) => {
145
150
  renderKey: entry.renderKey,
146
151
  templateHash: entry.templateHash,
147
152
  propsHash: entry.propsHash,
153
+ routeDataHash: entry.routeDataHash,
148
154
  depsHash: entry.depsHash,
149
155
  generatedAt: entry.generatedAt,
150
156
  head: entry.head,
151
157
  propsPayload: entry.propsPayload,
158
+ routeDataPayload: entry.routeDataPayload,
152
159
  status: entry.status,
153
160
  headers: entry.headers,
154
161
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyndall/build",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -22,8 +22,8 @@
22
22
  },
23
23
  "dependencies": {
24
24
  "@swc/core": "^1.15.17",
25
- "@tyndall/core": "workspace:*",
26
- "@tyndall/shared": "workspace:*",
25
+ "@tyndall/core": "^0.0.2",
26
+ "@tyndall/shared": "^0.0.2",
27
27
  "esbuild": "0.21.5"
28
28
  }
29
29
  }