@sitecore-content-sdk/nextjs 1.3.0-canary.9 → 1.4.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.
Files changed (234) hide show
  1. package/README.md +11 -11
  2. package/dist/cjs/client/index.js +10 -10
  3. package/dist/cjs/client/models.js +2 -2
  4. package/dist/cjs/client/sitecore-nextjs-client.js +160 -156
  5. package/dist/cjs/components/BYOCWrapper.js +31 -30
  6. package/dist/cjs/components/ComponentPropsContext.js +66 -59
  7. package/dist/cjs/components/FEaaSWrapper.js +33 -32
  8. package/dist/cjs/components/Link.js +117 -90
  9. package/dist/cjs/components/NextImage.js +66 -62
  10. package/dist/cjs/components/Placeholder.js +55 -50
  11. package/dist/cjs/components/RichText.js +133 -128
  12. package/dist/cjs/config/define-config.js +26 -25
  13. package/dist/cjs/config/index.js +5 -5
  14. package/dist/cjs/config-cli/define-cli-config.js +40 -39
  15. package/dist/cjs/config-cli/index.js +5 -5
  16. package/dist/cjs/editing/codegen/import-map.js +129 -118
  17. package/dist/cjs/editing/codegen/index.js +6 -6
  18. package/dist/cjs/editing/constants.js +10 -10
  19. package/dist/cjs/editing/editing-config-middleware.js +70 -69
  20. package/dist/cjs/editing/editing-render-middleware.js +145 -144
  21. package/dist/cjs/editing/feaas-render-middleware.js +102 -101
  22. package/dist/cjs/editing/index.js +19 -19
  23. package/dist/cjs/editing/render-middleware.js +46 -46
  24. package/dist/cjs/editing/utils.js +260 -257
  25. package/dist/cjs/index.js +132 -131
  26. package/dist/cjs/middleware/app-router-multisite-middleware.js +41 -20
  27. package/dist/cjs/middleware/index.js +30 -30
  28. package/dist/cjs/middleware/locale-middleware.js +85 -84
  29. package/dist/cjs/middleware/middleware.js +195 -192
  30. package/dist/cjs/middleware/multisite-middleware.js +141 -118
  31. package/dist/cjs/middleware/personalize-middleware.js +240 -236
  32. package/dist/cjs/middleware/redirects-middleware.js +323 -297
  33. package/dist/cjs/middleware/robots-middleware.js +45 -44
  34. package/dist/cjs/middleware/sitemap-middleware.js +50 -49
  35. package/dist/cjs/monitoring/healthcheck-middleware.js +31 -30
  36. package/dist/cjs/monitoring/index.js +5 -5
  37. package/dist/cjs/route-handler/editing-config-route-handler.js +110 -106
  38. package/dist/cjs/route-handler/editing-render-route-handler.js +270 -165
  39. package/dist/cjs/route-handler/index.js +11 -11
  40. package/dist/cjs/route-handler/robots-route-handler.js +69 -68
  41. package/dist/cjs/route-handler/sitemap-route-handler.js +66 -65
  42. package/dist/cjs/search/index.js +17 -0
  43. package/dist/cjs/services/component-props-service.js +142 -138
  44. package/dist/cjs/sharedTypes/component-props.js +2 -2
  45. package/dist/cjs/sharedTypes/sitecore-page-props.js +2 -2
  46. package/dist/cjs/site/index.js +5 -5
  47. package/dist/cjs/tools/codegen/import-map.js +15 -0
  48. package/dist/cjs/tools/component-props.loader.js +95 -95
  49. package/dist/cjs/tools/generate-map.js +317 -317
  50. package/dist/cjs/tools/index.js +14 -13
  51. package/dist/cjs/tools/templating/byoc-component.js +36 -36
  52. package/dist/cjs/tools/templating/constants.js +7 -7
  53. package/dist/cjs/tools/templating/default-component.js +35 -35
  54. package/dist/cjs/tools/templating/utils.js +200 -0
  55. package/dist/cjs/utils/index.js +14 -14
  56. package/dist/cjs/utils/utils.js +82 -73
  57. package/dist/esm/client/index.js +2 -2
  58. package/dist/esm/client/models.js +1 -1
  59. package/dist/esm/client/sitecore-nextjs-client.js +156 -152
  60. package/dist/esm/components/BYOCWrapper.js +27 -26
  61. package/dist/esm/components/ComponentPropsContext.js +28 -21
  62. package/dist/esm/components/FEaaSWrapper.js +29 -28
  63. package/dist/esm/components/Link.js +78 -51
  64. package/dist/esm/components/NextImage.js +60 -56
  65. package/dist/esm/components/Placeholder.js +18 -13
  66. package/dist/esm/components/RichText.js +96 -91
  67. package/dist/esm/config/define-config.js +21 -20
  68. package/dist/esm/config/index.js +1 -1
  69. package/dist/esm/config-cli/define-cli-config.js +36 -35
  70. package/dist/esm/config-cli/index.js +1 -1
  71. package/dist/esm/editing/codegen/import-map.js +92 -81
  72. package/dist/esm/editing/codegen/index.js +1 -1
  73. package/dist/esm/editing/constants.js +7 -7
  74. package/dist/esm/editing/editing-config-middleware.js +66 -65
  75. package/dist/esm/editing/editing-render-middleware.js +141 -140
  76. package/dist/esm/editing/feaas-render-middleware.js +98 -97
  77. package/dist/esm/editing/index.js +6 -6
  78. package/dist/esm/editing/render-middleware.js +42 -42
  79. package/dist/esm/editing/utils.js +246 -243
  80. package/dist/esm/index.js +25 -25
  81. package/dist/esm/middleware/app-router-multisite-middleware.js +37 -16
  82. package/dist/esm/middleware/index.js +11 -11
  83. package/dist/esm/middleware/locale-middleware.js +81 -80
  84. package/dist/esm/middleware/middleware.js +189 -186
  85. package/dist/esm/middleware/multisite-middleware.js +137 -114
  86. package/dist/esm/middleware/personalize-middleware.js +236 -232
  87. package/dist/esm/middleware/redirects-middleware.js +316 -290
  88. package/dist/esm/middleware/robots-middleware.js +41 -40
  89. package/dist/esm/middleware/sitemap-middleware.js +46 -45
  90. package/dist/esm/monitoring/healthcheck-middleware.js +27 -26
  91. package/dist/esm/monitoring/index.js +1 -1
  92. package/dist/esm/route-handler/editing-config-route-handler.js +106 -102
  93. package/dist/esm/route-handler/editing-render-route-handler.js +265 -160
  94. package/dist/esm/route-handler/index.js +4 -4
  95. package/dist/esm/route-handler/robots-route-handler.js +65 -64
  96. package/dist/esm/route-handler/sitemap-route-handler.js +63 -62
  97. package/dist/esm/search/index.js +1 -0
  98. package/dist/esm/services/component-props-service.js +135 -131
  99. package/dist/esm/sharedTypes/component-props.js +1 -1
  100. package/dist/esm/sharedTypes/sitecore-page-props.js +1 -1
  101. package/dist/esm/site/index.js +1 -1
  102. package/dist/esm/tools/codegen/import-map.js +11 -0
  103. package/dist/esm/tools/component-props.loader.js +59 -59
  104. package/dist/esm/tools/generate-map.js +279 -279
  105. package/dist/esm/tools/index.js +3 -2
  106. package/dist/esm/tools/templating/byoc-component.js +30 -30
  107. package/dist/esm/tools/templating/constants.js +4 -4
  108. package/dist/esm/tools/templating/default-component.js +29 -29
  109. package/dist/esm/tools/templating/utils.js +190 -0
  110. package/dist/esm/utils/index.js +3 -3
  111. package/dist/esm/utils/utils.js +74 -65
  112. package/package.json +87 -13
  113. package/search.d.ts +1 -0
  114. package/types/client/index.d.ts +3 -2
  115. package/types/client/index.d.ts.map +1 -0
  116. package/types/client/models.d.ts +9 -8
  117. package/types/client/models.d.ts.map +1 -0
  118. package/types/client/sitecore-nextjs-client.d.ts +68 -63
  119. package/types/client/sitecore-nextjs-client.d.ts.map +1 -0
  120. package/types/components/BYOCWrapper.d.ts +16 -14
  121. package/types/components/BYOCWrapper.d.ts.map +1 -0
  122. package/types/components/ComponentPropsContext.d.ts +30 -18
  123. package/types/components/ComponentPropsContext.d.ts.map +1 -0
  124. package/types/components/FEaaSWrapper.d.ts +17 -15
  125. package/types/components/FEaaSWrapper.d.ts.map +1 -0
  126. package/types/components/Link.d.ts +25 -15
  127. package/types/components/Link.d.ts.map +1 -0
  128. package/types/components/NextImage.d.ts +11 -6
  129. package/types/components/NextImage.d.ts.map +1 -0
  130. package/types/components/Placeholder.d.ts +14 -8
  131. package/types/components/Placeholder.d.ts.map +1 -0
  132. package/types/components/RichText.d.ts +35 -25
  133. package/types/components/RichText.d.ts.map +1 -0
  134. package/types/config/define-config.d.ts +42 -38
  135. package/types/config/define-config.d.ts.map +1 -0
  136. package/types/config/index.d.ts +2 -1
  137. package/types/config/index.d.ts.map +1 -0
  138. package/types/config-cli/define-cli-config.d.ts +10 -8
  139. package/types/config-cli/define-cli-config.d.ts.map +1 -0
  140. package/types/config-cli/index.d.ts +2 -1
  141. package/types/config-cli/index.d.ts.map +1 -0
  142. package/types/editing/codegen/import-map.d.ts +15 -3
  143. package/types/editing/codegen/import-map.d.ts.map +1 -0
  144. package/types/editing/codegen/index.d.ts +3 -2
  145. package/types/editing/codegen/index.d.ts.map +1 -0
  146. package/types/editing/constants.d.ts +8 -7
  147. package/types/editing/constants.d.ts.map +1 -0
  148. package/types/editing/editing-config-middleware.d.ts +37 -31
  149. package/types/editing/editing-config-middleware.d.ts.map +1 -0
  150. package/types/editing/editing-render-middleware.d.ts +47 -44
  151. package/types/editing/editing-render-middleware.d.ts.map +1 -0
  152. package/types/editing/feaas-render-middleware.d.ts +35 -32
  153. package/types/editing/feaas-render-middleware.d.ts.map +1 -0
  154. package/types/editing/index.d.ts +7 -6
  155. package/types/editing/index.d.ts.map +1 -0
  156. package/types/editing/render-middleware.d.ts +26 -25
  157. package/types/editing/render-middleware.d.ts.map +1 -0
  158. package/types/editing/utils.d.ts +110 -106
  159. package/types/editing/utils.d.ts.map +1 -0
  160. package/types/index.d.ts +25 -24
  161. package/types/index.d.ts.map +1 -0
  162. package/types/middleware/app-router-multisite-middleware.d.ts +28 -13
  163. package/types/middleware/app-router-multisite-middleware.d.ts.map +1 -0
  164. package/types/middleware/index.d.ts +12 -11
  165. package/types/middleware/index.d.ts.map +1 -0
  166. package/types/middleware/locale-middleware.d.ts +35 -32
  167. package/types/middleware/locale-middleware.d.ts.map +1 -0
  168. package/types/middleware/middleware.d.ts +135 -127
  169. package/types/middleware/middleware.d.ts.map +1 -0
  170. package/types/middleware/multisite-middleware.d.ts +54 -37
  171. package/types/middleware/multisite-middleware.d.ts.map +1 -0
  172. package/types/middleware/personalize-middleware.d.ts +81 -65
  173. package/types/middleware/personalize-middleware.d.ts.map +1 -0
  174. package/types/middleware/redirects-middleware.d.ts +68 -65
  175. package/types/middleware/redirects-middleware.d.ts.map +1 -0
  176. package/types/middleware/robots-middleware.d.ts +15 -13
  177. package/types/middleware/robots-middleware.d.ts.map +1 -0
  178. package/types/middleware/sitemap-middleware.d.ts +16 -14
  179. package/types/middleware/sitemap-middleware.d.ts.map +1 -0
  180. package/types/monitoring/healthcheck-middleware.d.ts +14 -12
  181. package/types/monitoring/healthcheck-middleware.d.ts.map +1 -0
  182. package/types/monitoring/index.d.ts +2 -1
  183. package/types/monitoring/index.d.ts.map +1 -0
  184. package/types/route-handler/editing-config-route-handler.d.ts +30 -24
  185. package/types/route-handler/editing-config-route-handler.d.ts.map +1 -0
  186. package/types/route-handler/editing-render-route-handler.d.ts +33 -25
  187. package/types/route-handler/editing-render-route-handler.d.ts.map +1 -0
  188. package/types/route-handler/index.d.ts +5 -4
  189. package/types/route-handler/index.d.ts.map +1 -0
  190. package/types/route-handler/robots-route-handler.d.ts +30 -28
  191. package/types/route-handler/robots-route-handler.d.ts.map +1 -0
  192. package/types/route-handler/sitemap-route-handler.d.ts +30 -28
  193. package/types/route-handler/sitemap-route-handler.d.ts.map +1 -0
  194. package/types/search/index.d.ts +2 -0
  195. package/types/search/index.d.ts.map +1 -0
  196. package/types/services/component-props-service.d.ts +62 -57
  197. package/types/services/component-props-service.d.ts.map +1 -0
  198. package/types/sharedTypes/component-props.d.ts +62 -47
  199. package/types/sharedTypes/component-props.d.ts.map +1 -0
  200. package/types/sharedTypes/sitecore-page-props.d.ts +14 -9
  201. package/types/sharedTypes/sitecore-page-props.d.ts.map +1 -0
  202. package/types/site/index.d.ts +2 -1
  203. package/types/site/index.d.ts.map +1 -0
  204. package/types/tools/codegen/import-map.d.ts +10 -0
  205. package/types/tools/codegen/import-map.d.ts.map +1 -0
  206. package/types/tools/component-props.loader.d.ts +8 -7
  207. package/types/tools/component-props.loader.d.ts.map +1 -0
  208. package/types/tools/generate-map.d.ts +26 -24
  209. package/types/tools/generate-map.d.ts.map +1 -0
  210. package/types/tools/index.d.ts +4 -2
  211. package/types/tools/index.d.ts.map +1 -0
  212. package/types/tools/templating/byoc-component.d.ts +3 -2
  213. package/types/tools/templating/byoc-component.d.ts.map +1 -0
  214. package/types/tools/templating/constants.d.ts +5 -4
  215. package/types/tools/templating/constants.d.ts.map +1 -0
  216. package/types/tools/templating/default-component.d.ts +3 -2
  217. package/types/tools/templating/default-component.d.ts.map +1 -0
  218. package/types/tools/templating/utils.d.ts +44 -0
  219. package/types/tools/templating/utils.d.ts.map +1 -0
  220. package/types/utils/index.d.ts +4 -3
  221. package/types/utils/index.d.ts.map +1 -0
  222. package/types/utils/utils.d.ts +34 -24
  223. package/types/utils/utils.d.ts.map +1 -0
  224. package/client.js +0 -1
  225. package/codegen.js +0 -1
  226. package/config-cli.js +0 -1
  227. package/config.js +0 -1
  228. package/editing.js +0 -1
  229. package/middleware.js +0 -1
  230. package/monitoring.js +0 -1
  231. package/route-handler.js +0 -1
  232. package/site.js +0 -1
  233. package/tools.js +0 -1
  234. package/utils.js +0 -1
package/types/index.d.ts CHANGED
@@ -1,24 +1,25 @@
1
- export { constants, NativeDataFetcher, NativeDataFetcherConfig, NativeDataFetcherResponse, NativeDataFetcherError, HTMLLink, enableDebug, debug, CacheClient, CacheOptions, MemoryCacheClient, } from '@sitecore-content-sdk/core';
2
- export { LayoutServiceData, LayoutServicePageState, LayoutServiceContext, LayoutServiceContextData, LayoutService, LayoutServiceConfig, PlaceholderData, PlaceholdersData, RouteData, Field, Item, getChildPlaceholder, getFieldValue, ComponentRendering, ComponentFields, ComponentParams, getContentStylesheetLink, EditMode, RenderingType, } from '@sitecore-content-sdk/core/layout';
3
- export { PageMode, ErrorPage, Page } from '@sitecore-content-sdk/core/client';
4
- export { ComponentLayoutService } from '@sitecore-content-sdk/core/editing';
5
- export { mediaApi } from '@sitecore-content-sdk/core/media';
6
- export { DictionaryPhrases, DictionaryService, DictionaryServiceConfig, } from '@sitecore-content-sdk/core/i18n';
7
- export { personalizeLayout, getPersonalizedRewrite, getPersonalizedRewriteData, getGroomedVariantIds, normalizePersonalizedRewrite, CdpHelper, PersonalizeService, } from '@sitecore-content-sdk/core/personalize';
8
- export { SitePathService, SitePathServiceConfig, RedirectsService, RedirectsServiceConfig, REDIRECT_TYPE_301, REDIRECT_TYPE_302, REDIRECT_TYPE_SERVER_TRANSFER, RedirectInfo, } from '@sitecore-content-sdk/core/site';
9
- export { StaticPath } from '@sitecore-content-sdk/core';
10
- export { SitemapXmlService, SitemapXmlServiceConfig, ErrorPagesService, ErrorPagesServiceConfig, RobotsQueryResult, RobotsService, RobotsServiceConfig, ErrorPages, SiteInfo, SiteResolver, SiteInfoService, SiteInfoServiceConfig, getSiteRewrite, getSiteRewriteData, normalizeSiteRewrite, } from '@sitecore-content-sdk/core/site';
11
- export { ComponentPropsCollection, ComponentPropsError, NextjsContentSdkComponent, GetComponentServerProps, } from './sharedTypes/component-props';
12
- export { SitecorePageProps } from './sharedTypes/sitecore-page-props';
13
- export { ComponentPropsService } from './services/component-props-service';
14
- export { ComponentPropsReactContext, ComponentPropsContextProps, ComponentPropsContext, useComponentProps, } from './components/ComponentPropsContext';
15
- export { Link, LinkProps } from './components/Link';
16
- export { RichText, RichTextProps } from './components/RichText';
17
- export { Placeholder } from './components/Placeholder';
18
- export { NextImage } from './components/NextImage';
19
- import * as FEaaSWrapper from './components/FEaaSWrapper';
20
- import * as BYOCWrapper from './components/BYOCWrapper';
21
- export { FEaaSClientWrapper, FEaaSServerWrapper, BYOCClientWrapper, BYOCServerWrapper, } from '@sitecore-content-sdk/react';
22
- export { FEaaSWrapper };
23
- export { BYOCWrapper };
24
- export { ComponentMap, Image, ImageField, ImageFieldValue, ImageProps, LinkField, LinkFieldValue, Text, TextField, DateField, FEaaSComponent, FEaaSComponentProps, FEaaSComponentParams, fetchFEaaSComponentServerProps, BYOCComponentParams, BYOCComponent, BYOCComponentProps, getDesignLibraryStylesheetLinks, File, FileField, RichTextField, DesignLibrary, DefaultEmptyFieldEditingComponentImage, DefaultEmptyFieldEditingComponentText, PlaceholderComponentProps, SitecoreProvider, SitecoreProviderState, SitecoreProviderReactContext, withSitecore, useSitecore, withEditorChromes, withPlaceholder, withDatasourceCheck, ImageSizeParameters, WithSitecoreOptions, WithSitecoreProps, WithSitecoreHocProps, withFieldMetadata, withEmptyFieldEditingComponent, EditingScripts, Form, ClientEditingChromesUpdate, AppPlaceholder, AppPlaceholderProps, } from '@sitecore-content-sdk/react';
1
+ export { constants, NativeDataFetcher, NativeDataFetcherConfig, NativeDataFetcherResponse, NativeDataFetcherError, HTMLLink, enableDebug, debug, CacheClient, CacheOptions, MemoryCacheClient, } from '@sitecore-content-sdk/core';
2
+ export { LayoutServiceData, LayoutServicePageState, LayoutServiceContext, LayoutServiceContextData, LayoutService, LayoutServiceConfig, PlaceholderData, PlaceholdersData, RouteData, Field, Item, getChildPlaceholder, getFieldValue, ComponentRendering, ComponentFields, ComponentParams, getContentStylesheetLink, EditMode, RenderingType, } from '@sitecore-content-sdk/core/layout';
3
+ export { PageMode, ErrorPage, Page } from '@sitecore-content-sdk/core/client';
4
+ export { ComponentLayoutService } from '@sitecore-content-sdk/core/editing';
5
+ export { mediaApi } from '@sitecore-content-sdk/core/media';
6
+ export { DictionaryPhrases, DictionaryService, DictionaryServiceConfig, } from '@sitecore-content-sdk/core/i18n';
7
+ export { personalizeLayout, getPersonalizedRewrite, getPersonalizedRewriteData, getGroomedVariantIds, normalizePersonalizedRewrite, CdpHelper, PersonalizeService, } from '@sitecore-content-sdk/core/personalize';
8
+ export { SitePathService, SitePathServiceConfig, RedirectsService, RedirectsServiceConfig, REDIRECT_TYPE_301, REDIRECT_TYPE_302, REDIRECT_TYPE_SERVER_TRANSFER, RedirectInfo, } from '@sitecore-content-sdk/core/site';
9
+ export { StaticPath } from '@sitecore-content-sdk/core';
10
+ export { SitemapXmlService, SitemapXmlServiceConfig, ErrorPagesService, ErrorPagesServiceConfig, RobotsQueryResult, RobotsService, RobotsServiceConfig, ErrorPages, SiteInfo, SiteResolver, SiteInfoService, SiteInfoServiceConfig, getSiteRewrite, getSiteRewriteData, normalizeSiteRewrite, } from '@sitecore-content-sdk/core/site';
11
+ export { ComponentPropsCollection, ComponentPropsError, NextjsContentSdkComponent, GetComponentServerProps, } from './sharedTypes/component-props';
12
+ export { SitecorePageProps } from './sharedTypes/sitecore-page-props';
13
+ export { ComponentPropsService } from './services/component-props-service';
14
+ export { ComponentPropsReactContext, ComponentPropsContextProps, ComponentPropsContext, useComponentProps, } from './components/ComponentPropsContext';
15
+ export { Link, LinkProps } from './components/Link';
16
+ export { RichText, RichTextProps } from './components/RichText';
17
+ export { Placeholder } from './components/Placeholder';
18
+ export { NextImage } from './components/NextImage';
19
+ import * as FEaaSWrapper from './components/FEaaSWrapper';
20
+ import * as BYOCWrapper from './components/BYOCWrapper';
21
+ export { FEaaSClientWrapper, FEaaSServerWrapper, BYOCClientWrapper, BYOCServerWrapper, } from '@sitecore-content-sdk/react';
22
+ export { FEaaSWrapper };
23
+ export { BYOCWrapper };
24
+ export { ComponentMap, Image, ImageField, ImageFieldValue, ImageProps, LinkField, LinkFieldValue, Text, TextField, DateField, FEaaSComponent, FEaaSComponentProps, FEaaSComponentParams, fetchFEaaSComponentServerProps, BYOCComponentParams, BYOCComponent, BYOCComponentProps, getDesignLibraryStylesheetLinks, File, FileField, RichTextField, DesignLibrary, DesignLibraryApp, DefaultEmptyFieldEditingComponentImage, DefaultEmptyFieldEditingComponentText, PlaceholderComponentProps, SitecoreProvider, SitecoreProviderState, SitecoreProviderReactContext, withSitecore, useSitecore, withEditorChromes, withPlaceholder, withDatasourceCheck, ImageSizeParameters, WithSitecoreOptions, WithSitecoreProps, WithSitecoreHocProps, withFieldMetadata, withEmptyFieldEditingComponent, EditingScripts, Form, ClientEditingChromesUpdate, AppPlaceholder, AppPlaceholderProps, } from '@sitecore-content-sdk/react';
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,28 @@
1
- import { MultisiteMiddleware } from './multisite-middleware';
2
- /**
3
- * Middleware/handler for enabling multisite support in the Next.js App Router.
4
- */
5
- export declare class AppRouterMultisiteMiddleware extends MultisiteMiddleware {
6
- /**
7
- * Generates a site-specific rewrite path for app router based on the provided pathname and site name.
8
- * @param {string} pathname - The pathname to be rewritten.
9
- * @param {string} siteName - The name of the site.
10
- * @returns The rewritten path as a string.
11
- */
12
- protected getSiteRewrite(pathname: string, siteName: string): string;
13
- }
1
+ import { NextResponse } from 'next/server';
2
+ import { MultisiteMiddleware } from './multisite-middleware';
3
+ /**
4
+ * Middleware/handler for enabling multisite support in the Next.js App Router.
5
+ * @public
6
+ */
7
+ export declare class AppRouterMultisiteMiddleware extends MultisiteMiddleware {
8
+ /**
9
+ * Warns when multisite is disabled in App Router.
10
+ * The middleware will still run to prevent routing errors.
11
+ * @param {NextResponse} _res response (unused, kept for method signature compatibility)
12
+ */
13
+ protected shouldWarnWhenDisabled(_res: NextResponse): void;
14
+ /**
15
+ * In App Router, we cannot skip the middleware even if enabled is false,
16
+ * because the route structure requires the [site] segment.
17
+ * @returns {boolean} always returns false (never skip) for App Router
18
+ */
19
+ protected shouldSkipWhenDisabled(): boolean;
20
+ /**
21
+ * Generates a site-specific rewrite path for app router based on the provided pathname and site name.
22
+ * @param {string} pathname - The pathname to be rewritten.
23
+ * @param {string} siteName - The name of the site.
24
+ * @returns The rewritten path as a string.
25
+ */
26
+ protected getSiteRewrite(pathname: string, siteName: string): string;
27
+ }
28
+ //# sourceMappingURL=app-router-multisite-middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-router-multisite-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/app-router-multisite-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,mBAAmB;IACnE;;;;OAIG;IAEH,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAS1D;;;;OAIG;IACH,SAAS,CAAC,sBAAsB,IAAI,OAAO;IAI3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;CAIrE"}
@@ -1,11 +1,12 @@
1
- export { debug } from '@sitecore-content-sdk/core';
2
- export { MiddlewareBase, MiddlewareBaseConfig, Middleware, defineMiddleware } from './middleware';
3
- export { RedirectsMiddleware, RedirectsMiddlewareConfig } from './redirects-middleware';
4
- export { PersonalizeMiddleware, PersonalizeMiddlewareConfig } from './personalize-middleware';
5
- export { MultisiteMiddleware, MultisiteMiddlewareConfig } from './multisite-middleware';
6
- export { AppRouterMultisiteMiddleware } from './app-router-multisite-middleware';
7
- export { SitemapMiddleware } from './sitemap-middleware';
8
- export { RobotsMiddleware } from './robots-middleware';
9
- export { LocaleMiddleware, LocaleMiddlewareConfig } from './locale-middleware';
10
- export { PersonalizeService, PersonalizeServiceConfig, } from '@sitecore-content-sdk/core/personalize';
11
- export { RedirectsService, RedirectsServiceConfig, REDIRECT_TYPE_301, REDIRECT_TYPE_302, REDIRECT_TYPE_SERVER_TRANSFER, RedirectInfo, } from '@sitecore-content-sdk/core/site';
1
+ export { debug } from '@sitecore-content-sdk/core';
2
+ export { MiddlewareBase, MiddlewareBaseConfig, Middleware, defineMiddleware } from './middleware';
3
+ export { RedirectsMiddleware, RedirectsMiddlewareConfig } from './redirects-middleware';
4
+ export { PersonalizeMiddleware, PersonalizeMiddlewareConfig } from './personalize-middleware';
5
+ export { MultisiteMiddleware, MultisiteMiddlewareConfig } from './multisite-middleware';
6
+ export { AppRouterMultisiteMiddleware } from './app-router-multisite-middleware';
7
+ export { SitemapMiddleware } from './sitemap-middleware';
8
+ export { RobotsMiddleware } from './robots-middleware';
9
+ export { LocaleMiddleware, LocaleMiddlewareConfig } from './locale-middleware';
10
+ export { PersonalizeService, PersonalizeServiceConfig, } from '@sitecore-content-sdk/core/personalize';
11
+ export { RedirectsService, RedirectsServiceConfig, REDIRECT_TYPE_301, REDIRECT_TYPE_302, REDIRECT_TYPE_SERVER_TRANSFER, RedirectInfo, } from '@sitecore-content-sdk/core/site';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,6BAA6B,EAC7B,YAAY,GACb,MAAM,iCAAiC,CAAC"}
@@ -1,32 +1,35 @@
1
- import { NextResponse, NextRequest } from 'next/server';
2
- import { MiddlewareBase, MiddlewareBaseConfig } from './middleware';
3
- /**
4
- * Locale middleware config
5
- */
6
- export type LocaleMiddlewareConfig = MiddlewareBaseConfig & {
7
- /**
8
- * List of locales supported by the application
9
- */
10
- locales: string[];
11
- };
12
- /**
13
- * Middleware/handler for handling locale-based routing in the Next.js App Router.
14
- * This middleware is responsible for extracting the locale from the request path and rewriting it if necessary.
15
- * It also sets the locale header in the response.
16
- */
17
- export declare class LocaleMiddleware extends MiddlewareBase {
18
- protected config: LocaleMiddlewareConfig;
19
- /**
20
- * @param {LocaleMiddlewareConfig} config Locale middleware config
21
- */
22
- constructor(config: LocaleMiddlewareConfig);
23
- handle: (req: NextRequest, res: NextResponse) => Promise<NextResponse>;
24
- protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
25
- /**
26
- * Extract locale from path
27
- * @param {string} path request path
28
- * @returns {string | undefined} the locale if found
29
- */
30
- protected getLocaleFromPath(path: string): string | undefined;
31
- private setLocaleHeader;
32
- }
1
+ import { NextResponse, NextRequest } from 'next/server';
2
+ import { MiddlewareBase, MiddlewareBaseConfig } from './middleware';
3
+ /**
4
+ * The interface for the Locale middleware configuration.
5
+ * @public
6
+ */
7
+ export type LocaleMiddlewareConfig = MiddlewareBaseConfig & {
8
+ /**
9
+ * List of locales supported by the application
10
+ */
11
+ locales: string[];
12
+ };
13
+ /**
14
+ * Middleware/handler for handling locale-based routing in the Next.js App Router.
15
+ * This middleware is responsible for extracting the locale from the request path and rewriting it if necessary.
16
+ * It also sets the locale header in the response.
17
+ * @public
18
+ */
19
+ export declare class LocaleMiddleware extends MiddlewareBase {
20
+ protected config: LocaleMiddlewareConfig;
21
+ /**
22
+ * @param {LocaleMiddlewareConfig} config Locale middleware config
23
+ */
24
+ constructor(config: LocaleMiddlewareConfig);
25
+ handle: (req: NextRequest, res: NextResponse) => Promise<NextResponse>;
26
+ protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
27
+ /**
28
+ * Extract locale from path
29
+ * @param {string} path request path
30
+ * @returns {string | undefined} the locale if found
31
+ */
32
+ protected getLocaleFromPath(path: string): string | undefined;
33
+ private setLocaleHeader;
34
+ }
35
+ //# sourceMappingURL=locale-middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/locale-middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAsB,MAAM,cAAc,CAAC;AAExF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,oBAAoB,GAAG;IAC1D;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,cAAc;IAItC,SAAS,CAAC,MAAM,EAAE,sBAAsB;IAHpD;;OAEG;gBACmB,MAAM,EAAE,sBAAsB;IAIpD,MAAM,GAAU,KAAK,WAAW,EAAE,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAAC,CA6CzE;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,GAAG,SAAS;IAK5E;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAM7D,OAAO,CAAC,eAAe;CAGxB"}
@@ -1,127 +1,135 @@
1
- import { SiteInfo, SiteResolver } from '@sitecore-content-sdk/core/site';
2
- import { GraphQLRequestClientFactory } from '@sitecore-content-sdk/core';
3
- import { NextRequest, NextFetchEvent, NextResponse } from 'next/server';
4
- import { GraphQLClientOptions } from '@sitecore-content-sdk/core/client';
5
- export declare const REWRITE_HEADER_NAME = "x-sc-rewrite";
6
- export declare const LOCALE_HEADER_NAME = "x-sc-locale";
7
- export type MiddlewareBaseConfig = {
8
- /**
9
- * function, determines if middleware execution should be skipped, based on cookie, header, or other considerations
10
- * @param {NextRequest} req request object from middleware handler
11
- * @param {NextResponse} res response object from middleware handler
12
- */
13
- skip?: (req: NextRequest, res: NextResponse) => boolean;
14
- /**
15
- * Fallback hostname in case `host` header is not present
16
- * @default localhost
17
- */
18
- defaultHostname?: string;
19
- /**
20
- * Fallback language in locale cannot be extracted from request URL
21
- * @default 'en'
22
- */
23
- defaultLanguage?: string;
24
- /**
25
- * Site resolution implementation by name/hostname
26
- */
27
- sites: SiteInfo[];
28
- };
29
- /**
30
- * Middleware class to be extended by all middleware implementations
31
- */
32
- export declare abstract class Middleware {
33
- /**
34
- * Handler method to execute middleware logic
35
- * @param {NextRequest} req request
36
- * @param {NextResponse} res response
37
- * @param {NextFetchEvent} ev fetch event
38
- */
39
- abstract handle(req: NextRequest, res: NextResponse, ev: NextFetchEvent): Promise<NextResponse>;
40
- }
41
- /**
42
- * Base middleware class with common methods
43
- */
44
- export declare abstract class MiddlewareBase extends Middleware {
45
- protected config: MiddlewareBaseConfig;
46
- protected defaultHostname: string;
47
- protected siteResolver: SiteResolver;
48
- constructor(config: MiddlewareBaseConfig);
49
- /**
50
- * Determines if mode is preview
51
- * @param {NextRequest} req request
52
- * @returns {boolean} is preview
53
- */
54
- protected isPreview(req: NextRequest): boolean;
55
- /**
56
- * Determines if the application is using the app router based on the locale header
57
- * @param {NextResponse} res response
58
- * @returns {boolean} true if app router is used
59
- */
60
- protected isAppRouter(res: NextResponse): boolean;
61
- /**
62
- * Determines if the request is a Next.js (next/link) prefetch request
63
- * @param {NextRequest} req request
64
- * @returns {boolean} is prefetch
65
- */
66
- protected isPrefetch(req: NextRequest): boolean;
67
- protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
68
- /**
69
- * Safely extract all headers for debug logging
70
- * Necessary to avoid middleware issue https://github.com/vercel/next.js/issues/39765
71
- * @param {Headers} incomingHeaders Incoming headers
72
- * @returns Object with headers as key/value pairs
73
- */
74
- protected extractDebugHeaders(incomingHeaders: Headers): {
75
- [key: string]: string;
76
- };
77
- /**
78
- * Provides used language
79
- * @param {NextRequest} req request
80
- * @param {NextResponse} res response
81
- * @returns {string} language
82
- */
83
- protected getLanguage(req: NextRequest, res?: NextResponse): string;
84
- /**
85
- * Extract language from locale header of the response
86
- * set by LocaleMiddleware for app router application
87
- * @param {NextResponse} res response
88
- * @returns {string | undefined} language or undefined if not found
89
- */
90
- protected getLanguageFromHeader(res?: NextResponse): string | undefined;
91
- /**
92
- * Extract 'host' header
93
- * @param {NextRequest} req request
94
- */
95
- protected getHostHeader(req: NextRequest): string | undefined;
96
- /**
97
- * Get site information. If site name is stored in cookie, use it, otherwise resolve by hostname
98
- * - If site can't be resolved by site name cookie use default site info based on provided parameters
99
- * - If site can't be resolved by hostname throw an error
100
- * @param {NextRequest} req request
101
- * @param {NextResponse} [res] response
102
- * @returns {SiteInfo} site information
103
- */
104
- protected getSite(req: NextRequest, res?: NextResponse): SiteInfo;
105
- protected getClientFactory(graphQLOptions: GraphQLClientOptions): GraphQLRequestClientFactory;
106
- /**
107
- * Create a rewrite response
108
- * @param {string} rewritePath the destionation path
109
- * @param {NextRequest} req the current request
110
- * @param {NextResponse} res the current response
111
- * @param {boolean} [skipHeader] don't write 'x-sc-rewrite' header
112
- */
113
- protected rewrite(rewritePath: string, req: NextRequest, res: NextResponse, skipHeader?: boolean): NextResponse;
114
- }
115
- /**
116
- * Define a middleware with a list of middlewares
117
- * @param {Middleware[]} middlewares List of middlewares to execute
118
- */
119
- export declare const defineMiddleware: (...middlewares: Middleware[]) => {
120
- /**
121
- * Execute all middlewares
122
- * @param {NextRequest} req request
123
- * @param {NextFetchEvent} ev fetch event
124
- * @param {NextResponse} [res] response
125
- */
126
- exec: (req: NextRequest, ev: NextFetchEvent, res?: NextResponse) => Promise<NextResponse<unknown>>;
127
- };
1
+ import { SiteInfo, SiteResolver } from '@sitecore-content-sdk/core/site';
2
+ import { GraphQLRequestClientFactory } from '@sitecore-content-sdk/core';
3
+ import { NextRequest, NextFetchEvent, NextResponse } from 'next/server';
4
+ import { GraphQLClientOptions } from '@sitecore-content-sdk/core/client';
5
+ export declare const REWRITE_HEADER_NAME = "x-sc-rewrite";
6
+ export declare const LOCALE_HEADER_NAME = "x-sc-locale";
7
+ /**
8
+ * The interface for the Middleware configuration.
9
+ * @public
10
+ */
11
+ export type MiddlewareBaseConfig = {
12
+ /**
13
+ * function, determines if middleware execution should be skipped, based on cookie, header, or other considerations
14
+ * @param {NextRequest} req request object from middleware handler
15
+ * @param {NextResponse} res response object from middleware handler
16
+ */
17
+ skip?: (req: NextRequest, res: NextResponse) => boolean;
18
+ /**
19
+ * Fallback hostname in case `host` header is not present
20
+ * @default localhost
21
+ */
22
+ defaultHostname?: string;
23
+ /**
24
+ * Fallback language in locale cannot be extracted from request URL
25
+ * @default 'en'
26
+ */
27
+ defaultLanguage?: string;
28
+ /**
29
+ * Site resolution implementation by name/hostname
30
+ */
31
+ sites: SiteInfo[];
32
+ };
33
+ /**
34
+ * Middleware class to be extended by all middleware implementations
35
+ * @public
36
+ */
37
+ export declare abstract class Middleware {
38
+ /**
39
+ * Handler method to execute middleware logic
40
+ * @param {NextRequest} req request
41
+ * @param {NextResponse} res response
42
+ * @param {NextFetchEvent} ev fetch event
43
+ */
44
+ abstract handle(req: NextRequest, res: NextResponse, ev: NextFetchEvent): Promise<NextResponse>;
45
+ }
46
+ /**
47
+ * Base middleware class with common methods
48
+ * @public
49
+ */
50
+ export declare abstract class MiddlewareBase extends Middleware {
51
+ protected config: MiddlewareBaseConfig;
52
+ protected defaultHostname: string;
53
+ protected siteResolver: SiteResolver;
54
+ constructor(config: MiddlewareBaseConfig);
55
+ /**
56
+ * Determines if mode is preview
57
+ * @param {NextRequest} req request
58
+ * @returns {boolean} is preview
59
+ */
60
+ protected isPreview(req: NextRequest): boolean;
61
+ /**
62
+ * Determines if the application is using the app router based on the locale header
63
+ * @param {NextResponse} res response
64
+ * @returns {boolean} true if app router is used
65
+ */
66
+ protected isAppRouter(res: NextResponse): boolean;
67
+ /**
68
+ * Determines if the request is a Next.js (next/link) prefetch request
69
+ * @param {NextRequest} req request
70
+ * @returns {boolean} is prefetch
71
+ */
72
+ protected isPrefetch(req: NextRequest): boolean;
73
+ protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
74
+ /**
75
+ * Safely extract all headers for debug logging
76
+ * Necessary to avoid middleware issue https://github.com/vercel/next.js/issues/39765
77
+ * @param {Headers} incomingHeaders Incoming headers
78
+ * @returns Object with headers as key/value pairs
79
+ */
80
+ protected extractDebugHeaders(incomingHeaders: Headers): {
81
+ [key: string]: string;
82
+ };
83
+ /**
84
+ * Provides used language
85
+ * @param {NextRequest} req request
86
+ * @param {NextResponse} res response
87
+ * @returns {string} language
88
+ */
89
+ protected getLanguage(req: NextRequest, res?: NextResponse): string;
90
+ /**
91
+ * Extract language from locale header of the response
92
+ * set by LocaleMiddleware for app router application
93
+ * @param {NextResponse} res response
94
+ * @returns {string | undefined} language or undefined if not found
95
+ */
96
+ protected getLanguageFromHeader(res?: NextResponse): string | undefined;
97
+ /**
98
+ * Extract 'host' header
99
+ * @param {NextRequest} req request
100
+ */
101
+ protected getHostHeader(req: NextRequest): string | undefined;
102
+ /**
103
+ * Get site information. If site name is stored in cookie, use it, otherwise resolve by hostname
104
+ * - If site can't be resolved by site name cookie use default site info based on provided parameters
105
+ * - If site can't be resolved by hostname throw an error
106
+ * @param {NextRequest} req request
107
+ * @param {NextResponse} [res] response
108
+ * @returns {SiteInfo} site information
109
+ */
110
+ protected getSite(req: NextRequest, res?: NextResponse): SiteInfo;
111
+ protected getClientFactory(graphQLOptions: GraphQLClientOptions): GraphQLRequestClientFactory;
112
+ /**
113
+ * Create a rewrite response
114
+ * @param {string} rewritePath the destionation path
115
+ * @param {NextRequest} req the current request
116
+ * @param {NextResponse} res the current response
117
+ * @param {boolean} [skipHeader] don't write 'x-sc-rewrite' header
118
+ */
119
+ protected rewrite(rewritePath: string, req: NextRequest, res: NextResponse, skipHeader?: boolean): NextResponse;
120
+ }
121
+ /**
122
+ * Define a middleware with a list of middlewares
123
+ * @param {Middleware[]} middlewares List of middlewares to execute
124
+ * @public
125
+ */
126
+ export declare const defineMiddleware: (...middlewares: Middleware[]) => {
127
+ /**
128
+ * Execute all middlewares
129
+ * @param {NextRequest} req request
130
+ * @param {NextFetchEvent} ev fetch event
131
+ * @param {NextResponse} [res] response
132
+ */
133
+ exec: (req: NextRequest, ev: NextFetchEvent, res?: NextResponse) => Promise<NextResponse<unknown>>;
134
+ };
135
+ //# sourceMappingURL=middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAS,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAEL,oBAAoB,EACrB,MAAM,mCAAmC,CAAC;AAG3C,eAAO,MAAM,mBAAmB,iBAAiB,CAAC;AAClD,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;OAIG;IACH,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC;IACxD;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,8BAAsB,UAAU;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;CAChG;AAED;;;GAGG;AACH,8BAAsB,cAAe,SAAQ,UAAU;IAIzC,SAAS,CAAC,MAAM,EAAE,oBAAoB;IAHlD,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEf,MAAM,EAAE,oBAAoB;IAMlD;;;;OAIG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW;IAOpC;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO;IAIjD;;;;OAIG;IACH,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO;IAmB/C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY;IAWtD;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,CAAC,eAAe,EAAE,OAAO;;;IAMtD;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM;IAUnE;;;;;OAKG;IACH,SAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS;IAIvE;;;OAGG;IACH,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW;IAIxC;;;;;;;OAOG;IACH,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,QAAQ;IAoBjE,SAAS,CAAC,gBAAgB,CAAC,cAAc,EAAE,oBAAoB,GAAG,2BAA2B;IAI7F;;;;;;OAMG;IACH,SAAS,CAAC,OAAO,CACf,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,YAAY,EACjB,UAAU,CAAC,EAAE,OAAO,GACnB,YAAY;CAahB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,GAAG,aAAa,UAAU,EAAE;IAEzD;;;;;OAKG;gBACe,WAAW,MAAM,cAAc,QAAQ,YAAY;CAiBxE,CAAC"}
@@ -1,37 +1,54 @@
1
- import { NextResponse, NextRequest } from 'next/server';
2
- import { MiddlewareBase, MiddlewareBaseConfig } from './middleware';
3
- import { SitecoreConfig } from '../config';
4
- export type CookieAttributes = {
5
- /**
6
- * the Secure attribute of the site cookie
7
- */
8
- secure: boolean;
9
- /**
10
- * the HttpOnly attribute of the site cookie
11
- */
12
- httpOnly: boolean;
13
- /**
14
- * the SameSite attribute of the site cookie
15
- */
16
- sameSite?: true | false | 'lax' | 'strict' | 'none' | undefined;
17
- };
18
- export type MultisiteMiddlewareConfig = MiddlewareBaseConfig & SitecoreConfig['multisite'];
19
- /**
20
- * Middleware / handler for multisite support
21
- */
22
- export declare class MultisiteMiddleware extends MiddlewareBase {
23
- protected config: MultisiteMiddlewareConfig;
24
- /**
25
- * @param {MultisiteMiddlewareConfig} [config] Multisite middleware config
26
- */
27
- constructor(config: MultisiteMiddlewareConfig);
28
- handle: (req: NextRequest, res: NextResponse) => Promise<NextResponse>;
29
- protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
30
- /**
31
- * Generates a site-specific rewrite path based on the provided pathname and site name.
32
- * @param {string} pathname - The pathname to be rewritten.
33
- * @param {string} siteName - The name of the site.
34
- * @returns The rewritten path as a string.
35
- */
36
- protected getSiteRewrite(pathname: string, siteName: string): string;
37
- }
1
+ import { NextResponse, NextRequest } from 'next/server';
2
+ import { MiddlewareBase, MiddlewareBaseConfig } from './middleware';
3
+ import { SitecoreConfig } from '../config';
4
+ export type CookieAttributes = {
5
+ /**
6
+ * the Secure attribute of the site cookie
7
+ */
8
+ secure: boolean;
9
+ /**
10
+ * the HttpOnly attribute of the site cookie
11
+ */
12
+ httpOnly: boolean;
13
+ /**
14
+ * the SameSite attribute of the site cookie
15
+ */
16
+ sameSite?: true | false | 'lax' | 'strict' | 'none' | undefined;
17
+ };
18
+ /**
19
+ * The interface for the MultisiteMiddleware configuration.
20
+ * @public
21
+ */
22
+ export type MultisiteMiddlewareConfig = MiddlewareBaseConfig & SitecoreConfig['multisite'];
23
+ /**
24
+ * Middleware / handler for multisite support
25
+ * @public
26
+ */
27
+ export declare class MultisiteMiddleware extends MiddlewareBase {
28
+ protected config: MultisiteMiddlewareConfig;
29
+ /**
30
+ * @param {MultisiteMiddlewareConfig} [config] Multisite middleware config
31
+ */
32
+ constructor(config: MultisiteMiddlewareConfig);
33
+ handle: (req: NextRequest, res: NextResponse) => Promise<NextResponse>;
34
+ protected disabled(req: NextRequest, res: NextResponse): boolean | undefined;
35
+ /**
36
+ * Called when multisite is disabled. Override this method in subclasses to show router-specific warnings.
37
+ * @param {NextResponse} _res response
38
+ */
39
+ protected shouldWarnWhenDisabled(_res: NextResponse): void;
40
+ /**
41
+ * Determines if middleware should be skipped when multisite is disabled.
42
+ * Override in subclasses to provide router-specific behavior.
43
+ * @returns {boolean} true if middleware should be skipped when disabled
44
+ */
45
+ protected shouldSkipWhenDisabled(): boolean;
46
+ /**
47
+ * Generates a site-specific rewrite path based on the provided pathname and site name.
48
+ * @param {string} pathname - The pathname to be rewritten.
49
+ * @param {string} siteName - The name of the site.
50
+ * @returns The rewritten path as a string.
51
+ */
52
+ protected getSiteRewrite(pathname: string, siteName: string): string;
53
+ }
54
+ //# sourceMappingURL=multisite-middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisite-middleware.d.ts","sourceRoot":"","sources":["../../src/middleware/multisite-middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAuB,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;CACjE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAE3F;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,cAAc;IAIzC,SAAS,CAAC,MAAM,EAAE,yBAAyB;IAHvD;;OAEG;gBACmB,MAAM,EAAE,yBAAyB;IAIvD,MAAM,GAAU,KAAK,WAAW,EAAE,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAAC,CA2FzE;IAEF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,GAAG,SAAS;IAK5E;;;OAGG;IAEH,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAI1D;;;;OAIG;IACH,SAAS,CAAC,sBAAsB,IAAI,OAAO;IAI3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;CAKrE"}