@refrakt-md/next 0.9.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.
@@ -0,0 +1,17 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { RenderPageInput } from './render.js';
3
+ interface RefraktContentProps extends RenderPageInput {
4
+ className?: string;
5
+ }
6
+ /**
7
+ * Server Component that renders refrakt content to HTML.
8
+ *
9
+ * Uses renderToHtml() + dangerouslySetInnerHTML for zero-hydration rendering.
10
+ * React never processes the rf-* custom elements as components.
11
+ *
12
+ * For component overrides (ADR-008), use the `Renderer` from `@refrakt-md/react`
13
+ * directly with `page.renderable`.
14
+ */
15
+ export declare function RefraktContent({ theme, page, className }: RefraktContentProps): ReactNode;
16
+ export {};
17
+ //# sourceMappingURL=RefraktContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefraktContent.d.ts","sourceRoot":"","sources":["../src/RefraktContent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,mBAAoB,SAAQ,eAAe;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,mBAAmB,GAAG,SAAS,CAGzF"}
@@ -0,0 +1,16 @@
1
+ import { createElement } from 'react';
2
+ import { renderPage } from './render.js';
3
+ /**
4
+ * Server Component that renders refrakt content to HTML.
5
+ *
6
+ * Uses renderToHtml() + dangerouslySetInnerHTML for zero-hydration rendering.
7
+ * React never processes the rf-* custom elements as components.
8
+ *
9
+ * For component overrides (ADR-008), use the `Renderer` from `@refrakt-md/react`
10
+ * directly with `page.renderable`.
11
+ */
12
+ export function RefraktContent({ theme, page, className }) {
13
+ const html = renderPage({ theme, page });
14
+ return createElement('div', { className, dangerouslySetInnerHTML: { __html: html } });
15
+ }
16
+ //# sourceMappingURL=RefraktContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefraktContent.js","sourceRoot":"","sources":["../src/RefraktContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAuB;IAC7E,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;AACvF,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { RendererNode } from '@refrakt-md/types';
2
+ /**
3
+ * Check whether a renderable tree contains any interactive runes
4
+ * that need client-side behavior initialization.
5
+ *
6
+ * Use this to conditionally include the BehaviorInit client component
7
+ * only on pages that need it.
8
+ */
9
+ export declare function hasInteractiveRunes(node: RendererNode): boolean;
10
+ //# sourceMappingURL=behaviors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behaviors.d.ts","sourceRoot":"","sources":["../src/behaviors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAE/D"}
@@ -0,0 +1,13 @@
1
+ import { hasMatchingRunes } from '@refrakt-md/transform';
2
+ import { getBehaviorNames } from '@refrakt-md/behaviors';
3
+ /**
4
+ * Check whether a renderable tree contains any interactive runes
5
+ * that need client-side behavior initialization.
6
+ *
7
+ * Use this to conditionally include the BehaviorInit client component
8
+ * only on pages that need it.
9
+ */
10
+ export function hasInteractiveRunes(node) {
11
+ return hasMatchingRunes(node, getBehaviorNames());
12
+ }
13
+ //# sourceMappingURL=behaviors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behaviors.js","sourceRoot":"","sources":["../src/behaviors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAkB;IACrD,OAAO,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;AACnD,CAAC"}
@@ -0,0 +1,24 @@
1
+ interface BehaviorInitProps {
2
+ pages: Array<{
3
+ url: string;
4
+ title: string;
5
+ draft: boolean;
6
+ description?: string;
7
+ date?: string;
8
+ author?: string;
9
+ tags?: string[];
10
+ image?: string;
11
+ version?: string;
12
+ versionGroup?: string;
13
+ }>;
14
+ currentUrl: string;
15
+ }
16
+ /**
17
+ * Client component that initializes interactive rune behaviors.
18
+ *
19
+ * Renders nothing — manages behavior lifecycle via useEffect.
20
+ * Automatically re-initializes on client-side navigation.
21
+ */
22
+ export declare function BehaviorInit({ pages, currentUrl }: BehaviorInitProps): null;
23
+ export {};
24
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.tsx"],"names":[],"mappings":"AAKA,UAAU,iBAAiB;IAC1B,KAAK,EAAE,KAAK,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,OAAO,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;IACH,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,iBAAiB,QAwBpE"}
package/dist/client.js ADDED
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ import { useEffect } from 'react';
3
+ import { usePathname } from 'next/navigation';
4
+ /**
5
+ * Client component that initializes interactive rune behaviors.
6
+ *
7
+ * Renders nothing — manages behavior lifecycle via useEffect.
8
+ * Automatically re-initializes on client-side navigation.
9
+ */
10
+ export function BehaviorInit({ pages, currentUrl }) {
11
+ const pathname = usePathname();
12
+ useEffect(() => {
13
+ let cleanup;
14
+ import('@refrakt-md/behaviors').then(({ registerElements, RfContext, initRuneBehaviors, initLayoutBehaviors }) => {
15
+ RfContext.pages = pages;
16
+ RfContext.currentUrl = pathname ?? currentUrl;
17
+ registerElements();
18
+ const cleanupRunes = initRuneBehaviors();
19
+ const cleanupLayout = initLayoutBehaviors();
20
+ cleanup = () => {
21
+ cleanupRunes();
22
+ cleanupLayout();
23
+ };
24
+ });
25
+ return () => {
26
+ cleanup?.();
27
+ };
28
+ }, [pathname, pages, currentUrl]);
29
+ return null;
30
+ }
31
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAkB9C;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,UAAU,EAAqB;IACpE,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,OAAiC,CAAC;QAEtC,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,EAAE,EAAE;YAChH,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;YACxB,SAAS,CAAC,UAAU,GAAG,QAAQ,IAAI,UAAU,CAAC;YAC9C,gBAAgB,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,iBAAiB,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;YAC5C,OAAO,GAAG,GAAG,EAAE;gBACd,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;YACjB,CAAC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACX,OAAO,EAAE,EAAE,CAAC;QACb,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAElC,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -0,0 +1,10 @@
1
+ export { renderPage } from './render.js';
2
+ export type { RenderPageInput } from './render.js';
3
+ export { RefraktContent } from './RefraktContent.js';
4
+ export { buildMetadata, buildJsonLd } from './metadata.js';
5
+ export type { RefraktMetadataInput } from './metadata.js';
6
+ export { buildUrlFromParams } from './loader.js';
7
+ export type { PageParams } from './loader.js';
8
+ export { hasInteractiveRunes } from './behaviors.js';
9
+ export type { NextTheme } from './types.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGrD,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,10 @@
1
+ // Rendering
2
+ export { renderPage } from './render.js';
3
+ export { RefraktContent } from './RefraktContent.js';
4
+ // SEO
5
+ export { buildMetadata, buildJsonLd } from './metadata.js';
6
+ // Content loading helpers
7
+ export { buildUrlFromParams } from './loader.js';
8
+ // Behaviors (server-side detection only)
9
+ export { hasInteractiveRunes } from './behaviors.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM;AACN,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG3D,0BAA0B;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,yCAAyC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,13 @@
1
+ export interface PageParams {
2
+ slug?: string[];
3
+ }
4
+ /**
5
+ * Build the URL path from Next.js catch-all route params.
6
+ *
7
+ * Maps Next.js dynamic route segments back to a refrakt URL:
8
+ * { slug: ['docs', 'getting-started'] } → '/docs/getting-started'
9
+ * { slug: undefined } → '/'
10
+ * { slug: [] } → '/'
11
+ */
12
+ export declare function buildUrlFromParams(params: PageParams): string;
13
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAG7D"}
package/dist/loader.js ADDED
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Build the URL path from Next.js catch-all route params.
3
+ *
4
+ * Maps Next.js dynamic route segments back to a refrakt URL:
5
+ * { slug: ['docs', 'getting-started'] } → '/docs/getting-started'
6
+ * { slug: undefined } → '/'
7
+ * { slug: [] } → '/'
8
+ */
9
+ export function buildUrlFromParams(params) {
10
+ if (!params.slug || params.slug.length === 0)
11
+ return '/';
12
+ return '/' + params.slug.join('/');
13
+ }
14
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAkB;IACpD,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACzD,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { SeoInput } from '@refrakt-md/transform';
2
+ export type RefraktMetadataInput = SeoInput;
3
+ /**
4
+ * Transform refrakt page SEO data into a Next.js Metadata object.
5
+ *
6
+ * Use with Next.js App Router's generateMetadata() export:
7
+ *
8
+ * export async function generateMetadata({ params }) {
9
+ * const page = await loadPage(params.slug);
10
+ * return buildMetadata({ title: page.title, seo: page.seo });
11
+ * }
12
+ */
13
+ export declare function buildMetadata(input: RefraktMetadataInput): Record<string, unknown>;
14
+ /**
15
+ * Build JSON-LD structured data objects for inclusion in the page head.
16
+ */
17
+ export declare function buildJsonLd(input?: SeoInput): object[];
18
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAE5C;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBlF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,EAAE,CAGtD"}
@@ -0,0 +1,45 @@
1
+ import { extractSeoData } from '@refrakt-md/transform';
2
+ /**
3
+ * Transform refrakt page SEO data into a Next.js Metadata object.
4
+ *
5
+ * Use with Next.js App Router's generateMetadata() export:
6
+ *
7
+ * export async function generateMetadata({ params }) {
8
+ * const page = await loadPage(params.slug);
9
+ * return buildMetadata({ title: page.title, seo: page.seo });
10
+ * }
11
+ */
12
+ export function buildMetadata(input) {
13
+ const data = extractSeoData(input);
14
+ const metadata = {};
15
+ if (data.title)
16
+ metadata.title = data.title;
17
+ if (data.description)
18
+ metadata.description = data.description;
19
+ const openGraph = {};
20
+ if (data.title)
21
+ openGraph.title = data.title;
22
+ if (data.description)
23
+ openGraph.description = data.description;
24
+ if (data.ogImage)
25
+ openGraph.images = [data.ogImage];
26
+ if (data.ogUrl)
27
+ openGraph.url = data.ogUrl;
28
+ if (data.ogType)
29
+ openGraph.type = data.ogType;
30
+ if (Object.keys(openGraph).length > 0)
31
+ metadata.openGraph = openGraph;
32
+ if (data.ogImage) {
33
+ metadata.twitter = { card: 'summary_large_image' };
34
+ }
35
+ return metadata;
36
+ }
37
+ /**
38
+ * Build JSON-LD structured data objects for inclusion in the page head.
39
+ */
40
+ export function buildJsonLd(input) {
41
+ if (!input)
42
+ return [];
43
+ return extractSeoData(input).jsonLd;
44
+ }
45
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKvD;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,KAA2B;IACxD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,IAAI,IAAI,CAAC,KAAK;QAAE,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC5C,IAAI,IAAI,CAAC,WAAW;QAAE,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAE9D,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,IAAI,IAAI,CAAC,KAAK;QAAE,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC7C,IAAI,IAAI,CAAC,WAAW;QAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC/D,IAAI,IAAI,CAAC,OAAO;QAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,KAAK;QAAE,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;IAEtE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,QAAQ,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;IACpD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAgB;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;AACrC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { renderPage } from '@refrakt-md/transform';
2
+ export type { RenderPageInput } from '@refrakt-md/transform';
3
+ //# sourceMappingURL=render.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
package/dist/render.js ADDED
@@ -0,0 +1,2 @@
1
+ export { renderPage } from '@refrakt-md/transform';
2
+ //# sourceMappingURL=render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { AdapterTheme } from '@refrakt-md/transform';
2
+ /**
3
+ * Theme definition for the Next.js adapter (HTML rendering mode).
4
+ *
5
+ * Alias for the shared `AdapterTheme` — used with `RefraktContent` which
6
+ * renders via identity transform + renderToHtml.
7
+ *
8
+ * For component override mode (ADR-008), use `ReactTheme` from
9
+ * `@refrakt-md/react` with the `Renderer` component instead.
10
+ */
11
+ export type NextTheme = AdapterTheme;
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@refrakt-md/next",
3
+ "description": "Next.js adapter for refrakt.md — render Markdoc runes with React Server Components",
4
+ "version": "0.9.2",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/refrakt-md/refrakt.git",
10
+ "directory": "packages/next"
11
+ },
12
+ "bugs": "https://github.com/refrakt-md/refrakt/issues",
13
+ "homepage": "https://github.com/refrakt-md/refrakt",
14
+ "publishConfig": {
15
+ "access": "public"
16
+ },
17
+ "main": "dist/index.js",
18
+ "types": "dist/index.d.ts",
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "default": "./dist/index.js"
23
+ },
24
+ "./client": {
25
+ "types": "./dist/client.d.ts",
26
+ "default": "./dist/client.js"
27
+ }
28
+ },
29
+ "files": [
30
+ "dist"
31
+ ],
32
+ "scripts": {
33
+ "build": "tsc"
34
+ },
35
+ "dependencies": {
36
+ "@refrakt-md/behaviors": "0.9.2",
37
+ "@refrakt-md/content": "0.9.2",
38
+ "@refrakt-md/transform": "0.9.2",
39
+ "@refrakt-md/types": "0.9.2"
40
+ },
41
+ "devDependencies": {
42
+ "next": "^15.0.0",
43
+ "react": "^19.0.0",
44
+ "@types/react": "^19.0.0"
45
+ },
46
+ "peerDependencies": {
47
+ "next": "^14.0.0 || ^15.0.0",
48
+ "react": "^18.0.0 || ^19.0.0"
49
+ }
50
+ }