@gradial/aci 0.1.4 → 0.1.6

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.
@@ -92,6 +92,7 @@ export interface RenderInput<TPage extends KernelPage = KernelPage, TSiteConfig
92
92
  locale: string;
93
93
  siteConfig: TSiteConfig;
94
94
  page: TPage | null;
95
+ fragments?: Record<string, unknown>;
95
96
  }
96
97
  export interface RenderOutput {
97
98
  route: string;
@@ -1,4 +1,4 @@
1
- import { type NextRequest } from 'next/server';
1
+ import { type NextRequest } from 'next/server.js';
2
2
  export interface GradialMiddlewareConfig {
3
3
  siteId: string;
4
4
  edgeConfig?: string;
@@ -1,4 +1,4 @@
1
- import { NextResponse } from 'next/server';
1
+ import { NextResponse } from 'next/server.js';
2
2
  import { getUncachedEdgeConfigValue } from './edge-config.js';
3
3
  import { validatePreviewToken } from './preview.js';
4
4
  const RELEASE_HEADER = 'x-gradial-release-id';
@@ -20,6 +20,7 @@ export interface GradialRenderInput<TPage, TSite extends GradialSiteConfig = Gra
20
20
  locale: string;
21
21
  siteConfig: TSite;
22
22
  page: TPage;
23
+ fragments?: Record<string, unknown>;
23
24
  }
24
25
  export interface GradialSiteConfig {
25
26
  domain?: string;
@@ -1,4 +1,4 @@
1
- import { headers } from 'next/headers';
1
+ import { headers } from 'next/headers.js';
2
2
  import { FragmentNotFoundError, PageNotFoundError, } from '../content/provider.js';
3
3
  import { S3ContentProvider } from '../providers/s3.js';
4
4
  import { GRADIAL_RENDER_INPUT_HEADER, getPendingRenderInput } from '../runtime/page.js';
@@ -20,6 +20,13 @@ export async function getSiteConfig(config = {}) {
20
20
  return await provider.getSiteConfig();
21
21
  }
22
22
  export async function getFragment(name, config = {}) {
23
+ const runtimeInput = await getPageRuntimeRenderInput();
24
+ if (runtimeInput) {
25
+ const fragments = runtimeInput.fragments || {};
26
+ if (name in fragments)
27
+ return fragments[name];
28
+ throw new FragmentNotFoundError(name);
29
+ }
23
30
  const provider = await resolveProviderWithFallback(config);
24
31
  return await provider.getFragment(name);
25
32
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gradial/aci",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",