@sitecore-jss/sitecore-jss-nextjs 22.5.0-beta.3 → 22.5.0-canary.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.
- package/dist/cjs/editing/editing-render-middleware.js +19 -58
- package/dist/cjs/editing/index.js +1 -6
- package/dist/cjs/index.js +2 -5
- package/dist/esm/editing/editing-render-middleware.js +19 -57
- package/dist/esm/editing/index.js +1 -2
- package/dist/esm/index.js +1 -2
- package/package.json +5 -5
- package/types/editing/editing-render-middleware.d.ts +2 -23
- package/types/editing/index.d.ts +1 -2
- package/types/index.d.ts +1 -2
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.EditingRenderMiddleware = exports.MetadataHandler = exports.
|
|
12
|
+
exports.EditingRenderMiddleware = exports.MetadataHandler = exports.isEditingMetadataPreviewData = exports.ChromesHandler = void 0;
|
|
13
13
|
const constants_1 = require("next/constants");
|
|
14
14
|
const sitecore_jss_1 = require("@sitecore-jss/sitecore-jss");
|
|
15
15
|
const layout_1 = require("@sitecore-jss/sitecore-jss/layout");
|
|
@@ -49,10 +49,8 @@ class ChromesHandler extends render_middleware_1.RenderMiddlewareBase {
|
|
|
49
49
|
* @param {NextApiRequest} req
|
|
50
50
|
*/
|
|
51
51
|
this.defaultResolveServerUrl = (req) => {
|
|
52
|
-
// to preserve auth headers, use https if we're in our 3 main hosting options
|
|
53
|
-
const useHttps = (process.env.VERCEL || process.env.SITECORE || process.env.NETLIFY) !== undefined;
|
|
54
52
|
// use https for requests with auth but also support unsecured http rendering hosts
|
|
55
|
-
return `${
|
|
53
|
+
return `${req.headers.authorization || process.env.VERCEL ? 'https' : 'http'}://${req.headers.host}`;
|
|
56
54
|
};
|
|
57
55
|
this.editingDataService = (_a = config === null || config === void 0 ? void 0 : config.editingDataService) !== null && _a !== void 0 ? _a : editing_data_service_1.editingDataService;
|
|
58
56
|
this.dataFetcher = (_b = config === null || config === void 0 ? void 0 : config.dataFetcher) !== null && _b !== void 0 ? _b : new sitecore_jss_1.NativeDataFetcher({ debugger: sitecore_jss_1.debug.editing });
|
|
@@ -93,7 +91,6 @@ class ChromesHandler extends render_middleware_1.RenderMiddlewareBase {
|
|
|
93
91
|
requestUrl.searchParams.append('timestamp', Date.now().toString());
|
|
94
92
|
const pageRes = yield this.dataFetcher
|
|
95
93
|
.get(requestUrl.toString(), {
|
|
96
|
-
credentials: 'include',
|
|
97
94
|
headers,
|
|
98
95
|
})
|
|
99
96
|
.catch((err) => {
|
|
@@ -187,19 +184,6 @@ const isEditingMetadataPreviewData = (data) => {
|
|
|
187
184
|
data.editMode === layout_1.EditMode.Metadata);
|
|
188
185
|
};
|
|
189
186
|
exports.isEditingMetadataPreviewData = isEditingMetadataPreviewData;
|
|
190
|
-
/**
|
|
191
|
-
* Type guard for Component Library mode
|
|
192
|
-
* @param {object} data preview data to check
|
|
193
|
-
* @returns true if the data is EditingMetadataPreviewData
|
|
194
|
-
* @see EditingMetadataPreviewData
|
|
195
|
-
*/
|
|
196
|
-
const isComponentLibraryPreviewData = (data) => {
|
|
197
|
-
return (typeof data === 'object' &&
|
|
198
|
-
data !== null &&
|
|
199
|
-
'mode' in data &&
|
|
200
|
-
data.mode === 'library');
|
|
201
|
-
};
|
|
202
|
-
exports.isComponentLibraryPreviewData = isComponentLibraryPreviewData;
|
|
203
187
|
/**
|
|
204
188
|
* Handler for the Editing Metadata GET requests.
|
|
205
189
|
* This handler is responsible for redirecting the request to the page route.
|
|
@@ -213,17 +197,13 @@ class MetadataHandler {
|
|
|
213
197
|
var _a, _b, _c;
|
|
214
198
|
const { query } = req;
|
|
215
199
|
const startTimestamp = Date.now();
|
|
216
|
-
const
|
|
217
|
-
const metadataDefaultRequiredParams = ['sc_site', 'sc_itemid', 'sc_lang', 'route', 'mode'];
|
|
218
|
-
const metadataComponentRequiredParams = [
|
|
200
|
+
const requiredQueryParams = [
|
|
219
201
|
'sc_site',
|
|
220
202
|
'sc_itemid',
|
|
221
|
-
'sc_renderingId',
|
|
222
|
-
'sc_uid',
|
|
223
203
|
'sc_lang',
|
|
204
|
+
'route',
|
|
224
205
|
'mode',
|
|
225
206
|
];
|
|
226
|
-
const requiredQueryParams = mode === 'library' ? metadataComponentRequiredParams : metadataDefaultRequiredParams;
|
|
227
207
|
const missingQueryParams = requiredQueryParams.filter((param) => !query[param]);
|
|
228
208
|
// Validate query parameters
|
|
229
209
|
if (missingQueryParams.length) {
|
|
@@ -232,40 +212,21 @@ class MetadataHandler {
|
|
|
232
212
|
html: `<html><body>Missing required query parameters: ${missingQueryParams.join(', ')}</body></html>`,
|
|
233
213
|
});
|
|
234
214
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
query.
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
else {
|
|
253
|
-
res.setPreviewData({
|
|
254
|
-
site: query.sc_site,
|
|
255
|
-
itemId: query.sc_itemid,
|
|
256
|
-
language: query.sc_lang,
|
|
257
|
-
// for sc_variantId we may employ multiple variants (page-layout + component level)
|
|
258
|
-
variantIds: ((_a = query.sc_variant) === null || _a === void 0 ? void 0 : _a.split(',')) || [personalize_1.DEFAULT_VARIANT],
|
|
259
|
-
version: query.sc_version,
|
|
260
|
-
editMode: layout_1.EditMode.Metadata,
|
|
261
|
-
pageState: query.mode,
|
|
262
|
-
layoutKind: query.sc_layoutKind,
|
|
263
|
-
},
|
|
264
|
-
// Cache the preview data for 3 seconds to ensure the page is rendered with the correct preview data not the cached one
|
|
265
|
-
{
|
|
266
|
-
maxAge: 3,
|
|
267
|
-
});
|
|
268
|
-
}
|
|
215
|
+
res.setPreviewData({
|
|
216
|
+
site: query.sc_site,
|
|
217
|
+
itemId: query.sc_itemid,
|
|
218
|
+
language: query.sc_lang,
|
|
219
|
+
// for sc_variantId we may employ multiple variants (page-layout + component level)
|
|
220
|
+
variantIds: ((_a = query.sc_variant) === null || _a === void 0 ? void 0 : _a.split(',')) || [personalize_1.DEFAULT_VARIANT],
|
|
221
|
+
version: query.sc_version,
|
|
222
|
+
editMode: layout_1.EditMode.Metadata,
|
|
223
|
+
pageState: query.mode,
|
|
224
|
+
layoutKind: query.sc_layoutKind,
|
|
225
|
+
},
|
|
226
|
+
// Cache the preview data for 3 seconds to ensure the page is rendered with the correct preview data not the cached one
|
|
227
|
+
{
|
|
228
|
+
maxAge: 3,
|
|
229
|
+
});
|
|
269
230
|
// Cookies with the SameSite=Lax policy set by Next.js setPreviewData function causes CORS issue
|
|
270
231
|
// when Next.js preview mode is activated, resulting the page to render in normal mode instead.
|
|
271
232
|
// By replacing it with "SameSite=None; Secure", we ensure cookies are correctly sent with
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.EditingConfigMiddleware = exports.FEAASRenderMiddleware = exports.VercelEditingDataCache = exports.editingDataService = exports.ServerlessEditingDataService = exports.BasicEditingDataService = exports.isEditingMetadataPreviewData = exports.EditingRenderMiddleware = exports.EditingDataMiddleware = exports.EditingDataDiskCache = exports.GraphQLEditingService = void 0;
|
|
4
4
|
var editing_1 = require("@sitecore-jss/sitecore-jss/editing");
|
|
5
5
|
Object.defineProperty(exports, "GraphQLEditingService", { enumerable: true, get: function () { return editing_1.GraphQLEditingService; } });
|
|
6
6
|
var editing_data_cache_1 = require("./editing-data-cache");
|
|
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "EditingDataMiddleware", { enumerable: true, get:
|
|
|
10
10
|
var editing_render_middleware_1 = require("./editing-render-middleware");
|
|
11
11
|
Object.defineProperty(exports, "EditingRenderMiddleware", { enumerable: true, get: function () { return editing_render_middleware_1.EditingRenderMiddleware; } });
|
|
12
12
|
Object.defineProperty(exports, "isEditingMetadataPreviewData", { enumerable: true, get: function () { return editing_render_middleware_1.isEditingMetadataPreviewData; } });
|
|
13
|
-
Object.defineProperty(exports, "isComponentLibraryPreviewData", { enumerable: true, get: function () { return editing_render_middleware_1.isComponentLibraryPreviewData; } });
|
|
14
13
|
var editing_data_service_1 = require("./editing-data-service");
|
|
15
14
|
Object.defineProperty(exports, "BasicEditingDataService", { enumerable: true, get: function () { return editing_data_service_1.BasicEditingDataService; } });
|
|
16
15
|
Object.defineProperty(exports, "ServerlessEditingDataService", { enumerable: true, get: function () { return editing_data_service_1.ServerlessEditingDataService; } });
|
|
@@ -21,7 +20,3 @@ var feaas_render_middleware_1 = require("./feaas-render-middleware");
|
|
|
21
20
|
Object.defineProperty(exports, "FEAASRenderMiddleware", { enumerable: true, get: function () { return feaas_render_middleware_1.FEAASRenderMiddleware; } });
|
|
22
21
|
var editing_config_middleware_1 = require("./editing-config-middleware");
|
|
23
22
|
Object.defineProperty(exports, "EditingConfigMiddleware", { enumerable: true, get: function () { return editing_config_middleware_1.EditingConfigMiddleware; } });
|
|
24
|
-
var layout_1 = require("@sitecore-jss/sitecore-jss/layout");
|
|
25
|
-
Object.defineProperty(exports, "RenderingType", { enumerable: true, get: function () { return layout_1.RenderingType; } });
|
|
26
|
-
Object.defineProperty(exports, "EDITING_COMPONENT_PLACEHOLDER", { enumerable: true, get: function () { return layout_1.EDITING_COMPONENT_PLACEHOLDER; } });
|
|
27
|
-
Object.defineProperty(exports, "EDITING_COMPONENT_ID", { enumerable: true, get: function () { return layout_1.EDITING_COMPONENT_ID; } });
|
package/dist/cjs/index.js
CHANGED
|
@@ -23,8 +23,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.FEaaSComponent = exports.EditFrame = exports.DateField = exports.Text = exports.Image = exports.ComponentBuilder = exports.BYOCWrapper = exports.FEaaSWrapper = exports.NextImage = exports.Placeholder = exports.RichText = exports.Link = exports.useComponentProps = exports.ComponentPropsContext = exports.ComponentPropsReactContext = exports.normalizeSiteRewrite = exports.getSiteRewriteData = exports.getSiteRewrite = exports.GraphQLSiteInfoService = exports.SiteResolver = exports.GraphQLRobotsService = exports.GraphQLErrorPagesService = exports.GraphQLSitemapXmlService = exports.MultisiteGraphQLSitemapService = exports.GraphQLSitemapService = exports.DisconnectedSitemapService = exports.ComponentPropsService = exports.CdpHelper = exports.normalizePersonalizedRewrite = exports.getGroomedVariantIds = exports.getPersonalizedRewriteData = exports.getPersonalizedRewrite = exports.personalizeLayout = exports.RestDictionaryService = exports.GraphQLDictionaryService = exports.trackingApi = exports.mediaApi = exports.
|
|
27
|
-
exports.EditingScripts = exports.withEmptyFieldEditingComponent = exports.withFieldMetadata = exports.withDatasourceCheck = exports.withPlaceholder = exports.withEditorChromes = exports.useSitecoreContext = exports.withSitecoreContext = exports.SitecoreContextReactContext = exports.SitecoreContext = exports.VisitorIdentification = exports.DefaultEmptyFieldEditingComponentText = exports.DefaultEmptyFieldEditingComponentImage = exports.
|
|
26
|
+
exports.fetchFEaaSComponentServerProps = exports.FEaaSComponent = exports.EditFrame = exports.DateField = exports.Text = exports.Image = exports.ComponentBuilder = exports.BYOCWrapper = exports.FEaaSWrapper = exports.NextImage = exports.Placeholder = exports.RichText = exports.Link = exports.useComponentProps = exports.ComponentPropsContext = exports.ComponentPropsReactContext = exports.normalizeSiteRewrite = exports.getSiteRewriteData = exports.getSiteRewrite = exports.GraphQLSiteInfoService = exports.SiteResolver = exports.GraphQLRobotsService = exports.GraphQLErrorPagesService = exports.GraphQLSitemapXmlService = exports.MultisiteGraphQLSitemapService = exports.GraphQLSitemapService = exports.DisconnectedSitemapService = exports.ComponentPropsService = exports.CdpHelper = exports.normalizePersonalizedRewrite = exports.getGroomedVariantIds = exports.getPersonalizedRewriteData = exports.getPersonalizedRewrite = exports.personalizeLayout = exports.RestDictionaryService = exports.GraphQLDictionaryService = exports.trackingApi = exports.mediaApi = exports.EditMode = exports.getContentStylesheetLink = exports.getFieldValue = exports.getChildPlaceholder = exports.RestLayoutService = exports.GraphQLLayoutService = exports.LayoutServicePageState = exports.MemoryCacheClient = exports.debug = exports.enableDebug = exports.NativeDataFetcher = exports.constants = void 0;
|
|
27
|
+
exports.EditingScripts = exports.withEmptyFieldEditingComponent = exports.withFieldMetadata = exports.withDatasourceCheck = exports.withPlaceholder = exports.withEditorChromes = exports.useSitecoreContext = exports.withSitecoreContext = exports.SitecoreContextReactContext = exports.SitecoreContext = exports.VisitorIdentification = exports.DefaultEmptyFieldEditingComponentText = exports.DefaultEmptyFieldEditingComponentImage = exports.File = exports.getComponentLibraryStylesheetLinks = exports.BYOCComponent = void 0;
|
|
28
28
|
var sitecore_jss_1 = require("@sitecore-jss/sitecore-jss");
|
|
29
29
|
Object.defineProperty(exports, "constants", { enumerable: true, get: function () { return sitecore_jss_1.constants; } });
|
|
30
30
|
Object.defineProperty(exports, "NativeDataFetcher", { enumerable: true, get: function () { return sitecore_jss_1.NativeDataFetcher; } });
|
|
@@ -39,8 +39,6 @@ Object.defineProperty(exports, "getChildPlaceholder", { enumerable: true, get: f
|
|
|
39
39
|
Object.defineProperty(exports, "getFieldValue", { enumerable: true, get: function () { return layout_1.getFieldValue; } });
|
|
40
40
|
Object.defineProperty(exports, "getContentStylesheetLink", { enumerable: true, get: function () { return layout_1.getContentStylesheetLink; } });
|
|
41
41
|
Object.defineProperty(exports, "EditMode", { enumerable: true, get: function () { return layout_1.EditMode; } });
|
|
42
|
-
var editing_1 = require("@sitecore-jss/sitecore-jss/editing");
|
|
43
|
-
Object.defineProperty(exports, "RestComponentLayoutService", { enumerable: true, get: function () { return editing_1.RestComponentLayoutService; } });
|
|
44
42
|
var media_1 = require("@sitecore-jss/sitecore-jss/media");
|
|
45
43
|
Object.defineProperty(exports, "mediaApi", { enumerable: true, get: function () { return media_1.mediaApi; } });
|
|
46
44
|
var tracking_1 = require("@sitecore-jss/sitecore-jss/tracking");
|
|
@@ -100,7 +98,6 @@ Object.defineProperty(exports, "fetchFEaaSComponentServerProps", { enumerable: t
|
|
|
100
98
|
Object.defineProperty(exports, "BYOCComponent", { enumerable: true, get: function () { return sitecore_jss_react_1.BYOCComponent; } });
|
|
101
99
|
Object.defineProperty(exports, "getComponentLibraryStylesheetLinks", { enumerable: true, get: function () { return sitecore_jss_react_1.getComponentLibraryStylesheetLinks; } });
|
|
102
100
|
Object.defineProperty(exports, "File", { enumerable: true, get: function () { return sitecore_jss_react_1.File; } });
|
|
103
|
-
Object.defineProperty(exports, "ComponentLibraryLayout", { enumerable: true, get: function () { return sitecore_jss_react_1.ComponentLibraryLayout; } });
|
|
104
101
|
Object.defineProperty(exports, "DefaultEmptyFieldEditingComponentImage", { enumerable: true, get: function () { return sitecore_jss_react_1.DefaultEmptyFieldEditingComponentImage; } });
|
|
105
102
|
Object.defineProperty(exports, "DefaultEmptyFieldEditingComponentText", { enumerable: true, get: function () { return sitecore_jss_react_1.DefaultEmptyFieldEditingComponentText; } });
|
|
106
103
|
Object.defineProperty(exports, "VisitorIdentification", { enumerable: true, get: function () { return sitecore_jss_react_1.VisitorIdentification; } });
|
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import { STATIC_PROPS_ID, SERVER_PROPS_ID } from 'next/constants';
|
|
11
11
|
import { NativeDataFetcher, debug } from '@sitecore-jss/sitecore-jss';
|
|
12
|
-
import { EditMode
|
|
12
|
+
import { EditMode } from '@sitecore-jss/sitecore-jss/layout';
|
|
13
13
|
import { QUERY_PARAM_EDITING_SECRET, EDITING_ALLOWED_ORIGINS, } from '@sitecore-jss/sitecore-jss/editing';
|
|
14
14
|
import { editingDataService } from './editing-data-service';
|
|
15
15
|
import { getJssEditingSecret } from '../utils/utils';
|
|
@@ -46,10 +46,8 @@ export class ChromesHandler extends RenderMiddlewareBase {
|
|
|
46
46
|
* @param {NextApiRequest} req
|
|
47
47
|
*/
|
|
48
48
|
this.defaultResolveServerUrl = (req) => {
|
|
49
|
-
// to preserve auth headers, use https if we're in our 3 main hosting options
|
|
50
|
-
const useHttps = (process.env.VERCEL || process.env.SITECORE || process.env.NETLIFY) !== undefined;
|
|
51
49
|
// use https for requests with auth but also support unsecured http rendering hosts
|
|
52
|
-
return `${
|
|
50
|
+
return `${req.headers.authorization || process.env.VERCEL ? 'https' : 'http'}://${req.headers.host}`;
|
|
53
51
|
};
|
|
54
52
|
this.editingDataService = (_a = config === null || config === void 0 ? void 0 : config.editingDataService) !== null && _a !== void 0 ? _a : editingDataService;
|
|
55
53
|
this.dataFetcher = (_b = config === null || config === void 0 ? void 0 : config.dataFetcher) !== null && _b !== void 0 ? _b : new NativeDataFetcher({ debugger: debug.editing });
|
|
@@ -90,7 +88,6 @@ export class ChromesHandler extends RenderMiddlewareBase {
|
|
|
90
88
|
requestUrl.searchParams.append('timestamp', Date.now().toString());
|
|
91
89
|
const pageRes = yield this.dataFetcher
|
|
92
90
|
.get(requestUrl.toString(), {
|
|
93
|
-
credentials: 'include',
|
|
94
91
|
headers,
|
|
95
92
|
})
|
|
96
93
|
.catch((err) => {
|
|
@@ -182,18 +179,6 @@ export const isEditingMetadataPreviewData = (data) => {
|
|
|
182
179
|
'editMode' in data &&
|
|
183
180
|
data.editMode === EditMode.Metadata);
|
|
184
181
|
};
|
|
185
|
-
/**
|
|
186
|
-
* Type guard for Component Library mode
|
|
187
|
-
* @param {object} data preview data to check
|
|
188
|
-
* @returns true if the data is EditingMetadataPreviewData
|
|
189
|
-
* @see EditingMetadataPreviewData
|
|
190
|
-
*/
|
|
191
|
-
export const isComponentLibraryPreviewData = (data) => {
|
|
192
|
-
return (typeof data === 'object' &&
|
|
193
|
-
data !== null &&
|
|
194
|
-
'mode' in data &&
|
|
195
|
-
data.mode === 'library');
|
|
196
|
-
};
|
|
197
182
|
/**
|
|
198
183
|
* Handler for the Editing Metadata GET requests.
|
|
199
184
|
* This handler is responsible for redirecting the request to the page route.
|
|
@@ -207,17 +192,13 @@ export class MetadataHandler {
|
|
|
207
192
|
var _a, _b, _c;
|
|
208
193
|
const { query } = req;
|
|
209
194
|
const startTimestamp = Date.now();
|
|
210
|
-
const
|
|
211
|
-
const metadataDefaultRequiredParams = ['sc_site', 'sc_itemid', 'sc_lang', 'route', 'mode'];
|
|
212
|
-
const metadataComponentRequiredParams = [
|
|
195
|
+
const requiredQueryParams = [
|
|
213
196
|
'sc_site',
|
|
214
197
|
'sc_itemid',
|
|
215
|
-
'sc_renderingId',
|
|
216
|
-
'sc_uid',
|
|
217
198
|
'sc_lang',
|
|
199
|
+
'route',
|
|
218
200
|
'mode',
|
|
219
201
|
];
|
|
220
|
-
const requiredQueryParams = mode === 'library' ? metadataComponentRequiredParams : metadataDefaultRequiredParams;
|
|
221
202
|
const missingQueryParams = requiredQueryParams.filter((param) => !query[param]);
|
|
222
203
|
// Validate query parameters
|
|
223
204
|
if (missingQueryParams.length) {
|
|
@@ -226,40 +207,21 @@ export class MetadataHandler {
|
|
|
226
207
|
html: `<html><body>Missing required query parameters: ${missingQueryParams.join(', ')}</body></html>`,
|
|
227
208
|
});
|
|
228
209
|
}
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
query.
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
});
|
|
245
|
-
}
|
|
246
|
-
else {
|
|
247
|
-
res.setPreviewData({
|
|
248
|
-
site: query.sc_site,
|
|
249
|
-
itemId: query.sc_itemid,
|
|
250
|
-
language: query.sc_lang,
|
|
251
|
-
// for sc_variantId we may employ multiple variants (page-layout + component level)
|
|
252
|
-
variantIds: ((_a = query.sc_variant) === null || _a === void 0 ? void 0 : _a.split(',')) || [DEFAULT_VARIANT],
|
|
253
|
-
version: query.sc_version,
|
|
254
|
-
editMode: EditMode.Metadata,
|
|
255
|
-
pageState: query.mode,
|
|
256
|
-
layoutKind: query.sc_layoutKind,
|
|
257
|
-
},
|
|
258
|
-
// Cache the preview data for 3 seconds to ensure the page is rendered with the correct preview data not the cached one
|
|
259
|
-
{
|
|
260
|
-
maxAge: 3,
|
|
261
|
-
});
|
|
262
|
-
}
|
|
210
|
+
res.setPreviewData({
|
|
211
|
+
site: query.sc_site,
|
|
212
|
+
itemId: query.sc_itemid,
|
|
213
|
+
language: query.sc_lang,
|
|
214
|
+
// for sc_variantId we may employ multiple variants (page-layout + component level)
|
|
215
|
+
variantIds: ((_a = query.sc_variant) === null || _a === void 0 ? void 0 : _a.split(',')) || [DEFAULT_VARIANT],
|
|
216
|
+
version: query.sc_version,
|
|
217
|
+
editMode: EditMode.Metadata,
|
|
218
|
+
pageState: query.mode,
|
|
219
|
+
layoutKind: query.sc_layoutKind,
|
|
220
|
+
},
|
|
221
|
+
// Cache the preview data for 3 seconds to ensure the page is rendered with the correct preview data not the cached one
|
|
222
|
+
{
|
|
223
|
+
maxAge: 3,
|
|
224
|
+
});
|
|
263
225
|
// Cookies with the SameSite=Lax policy set by Next.js setPreviewData function causes CORS issue
|
|
264
226
|
// when Next.js preview mode is activated, resulting the page to render in normal mode instead.
|
|
265
227
|
// By replacing it with "SameSite=None; Secure", we ensure cookies are correctly sent with
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
export { GraphQLEditingService } from '@sitecore-jss/sitecore-jss/editing';
|
|
2
2
|
export { EditingDataDiskCache } from './editing-data-cache';
|
|
3
3
|
export { EditingDataMiddleware } from './editing-data-middleware';
|
|
4
|
-
export { EditingRenderMiddleware, isEditingMetadataPreviewData,
|
|
4
|
+
export { EditingRenderMiddleware, isEditingMetadataPreviewData, } from './editing-render-middleware';
|
|
5
5
|
export { BasicEditingDataService, ServerlessEditingDataService, editingDataService, } from './editing-data-service';
|
|
6
6
|
export { VercelEditingDataCache } from './vercel-editing-data-cache';
|
|
7
7
|
export { FEAASRenderMiddleware } from './feaas-render-middleware';
|
|
8
8
|
export { EditingConfigMiddleware, } from './editing-config-middleware';
|
|
9
|
-
export { RenderingType, EDITING_COMPONENT_PLACEHOLDER, EDITING_COMPONENT_ID, } from '@sitecore-jss/sitecore-jss/layout';
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { constants, NativeDataFetcher, enableDebug, debug, MemoryCacheClient, } from '@sitecore-jss/sitecore-jss';
|
|
2
2
|
export { LayoutServicePageState, GraphQLLayoutService, RestLayoutService, getChildPlaceholder, getFieldValue, getContentStylesheetLink, EditMode, } from '@sitecore-jss/sitecore-jss/layout';
|
|
3
|
-
export { RestComponentLayoutService } from '@sitecore-jss/sitecore-jss/editing';
|
|
4
3
|
export { mediaApi } from '@sitecore-jss/sitecore-jss/media';
|
|
5
4
|
export { trackingApi, } from '@sitecore-jss/sitecore-jss/tracking';
|
|
6
5
|
export { GraphQLDictionaryService, RestDictionaryService, } from '@sitecore-jss/sitecore-jss/i18n';
|
|
@@ -20,4 +19,4 @@ import * as BYOCWrapper from './components/BYOCWrapper';
|
|
|
20
19
|
export { FEaaSWrapper };
|
|
21
20
|
export { BYOCWrapper };
|
|
22
21
|
export { ComponentBuilder } from './ComponentBuilder';
|
|
23
|
-
export { Image, Text, DateField, EditFrame, FEaaSComponent, fetchFEaaSComponentServerProps, BYOCComponent, getComponentLibraryStylesheetLinks, File,
|
|
22
|
+
export { Image, Text, DateField, EditFrame, FEaaSComponent, fetchFEaaSComponentServerProps, BYOCComponent, getComponentLibraryStylesheetLinks, File, DefaultEmptyFieldEditingComponentImage, DefaultEmptyFieldEditingComponentText, VisitorIdentification, SitecoreContext, SitecoreContextReactContext, withSitecoreContext, useSitecoreContext, withEditorChromes, withPlaceholder, withDatasourceCheck, withFieldMetadata, withEmptyFieldEditingComponent, EditingScripts, } from '@sitecore-jss/sitecore-jss-react';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sitecore-jss/sitecore-jss-nextjs",
|
|
3
|
-
"version": "22.5.0-
|
|
3
|
+
"version": "22.5.0-canary.2",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -73,9 +73,9 @@
|
|
|
73
73
|
"react-dom": "^18.2.0"
|
|
74
74
|
},
|
|
75
75
|
"dependencies": {
|
|
76
|
-
"@sitecore-jss/sitecore-jss": "^22.5.0-
|
|
77
|
-
"@sitecore-jss/sitecore-jss-dev-tools": "^22.5.0-
|
|
78
|
-
"@sitecore-jss/sitecore-jss-react": "^22.5.0-
|
|
76
|
+
"@sitecore-jss/sitecore-jss": "^22.5.0-canary.2",
|
|
77
|
+
"@sitecore-jss/sitecore-jss-dev-tools": "^22.5.0-canary.2",
|
|
78
|
+
"@sitecore-jss/sitecore-jss-react": "^22.5.0-canary.2",
|
|
79
79
|
"@vercel/kv": "^0.2.1",
|
|
80
80
|
"prop-types": "^15.8.1",
|
|
81
81
|
"regex-parser": "^2.2.11",
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
},
|
|
84
84
|
"description": "",
|
|
85
85
|
"types": "types/index.d.ts",
|
|
86
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "94b2dc150576ec94f08ab3941e2c10dce2516f72",
|
|
87
87
|
"files": [
|
|
88
88
|
"dist",
|
|
89
89
|
"types",
|
|
@@ -99,7 +99,7 @@ export type EditingRenderMiddlewareMetadataConfig = Pick<EditingRenderMiddleware
|
|
|
99
99
|
/**
|
|
100
100
|
* Next.js API request with Metadata query parameters.
|
|
101
101
|
*/
|
|
102
|
-
|
|
102
|
+
type MetadataNextApiRequest = NextApiRequest & {
|
|
103
103
|
query: RenderMetadataQueryParams;
|
|
104
104
|
};
|
|
105
105
|
/**
|
|
@@ -115,21 +115,6 @@ export type EditingMetadataPreviewData = {
|
|
|
115
115
|
version?: string;
|
|
116
116
|
layoutKind?: LayoutKind;
|
|
117
117
|
};
|
|
118
|
-
/**
|
|
119
|
-
* Data for Component Library rendering mode
|
|
120
|
-
*/
|
|
121
|
-
export interface ComponentLibraryRenderPreviewData {
|
|
122
|
-
site: string;
|
|
123
|
-
itemId: string;
|
|
124
|
-
renderingId: string;
|
|
125
|
-
componentUid: string;
|
|
126
|
-
language: string;
|
|
127
|
-
pageState: LayoutServicePageState;
|
|
128
|
-
mode?: 'library';
|
|
129
|
-
variant?: string;
|
|
130
|
-
version?: string;
|
|
131
|
-
dataSourceId?: string;
|
|
132
|
-
}
|
|
133
118
|
/**
|
|
134
119
|
* Type guard for EditingMetadataPreviewData
|
|
135
120
|
* @param {object} data preview data to check
|
|
@@ -137,13 +122,6 @@ export interface ComponentLibraryRenderPreviewData {
|
|
|
137
122
|
* @see EditingMetadataPreviewData
|
|
138
123
|
*/
|
|
139
124
|
export declare const isEditingMetadataPreviewData: (data: unknown) => data is EditingMetadataPreviewData;
|
|
140
|
-
/**
|
|
141
|
-
* Type guard for Component Library mode
|
|
142
|
-
* @param {object} data preview data to check
|
|
143
|
-
* @returns true if the data is EditingMetadataPreviewData
|
|
144
|
-
* @see EditingMetadataPreviewData
|
|
145
|
-
*/
|
|
146
|
-
export declare const isComponentLibraryPreviewData: (data: unknown) => data is ComponentLibraryRenderPreviewData;
|
|
147
125
|
/**
|
|
148
126
|
* Handler for the Editing Metadata GET requests.
|
|
149
127
|
* This handler is responsible for redirecting the request to the page route.
|
|
@@ -176,3 +154,4 @@ export declare class EditingRenderMiddleware extends RenderMiddlewareBase {
|
|
|
176
154
|
getHandler(): (req: NextApiRequest, res: NextApiResponse) => Promise<void>;
|
|
177
155
|
private handler;
|
|
178
156
|
}
|
|
157
|
+
export {};
|
package/types/editing/index.d.ts
CHANGED
|
@@ -2,9 +2,8 @@ export { GraphQLEditingService } from '@sitecore-jss/sitecore-jss/editing';
|
|
|
2
2
|
export { EditingData } from './editing-data';
|
|
3
3
|
export { EditingDataCache, EditingDataDiskCache } from './editing-data-cache';
|
|
4
4
|
export { EditingDataMiddleware, EditingDataMiddlewareConfig } from './editing-data-middleware';
|
|
5
|
-
export { EditingRenderMiddleware, EditingRenderMiddlewareConfig, EditingMetadataPreviewData, isEditingMetadataPreviewData,
|
|
5
|
+
export { EditingRenderMiddleware, EditingRenderMiddlewareConfig, EditingMetadataPreviewData, isEditingMetadataPreviewData, } from './editing-render-middleware';
|
|
6
6
|
export { EditingPreviewData, EditingDataService, BasicEditingDataService, BasicEditingDataServiceConfig, ServerlessEditingDataService, ServerlessEditingDataServiceConfig, editingDataService, } from './editing-data-service';
|
|
7
7
|
export { VercelEditingDataCache } from './vercel-editing-data-cache';
|
|
8
8
|
export { FEAASRenderMiddleware, FEAASRenderMiddlewareConfig } from './feaas-render-middleware';
|
|
9
9
|
export { EditingConfigMiddleware, EditingConfigMiddlewareConfig, } from './editing-config-middleware';
|
|
10
|
-
export { RenderingType, EDITING_COMPONENT_PLACEHOLDER, EDITING_COMPONENT_ID, } from '@sitecore-jss/sitecore-jss/layout';
|
package/types/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { constants, HttpDataFetcher, NativeDataFetcher, NativeDataFetcherConfig, NativeDataFetcherResponse, NativeDataFetcherError, HTMLLink, enableDebug, debug, CacheClient, CacheOptions, MemoryCacheClient, } from '@sitecore-jss/sitecore-jss';
|
|
2
2
|
export { LayoutService, LayoutServiceData, LayoutServicePageState, LayoutServiceContext, LayoutServiceContextData, GraphQLLayoutService, GraphQLLayoutServiceConfig, RestLayoutService, RestLayoutServiceConfig, PlaceholderData, PlaceholdersData, RouteData, Field, Item, HtmlElementRendering, getChildPlaceholder, getFieldValue, ComponentRendering, ComponentFields, ComponentParams, getContentStylesheetLink, EditMode, } from '@sitecore-jss/sitecore-jss/layout';
|
|
3
|
-
export { RestComponentLayoutService } from '@sitecore-jss/sitecore-jss/editing';
|
|
4
3
|
export { mediaApi } from '@sitecore-jss/sitecore-jss/media';
|
|
5
4
|
export { trackingApi, TrackingRequestOptions, CampaignInstance, GoalInstance, OutcomeInstance, EventInstance, PageViewInstance, } from '@sitecore-jss/sitecore-jss/tracking';
|
|
6
5
|
export { DictionaryPhrases, DictionaryService, GraphQLDictionaryService, GraphQLDictionaryServiceConfig, RestDictionaryService, RestDictionaryServiceConfig, } from '@sitecore-jss/sitecore-jss/i18n';
|
|
@@ -23,4 +22,4 @@ import * as BYOCWrapper from './components/BYOCWrapper';
|
|
|
23
22
|
export { FEaaSWrapper };
|
|
24
23
|
export { BYOCWrapper };
|
|
25
24
|
export { ComponentBuilder, ComponentBuilderConfig } from './ComponentBuilder';
|
|
26
|
-
export { ComponentFactory, Image, ImageField, ImageFieldValue, ImageProps, LinkField, LinkFieldValue, Text, TextField, DateField, EditFrame, FEaaSComponent, FEaaSComponentProps, FEaaSComponentParams, fetchFEaaSComponentServerProps, BYOCComponentParams, BYOCComponent, BYOCComponentProps, getComponentLibraryStylesheetLinks, File, FileField, RichTextField,
|
|
25
|
+
export { ComponentFactory, Image, ImageField, ImageFieldValue, ImageProps, LinkField, LinkFieldValue, Text, TextField, DateField, EditFrame, FEaaSComponent, FEaaSComponentProps, FEaaSComponentParams, fetchFEaaSComponentServerProps, BYOCComponentParams, BYOCComponent, BYOCComponentProps, getComponentLibraryStylesheetLinks, File, FileField, RichTextField, DefaultEmptyFieldEditingComponentImage, DefaultEmptyFieldEditingComponentText, VisitorIdentification, PlaceholderComponentProps, SitecoreContext, SitecoreContextState, SitecoreContextValue, SitecoreContextReactContext, withSitecoreContext, useSitecoreContext, withEditorChromes, withPlaceholder, withDatasourceCheck, ImageSizeParameters, WithSitecoreContextOptions, WithSitecoreContextProps, WithSitecoreContextHocProps, withFieldMetadata, withEmptyFieldEditingComponent, EditingScripts, } from '@sitecore-jss/sitecore-jss-react';
|