@coherent.js/nextjs 1.0.0-beta.2 → 1.0.0-beta.5
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.
- package/README.md +521 -0
- package/dist/index.cjs +75 -2038
- package/dist/index.cjs.map +4 -4
- package/dist/index.js +75 -2028
- package/dist/index.js.map +4 -4
- package/dist/nextjs/coherent-nextjs.js +24 -24
- package/dist/nextjs/index.js +1 -1
- package/package.json +3 -2
|
@@ -21,7 +21,7 @@ export function createCoherentNextHandler(componentFactory, options = {}) {
|
|
|
21
21
|
// Create component with request data
|
|
22
22
|
const component = await Promise.resolve(componentFactory(req, res));
|
|
23
23
|
if (!component) {
|
|
24
|
-
res.status(500).json({
|
|
24
|
+
res.status(500).json({ _error: 'Component factory returned null/undefined' });
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
27
|
// Render component
|
|
@@ -40,9 +40,9 @@ export function createCoherentNextHandler(componentFactory, options = {}) {
|
|
|
40
40
|
res.setHeader('Content-Type', 'text/html; charset=utf-8');
|
|
41
41
|
res.status(200).send(finalHtml);
|
|
42
42
|
}
|
|
43
|
-
catch (
|
|
44
|
-
console.
|
|
45
|
-
res.status(500).json({
|
|
43
|
+
catch (_error) {
|
|
44
|
+
console._error('Coherent.js Next.js handler _error:', _error);
|
|
45
|
+
res.status(500).json({ _error: _error.message });
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
}
|
|
@@ -60,7 +60,7 @@ export function createCoherentAppRouterHandler(componentFactory, options = {}) {
|
|
|
60
60
|
// Create component with request data
|
|
61
61
|
const component = await Promise.resolve(componentFactory(request));
|
|
62
62
|
if (!component) {
|
|
63
|
-
return new Response(JSON.stringify({
|
|
63
|
+
return new Response(JSON.stringify({ _error: 'Component factory returned null/undefined' }), {
|
|
64
64
|
status: 500,
|
|
65
65
|
headers: { 'Content-Type': 'application/json' }
|
|
66
66
|
});
|
|
@@ -83,9 +83,9 @@ export function createCoherentAppRouterHandler(componentFactory, options = {}) {
|
|
|
83
83
|
headers: { 'Content-Type': 'text/html; charset=utf-8' }
|
|
84
84
|
});
|
|
85
85
|
}
|
|
86
|
-
catch (
|
|
87
|
-
console.
|
|
88
|
-
return new Response(JSON.stringify({
|
|
86
|
+
catch (_error) {
|
|
87
|
+
console._error('Coherent.js Next.js App Router handler _error:', _error);
|
|
88
|
+
return new Response(JSON.stringify({ _error: _error.message }), {
|
|
89
89
|
status: 500,
|
|
90
90
|
headers: { 'Content-Type': 'application/json' }
|
|
91
91
|
});
|
|
@@ -106,13 +106,13 @@ export async function createCoherentServerComponent(componentFactory, options =
|
|
|
106
106
|
try {
|
|
107
107
|
React = await importPeerDependency('react', 'React');
|
|
108
108
|
}
|
|
109
|
-
catch (
|
|
110
|
-
throw new Error(`Next.js Server Component integration requires React. ${
|
|
109
|
+
catch (_error) {
|
|
110
|
+
throw new Error(`Next.js Server Component integration requires React. ${_error.message}`);
|
|
111
111
|
}
|
|
112
|
-
return async function CoherentServerComponent(
|
|
112
|
+
return async function CoherentServerComponent(props) {
|
|
113
113
|
try {
|
|
114
114
|
// Create component with props
|
|
115
|
-
const component = await Promise.resolve(componentFactory(
|
|
115
|
+
const component = await Promise.resolve(componentFactory(props));
|
|
116
116
|
if (!component) {
|
|
117
117
|
return React.default.createElement('div', null, 'Error: Component factory returned null/undefined');
|
|
118
118
|
}
|
|
@@ -131,9 +131,9 @@ export async function createCoherentServerComponent(componentFactory, options =
|
|
|
131
131
|
dangerouslySetInnerHTML: { __html: html }
|
|
132
132
|
});
|
|
133
133
|
}
|
|
134
|
-
catch (
|
|
135
|
-
console.
|
|
136
|
-
return React.default.createElement('div', null, `Error: ${
|
|
134
|
+
catch (_error) {
|
|
135
|
+
console._error('Coherent.js Next.js Server Component _error:', _error);
|
|
136
|
+
return React.default.createElement('div', null, `Error: ${_error.message}`);
|
|
137
137
|
}
|
|
138
138
|
};
|
|
139
139
|
}
|
|
@@ -151,16 +151,16 @@ export async function createCoherentClientComponent(componentFactory, options =
|
|
|
151
151
|
try {
|
|
152
152
|
React = await importPeerDependency('react', 'React');
|
|
153
153
|
}
|
|
154
|
-
catch (
|
|
155
|
-
throw new Error(`Next.js Client Component integration requires React. ${
|
|
154
|
+
catch (_error) {
|
|
155
|
+
throw new Error(`Next.js Client Component integration requires React. ${_error.message}`);
|
|
156
156
|
}
|
|
157
|
-
return function CoherentClientComponent(
|
|
157
|
+
return function CoherentClientComponent(props) {
|
|
158
158
|
const [html, setHtml] = React.useState('');
|
|
159
159
|
React.useEffect(() => {
|
|
160
160
|
async function renderComponent() {
|
|
161
161
|
try {
|
|
162
162
|
// Create component with props
|
|
163
|
-
const component = await Promise.resolve(componentFactory(
|
|
163
|
+
const component = await Promise.resolve(componentFactory(props));
|
|
164
164
|
if (!component) {
|
|
165
165
|
setHtml('Error: Component factory returned null/undefined');
|
|
166
166
|
return;
|
|
@@ -177,9 +177,9 @@ export async function createCoherentClientComponent(componentFactory, options =
|
|
|
177
177
|
}
|
|
178
178
|
setHtml(renderedHtml);
|
|
179
179
|
}
|
|
180
|
-
catch (
|
|
181
|
-
console.
|
|
182
|
-
setHtml(`Error: ${
|
|
180
|
+
catch (_error) {
|
|
181
|
+
console._error('Coherent.js Next.js Client Component _error:', _error);
|
|
182
|
+
setHtml(`Error: ${_error.message}`);
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
185
|
renderComponent();
|
|
@@ -208,8 +208,8 @@ export async function createNextIntegration(options = {}) {
|
|
|
208
208
|
createCoherentClientComponent: (componentFactory, componentOptions = {}) => createCoherentClientComponent(componentFactory, { ...options, ...componentOptions })
|
|
209
209
|
};
|
|
210
210
|
}
|
|
211
|
-
catch (
|
|
212
|
-
throw
|
|
211
|
+
catch (_error) {
|
|
212
|
+
throw _error;
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
215
|
// Export all utilities
|
package/dist/nextjs/index.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* npm install next react
|
|
9
9
|
*
|
|
10
10
|
* Usage:
|
|
11
|
-
* import { createNextIntegration } from '@
|
|
11
|
+
* import { createNextIntegration } from '@coherentjs/core/nextjs';
|
|
12
12
|
*/
|
|
13
13
|
export { createCoherentNextHandler, createCoherentAppRouterHandler, createCoherentServerComponent, createCoherentClientComponent, createNextIntegration } from './coherent-nextjs.js';
|
|
14
14
|
export { default } from './coherent-nextjs.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coherent.js/nextjs",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.5",
|
|
4
4
|
"description": "Next.js integration for Coherent.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -29,11 +29,12 @@
|
|
|
29
29
|
"peerDependencies": {
|
|
30
30
|
"next": ">=13.0.0 < 16.0.0",
|
|
31
31
|
"react": ">=18.0.0 < 20.0.0",
|
|
32
|
-
"@coherent.js/core": "1.0.0-beta.
|
|
32
|
+
"@coherent.js/core": "1.0.0-beta.5"
|
|
33
33
|
},
|
|
34
34
|
"publishConfig": {
|
|
35
35
|
"access": "public"
|
|
36
36
|
},
|
|
37
|
+
"sideEffects": false,
|
|
37
38
|
"scripts": {
|
|
38
39
|
"build": "node build.mjs",
|
|
39
40
|
"clean": "rm -rf dist/",
|