create-sitecore-jss 22.2.0-canary.1 → 22.2.0-canary.10

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 (300) hide show
  1. package/dist/bin.js +70 -28
  2. package/dist/common/index.js +5 -3
  3. package/dist/common/processes/install.js +9 -2
  4. package/dist/common/processes/next.js +3 -3
  5. package/dist/common/processes/transform.js +29 -14
  6. package/dist/common/prompts/base.js +0 -12
  7. package/dist/common/prompts/sxp.js +20 -0
  8. package/dist/common/utils/helpers.js +28 -43
  9. package/dist/init-runner.js +16 -11
  10. package/dist/initializers/angular/index.js +13 -0
  11. package/dist/initializers/angular/prompts.js +22 -1
  12. package/dist/initializers/angular-sxp/index.js +62 -0
  13. package/dist/initializers/angular-xmcloud/index.js +66 -0
  14. package/dist/initializers/nextjs/index.js +2 -2
  15. package/dist/initializers/nextjs/prompts.js +2 -0
  16. package/dist/initializers/nextjs/remove-dev-dependencies.js +2 -2
  17. package/dist/initializers/nextjs-multisite/index.js +1 -1
  18. package/dist/initializers/nextjs-styleguide/index.js +1 -1
  19. package/dist/initializers/nextjs-styleguide-tracking/index.js +1 -1
  20. package/dist/initializers/nextjs-sxa/index.js +1 -1
  21. package/dist/initializers/nextjs-xmcloud/index.js +1 -1
  22. package/dist/initializers/node-xmcloud-proxy/index.js +32 -0
  23. package/dist/initializers/react/index.js +3 -3
  24. package/dist/initializers/react/prompts.js +1 -1
  25. package/dist/initializers/react-native/prompts.js +1 -0
  26. package/dist/initializers/vue/prompts.js +1 -1
  27. package/dist/templates/angular/.env +5 -3
  28. package/dist/templates/angular/README.md +5 -45
  29. package/dist/templates/angular/angular.json +1 -6
  30. package/dist/templates/angular/package.json +5 -15
  31. package/dist/templates/angular/proxy.conf.js +5 -23
  32. package/dist/templates/angular/scripts/bootstrap.ts +5 -24
  33. package/dist/templates/angular/scripts/config/index.ts +28 -0
  34. package/dist/templates/angular/scripts/config/plugins/computed.ts +21 -0
  35. package/dist/templates/angular/scripts/config/plugins/fallback.ts +23 -0
  36. package/dist/templates/angular/scripts/config/plugins/package-json.ts +22 -0
  37. package/dist/templates/angular/scripts/config/plugins/scjssconfig.ts +29 -0
  38. package/dist/templates/angular/scripts/generate-config.ts +53 -73
  39. package/dist/templates/angular/scripts/generate-plugins.ts +28 -0
  40. package/dist/templates/angular/scripts/temp/gitignore +2 -0
  41. package/dist/templates/angular/scripts/update-graphql-fragment-data.ts +4 -2
  42. package/dist/templates/angular/server.bundle.ts +19 -1
  43. package/dist/templates/angular/src/app/JssState.ts +1 -4
  44. package/dist/templates/angular/src/app/app.module.ts +0 -2
  45. package/dist/templates/angular/src/app/components/app-components.shared.module.ts +4 -19
  46. package/dist/templates/angular/src/app/jss-context.server-side.service.ts +0 -2
  47. package/dist/templates/angular/src/app/lib/config.ts +16 -0
  48. package/dist/templates/angular/src/app/lib/dictionary-service-factory.ts +21 -13
  49. package/dist/templates/angular/src/app/lib/layout-service-factory.ts +20 -12
  50. package/dist/templates/angular/src/app/routing/layout/layout.component.html +1 -1
  51. package/dist/templates/angular/src/app/routing/layout/layout.component.ts +1 -2
  52. package/dist/templates/angular/src/app/routing/navigation/navigation.component.html +5 -6
  53. package/dist/templates/angular/src/app/routing/navigation/navigation.component.ts +1 -2
  54. package/dist/templates/angular/src/app/routing/routing.module.ts +14 -21
  55. package/dist/templates/angular/src/app/routing/scripts/scripts.component.html +1 -0
  56. package/dist/templates/angular/src/app/routing/scripts/scripts.component.ts +7 -0
  57. package/dist/templates/angular/src/app/routing/scripts/scripts.module.ts +8 -0
  58. package/dist/templates/angular/src/graphql-fragment-types.ts +0 -95
  59. package/dist/templates/angular/tsconfig.json +7 -2
  60. package/dist/templates/angular-sxp/package.json +12 -0
  61. package/dist/templates/angular-sxp/proxy.conf.js +43 -0
  62. package/dist/templates/angular-sxp/scripts/config/plugins/disconnected.ts +27 -0
  63. package/dist/templates/angular-sxp/src/app/components/app-components.shared.module.ts +35 -0
  64. package/dist/templates/{angular → angular-sxp}/src/app/jss-data-fetcher.service.ts +3 -1
  65. package/dist/templates/angular-sxp/src/app/routing/navigation/navigation.component.html +23 -0
  66. package/dist/templates/angular-sxp/src/app/routing/scripts/scripts.component.html +3 -0
  67. package/dist/templates/angular-sxp/src/app/routing/scripts/scripts.module.ts +9 -0
  68. package/dist/templates/{angular/src/app/routing → angular-sxp/src/app/routing/scripts}/visitor-identification/visitor-identification.component.ts +9 -3
  69. package/dist/templates/angular-sxp/src/graphql-fragment-types.ts +219 -0
  70. package/dist/templates/angular-xmcloud/.env +8 -0
  71. package/dist/templates/angular-xmcloud/angular.json +34 -0
  72. package/dist/templates/angular-xmcloud/package.json +15 -0
  73. package/dist/templates/angular-xmcloud/scripts/config/plugins/xmcloud.ts +23 -0
  74. package/dist/templates/angular-xmcloud/scripts/proxy-build.ts +15 -0
  75. package/dist/templates/angular-xmcloud/src/app/components/container/container.component.html +15 -0
  76. package/dist/templates/angular-xmcloud/src/app/components/container/container.component.ts +30 -0
  77. package/dist/templates/angular-xmcloud/src/app/components/richtext/richtext.component.html +13 -0
  78. package/dist/templates/angular-xmcloud/src/app/components/richtext/richtext.component.ts +16 -0
  79. package/dist/templates/angular-xmcloud/src/app/components/sxa.component.ts +15 -0
  80. package/dist/templates/angular-xmcloud/src/app/jss-link.service.ts +51 -0
  81. package/dist/templates/angular-xmcloud/src/app/lib/config.ts +15 -0
  82. package/dist/templates/angular-xmcloud/src/app/lib/graphql-client-factory.ts +44 -0
  83. package/dist/templates/angular-xmcloud/src/app/routing/layout/layout.component.html +39 -0
  84. package/dist/templates/angular-xmcloud/src/app/routing/layout/layout.component.ts +111 -0
  85. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_component.scss +48 -0
  86. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_container.scss +64 -0
  87. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_fonts.scss +3 -0
  88. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_footer.scss +31 -0
  89. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_header.scss +49 -0
  90. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_navigation.scss +150 -0
  91. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_promo.scss +58 -0
  92. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_rich-text.scss +11 -0
  93. package/dist/templates/angular-xmcloud/src/assets/styles/basic/_variables.scss +10 -0
  94. package/dist/templates/angular-xmcloud/src/assets/styles/basic/main.scss +8 -0
  95. package/dist/templates/angular-xmcloud/src/assets/styles/main.scss +4 -0
  96. package/dist/templates/angular-xmcloud/src/assets/styles/sass/_app.scss +103 -0
  97. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/_functions.scss +8 -0
  98. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/_mixins.scss +121 -0
  99. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/_vars.scss +3 -0
  100. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/vars/_colors.scss +283 -0
  101. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/vars/_fontSizes.scss +16 -0
  102. package/dist/templates/angular-xmcloud/src/assets/styles/sass/abstracts/vars/_margins.scss +11 -0
  103. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/fonts/_fonts.scss +1 -0
  104. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/fonts/index.scss +1 -0
  105. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/index.scss +3 -0
  106. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/links/_link-button.scss +26 -0
  107. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/links/index.scss +1 -0
  108. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/reset/_inputs.scss +58 -0
  109. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/reset/_links.scss +14 -0
  110. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/reset/_ui-datepicker.scss +7 -0
  111. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/richtext/_richtext-files-icons.scss +86 -0
  112. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/richtext/_richtext.scss +101 -0
  113. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/richtext/index.scss +2 -0
  114. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/typehead/_typehead.scss +95 -0
  115. package/dist/templates/angular-xmcloud/src/assets/styles/sass/base/typehead/index.scss +1 -0
  116. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-column-splitter.scss +14 -0
  117. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-container.scss +27 -0
  118. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-image.scss +18 -0
  119. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-navigation.scss +51 -0
  120. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-promo.scss +42 -0
  121. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/_component-richtext-content.scss +19 -0
  122. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_alignment.scss +26 -0
  123. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_boxed.scss +16 -0
  124. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_clearfix.scss +11 -0
  125. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_highlighted.scss +63 -0
  126. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_link-button.scss +16 -0
  127. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/_promoted-box.scss +3 -0
  128. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/common/index.scss +6 -0
  129. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/container/_bordered.scss +24 -0
  130. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/container/_title-row-box.scss +66 -0
  131. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/container/index.scss +1 -0
  132. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/image/_image-default-size.scss +6 -0
  133. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/image/index.scss +1 -0
  134. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/image-alignment/_image-left.scss +3 -0
  135. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/image-alignment/_image-right.scss +3 -0
  136. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/index.scss +17 -0
  137. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/layout/_acaindent.scss +5 -0
  138. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/layout/_background.scss +27 -0
  139. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/layout/index.scss +1 -0
  140. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/link-list/_component-link-list.scss +45 -0
  141. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/link-list/_list-vertical.scss +20 -0
  142. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/link-list/index.scss +2 -0
  143. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/_navigation-fat.scss +58 -0
  144. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/_navigation-main-horizontal-vertical.scss +176 -0
  145. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/_navigation-mobile.scss +85 -0
  146. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/_navigation-sidebar.scss +29 -0
  147. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/_sitemap-navigation.scss +20 -0
  148. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/navigation/index.scss +5 -0
  149. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/promo/_absolute-bottom-link.scss +8 -0
  150. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/promo/_promo-hero.scss +40 -0
  151. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/promo/_promo-shadow.scss +42 -0
  152. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/promo/index.scss +3 -0
  153. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/rich-text/_rich-text-lists.scss +63 -0
  154. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/rich-text/index.scss +1 -0
  155. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/spacing/_background-colors.scss +14 -0
  156. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/spacing/_indent.scss +13 -0
  157. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/spacing/index.scss +2 -0
  158. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/title/_component-title.scss +30 -0
  159. package/dist/templates/angular-xmcloud/src/assets/styles/sass/components/title/index.scss +1 -0
  160. package/dist/templates/angular-xmcloud/src/assets/styles/sass/main.scss +4 -0
  161. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/index.scss +6 -0
  162. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/link-list/index.scss +0 -0
  163. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/navigation/index.scss +0 -0
  164. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/page-content/index.scss +0 -0
  165. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/promo/index.scss +0 -0
  166. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/rich-text/index.scss +0 -0
  167. package/dist/templates/angular-xmcloud/src/assets/styles/sass/variants/title/index.scss +0 -0
  168. package/dist/templates/nextjs-sxa/src/assets/sass/components/_component-image.scss +1 -1
  169. package/dist/templates/node-xmcloud-proxy/.env +8 -0
  170. package/dist/templates/node-xmcloud-proxy/README.md +36 -0
  171. package/dist/templates/node-xmcloud-proxy/package.json +25 -0
  172. package/dist/templates/node-xmcloud-proxy/src/config.ts +19 -0
  173. package/dist/templates/node-xmcloud-proxy/src/index.ts +161 -0
  174. package/dist/templates/node-xmcloud-proxy/src/types.ts +59 -0
  175. package/dist/templates/node-xmcloud-proxy/tsconfig.json +22 -0
  176. package/package.json +2 -2
  177. /package/dist/templates/angular/src/app/lib/{client-factory.ts → graphql-client-factory.ts} +0 -0
  178. /package/dist/templates/{angular → angular-sxp}/data/component-content/Styleguide/ContentReuse/LoremIpsumContentBlock/en.yml +0 -0
  179. /package/dist/templates/{angular → angular-sxp}/data/component-content/gitignore +0 -0
  180. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/ContentListField/Item1/en.yml +0 -0
  181. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/ContentListField/Item2/en.yml +0 -0
  182. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/EditFrameDemo/Item1/en.yml +0 -0
  183. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/EditFrameDemo/Item2/en.yml +0 -0
  184. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/ItemLinkField/Item1/en.yml +0 -0
  185. /package/dist/templates/{angular → angular-sxp}/data/content/Styleguide/ItemLinkField/Item2/en.yml +0 -0
  186. /package/dist/templates/{angular → angular-sxp}/data/content/gitignore +0 -0
  187. /package/dist/templates/{angular → angular-sxp}/data/dictionary/en.yml +0 -0
  188. /package/dist/templates/{angular → angular-sxp}/data/dictionary/{{language}}.yml +0 -0
  189. /package/dist/templates/{angular → angular-sxp}/data/media/files/jss.pdf +0 -0
  190. /package/dist/templates/{angular → angular-sxp}/data/media/img/jss_logo.png +0 -0
  191. /package/dist/templates/{angular → angular-sxp}/data/media/img/sc_logo.png +0 -0
  192. /package/dist/templates/{angular → angular-sxp}/data/routes/en.yml +0 -0
  193. /package/dist/templates/{angular → angular-sxp}/data/routes/graphql/en.yml +0 -0
  194. /package/dist/templates/{angular → angular-sxp}/data/routes/graphql/sample-1/en.yml +0 -0
  195. /package/dist/templates/{angular → angular-sxp}/data/routes/graphql/sample-2/en.yml +0 -0
  196. /package/dist/templates/{angular → angular-sxp}/data/routes/styleguide/custom-route-type/en.yml +0 -0
  197. /package/dist/templates/{angular → angular-sxp}/data/routes/styleguide/en.yml +0 -0
  198. /package/dist/templates/{angular → angular-sxp}/data/routes/styleguide/{{language}}.yml +0 -0
  199. /package/dist/templates/{angular → angular-sxp}/data/routes/{{language}}.yml +0 -0
  200. /package/dist/templates/{angular → angular-sxp}/scripts/disconnected-mode-proxy.ts +0 -0
  201. /package/dist/templates/{angular → angular-sxp}/scripts/lint-yml.ts +0 -0
  202. /package/dist/templates/{angular → angular-sxp}/sitecore/config/{{appName}}.config +0 -0
  203. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/component-content.sitecore.ts +0 -0
  204. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Layout-Reuse.sitecore.ts +0 -0
  205. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Layout-Tabs-Tab.sitecore.ts +0 -0
  206. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Layout-Tabs.sitecore.ts +0 -0
  207. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Layout.sitecore.ts +0 -0
  208. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Multilingual.sitecore.ts +0 -0
  209. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/Styleguide-Section.sitecore.ts +0 -0
  210. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/content-block.sitecore.ts +0 -0
  211. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/graph-ql-connected-demo.sitecore.ts +0 -0
  212. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/graph-ql-integrated-demo.sitecore.graphql +0 -0
  213. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/graph-ql-integrated-demo.sitecore.ts +0 -0
  214. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/graph-ql-layout.sitecore.ts +0 -0
  215. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-angular-lazy-loading.sitecore.ts +0 -0
  216. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-component-params.sitecore.ts +0 -0
  217. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-custom-route-type.sitecore.ts +0 -0
  218. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-edit-frame.sitecore.ts +0 -0
  219. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-checkbox.sitecore.ts +0 -0
  220. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-content-list.sitecore.ts +0 -0
  221. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-custom.sitecore.ts +0 -0
  222. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-date.sitecore.ts +0 -0
  223. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-file.sitecore.ts +0 -0
  224. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-image.sitecore.ts +0 -0
  225. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-item-link.sitecore.ts +0 -0
  226. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-link.sitecore.ts +0 -0
  227. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-number.sitecore.ts +0 -0
  228. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-rich-text.sitecore.ts +0 -0
  229. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-field-usage-text.sitecore.ts +0 -0
  230. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-route-fields.sitecore.ts +0 -0
  231. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-sitecore-context.sitecore.ts +0 -0
  232. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/components/styleguide-tracking.sitecore.ts +0 -0
  233. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/config.js +0 -0
  234. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/content.sitecore.ts +0 -0
  235. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/dictionary.sitecore.ts +0 -0
  236. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/placeholders.sitecore.ts +0 -0
  237. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/routes.sitecore.ts +0 -0
  238. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/templates/Styleguide-Explanatory-Component.sitecore.ts +0 -0
  239. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/templates/styleguide-content-list-template.sitecore.ts +0 -0
  240. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/templates/styleguide-edit-frame-list-item-template.sitecore.ts +0 -0
  241. /package/dist/templates/{angular → angular-sxp}/sitecore/definitions/templates/styleguide-item-link-template.sitecore.ts +0 -0
  242. /package/dist/templates/{angular → angular-sxp}/sitecore/gitignore +0 -0
  243. /package/dist/templates/{angular → angular-sxp}/sitecore/pipelines/example.patch.ts +0 -0
  244. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-connected-demo/graph-ql-connected-demo.component.graphql +0 -0
  245. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-connected-demo/graph-ql-connected-demo.component.html +0 -0
  246. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-connected-demo/graph-ql-connected-demo.component.ts +0 -0
  247. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-integrated-demo/graph-ql-integrated-demo.component.html +0 -0
  248. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-integrated-demo/graph-ql-integrated-demo.component.ts +0 -0
  249. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-layout/graph-ql-layout.component.html +0 -0
  250. /package/dist/templates/{angular → angular-sxp}/src/app/components/graph-ql-layout/graph-ql-layout.component.ts +0 -0
  251. /package/dist/templates/{angular → angular-sxp}/src/app/components/shared/styleguide-specimen/styleguide-specimen.component.ts +0 -0
  252. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-angular-lazy-loading/styleguide-angular-lazy-loading.component.html +0 -0
  253. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-angular-lazy-loading/styleguide-angular-lazy-loading.component.ts +0 -0
  254. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-angular-lazy-loading/styleguide-angular-lazy-loading.module.ts +0 -0
  255. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-component-params/styleguide-component-params.component.html +0 -0
  256. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-component-params/styleguide-component-params.component.ts +0 -0
  257. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-custom-route-type/styleguide-custom-route-type.component.html +0 -0
  258. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-custom-route-type/styleguide-custom-route-type.component.ts +0 -0
  259. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-edit-frame/styleguide-edit-frame.component.html +0 -0
  260. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-edit-frame/styleguide-edit-frame.component.ts +0 -0
  261. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-checkbox/styleguide-field-usage-checkbox.component.html +0 -0
  262. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-checkbox/styleguide-field-usage-checkbox.component.ts +0 -0
  263. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-content-list/styleguide-field-usage-content-list.component.html +0 -0
  264. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-content-list/styleguide-field-usage-content-list.component.ts +0 -0
  265. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-custom/styleguide-field-usage-custom.component.html +0 -0
  266. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-custom/styleguide-field-usage-custom.component.ts +0 -0
  267. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-date/styleguide-field-usage-date.component.html +0 -0
  268. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-date/styleguide-field-usage-date.component.ts +0 -0
  269. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-file/styleguide-field-usage-file.component.html +0 -0
  270. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-file/styleguide-field-usage-file.component.ts +0 -0
  271. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-image/styleguide-field-usage-image.component.html +0 -0
  272. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-image/styleguide-field-usage-image.component.ts +0 -0
  273. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-item-link/styleguide-field-usage-item-link.component.html +0 -0
  274. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-item-link/styleguide-field-usage-item-link.component.ts +0 -0
  275. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-link/styleguide-field-usage-link.component.html +0 -0
  276. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-link/styleguide-field-usage-link.component.ts +0 -0
  277. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-number/styleguide-field-usage-number.component.html +0 -0
  278. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-number/styleguide-field-usage-number.component.ts +0 -0
  279. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-rich-text/styleguide-field-usage-rich-text.component.html +0 -0
  280. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-rich-text/styleguide-field-usage-rich-text.component.ts +0 -0
  281. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-text/styleguide-field-usage-text.component.html +0 -0
  282. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-field-usage-text/styleguide-field-usage-text.component.ts +0 -0
  283. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout/styleguide-layout.component.html +0 -0
  284. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout/styleguide-layout.component.ts +0 -0
  285. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-reuse/styleguide-layout-reuse.component.html +0 -0
  286. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-reuse/styleguide-layout-reuse.component.ts +0 -0
  287. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-tabs/styleguide-layout-tabs.component.html +0 -0
  288. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-tabs/styleguide-layout-tabs.component.ts +0 -0
  289. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-tabs-tab/styleguide-layout-tabs-tab.component.html +0 -0
  290. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-layout-tabs-tab/styleguide-layout-tabs-tab.component.ts +0 -0
  291. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-multilingual/styleguide-multilingual.component.html +0 -0
  292. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-multilingual/styleguide-multilingual.component.ts +0 -0
  293. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-route-fields/styleguide-route-fields.component.html +0 -0
  294. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-route-fields/styleguide-route-fields.component.ts +0 -0
  295. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-section/styleguide-section.component.html +0 -0
  296. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-section/styleguide-section.component.ts +0 -0
  297. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-sitecore-context/styleguide-sitecore-context.component.html +0 -0
  298. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-sitecore-context/styleguide-sitecore-context.component.ts +0 -0
  299. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-tracking/styleguide-tracking.component.html +0 -0
  300. /package/dist/templates/{angular → angular-sxp}/src/app/components/styleguide-tracking/styleguide-tracking.component.ts +0 -0
@@ -0,0 +1,42 @@
1
+ @import "sass/abstracts/vars";
2
+ @import "sass/abstracts/mixins";
3
+
4
+ .promo-shadow {
5
+ max-width: 960px;
6
+ padding: 0;
7
+ border-top-width: 3px;
8
+ border-top-color: $promo-shadow-border;
9
+ border-style: solid;
10
+ overflow: visible;
11
+ position: relative;
12
+ &.promo {
13
+ float: left;
14
+ }
15
+ >.component-content {
16
+ @include respond-to(all-mobile) {
17
+ margin: 0 10px 30px 10px;
18
+ }
19
+ padding: 15px;
20
+ margin: 0 0 30px 0;
21
+ &:before, &:after {
22
+ opacity: 0.7;
23
+ box-shadow: 0 17px 10px rgba(0, 0, 0, 0.7);
24
+ position: absolute;
25
+ z-index: -1;
26
+ height: 20%;
27
+ max-height: 100px;
28
+ max-width: 460px;
29
+ width: 47%;
30
+ content: "";
31
+ bottom: 10px;
32
+ }
33
+ &:before {
34
+ left: 2%;
35
+ transform: rotate(-3deg);
36
+ }
37
+ &:after {
38
+ right: 2%;
39
+ transform: rotate(3deg);
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,3 @@
1
+ @import "absolute-bottom-link";
2
+ @import "promo-hero";
3
+ @import "promo-shadow";
@@ -0,0 +1,63 @@
1
+ @import 'sass/abstracts/vars';
2
+ @import 'sass/abstracts/mixins';
3
+
4
+ .rich-text-lists,
5
+ .field-featurelist {
6
+ ul {
7
+ box-sizing: border-box;
8
+ margin: 0;
9
+ padding: 0;
10
+ li {
11
+ @include font-size(1.3);
12
+ position: relative;
13
+ line-height: 21px;
14
+ list-style: none;
15
+ margin: 0;
16
+ padding: 5px 0 5px 25px;
17
+ &:before {
18
+ display: inline-block;
19
+ vertical-align: middle;
20
+ @include font-size(1.2);
21
+ font-family: 'FontAwesome', sans-serif;
22
+ position: absolute;
23
+ top: 3px;
24
+ left: 0;
25
+ color: $text-basic;
26
+ text-align: center;
27
+ content: '\f00c';
28
+ width: 20px;
29
+ margin: 0 5px 0 0;
30
+ padding: 0;
31
+ }
32
+ }
33
+ }
34
+ }
35
+ .field-featurelist {
36
+ ul {
37
+ li {
38
+ &:before {
39
+ display: inline-block;
40
+ vertical-align: middle;
41
+ @include font-size(1.2);
42
+ font-family: 'FontAwesome', sans-serif;
43
+ position: absolute;
44
+ top: 3px;
45
+ left: 0;
46
+ color: $text-basic;
47
+ text-align: center;
48
+ content: '\f046';
49
+ width: 20px;
50
+ margin: 0 5px 0 0;
51
+ padding: 0;
52
+ }
53
+ }
54
+ }
55
+ }
56
+ .media-link {
57
+ &.file-type-icon-media-link {
58
+ float: left;
59
+ .field-filetypeicon {
60
+ text-align: center;
61
+ }
62
+ }
63
+ }
@@ -0,0 +1,14 @@
1
+ @import 'sass/abstracts/vars';
2
+
3
+ .container-gray-background {
4
+ background: $bg-light-gray;
5
+ }
6
+ .container-clean-background {
7
+ background: $bg-basic-color;
8
+ }
9
+ .container-dark-background {
10
+ background: $bg-black-active;
11
+ }
12
+ .container-color-background {
13
+ background: $bg-blue;
14
+ }
@@ -0,0 +1,13 @@
1
+ @import 'sass/abstracts/vars';
2
+ .indent {
3
+ margin: 0 $extralarge-margin;
4
+ &.col-xxl-12, &.col-xl-12, &.col-lg-12, &.col-md-12, &.col-12 {
5
+ width: calc(100% - ($extralarge-margin * 2));
6
+ }
7
+ }
8
+ .indent-top {
9
+ margin-top: $middle-margin;
10
+ }
11
+ .indent-bottom {
12
+ margin-bottom: $middle-margin;
13
+ }
@@ -0,0 +1,2 @@
1
+ @import "background-colors";
2
+ @import "indent";
@@ -0,0 +1,30 @@
1
+ @import 'sass/abstracts/vars';
2
+ @import 'sass/abstracts/mixins';
3
+
4
+ .title {
5
+ background: $title-bg;
6
+
7
+ h1,
8
+ .field-title {
9
+ @include border-basic(bottom, $border-basic-color);
10
+ font-size: $font-extrabig;
11
+ margin-bottom: $small-margin;
12
+ color: $title-color;
13
+ line-height: normal;
14
+ padding-bottom: 10px;
15
+ display: block;
16
+ text-decoration: none;
17
+ cursor: pointer;
18
+
19
+ &:hover {
20
+ color: $title-color-active;
21
+ }
22
+
23
+ > a,
24
+ > span {
25
+ text-decoration: none;
26
+ }
27
+ }
28
+
29
+ @import 'sass/variants/title';
30
+ }
@@ -0,0 +1,4 @@
1
+ @import "base";
2
+ @import "components";
3
+ @import "variants";
4
+ @import "app";
@@ -0,0 +1,6 @@
1
+ @import "link-list";
2
+ @import "navigation";
3
+ @import "page-content";
4
+ @import "promo";
5
+ @import "rich-text";
6
+ @import "title";
@@ -9,7 +9,7 @@
9
9
  display: inline-block;
10
10
  max-width: 100%;
11
11
  }
12
- .image-caption {
12
+ span {
13
13
  display: block;
14
14
  font-style: italic;
15
15
  font-size: $font-small;
@@ -0,0 +1,8 @@
1
+ # Your proxy port (default: 3001)
2
+ PROXY_PORT=
3
+
4
+ # Your proxy server bundle path
5
+ PROXY_BUNDLE_PATH=
6
+
7
+ # Set the DEBUG environment variable to 'sitecore-jss:*,sitecore-jss:proxy,http-proxy-middleware*' to see all logs:
8
+ #DEBUG=sitecore-jss:*,http-proxy-middleware*
@@ -0,0 +1,36 @@
1
+ # Node XM Cloud Proxy
2
+
3
+ > Sitecore JSS Proxy for XM Cloud is considered experimental.
4
+
5
+ [Documentation](<TODO>)
6
+
7
+ This is a sample setup showing one of how you can configure XM Cloud rendering server.
8
+
9
+ ## Pre-requisites
10
+
11
+ 1. SPA sample supports XM Cloud out of the box.
12
+
13
+ 1. Build your SPA app bundle with `jss build`. The build output should be placed in the `dist` folder.
14
+
15
+ ## Setup
16
+
17
+ Open `config.js` and specify your application settings.
18
+
19
+ ### Environment Variables
20
+
21
+ The following environment variables can be set to configure the Proxy sample instead of modifying `config.js`. You can use the `.env` file located in the root of the app or set these directly in the environment (for example, in containers).
22
+
23
+ | Parameter | Description |
24
+ | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
25
+ | `PROXY_BUNDLE_PATH` | Path to the JSS SPA app's `server.bundle.js`. Default can be seen in [config.js](./config.js) file. |
26
+ | `PROXY_PORT` | Optional. Port which will be used when start sample. Default can be seen in [config.js](./config.js) file. |
27
+ | `DEBUG` | Optional. Debug level for the proxy. Set the DEBUG environment variable to 'sitecore-jss:*,proxy*,http-proxy-middleware*' to see all logs. |
28
+
29
+ ## Build & run
30
+
31
+ 1. Run `npm install`
32
+
33
+ 1. Run `npm run start`
34
+
35
+ You should be able to see the following message:
36
+ `server listening on port 3001!`.
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "node-xmcloud-sample",
3
+ "version": "22.1.0-canary",
4
+ "description": "Node XM Cloud Proxy sample for running XM Cloud JSS SPA apps",
5
+ "author": {
6
+ "name": "Sitecore Corporation",
7
+ "url": "https://jss.sitecore.com"
8
+ },
9
+ "scripts": {
10
+ "start": "ts-node ./src/index.ts"
11
+ },
12
+ "dependencies": {
13
+ "compression": "^1.7.4",
14
+ "express": "^4.18.2",
15
+ "dotenv": "^16.0.3",
16
+ "http-proxy-middleware": "^3.0.0"
17
+ },
18
+ "devDependencies": {
19
+ "@sitecore-jss/sitecore-jss": "~22.1.0-canary",
20
+ "@types/compression": "^1.7.2",
21
+ "@types/express": "^4.17.17",
22
+ "ts-node": "^10.9.1",
23
+ "typescript": "~4.9.5"
24
+ }
25
+ }
@@ -0,0 +1,19 @@
1
+ import { Config, ServerBundle } from './types';
2
+
3
+ /**
4
+ * The server.bundle.js file from your pre-built SPA app.
5
+ */
6
+ const bundlePath = process.env.PROXY_BUNDLE_PATH || `../dist/server.bundle`;
7
+
8
+ const serverBundle: ServerBundle = require(bundlePath);
9
+
10
+ export const config: Config = {
11
+ /**
12
+ * The require'd server.bundle.js file from your pre-built SPA app.
13
+ */
14
+ serverBundle,
15
+ /**
16
+ * Port which will be used when start the proxy
17
+ */
18
+ port: process.env.PROXY_PORT || 3001,
19
+ };
@@ -0,0 +1,161 @@
1
+ import 'dotenv/config';
2
+ import express, { Response } from 'express';
3
+ import compression from 'compression';
4
+ import { createProxyMiddleware } from 'http-proxy-middleware';
5
+ import { debug } from '@sitecore-jss/sitecore-jss';
6
+ import { config } from './config';
7
+
8
+ const server = express();
9
+
10
+ const {
11
+ renderView,
12
+ parseRouteUrl,
13
+ dictionaryServiceFactory,
14
+ layoutServiceFactory,
15
+ } = config.serverBundle;
16
+
17
+ /**
18
+ * Required server bundle properties
19
+ */
20
+ const requiredProperties = [
21
+ 'renderView',
22
+ 'parseRouteUrl',
23
+ 'clientFactory',
24
+ 'siteName',
25
+ 'defaultLanguage',
26
+ 'layoutServiceFactory',
27
+ 'dictionaryServiceFactory',
28
+ 'graphQLEndpointPath',
29
+ 'graphQLEndpoint',
30
+ ];
31
+
32
+ const missingProperties = requiredProperties.filter((property) => !config.serverBundle[property]);
33
+
34
+ if (missingProperties.length > 0) {
35
+ throw new Error(
36
+ `ERROR: The serverBundle should export the following properties: ${missingProperties.join(
37
+ ', '
38
+ )}. Please check your server bundle.`
39
+ );
40
+ }
41
+
42
+ const layoutService = layoutServiceFactory.create();
43
+
44
+ const dictionaryService = dictionaryServiceFactory.create();
45
+
46
+ /**
47
+ * Parse requested url in order to detect current route and language
48
+ * @param {string} reqRoute requested route
49
+ */
50
+ const getRouteParams = (reqRoute: string) => {
51
+ const routeParams = parseRouteUrl(reqRoute);
52
+ let lang;
53
+ let route;
54
+
55
+ if (routeParams) {
56
+ route = routeParams.sitecoreRoute || '/';
57
+
58
+ if (!route.startsWith('/')) {
59
+ route = `/${route}`;
60
+ }
61
+
62
+ lang = routeParams.lang || '';
63
+ }
64
+
65
+ return { route, lang };
66
+ };
67
+
68
+ /**
69
+ * Handle unexpected error
70
+ * @param {Response} res server response
71
+ * @param {Error} err error
72
+ */
73
+ const handleError = (res: Response, err: unknown) => {
74
+ debug.proxy('response error %o', err);
75
+
76
+ res.status(500).send('Internal Server Error');
77
+ };
78
+
79
+ // enable gzip compression for appropriate file types
80
+ server.use(compression());
81
+
82
+ // turn off x-powered-by http header
83
+ server.settings['x-powered-by'] = false;
84
+
85
+ // Serve static app assets from local /dist folder
86
+ server.use(
87
+ '/dist',
88
+ express.static('dist', {
89
+ fallthrough: false, // force 404 for unknown assets under /dist
90
+ })
91
+ );
92
+
93
+ /**
94
+ * Proxy browser GraphQL requests to the Sitecore GraphQL endpoint
95
+ */
96
+ server.use(
97
+ config.serverBundle.graphQLEndpointPath,
98
+ createProxyMiddleware({
99
+ target: config.serverBundle.graphQLEndpoint,
100
+ changeOrigin: true,
101
+ })
102
+ );
103
+
104
+ server.use(async (req, res) => {
105
+ debug.proxy(`performing SSR for ${req.originalUrl}`);
106
+
107
+ try {
108
+ const { route, lang } = getRouteParams(req.originalUrl);
109
+
110
+ if (!route) {
111
+ debug.proxy('no route detected, returning 404');
112
+
113
+ res.sendStatus(404);
114
+
115
+ return;
116
+ }
117
+
118
+ // Language is required. In case it's not specified in the requested URL, fallback to the default language from the app configuration.
119
+ const layoutData = await layoutService.fetchLayoutData(
120
+ route,
121
+ lang || config.serverBundle.defaultLanguage
122
+ );
123
+
124
+ const viewBag = { dictionary: {} };
125
+
126
+ viewBag.dictionary = await dictionaryService.fetchDictionaryData(
127
+ layoutData.sitecore.context.language || config.serverBundle.defaultLanguage
128
+ );
129
+
130
+ renderView(
131
+ (err, result) => {
132
+ if (err) {
133
+ handleError(res, err);
134
+ return;
135
+ }
136
+
137
+ if (!result) {
138
+ debug.proxy('no result returned from renderView, returning 204');
139
+
140
+ res.status(204).send();
141
+ return;
142
+ }
143
+
144
+ const statusCode = layoutData.sitecore.route ? 200 : 404;
145
+
146
+ debug.proxy('sending response with status %s', statusCode);
147
+
148
+ res.status(statusCode).send(result.html);
149
+ },
150
+ route,
151
+ layoutData,
152
+ viewBag
153
+ );
154
+ } catch (err) {
155
+ handleError(res, err);
156
+ }
157
+ });
158
+
159
+ server.listen(config.port, () => {
160
+ console.log(`server listening on port ${config.port}!`);
161
+ });
@@ -0,0 +1,59 @@
1
+ import { GraphQLRequestClientFactory } from '@sitecore-jss/sitecore-jss';
2
+ import { DictionaryService } from '@sitecore-jss/sitecore-jss/i18n';
3
+ import { LayoutService, LayoutServiceData } from '@sitecore-jss/sitecore-jss/layout';
4
+
5
+ interface ServerResponse {
6
+ /**
7
+ * The rendered HTML to return to the client
8
+ */
9
+ html: string;
10
+ /**
11
+ * Set the HTTP status code. If not set, the status code returned from Layout Service is returned.
12
+ */
13
+ status?: number;
14
+ /**
15
+ * Sets a redirect URL, causing the reply to send a HTTP redirect instead of the HTML content.
16
+ * Note: when using this you must set the status code to 301 or 302.
17
+ */
18
+ redirect?: string;
19
+ }
20
+
21
+ declare type AppRenderer = (
22
+ callback: (error: Error | null, result: ServerResponse | null) => void,
23
+ path: string,
24
+ /**
25
+ * Data returned by Layout Service. If the route does not exist, null.
26
+ */
27
+ layoutData: LayoutServiceData,
28
+ viewBag: {
29
+ [key: string]: unknown;
30
+ dictionary: { [key: string]: string };
31
+ }
32
+ ) => void;
33
+
34
+ declare type RouteUrlParser = (
35
+ url: string
36
+ ) => {
37
+ sitecoreRoute?: string;
38
+ lang?: string;
39
+ qsParams?: string;
40
+ };
41
+
42
+ export interface ServerBundle {
43
+ [key: string]: unknown;
44
+ renderView: AppRenderer;
45
+ parseRouteUrl: RouteUrlParser;
46
+ clientFactory: GraphQLRequestClientFactory;
47
+ siteName: string;
48
+ defaultLanguage: string;
49
+ layoutServiceFactory: { create: () => LayoutService };
50
+ dictionaryServiceFactory: { create: () => DictionaryService };
51
+ graphQLEndpointPath: string;
52
+ graphQLEndpoint: string;
53
+ }
54
+
55
+ export interface Config {
56
+ [key: string]: unknown;
57
+ port: string | number;
58
+ serverBundle: ServerBundle;
59
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "newLine": "LF",
4
+ "emitDecoratorMetadata": true,
5
+ "experimentalDecorators": true,
6
+ "noFallthroughCasesInSwitch": true,
7
+ "rootDir": ".",
8
+ "esModuleInterop": true,
9
+ "forceConsistentCasingInFileNames": true,
10
+ "strict": true,
11
+ "noImplicitAny": true,
12
+ "noUnusedLocals": true,
13
+ "noUnusedParameters": true,
14
+ "noImplicitReturns": true,
15
+ "strictFunctionTypes": false,
16
+ "downlevelIteration": true,
17
+ "moduleResolution": "node",
18
+ "isolatedModules": true,
19
+ "allowSyntheticDefaultImports": true
20
+ },
21
+ "exclude": ["node_modules", "dist"]
22
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-sitecore-jss",
3
- "version": "22.2.0-canary.1",
3
+ "version": "22.2.0-canary.10",
4
4
  "description": "Sitecore JSS initializer",
5
5
  "bin": "./dist/index.js",
6
6
  "scripts": {
@@ -63,5 +63,5 @@
63
63
  "ts-node": "^10.9.1",
64
64
  "typescript": "~4.9.5"
65
65
  },
66
- "gitHead": "7dd64ce5a019e4579596beae31315db262a4700f"
66
+ "gitHead": "d5b46f1661d99e8936746e964dc3c2ecd61b9e05"
67
67
  }