@sitecore-content-sdk/nextjs 1.6.1 → 1.6.2-canary.20261106205936

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.
Files changed (64) hide show
  1. package/dist/cjs/client/sitecore-nextjs-client.js +57 -94
  2. package/dist/cjs/components/BYOCWrapper.js +3 -12
  3. package/dist/cjs/components/DesignLibrary/DesignLibraryApp.js +22 -0
  4. package/dist/cjs/components/FEaaSWrapper.js +3 -12
  5. package/dist/cjs/editing/constants.js +7 -1
  6. package/dist/cjs/editing/editing-config-middleware.js +2 -11
  7. package/dist/cjs/editing/editing-render-middleware.js +3 -12
  8. package/dist/cjs/editing/feaas-render-middleware.js +2 -11
  9. package/dist/cjs/editing/utils.js +3 -12
  10. package/dist/cjs/index.js +3 -2
  11. package/dist/cjs/middleware/locale-middleware.js +2 -11
  12. package/dist/cjs/middleware/middleware.js +3 -12
  13. package/dist/cjs/middleware/multisite-middleware.js +2 -11
  14. package/dist/cjs/middleware/personalize-middleware.js +22 -35
  15. package/dist/cjs/middleware/preview-middleware.js +4 -13
  16. package/dist/cjs/middleware/redirects-middleware.js +61 -72
  17. package/dist/cjs/middleware/robots-middleware.js +14 -25
  18. package/dist/cjs/middleware/sitemap-middleware.js +17 -28
  19. package/dist/cjs/monitoring/healthcheck-middleware.js +2 -11
  20. package/dist/cjs/route-handler/editing-config-route-handler.js +4 -13
  21. package/dist/cjs/route-handler/editing-render-route-handler.js +23 -31
  22. package/dist/cjs/route-handler/robots-route-handler.js +5 -14
  23. package/dist/cjs/route-handler/sitemap-route-handler.js +5 -14
  24. package/dist/cjs/server-actions/update-server-component-action.js +65 -0
  25. package/dist/cjs/services/component-props-service.js +63 -80
  26. package/dist/cjs/utils/utils.js +73 -1
  27. package/dist/esm/client/sitecore-nextjs-client.js +57 -94
  28. package/dist/esm/components/BYOCWrapper.js +3 -12
  29. package/dist/esm/components/DesignLibrary/DesignLibraryApp.js +15 -0
  30. package/dist/esm/components/FEaaSWrapper.js +3 -12
  31. package/dist/esm/editing/constants.js +6 -0
  32. package/dist/esm/editing/editing-config-middleware.js +2 -11
  33. package/dist/esm/editing/editing-render-middleware.js +3 -12
  34. package/dist/esm/editing/feaas-render-middleware.js +2 -11
  35. package/dist/esm/editing/utils.js +3 -12
  36. package/dist/esm/index.js +2 -1
  37. package/dist/esm/middleware/locale-middleware.js +2 -11
  38. package/dist/esm/middleware/middleware.js +3 -12
  39. package/dist/esm/middleware/multisite-middleware.js +2 -11
  40. package/dist/esm/middleware/personalize-middleware.js +22 -35
  41. package/dist/esm/middleware/preview-middleware.js +4 -13
  42. package/dist/esm/middleware/redirects-middleware.js +61 -72
  43. package/dist/esm/middleware/robots-middleware.js +14 -25
  44. package/dist/esm/middleware/sitemap-middleware.js +17 -28
  45. package/dist/esm/monitoring/healthcheck-middleware.js +2 -11
  46. package/dist/esm/route-handler/editing-config-route-handler.js +4 -13
  47. package/dist/esm/route-handler/editing-render-route-handler.js +24 -32
  48. package/dist/esm/route-handler/robots-route-handler.js +5 -14
  49. package/dist/esm/route-handler/sitemap-route-handler.js +5 -14
  50. package/dist/esm/server-actions/update-server-component-action.js +61 -0
  51. package/dist/esm/services/component-props-service.js +63 -80
  52. package/dist/esm/utils/utils.js +36 -0
  53. package/package.json +1 -1
  54. package/types/components/DesignLibrary/DesignLibraryApp.d.ts +14 -0
  55. package/types/components/DesignLibrary/DesignLibraryApp.d.ts.map +1 -0
  56. package/types/editing/constants.d.ts +6 -0
  57. package/types/editing/constants.d.ts.map +1 -1
  58. package/types/index.d.ts +2 -1
  59. package/types/index.d.ts.map +1 -1
  60. package/types/route-handler/editing-render-route-handler.d.ts.map +1 -1
  61. package/types/server-actions/update-server-component-action.d.ts +58 -0
  62. package/types/server-actions/update-server-component-action.d.ts.map +1 -0
  63. package/types/utils/utils.d.ts +21 -0
  64. package/types/utils/utils.d.ts.map +1 -1
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.SitecoreNextjsClient = void 0;
13
4
  const client_1 = require("@sitecore-content-sdk/core/client");
@@ -45,23 +36,17 @@ class SitecoreNextjsClient extends client_1.SitecoreClient {
45
36
  const basePath = super.parsePath(path);
46
37
  return (0, site_1.normalizeSiteRewrite)((0, personalize_1.normalizePersonalizedRewrite)(basePath));
47
38
  }
48
- getPage(path, pageOptions, options) {
49
- const _super = Object.create(null, {
50
- parsePath: { get: () => super.parsePath },
51
- getPage: { get: () => super.getPage }
52
- });
53
- return __awaiter(this, void 0, void 0, function* () {
54
- const resolvedPath = this.parsePath(path);
55
- // Get variant(s) for personalization (from path), must ensure path is of type string
56
- const personalizeData = pageOptions.personalize || (0, personalize_1.getPersonalizedRewriteData)(_super.parsePath.call(this, path));
57
- const site = pageOptions.site || this.getSiteNameFromPath(path);
58
- const page = yield _super.getPage.call(this, resolvedPath, {
59
- locale: pageOptions.locale,
60
- site,
61
- personalize: personalizeData,
62
- }, options);
63
- return page;
64
- });
39
+ async getPage(path, pageOptions, options) {
40
+ const resolvedPath = this.parsePath(path);
41
+ // Get variant(s) for personalization (from path), must ensure path is of type string
42
+ const personalizeData = pageOptions.personalize || (0, personalize_1.getPersonalizedRewriteData)(super.parsePath(path));
43
+ const site = pageOptions.site || this.getSiteNameFromPath(path);
44
+ const page = await super.getPage(resolvedPath, {
45
+ locale: pageOptions.locale,
46
+ site,
47
+ personalize: personalizeData,
48
+ }, options);
49
+ return page;
65
50
  }
66
51
  /**
67
52
  * Get design library page details for Design Library mode of your app
@@ -69,26 +54,16 @@ class SitecoreNextjsClient extends client_1.SitecoreClient {
69
54
  * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests
70
55
  * @returns {Page} preview page for Design Library
71
56
  */
72
- getDesignLibraryData(designLibData, fetchOptions) {
73
- const _super = Object.create(null, {
74
- getDesignLibraryData: { get: () => super.getDesignLibraryData }
75
- });
76
- return __awaiter(this, void 0, void 0, function* () {
77
- return _super.getDesignLibraryData.call(this, designLibData, fetchOptions);
78
- });
57
+ async getDesignLibraryData(designLibData, fetchOptions) {
58
+ return super.getDesignLibraryData(designLibData, fetchOptions);
79
59
  }
80
60
  /**
81
61
  * Retrieves preview page and layout details
82
62
  * @param {PreviewData} previewData - The editing preview data for metadata mode.
83
63
  * @param {FetchOptions} [fetchOptions] Additional fetch fetch options to override GraphQL requests (like retries and fetch)
84
64
  */
85
- getPreview(previewData, fetchOptions) {
86
- const _super = Object.create(null, {
87
- getPreview: { get: () => super.getPreview }
88
- });
89
- return __awaiter(this, void 0, void 0, function* () {
90
- return _super.getPreview.call(this, previewData, fetchOptions);
91
- });
65
+ async getPreview(previewData, fetchOptions) {
66
+ return super.getPreview(previewData, fetchOptions);
92
67
  }
93
68
  /**
94
69
  * Generates static params for the Next.js App Router from Sitecore routes.
@@ -104,25 +79,20 @@ class SitecoreNextjsClient extends client_1.SitecoreClient {
104
79
  * @param {FetchOptions} [fetchOptions] - Additional fetch options.
105
80
  * @returns {Promise<StaticParams[]>} Array of `{ site, locale, path }` entries for `generateStaticParams`.
106
81
  */
107
- getAppRouterStaticParams(sites, languages, fetchOptions) {
108
- const _super = Object.create(null, {
109
- getPagePaths: { get: () => super.getPagePaths }
110
- });
111
- return __awaiter(this, void 0, void 0, function* () {
112
- const staticPaths = yield _super.getPagePaths.call(this, sites, languages, fetchOptions);
113
- const params = new Array();
114
- staticPaths.map((path) => {
115
- var _a;
116
- // remove _site_ segments
117
- const normalizedPath = (0, site_1.normalizeSiteRewrite)(path.params.path.join('/')).split('/');
118
- params.push({
119
- locale: (_a = path.locale) !== null && _a !== void 0 ? _a : this.initOptions.defaultLanguage,
120
- site: this.getSiteNameFromPath(path.params.path),
121
- path: normalizedPath,
122
- });
82
+ async getAppRouterStaticParams(sites, languages, fetchOptions) {
83
+ const staticPaths = await super.getPagePaths(sites, languages, fetchOptions);
84
+ const params = new Array();
85
+ staticPaths.map((path) => {
86
+ var _a;
87
+ // remove _site_ segments
88
+ const normalizedPath = (0, site_1.normalizeSiteRewrite)(path.params.path.join('/')).split('/');
89
+ params.push({
90
+ locale: (_a = path.locale) !== null && _a !== void 0 ? _a : this.initOptions.defaultLanguage,
91
+ site: this.getSiteNameFromPath(path.params.path),
92
+ path: normalizedPath,
123
93
  });
124
- return params;
125
94
  });
95
+ return params;
126
96
  }
127
97
  /**
128
98
  * Retrieves the static paths for pages based on the given languages.
@@ -131,21 +101,16 @@ class SitecoreNextjsClient extends client_1.SitecoreClient {
131
101
  * @param {FetchOptions} [fetchOptions] - Additional fetch options.
132
102
  * @returns {Promise<StaticPath[]>} A promise that resolves to an array of static paths.
133
103
  */
134
- getPagePaths(sites, languages, fetchOptions) {
135
- const _super = Object.create(null, {
136
- getPagePaths: { get: () => super.getPagePaths }
137
- });
138
- return __awaiter(this, void 0, void 0, function* () {
139
- var _a;
140
- const staticPaths = yield _super.getPagePaths.call(this, sites, languages, fetchOptions);
141
- if (!((_a = this.initOptions.multisite) === null || _a === void 0 ? void 0 : _a.enabled)) {
142
- // remove _site_ segments when multisite is disabled
143
- staticPaths.map((path) => {
144
- path.params.path = (0, site_1.normalizeSiteRewrite)(path.params.path.join('/')).split('/');
145
- });
146
- }
147
- return staticPaths;
148
- });
104
+ async getPagePaths(sites, languages, fetchOptions) {
105
+ var _a;
106
+ const staticPaths = await super.getPagePaths(sites, languages, fetchOptions);
107
+ if (!((_a = this.initOptions.multisite) === null || _a === void 0 ? void 0 : _a.enabled)) {
108
+ // remove _site_ segments when multisite is disabled
109
+ staticPaths.map((path) => {
110
+ path.params.path = (0, site_1.normalizeSiteRewrite)(path.params.path.join('/')).split('/');
111
+ });
112
+ }
113
+ return staticPaths;
149
114
  }
150
115
  /**
151
116
  * Parses components from nextjs component map and layoutData, executes getServerProps/getStaticProps methods
@@ -155,30 +120,28 @@ class SitecoreNextjsClient extends client_1.SitecoreClient {
155
120
  * @param {ComponentMap<NextjsContentSdkComponent>} components component map to get props for
156
121
  * @returns {ComponentPropsCollection} component props
157
122
  */
158
- getComponentData(layoutData, context, components) {
159
- return __awaiter(this, void 0, void 0, function* () {
160
- let componentProps = {};
161
- if (!layoutData.sitecore.route)
162
- return componentProps;
163
- // Retrieve component props using side-effects defined on components level
164
- componentProps = yield this.componentPropsService.fetchComponentProps({
165
- layoutData: layoutData,
166
- context,
167
- components,
168
- });
169
- const errors = Object.keys(componentProps)
170
- .map((id) => {
171
- const component = componentProps[id];
172
- return component.error
173
- ? `\nUnable to get component props for ${component.componentName} (${id}): ${component.error}`
174
- : '';
175
- })
176
- .join('');
177
- if (errors.length) {
178
- throw new Error(errors);
179
- }
123
+ async getComponentData(layoutData, context, components) {
124
+ let componentProps = {};
125
+ if (!layoutData.sitecore.route)
180
126
  return componentProps;
127
+ // Retrieve component props using side-effects defined on components level
128
+ componentProps = await this.componentPropsService.fetchComponentProps({
129
+ layoutData: layoutData,
130
+ context,
131
+ components,
181
132
  });
133
+ const errors = Object.keys(componentProps)
134
+ .map((id) => {
135
+ const component = componentProps[id];
136
+ return component.error
137
+ ? `\nUnable to get component props for ${component.componentName} (${id}): ${component.error}`
138
+ : '';
139
+ })
140
+ .join('');
141
+ if (errors.length) {
142
+ throw new Error(errors);
143
+ }
144
+ return componentProps;
182
145
  }
183
146
  /**
184
147
  * **NOTE**: App Router only.
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.getComponentServerProps = void 0;
13
4
  const react_1 = require("@sitecore-content-sdk/react");
@@ -22,10 +13,10 @@ const react_1 = require("@sitecore-content-sdk/react");
22
13
  * @returns {GetStaticPropsContext | GetStaticPropsContext} context with type depending on SSR or SSG mode
23
14
  * @internal
24
15
  */
25
- const getComponentServerProps = (rendering) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const getComponentServerProps = async (rendering) => {
26
17
  const params = rendering.params || {};
27
- const result = yield (0, react_1.fetchBYOCComponentServerProps)(params);
18
+ const result = await (0, react_1.fetchBYOCComponentServerProps)(params);
28
19
  return result;
29
- });
20
+ };
30
21
  exports.getComponentServerProps = getComponentServerProps;
31
22
  exports.default = react_1.BYOCWrapper;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DesignLibraryApp = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_2 = require("@sitecore-content-sdk/react");
9
+ const update_server_component_action_1 = require("../../server-actions/update-server-component-action");
10
+ /**
11
+ * Next.js Design Library entry. Passes server actions that authorize the editing
12
+ * secret header into the React Design Library. The React package keeps empty
13
+ * default actions and uses these props instead.
14
+ * @param {DesignLibraryAppProps} props - Design Library app props from the sample layout.
15
+ * @returns The Design Library tree, or null when the page has no route.
16
+ * @public
17
+ */
18
+ const DesignLibraryApp = async (props) => {
19
+ return (react_1.default.createElement(react_2.DesignLibraryApp, Object.assign({}, props, { updateComponentAction: update_server_component_action_1.updateComponentAction, previewComponentAction: update_server_component_action_1.previewComponentAction })));
20
+ };
21
+ exports.DesignLibraryApp = DesignLibraryApp;
22
+ exports.default = exports.DesignLibraryApp;
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.getComponentServerProps = void 0;
13
4
  const react_1 = require("@sitecore-content-sdk/react");
@@ -23,11 +14,11 @@ const react_1 = require("@sitecore-content-sdk/react");
23
14
  * @returns {GetStaticPropsContext | GetServerSideProps} context
24
15
  * @internal
25
16
  */
26
- const getComponentServerProps = (rendering, layoutData) => __awaiter(void 0, void 0, void 0, function* () {
17
+ const getComponentServerProps = async (rendering, layoutData) => {
27
18
  const params = rendering.params || {};
28
19
  const isPageStateNormal = !layoutData.sitecore.context.pageState ||
29
20
  layoutData.sitecore.context.pageState === react_1.LayoutServicePageState.Normal;
30
- return yield (0, react_1.fetchFEaaSComponentServerProps)(params, isPageStateNormal);
31
- });
21
+ return await (0, react_1.fetchFEaaSComponentServerProps)(params, isPageStateNormal);
22
+ };
32
23
  exports.getComponentServerProps = getComponentServerProps;
33
24
  exports.default = react_1.FEaaSWrapper;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EDITING_PARAMS_HEADER = exports.EDITING_PASS_THROUGH_HEADERS = exports.QUERY_PARAM_VERCEL_SET_BYPASS_COOKIE = exports.QUERY_PARAM_VERCEL_PROTECTION_BYPASS = void 0;
3
+ exports.EDITING_SECRET_HEADER = exports.EDITING_PARAMS_HEADER = exports.EDITING_PASS_THROUGH_HEADERS = exports.QUERY_PARAM_VERCEL_SET_BYPASS_COOKIE = exports.QUERY_PARAM_VERCEL_PROTECTION_BYPASS = void 0;
4
4
  exports.QUERY_PARAM_VERCEL_PROTECTION_BYPASS = 'x-vercel-protection-bypass';
5
5
  exports.QUERY_PARAM_VERCEL_SET_BYPASS_COOKIE = 'x-vercel-set-bypass-cookie';
6
6
  /**
@@ -13,3 +13,9 @@ exports.EDITING_PASS_THROUGH_HEADERS = ['authorization', 'cookie'];
13
13
  * route handler to the Next.js page when running in App Router.
14
14
  */
15
15
  exports.EDITING_PARAMS_HEADER = 'x-sitecore-editing-params';
16
+ /**
17
+ * Header used to forward the already-validated editing secret from the editing
18
+ * render handler/middleware to the internal Next.js page or server-action request.
19
+ * Do not put this value in `EDITING_PARAMS_HEADER` JSON.
20
+ */
21
+ exports.EDITING_SECRET_HEADER = 'x-sitecore-editing-secret';
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.EditingConfigMiddleware = void 0;
13
4
  const editing_1 = require("@sitecore-content-sdk/core/editing");
@@ -26,7 +17,7 @@ class EditingConfigMiddleware {
26
17
  */
27
18
  constructor(config) {
28
19
  this.config = config;
29
- this.handler = (_req, res) => __awaiter(this, void 0, void 0, function* () {
20
+ this.handler = async (_req, res) => {
30
21
  const secret = _req.query[editing_1.QUERY_PARAM_EDITING_SECRET];
31
22
  const corsHeaders = (0, utils_1.getEnforcedCorsHeaders)({
32
23
  requestMethod: _req.method,
@@ -57,7 +48,7 @@ class EditingConfigMiddleware {
57
48
  packages: this.config.metadata.packages,
58
49
  editMode: layout_1.EditMode.Metadata,
59
50
  });
60
- });
51
+ };
61
52
  }
62
53
  /**
63
54
  * Gets the Next.js API route handler
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.EditingRenderMiddleware = void 0;
13
4
  const core_1 = require("@sitecore-content-sdk/core");
@@ -30,7 +21,7 @@ class EditingRenderMiddleware extends render_middleware_1.RenderMiddlewareBase {
30
21
  constructor(config) {
31
22
  super();
32
23
  this.config = config;
33
- this.handler = (req, res) => __awaiter(this, void 0, void 0, function* () {
24
+ this.handler = async (req, res) => {
34
25
  var _a, _b, _c, _d, _e;
35
26
  const { body, method, headers, query } = req;
36
27
  core_1.debug.editing('editing render middleware start: %o', {
@@ -111,7 +102,7 @@ class EditingRenderMiddleware extends render_middleware_1.RenderMiddlewareBase {
111
102
  const propagatedQsParams = (0, utils_3.getQueryParamsForPropagation)(query);
112
103
  // Get headers to propagate on subsequent requests
113
104
  const propagatedHeaders = Object.assign(Object.assign({}, (0, utils_3.getHeadersForPropagation)(headers)), { [constants_1.EDITING_PARAMS_HEADER]: JSON.stringify(previewData) });
114
- const html = yield (0, utils_3.getEditingRequestHtml)(requestUrl, propagatedQsParams, propagatedHeaders, cookies, this.dataFetcher);
105
+ const html = await (0, utils_3.getEditingRequestHtml)(requestUrl, propagatedQsParams, propagatedHeaders, cookies, this.dataFetcher);
115
106
  // remove preview cookies to not leak them to the browser
116
107
  if (cookies && Array.isArray(cookies)) {
117
108
  const filteredCookies = (0, utils_3.cleanupNextPreviewCookies)(cookies);
@@ -133,7 +124,7 @@ class EditingRenderMiddleware extends render_middleware_1.RenderMiddlewareBase {
133
124
  }
134
125
  res.status(500).send(`<html><body>${error}</body></html>`);
135
126
  }
136
- });
127
+ };
137
128
  this.dataFetcher = new core_1.NativeDataFetcher({ debugger: core_1.debug.editing });
138
129
  }
139
130
  /**
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.FEAASRenderMiddleware = void 0;
13
4
  const core_1 = require("@sitecore-content-sdk/core");
@@ -29,7 +20,7 @@ class FEAASRenderMiddleware extends render_middleware_1.RenderMiddlewareBase {
29
20
  super();
30
21
  this.config = config;
31
22
  this.defaultPageUrl = '/feaas/render';
32
- this.handler = (req, res) => __awaiter(this, void 0, void 0, function* () {
23
+ this.handler = async (req, res) => {
33
24
  var _a;
34
25
  const { method, query, headers } = req;
35
26
  const startTimestamp = Date.now();
@@ -88,7 +79,7 @@ class FEAASRenderMiddleware extends render_middleware_1.RenderMiddlewareBase {
88
79
  "Hint: for non-standard server or Next.js route configurations, you may need to override the 'pageUrl' available on the 'FEAASRenderMiddleware' config.");
89
80
  res.status(500).send(`<html><body>${error}</body></html>`);
90
81
  }
91
- });
82
+ };
92
83
  this.pageUrl = (_a = config === null || config === void 0 ? void 0 : config.pageUrl) !== null && _a !== void 0 ? _a : this.defaultPageUrl;
93
84
  }
94
85
  /**
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.getCSPHeader = exports.resolveServerUrl = exports.isDesignLibraryPreviewData = exports.getEditingRequestHtml = exports.getHeadersForPropagation = exports.getQueryParamsForPropagation = exports.getRequiredEditingParamsList = exports.getPreviewCookies = exports.cleanupNextPreviewCookies = exports.mapEditingParams = exports.getEditingSecretFromRequest = void 0;
13
4
  const editing_1 = require("@sitecore-content-sdk/core/editing");
@@ -162,7 +153,7 @@ exports.getHeadersForPropagation = getHeadersForPropagation;
162
153
  * @param {NativeDataFetcher} dataFetcher NativeFetcher instance to send request with
163
154
  * @returns {string} HTML with editing markup
164
155
  */
165
- const getEditingRequestHtml = (requestUrl, propagatedQsParams, propagatedHeaders, cookies, dataFetcher) => __awaiter(void 0, void 0, void 0, function* () {
156
+ const getEditingRequestHtml = async (requestUrl, propagatedQsParams, propagatedHeaders, cookies, dataFetcher) => {
166
157
  var _a;
167
158
  // Grab the Next.js preview cookies to send on to the render request
168
159
  propagatedHeaders.cookie = `${propagatedHeaders.cookie ? propagatedHeaders.cookie + ';' : ''}${cookies.join(';')}`;
@@ -174,7 +165,7 @@ const getEditingRequestHtml = (requestUrl, propagatedQsParams, propagatedHeaders
174
165
  }
175
166
  }
176
167
  requestUrl.searchParams.append('timestamp', Date.now().toString());
177
- const pageRes = yield dataFetcher
168
+ const pageRes = await dataFetcher
178
169
  .get(requestUrl.toString(), {
179
170
  credentials: 'include',
180
171
  headers: propagatedHeaders,
@@ -204,7 +195,7 @@ const getEditingRequestHtml = (requestUrl, propagatedQsParams, propagatedHeaders
204
195
  // The following line will trick it into thinking we're SSR, thus avoiding any router.replace.
205
196
  html = html.replace(constants_2.STATIC_PROPS_ID, constants_2.SERVER_PROPS_ID);
206
197
  return html;
207
- });
198
+ };
208
199
  exports.getEditingRequestHtml = getEditingRequestHtml;
209
200
  /**
210
201
  * Type guard for Design Library mode
package/dist/cjs/index.js CHANGED
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.BYOCWrapper = exports.FEaaSWrapper = exports.BYOCServerWrapper = exports.BYOCClientWrapper = exports.FEaaSServerWrapper = exports.FEaaSClientWrapper = exports.NextImage = exports.Placeholder = exports.RichText = exports.Link = exports.useComponentProps = exports.ComponentPropsContext = exports.ComponentPropsReactContext = exports.ComponentPropsService = exports.normalizeSiteRewrite = exports.getSiteRewriteData = exports.getSiteRewrite = exports.SiteInfoService = exports.SiteResolver = exports.RobotsService = exports.ErrorPagesService = exports.SitemapXmlService = exports.REDIRECT_TYPE_SERVER_TRANSFER = exports.REDIRECT_TYPE_302 = exports.REDIRECT_TYPE_301 = exports.RedirectsService = exports.SitePathService = exports.PersonalizeService = exports.CdpHelper = exports.normalizePersonalizedRewrite = exports.getGroomedVariantIds = exports.getPersonalizedRewriteData = exports.getPersonalizedRewrite = exports.personalizeLayout = exports.DictionaryService = exports.mediaApi = exports.ComponentLayoutService = exports.ErrorPage = exports.RenderingType = exports.EditMode = exports.getContentStylesheetLink = exports.getFieldValue = exports.getChildPlaceholder = exports.LayoutService = exports.LayoutServicePageState = exports.MemoryCacheClient = exports.debug = exports.enableDebug = exports.NativeDataFetcher = exports.constants = void 0;
37
- exports.AppPlaceholder = exports.ClientEditingChromesUpdate = exports.Form = exports.EditingScripts = exports.withEmptyFieldEditingComponent = exports.withFieldMetadata = exports.withDatasourceCheck = exports.withPlaceholder = exports.withEditorChromes = exports.useSitecore = exports.withSitecore = exports.SitecoreProviderReactContext = exports.SitecoreProvider = exports.DefaultEmptyFieldEditingComponentText = exports.DefaultEmptyFieldEditingComponentImage = exports.DesignLibraryApp = exports.DesignLibrary = exports.File = exports.getDesignLibraryStylesheetLinks = exports.BYOCComponent = exports.fetchFEaaSComponentServerProps = exports.FEaaSComponent = exports.DateField = exports.Text = exports.Image = void 0;
37
+ exports.AppPlaceholder = exports.ClientEditingChromesUpdate = exports.Form = exports.EditingScripts = exports.withEmptyFieldEditingComponent = exports.withFieldMetadata = exports.withDatasourceCheck = exports.withPlaceholder = exports.withEditorChromes = exports.useSitecore = exports.withSitecore = exports.SitecoreProviderReactContext = exports.SitecoreProvider = exports.DefaultEmptyFieldEditingComponentText = exports.DefaultEmptyFieldEditingComponentImage = exports.DesignLibrary = exports.File = exports.getDesignLibraryStylesheetLinks = exports.BYOCComponent = exports.fetchFEaaSComponentServerProps = exports.FEaaSComponent = exports.DateField = exports.Text = exports.Image = exports.DesignLibraryApp = void 0;
38
38
  var core_1 = require("@sitecore-content-sdk/core");
39
39
  Object.defineProperty(exports, "constants", { enumerable: true, get: function () { return core_1.constants; } });
40
40
  // generic data access
@@ -104,6 +104,8 @@ Object.defineProperty(exports, "FEaaSClientWrapper", { enumerable: true, get: fu
104
104
  Object.defineProperty(exports, "FEaaSServerWrapper", { enumerable: true, get: function () { return react_1.FEaaSServerWrapper; } });
105
105
  Object.defineProperty(exports, "BYOCClientWrapper", { enumerable: true, get: function () { return react_1.BYOCClientWrapper; } });
106
106
  Object.defineProperty(exports, "BYOCServerWrapper", { enumerable: true, get: function () { return react_1.BYOCServerWrapper; } });
107
+ var DesignLibraryApp_1 = require("./components/DesignLibrary/DesignLibraryApp");
108
+ Object.defineProperty(exports, "DesignLibraryApp", { enumerable: true, get: function () { return DesignLibraryApp_1.DesignLibraryApp; } });
107
109
  var react_2 = require("@sitecore-content-sdk/react");
108
110
  Object.defineProperty(exports, "Image", { enumerable: true, get: function () { return react_2.Image; } });
109
111
  Object.defineProperty(exports, "Text", { enumerable: true, get: function () { return react_2.Text; } });
@@ -114,7 +116,6 @@ Object.defineProperty(exports, "BYOCComponent", { enumerable: true, get: functio
114
116
  Object.defineProperty(exports, "getDesignLibraryStylesheetLinks", { enumerable: true, get: function () { return react_2.getDesignLibraryStylesheetLinks; } });
115
117
  Object.defineProperty(exports, "File", { enumerable: true, get: function () { return react_2.File; } });
116
118
  Object.defineProperty(exports, "DesignLibrary", { enumerable: true, get: function () { return react_2.DesignLibrary; } });
117
- Object.defineProperty(exports, "DesignLibraryApp", { enumerable: true, get: function () { return react_2.DesignLibraryApp; } });
118
119
  Object.defineProperty(exports, "DefaultEmptyFieldEditingComponentImage", { enumerable: true, get: function () { return react_2.DefaultEmptyFieldEditingComponentImage; } });
119
120
  Object.defineProperty(exports, "DefaultEmptyFieldEditingComponentText", { enumerable: true, get: function () { return react_2.DefaultEmptyFieldEditingComponentText; } });
120
121
  Object.defineProperty(exports, "SitecoreProvider", { enumerable: true, get: function () { return react_2.SitecoreProvider; } });
@@ -1,14 +1,5 @@
1
1
  "use strict";
2
2
  /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */
3
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
- return new (P || (P = Promise))(function (resolve, reject) {
6
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
- step((generator = generator.apply(thisArg, _arguments || [])).next());
10
- });
11
- };
12
3
  Object.defineProperty(exports, "__esModule", { value: true });
13
4
  exports.LocaleMiddleware = void 0;
14
5
  const core_1 = require("@sitecore-content-sdk/core");
@@ -27,7 +18,7 @@ class LocaleMiddleware extends middleware_1.MiddlewareBase {
27
18
  constructor(config) {
28
19
  super(config);
29
20
  this.config = config;
30
- this.handle = (req, res) => __awaiter(this, void 0, void 0, function* () {
21
+ this.handle = async (req, res) => {
31
22
  try {
32
23
  const { pathname } = req.nextUrl;
33
24
  const localeFromPath = this.getLocaleFromPath(pathname);
@@ -64,7 +55,7 @@ class LocaleMiddleware extends middleware_1.MiddlewareBase {
64
55
  console.log(error);
65
56
  return res;
66
57
  }
67
- });
58
+ };
68
59
  }
69
60
  disabled(req, res) {
70
61
  // ignore files
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.defineMiddleware = exports.MiddlewareBase = exports.Middleware = exports.LOCALE_HEADER_NAME = exports.REWRITE_HEADER_NAME = void 0;
13
4
  const site_1 = require("@sitecore-content-sdk/core/site");
@@ -182,11 +173,11 @@ const defineMiddleware = (...middlewares) => {
182
173
  * @param {NextFetchEvent} ev fetch event
183
174
  * @param {NextResponse} [res] response
184
175
  */
185
- exec: (req, ev, res) => __awaiter(void 0, void 0, void 0, function* () {
176
+ exec: async (req, ev, res) => {
186
177
  const response = res || server_1.NextResponse.next();
187
178
  core_1.debug.common('middleware start');
188
179
  const start = Date.now();
189
- const middlewareResponse = yield middlewares.reduce((p, middleware) => p.then((res) => {
180
+ const middlewareResponse = await middlewares.reduce((p, middleware) => p.then((res) => {
190
181
  // Short-circuit the remaining middlewares once a previous one
191
182
  // denied the request (e.g. PreviewMiddleware returning 403).
192
183
  if (res.status === 403)
@@ -195,7 +186,7 @@ const defineMiddleware = (...middlewares) => {
195
186
  }), Promise.resolve(response));
196
187
  core_1.debug.common('middleware end in %dms', Date.now() - start);
197
188
  return middlewareResponse;
198
- }),
189
+ },
199
190
  };
200
191
  };
201
192
  exports.defineMiddleware = defineMiddleware;
@@ -1,14 +1,5 @@
1
1
  "use strict";
2
2
  /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */
3
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
- return new (P || (P = Promise))(function (resolve, reject) {
6
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
- step((generator = generator.apply(thisArg, _arguments || [])).next());
10
- });
11
- };
12
3
  Object.defineProperty(exports, "__esModule", { value: true });
13
4
  exports.MultisiteMiddleware = void 0;
14
5
  const site_1 = require("@sitecore-content-sdk/core/site");
@@ -26,7 +17,7 @@ class MultisiteMiddleware extends middleware_1.MiddlewareBase {
26
17
  constructor(config) {
27
18
  super(config);
28
19
  this.config = config;
29
- this.handle = (req, res) => __awaiter(this, void 0, void 0, function* () {
20
+ this.handle = async (req, res) => {
30
21
  var _a, _b, _c;
31
22
  try {
32
23
  // Path can be rewritten by previously executed middleware
@@ -104,7 +95,7 @@ class MultisiteMiddleware extends middleware_1.MiddlewareBase {
104
95
  console.log(error);
105
96
  return res;
106
97
  }
107
- });
98
+ };
108
99
  }
109
100
  disabled(req, res) {
110
101
  // ignore files